Skip to content

fix: remove deprecated OpenSSL APIs from bundled ncrypto - #1082

Merged
boorad merged 8 commits into
mainfrom
fix/1081-ncrypto-openssl-deprecations
Oct 26, 2026
Merged

boorad merged 8 commits into
mainfrom
fix/1081-ncrypto-openssl-deprecations

Conversation

@boorad

@boorad boorad commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Resolve #1081 without reducing or vendoring ncrypto. Keep the Git submodule, advance it to upstream c954a1a plus one focused compatibility commit, and pin ef5d829e27c9fcf539d4bf6b478353b888d607a2 from boorad/ncrypto #4.

Dependency scope

The fork patch is 8 files, +283/-39, zero deleted files. All upstream APIs, tests, build systems, CI, and tooling remain. Most OpenSSL provider migration already exists upstream.

The patch adds default-off NCRYPTO_EVP_ONLY for OpenSSL 3.6+: it excludes ENGINE compatibility only when enabled and propagates the definition to CMake/pkg-config consumers. It also checks the X509 BIO rewind, fixes traditional EC PEM export with empty passwords, preserves explicit EC parameters during SPKI export, and honors requested prime-check assurance. The default backend/API contract remains intact.

Fork main stays identical to upstream. The compatibility branch contains exactly one commit and stays separate from mirrored main.

RNQC changes

  • Enable the profile consistently in Android and CocoaPods, retaining all three ncrypto source units and package distribution entries.
  • Compile all three units and an independent header consumer with deprecations treated as errors; no warning suppression in the profile.
  • Cover key serialization, malformed-import recovery, binary/empty passwords, RSA-PSS restrictions, and explicit-parameter EC export in the example app.
  • Adapt the requested Spicy agent workflows to RNQC and test: move mobile E2E to local attested runs #1083's local E2E/attestation flow; preserve linear-history and fork-maintenance rules.

Validation

  • Fork profile at 43328ed: default OpenSSL 34/34, EVP-only OpenSSL 34/34, pinned BoringSSL 25/25 tests pass. Final ef5d829 adds one checked BIO rewind, independently reviewed; strict source/header gate passes.
  • Strict OpenSSL 3.6.2 source/header compiler gate and Node/OpenSSL serialization interoperability checks pass.
  • Independent review found no actionable correctness or scope issues; upstream formatting is preserved.
  • RNQC static checks and mandatory commit hooks pass at 642518e529538a9dc1d4685205243fcdd5597619.
  • Canonical signed iOS→Android qualification passes on clean 642518e529538a9dc1d4685205243fcdd5597619: 41 suites, 2,208 tests, zero failures on each platform. Posted exact-head attestation, envelope cf835d2745ea4037b057d6e97e0fba58f5015e8b2fd6610fd63d9b73bc5a826f; local signature/context verification passes.
  • Current-head C++ CI and JS checks pass; the JS dependency-bootstrap job passed on retry without source changes. Default-branch acceptance of the posted attestation is pending.
  • The fork PR stays separate and unmerged to preserve the upstream mirror.

Delivery

Library changes ship through the next npm release and native app rebuilds. Agent instructions take effect in the repository. The default-branch attestation verifier validates worker-asserted local evidence; GitHub does not run the mobile suites. Deprecated calls elsewhere in RNQC remain outside this issue.

Fixes #1081

@boorad boorad self-assigned this Oct 26, 2026
@vercel

vercel Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
react-native-quick-crypto Ready Ready Preview Oct 26, 2026 5:45pm UTC

Request Review

@github-actions

github-actions Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

🤖 End-to-End Test Results - Android

Status: ✅ Passed
Platform: Android
Run: 40351741891

📸 Final Test Screenshot

Maestro Test Results - android

Screenshot automatically captured from End-to-End tests and will expire in 30 days


This comment is automatically updated on each test run.

@github-actions

github-actions Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

🤖 End-to-End Test Results - iOS

Status: ✅ Passed
Platform: iOS
Run: 40351741843

📸 Final Test Screenshot

Maestro Test Results - ios

Screenshot automatically captured from End-to-End tests and will expire in 30 days


This comment is automatically updated on each test run.

Track a reduced ncrypto snapshot and use provider encoders for traditional key exports. Preserve prime-check assurance and fix private DER import routing exposed by regression coverage.

Fixes #1081
Keep the reviewed compatibility changes in boorad/ncrypto and pin its published revision. Initialize ncrypto in C++ CI and stop the iOS cache from overwriting checked-out dependency sources.
Keep the fork main identical to upstream and carry RNQC compatibility on a separate single-commit branch. Cover explicit EC parameter export and record linear-history and fork maintenance rules.
Keep the local runner introduced in #1083, verify default-branch trust inputs before signing or uploads, and finish all commits before final-head qualification. Refresh the CocoaPods checksum for the updated source list.
@boorad

boorad commented Oct 26, 2026

Copy link
Copy Markdown
Collaborator Author

Local validation: pass

  • commit: ce0f69c49e8d032b76e6c954cb176a94e8553dd8
  • tree: f532333b16351c5e3d49bd37c85c3e87d4a2feea
  • base: main at 10ef702fd3c289576ecee701745dbe241894439d (merge-base 10ef702fd3c289576ecee701745dbe241894439d)
  • services: postgres=false, s3=false
  • omissions: ignored tests, windows, container smoke, hub end-to-end, live execution, postgres tests, s3 tests
  • ios-e2e: Exited, exit 0, 309736 ms
  • android-e2e: Exited, exit 0, 207835 ms

This summary is display only; the signed blocks below decide.

eyJ2ZXJzaW9uIjoxLCJhbGdvcml0aG0iOiJlZDI1NTE5IiwicGF5bG9hZCI6eyJ2ZXJzaW9uIjox
LCJyZXF1aXJlbWVudF9pZCI6ImxvY2FsLXZhbGlkYXRpb24iLCJjaGVja19raW5kIjoiY29tbWFu
ZC92MSIsInN1YmplY3QiOnsicmVwb3NpdG9yeSI6ImdpdGh1Yi5jb20vbWFyZ2Vsby9yZWFjdC1u
YXRpdmUtcXVpY2stY3J5cHRvIiwiY2hhbmdlIjp7InJlcG9zaXRvcnkiOiJnaXRodWIuY29tL21h
cmdlbG8vcmVhY3QtbmF0aXZlLXF1aWNrLWNyeXB0byIsImlkIjoiZ2l0LWNvbW1pdDpjZTBmNjlj
NDllOGQwMzJiNzZlNmM5NTRjYjE3NmE5NGU4NTUzZGQ4In0sImNoYW5nZV92ZXJzaW9uIjoxLCJj
b250ZXh0X2RpZ2VzdCI6ImY0NzAzMGIxZjI5OTk1MGE4OWU3ZjkzYzA2YzBlMmE1YmRjMmYwOTg4
Yjg3NWFmMDEzODZlMTZmOTZlYTYwMDMiLCJyZXZpc2lvbiI6IjRmMDFhMDE5NDMwMTIwN2Q5ODJi
YmUyNDcxODhmYWZlNzk5MmZiMzVmM2VlMmY4ZjA5Y2JkZjg1OGE4MzEwZjgiLCJyZWNpcGVfc2hh
MjU2IjoiMmFlN2E3MmMxY2EzOWE5ZTNjY2MyOThiYjQyZmY3OWZlZTFlZWRjMWMzMjQzNmUyNDcx
YzQ3YWI5Nzg4N2VlZiIsInRvb2xjaGFpbl9zaGEyNTYiOiI3MGVmZmY0NDU2NDI3MTc3NDc0OWI1
NWM0MTdhOWJkMGVkM2JmMDlmODRlYzc0YTczYzNjMDAyMGE2NTZlNjdkIiwiZW52aXJvbm1lbnRf
c2hhMjU2IjoiNTBlZDhkOWY1ODBhMzZiZGE2MDhkYWZlMDViZjU4NjgwNGRiNmYzN2Q2MGMyYzkz
ZjZkYTU2ZDMwNThkYjkxMCJ9LCJpbnN0YWxsZWRfcG9saWN5X3NoYTI1NiI6ImM3Y2YwZDc5ZDYy
NGVmMDM5NWY5ZTY5NDU5MTY1NDFjNDlkMTFkYTllN2M3ODY1Y2Y0MDhjOTdjY2U4ZGRiNGMiLCJp
bnN0YWxsZWRfcG9saWN5X2Vwb2NoIjoxLCJpc3N1ZXJfcmVnaXN0cnlfc2hhMjU2IjoiYjJhMWFj
NjMxYzRkYjRhYjk2ZmI1ODg5NTAxZDljZGUyNzljNTk2MzcxZjgzMDRlMmVlMjZjY2FmZGJhYmY2
ZCIsImF0dGVtcHRfaWQiOiJlMTM1NTllMGFlNTg0ZmViNWFkMDQ0YzE4MDY0ZmJhNyIsInJ1bl9n
ZW5lcmF0aW9uIjoxLCJyZXF1ZXN0X3NoYTI1NiI6IjJhZTdhNzJjMWNhMzlhOWUzY2NjMjk4YmI0
MmZmNzlmZWUxZWVkYzFjMzI0MzZlMjQ3MWM0N2FiOTc4ODdlZWYiLCJsaW1pdHNfc2hhMjU2Ijoi
MmFlN2E3MmMxY2EzOWE5ZTNjY2MyOThiYjQyZmY3OWZlZTFlZWRjMWMzMjQzNmUyNDcxYzQ3YWI5
Nzg4N2VlZiIsInRlcm1pbmFsX3JlY29yZF9zaGEyNTYiOiI0ODQxNDFkMDU0OWQ2MzI2ZjRiYjU2
NjVkNDVkMjc0ZDdlNWRjYjFiYmM1MmI5YTlhMDJmMDdmMDE5ZjdkZjFjIiwiaXNzdWVyX2lkIjoi
Ym9vcmFkIiwia2V5X2lkIjoiNmMxYzgxNjk4MjA4ZTZjMjg0OGQ3YTEwYWMyZWM4NTA0NjhhNjVj
MzZkMWFhYjUzNTQwZDhmOGM4NmNhMjViOCIsImlzc3VlZF9hdF9tcyI6MTc5MzAzMzU2NDI3Nywi
ZXhwaXJlc19hdF9tcyI6MTc5NTYyNTU2NDI3NywidGVybWluYWxfc3RhdGUiOiJzdWNjZXNzIiwi
cmVjb3Zlcnlfc3RhdGUiOiJub3RfcmVxdWlyZWQiLCJvdXRjb21lIjoicGFzcyIsImV4ZWN1dGlv
bl9iYXNpcyI6Indvcmtlcl9hc3NlcnRlZCIsImNvdmVyYWdlIjp7InNjb3BlIjpbImlvcy1lMmUi
LCJhbmRyb2lkLWUyZSJdLCJleHBlY3RlZF9jb3VudCI6Miwib2JzZXJ2ZWRfY291bnQiOjIsImlu
dmVudG9yeV9jb21wbGV0ZSI6ZmFsc2UsIm9taXNzaW9ucyI6WyJpZ25vcmVkIHRlc3RzIiwid2lu
ZG93cyIsImNvbnRhaW5lciBzbW9rZSIsImh1YiBlbmQtdG8tZW5kIiwibGl2ZSBleGVjdXRpb24i
LCJwb3N0Z3JlcyB0ZXN0cyIsInMzIHRlc3RzIl19LCJkZXBlbmRlbmNpZXMiOlt7ImlkZW50aXR5
IjoiYnVuLmxvY2siLCJzdGF0ZSI6eyJzdGF0ZSI6InJlc29sdmVkIiwicmV2aXNpb24iOiIzMmMy
YzM5ZGVhNWNjNjdlYWQwYTY4ZmE3MWFhZWVlMTIxYTZjYmE0MjQwMWVlZmU0NzQwOGM1NjkzMTRj
OGFjIn19LHsiaWRlbnRpdHkiOiJwYWNrYWdlLmpzb24iLCJzdGF0ZSI6eyJzdGF0ZSI6InJlc29s
dmVkIiwicmV2aXNpb24iOiI3ODUwZjM4Nzg1ZTBjNGZkMDcwMjlkNWE1M2IzZjMwNzIzZWYzNmU5
ODI4NWYxOTFjNWY0NWNiNzM5ZDc2OGU1In19XSwiYXJ0aWZhY3RzIjpbeyJhcnRpZmFjdF9pZCI6
InJlY29yZCIsIm1lZGlhX3R5cGUiOiJhcHBsaWNhdGlvbi9qc29uIiwic2hhMjU2IjoiNDg0MTQx
ZDA1NDlkNjMyNmY0YmI1NjY1ZDQ1ZDI3NGQ3ZTVkY2IxYmJjNTJiOWE5YTAyZjA3ZjAxOWY3ZGYx
YyIsImJ5dGVzIjoxMTUwLCJjbGFpbWVkX2F2YWlsYWJpbGl0eSI6ImZ1bGwifV0sIm91dHB1dCI6
eyJzdGRvdXRfc2hhMjU2IjoiZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFl
NDY0OWI5MzRjYTQ5NTk5MWI3ODUyYjg1NSIsInN0ZG91dF9ieXRlcyI6MCwic3RkZXJyX3NoYTI1
NiI6ImUzYjBjNDQyOThmYzFjMTQ5YWZiZjRjODk5NmZiOTI0MjdhZTQxZTQ2NDliOTM0Y2E0OTU5
OTFiNzg1MmI4NTUiLCJzdGRlcnJfYnl0ZXMiOjAsInRydW5jYXRlZCI6ZmFsc2V9fSwic2lnbmF0
dXJlX2hleCI6IjUyMGViYTFlMzhkYjQzNzQ2ZDQ1MWI0ODMzNjE2YTkzMjFmZTFmZmI3YTg1ZGYz
YTJlMTYyZTk0NDQ1ZDFlOWZiYWI0ZTE1MTJhMTExMWVkMzBmYmI0MTRmMTdiMjZmMjY2YzUwMmUw
MzFiYzZiOGY4MTRiOWIyZDc2M2RmNzA4In0=
eyJzdWJqZWN0Ijp7InJlcG9zaXRvcnkiOiJnaXRodWIuY29tL21hcmdlbG8vcmVhY3QtbmF0aXZl
LXF1aWNrLWNyeXB0byIsImNvbW1pdCI6ImNlMGY2OWM0OWU4ZDAzMmI3NmU2Yzk1NGNiMTc2YTk0
ZTg1NTNkZDgiLCJ0cmVlIjoiZjUzMjMzM2IxNjM1MWM1ZTNkNDliZDM3Yzg1YzNlODdkNGEyZmVl
YSJ9LCJjb250ZXh0Ijp7ImJhc2VfcmVmIjoibWFpbiIsIm1lcmdlX2Jhc2UiOiIxMGVmNzAyZmQz
YzI4OTU3NmVjZWU3MDE3NDVkYmUyNDE4OTQ0MzlkIn0sImJhc2VfdGlwIjoiMTBlZjcwMmZkM2My
ODk1NzZlY2VlNzAxNzQ1ZGJlMjQxODk0NDM5ZCIsInJlY2lwZV9zaGEyNTYiOiIyYWU3YTcyYzFj
YTM5YTllM2NjYzI5OGJiNDJmZjc5ZmVlMWVlZGMxYzMyNDM2ZTI0NzFjNDdhYjk3ODg3ZWVmIiwi
cmVzdWx0cyI6W3siaWQiOiJpb3MtZTJlIiwiYXJndiI6WyJidW4iLCJydW4iLCJlMmU6aW9zIl0s
ImV4aXRfY29kZSI6MCwic3RvcCI6ImV4aXRlZCIsImR1cmF0aW9uX21zIjozMDk3MzYsInN0ZG91
dF9zaGEyNTYiOiJlZTUxM2FkYWE1NmJjNjVhN2I3OGZmNGM2YTJjYmYxODA0ZGI0ZmRjN2VjZDVl
Yzc5MTY1N2U5ZTMxNzMwZmE2Iiwic3RkZXJyX3NoYTI1NiI6IjFiYWI1MmRiNWE3NDY1NTdjM2Zm
N2E2NGU3ZmRlYjc5ZTdmN2Y3ZDMwMTYzMjI5NTVhOTUxOTc5YmUyMjFiN2UiLCJ0cnVuY2F0ZWQi
OmZhbHNlfSx7ImlkIjoiYW5kcm9pZC1lMmUiLCJhcmd2IjpbImJ1biIsInJ1biIsImUyZTphbmRy
b2lkIl0sImV4aXRfY29kZSI6MCwic3RvcCI6ImV4aXRlZCIsImR1cmF0aW9uX21zIjoyMDc4MzUs
InN0ZG91dF9zaGEyNTYiOiJiNTQ0MTc0M2UyZDE5OTBmOGYyMjRlNzI4NGQwMDlmMTcyN2I3NWE0
MzFjOGVlMWUyZDNiMjRmN2JlZTYyNDg2Iiwic3RkZXJyX3NoYTI1NiI6ImJlNjAzMWIwNjUzZTU2
MDI1NDVmNjk5OTYzYTMyOThkOTM2MTY5ZWQ2OGNmMzk4ZTFmMWUxYWQ2Mjk0ZjU4NjUiLCJ0cnVu
Y2F0ZWQiOmZhbHNlfV0sInNlcnZpY2VzIjp7InBvc3RncmVzIjpmYWxzZSwiczMiOmZhbHNlfSwi
cGxhdGZvcm0iOiJtYWNvcy1hYXJjaDY0IiwidG9vbGNoYWluIjpbIjEuNC4yIiwidjI0LjIxLjAi
LCJnaXQgdmVyc2lvbiAyLjUwLjEgKEFwcGxlIEdpdC0xNTUpIl0sInRyZWVfdW5jaGFuZ2VkX2Fm
dGVyIjp0cnVlfQ==

@boorad
boorad marked this pull request as draft October 26, 2026 17:11
Replace the reduced fork with a focused default-off profile, retain all upstream APIs and infrastructure, and enable the profile consistently in RNQC native builds and the compiler gate.
@boorad

boorad commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator Author

AgentSCM icon Local validation: reported pass

Source: github.com/margelo/react-native-quick-crypto at 642518e52953

Worker-reported; the verifier checks the signature and source bindings, not whether commands ran.

Coverage: 2/2 checks reported; 7 omissions.

⚠️ Missing services: PostgreSQL, S3. Coverage is incomplete.

Coverage omissions (7)
  • ignored tests
  • windows
  • container smoke
  • hub end-to-end
  • live execution
  • postgres tests
  • s3 tests
Source and environment
  • Repository: github.com/margelo/react-native-quick-crypto
  • Commit: 642518e529538a9dc1d4685205243fcdd5597619
  • Tree: bd0961fa02f3845a44a8b04a310acca1142a18b2
  • Base ref: main
  • Base tip: 10ef702fd3c289576ecee701745dbe241894439d
  • Merge base: 10ef702fd3c289576ecee701745dbe241894439d
  • Services: PostgreSQL=false, S3=false
  • Platform: macos-aarch64
  • Toolchain: 1.4.2, v24.21.0, git version 2.50.1 (Apple Git-155)
Command results
  • ios-e2e: Exited, exit 0, 120727 ms
  • android-e2e: Exited, exit 0, 84642 ms
Signed machine-readable evidence

The exact signed bytes are preserved below for verification and audit tooling.

eyJ2ZXJzaW9uIjoxLCJhbGdvcml0aG0iOiJlZDI1NTE5IiwicGF5bG9hZCI6eyJ2ZXJzaW9uIjox
LCJyZXF1aXJlbWVudF9pZCI6ImxvY2FsLXZhbGlkYXRpb24iLCJjaGVja19raW5kIjoiY29tbWFu
ZC92MSIsInN1YmplY3QiOnsicmVwb3NpdG9yeSI6ImdpdGh1Yi5jb20vbWFyZ2Vsby9yZWFjdC1u
YXRpdmUtcXVpY2stY3J5cHRvIiwiY2hhbmdlIjp7InJlcG9zaXRvcnkiOiJnaXRodWIuY29tL21h
cmdlbG8vcmVhY3QtbmF0aXZlLXF1aWNrLWNyeXB0byIsImlkIjoiZ2l0LWNvbW1pdDo2NDI1MThl
NTI5NTM4YTlkYzFkNDY4NTIwNTI0M2ZjZGQ1NTk3NjE5In0sImNoYW5nZV92ZXJzaW9uIjoxLCJj
b250ZXh0X2RpZ2VzdCI6ImY0NzAzMGIxZjI5OTk1MGE4OWU3ZjkzYzA2YzBlMmE1YmRjMmYwOTg4
Yjg3NWFmMDEzODZlMTZmOTZlYTYwMDMiLCJyZXZpc2lvbiI6Ijc2N2EzNTQ4MTU1ODdiNzExYjI2
N2RjODg2YjM2NjNmZWFiODgzMmNjYzVkYjAyNThmM2I5MjIyYTZhOTA4NTMiLCJyZWNpcGVfc2hh
MjU2IjoiMmFlN2E3MmMxY2EzOWE5ZTNjY2MyOThiYjQyZmY3OWZlZTFlZWRjMWMzMjQzNmUyNDcx
YzQ3YWI5Nzg4N2VlZiIsInRvb2xjaGFpbl9zaGEyNTYiOiI3MGVmZmY0NDU2NDI3MTc3NDc0OWI1
NWM0MTdhOWJkMGVkM2JmMDlmODRlYzc0YTczYzNjMDAyMGE2NTZlNjdkIiwiZW52aXJvbm1lbnRf
c2hhMjU2IjoiNTBlZDhkOWY1ODBhMzZiZGE2MDhkYWZlMDViZjU4NjgwNGRiNmYzN2Q2MGMyYzkz
ZjZkYTU2ZDMwNThkYjkxMCJ9LCJpbnN0YWxsZWRfcG9saWN5X3NoYTI1NiI6ImM3Y2YwZDc5ZDYy
NGVmMDM5NWY5ZTY5NDU5MTY1NDFjNDlkMTFkYTllN2M3ODY1Y2Y0MDhjOTdjY2U4ZGRiNGMiLCJp
bnN0YWxsZWRfcG9saWN5X2Vwb2NoIjoxLCJpc3N1ZXJfcmVnaXN0cnlfc2hhMjU2IjoiYjJhMWFj
NjMxYzRkYjRhYjk2ZmI1ODg5NTAxZDljZGUyNzljNTk2MzcxZjgzMDRlMmVlMjZjY2FmZGJhYmY2
ZCIsImF0dGVtcHRfaWQiOiI1NzJkMWNmYjAyMWFhMjM1NjY5MjVkNTQ1N2UwMDhhOCIsInJ1bl9n
ZW5lcmF0aW9uIjoxLCJyZXF1ZXN0X3NoYTI1NiI6IjJhZTdhNzJjMWNhMzlhOWUzY2NjMjk4YmI0
MmZmNzlmZWUxZWVkYzFjMzI0MzZlMjQ3MWM0N2FiOTc4ODdlZWYiLCJsaW1pdHNfc2hhMjU2Ijoi
MmFlN2E3MmMxY2EzOWE5ZTNjY2MyOThiYjQyZmY3OWZlZTFlZWRjMWMzMjQzNmUyNDcxYzQ3YWI5
Nzg4N2VlZiIsInRlcm1pbmFsX3JlY29yZF9zaGEyNTYiOiI0Yzk4MWU0MTBlNTRlZjZiN2Q5NjA5
MDBjNTY1MzQ2OGUyMjFjNzYwMWQ5YWFhMGY2MTM0ODcyY2FkNmY5MDNkIiwiaXNzdWVyX2lkIjoi
Ym9vcmFkIiwia2V5X2lkIjoiNmMxYzgxNjk4MjA4ZTZjMjg0OGQ3YTEwYWMyZWM4NTA0NjhhNjVj
MzZkMWFhYjUzNTQwZDhmOGM4NmNhMjViOCIsImlzc3VlZF9hdF9tcyI6MTc5MzAzNjk0MzMzOCwi
ZXhwaXJlc19hdF9tcyI6MTc5NTYyODk0MzMzOCwidGVybWluYWxfc3RhdGUiOiJzdWNjZXNzIiwi
cmVjb3Zlcnlfc3RhdGUiOiJub3RfcmVxdWlyZWQiLCJvdXRjb21lIjoicGFzcyIsImV4ZWN1dGlv
bl9iYXNpcyI6Indvcmtlcl9hc3NlcnRlZCIsImNvdmVyYWdlIjp7InNjb3BlIjpbImlvcy1lMmUi
LCJhbmRyb2lkLWUyZSJdLCJleHBlY3RlZF9jb3VudCI6Miwib2JzZXJ2ZWRfY291bnQiOjIsImlu
dmVudG9yeV9jb21wbGV0ZSI6ZmFsc2UsIm9taXNzaW9ucyI6WyJpZ25vcmVkIHRlc3RzIiwid2lu
ZG93cyIsImNvbnRhaW5lciBzbW9rZSIsImh1YiBlbmQtdG8tZW5kIiwibGl2ZSBleGVjdXRpb24i
LCJwb3N0Z3JlcyB0ZXN0cyIsInMzIHRlc3RzIl19LCJkZXBlbmRlbmNpZXMiOlt7ImlkZW50aXR5
IjoiYnVuLmxvY2siLCJzdGF0ZSI6eyJzdGF0ZSI6InJlc29sdmVkIiwicmV2aXNpb24iOiIzMmMy
YzM5ZGVhNWNjNjdlYWQwYTY4ZmE3MWFhZWVlMTIxYTZjYmE0MjQwMWVlZmU0NzQwOGM1NjkzMTRj
OGFjIn19LHsiaWRlbnRpdHkiOiJwYWNrYWdlLmpzb24iLCJzdGF0ZSI6eyJzdGF0ZSI6InJlc29s
dmVkIiwicmV2aXNpb24iOiI3ODUwZjM4Nzg1ZTBjNGZkMDcwMjlkNWE1M2IzZjMwNzIzZWYzNmU5
ODI4NWYxOTFjNWY0NWNiNzM5ZDc2OGU1In19XSwiYXJ0aWZhY3RzIjpbeyJhcnRpZmFjdF9pZCI6
InJlY29yZCIsIm1lZGlhX3R5cGUiOiJhcHBsaWNhdGlvbi9qc29uIiwic2hhMjU2IjoiNGM5ODFl
NDEwZTU0ZWY2YjdkOTYwOTAwYzU2NTM0NjhlMjIxYzc2MDFkOWFhYTBmNjEzNDg3MmNhZDZmOTAz
ZCIsImJ5dGVzIjoxMTQ5LCJjbGFpbWVkX2F2YWlsYWJpbGl0eSI6ImZ1bGwifV0sIm91dHB1dCI6
eyJzdGRvdXRfc2hhMjU2IjoiZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFl
NDY0OWI5MzRjYTQ5NTk5MWI3ODUyYjg1NSIsInN0ZG91dF9ieXRlcyI6MCwic3RkZXJyX3NoYTI1
NiI6ImUzYjBjNDQyOThmYzFjMTQ5YWZiZjRjODk5NmZiOTI0MjdhZTQxZTQ2NDliOTM0Y2E0OTU5
OTFiNzg1MmI4NTUiLCJzdGRlcnJfYnl0ZXMiOjAsInRydW5jYXRlZCI6ZmFsc2V9fSwic2lnbmF0
dXJlX2hleCI6IjhlODM2OGE2MmFhMmIyMDBhY2VhNGZlMGQ4YmMwNmM0NmFmNDMwZDZhNTQyMTBl
ZWNlNWIzOGVmODZjYjA2NGNlMGMyM2FlN2MzNTkyM2M0OWY5Y2FmNjUzZjNiN2U3ZDRmNWExNWJm
MTlkNjEwNWY3M2QzOThhZWY1ZmI1YjAwIn0=
eyJzdWJqZWN0Ijp7InJlcG9zaXRvcnkiOiJnaXRodWIuY29tL21hcmdlbG8vcmVhY3QtbmF0aXZl
LXF1aWNrLWNyeXB0byIsImNvbW1pdCI6IjY0MjUxOGU1Mjk1MzhhOWRjMWQ0Njg1MjA1MjQzZmNk
ZDU1OTc2MTkiLCJ0cmVlIjoiYmQwOTYxZmEwMmYzODQ1YTQ0YThiMDRhMzEwYWNjYTExNDJhMThi
MiJ9LCJjb250ZXh0Ijp7ImJhc2VfcmVmIjoibWFpbiIsIm1lcmdlX2Jhc2UiOiIxMGVmNzAyZmQz
YzI4OTU3NmVjZWU3MDE3NDVkYmUyNDE4OTQ0MzlkIn0sImJhc2VfdGlwIjoiMTBlZjcwMmZkM2My
ODk1NzZlY2VlNzAxNzQ1ZGJlMjQxODk0NDM5ZCIsInJlY2lwZV9zaGEyNTYiOiIyYWU3YTcyYzFj
YTM5YTllM2NjYzI5OGJiNDJmZjc5ZmVlMWVlZGMxYzMyNDM2ZTI0NzFjNDdhYjk3ODg3ZWVmIiwi
cmVzdWx0cyI6W3siaWQiOiJpb3MtZTJlIiwiYXJndiI6WyJidW4iLCJydW4iLCJlMmU6aW9zIl0s
ImV4aXRfY29kZSI6MCwic3RvcCI6ImV4aXRlZCIsImR1cmF0aW9uX21zIjoxMjA3MjcsInN0ZG91
dF9zaGEyNTYiOiIwNjQ3NjM4YTBlOTNmNTIxNDMyM2NhZWFiZjNmNjRiYTQyNGQ5ZjcyYWJmZDhh
MTE0Mjg1ODQ4YTc3NTIxOTU1Iiwic3RkZXJyX3NoYTI1NiI6IjFiYWI1MmRiNWE3NDY1NTdjM2Zm
N2E2NGU3ZmRlYjc5ZTdmN2Y3ZDMwMTYzMjI5NTVhOTUxOTc5YmUyMjFiN2UiLCJ0cnVuY2F0ZWQi
OmZhbHNlfSx7ImlkIjoiYW5kcm9pZC1lMmUiLCJhcmd2IjpbImJ1biIsInJ1biIsImUyZTphbmRy
b2lkIl0sImV4aXRfY29kZSI6MCwic3RvcCI6ImV4aXRlZCIsImR1cmF0aW9uX21zIjo4NDY0Miwi
c3Rkb3V0X3NoYTI1NiI6ImZjZGM3ZWE0YzRlMzYyMGRjYjkzNDI0NzI0MTA4YWI1NWI3ZGI4OTY3
YWUwNDU1NTBiYmU4M2JmNTJkOTRkYzAiLCJzdGRlcnJfc2hhMjU2IjoiYmU2MDMxYjA2NTNlNTYw
MjU0NWY2OTk5NjNhMzI5OGQ5MzYxNjllZDY4Y2YzOThlMWYxZTFhZDYyOTRmNTg2NSIsInRydW5j
YXRlZCI6ZmFsc2V9XSwic2VydmljZXMiOnsicG9zdGdyZXMiOmZhbHNlLCJzMyI6ZmFsc2V9LCJw
bGF0Zm9ybSI6Im1hY29zLWFhcmNoNjQiLCJ0b29sY2hhaW4iOlsiMS40LjIiLCJ2MjQuMjEuMCIs
ImdpdCB2ZXJzaW9uIDIuNTAuMSAoQXBwbGUgR2l0LTE1NSkiXSwidHJlZV91bmNoYW5nZWRfYWZ0
ZXIiOnRydWV9

@boorad
boorad marked this pull request as ready for review October 26, 2026 18:01
@boorad
boorad merged commit 06a2f7e into main Oct 26, 2026
12 of 14 checks passed
@boorad
boorad deleted the fix/1081-ncrypto-openssl-deprecations branch October 26, 2026 18:12

This branch was successfully deployed

1 active deployment
Preview — 642518e5 Deployed Oct 26, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Android] Deprecated OpenSSL API warnings in vendored ncrypto

1 participant