Skip to content

[SECURITY] Replace Tink and Scrypt with native Android Keystore and A…#783

Merged
prathieshna merged 1 commit intoNEXT-WITHOUT-STORACHAfrom
NEXT-WITHOUT-STORACHA-LITE
Apr 26, 2026
Merged

[SECURITY] Replace Tink and Scrypt with native Android Keystore and A…#783
prathieshna merged 1 commit intoNEXT-WITHOUT-STORACHAfrom
NEXT-WITHOUT-STORACHA-LITE

Conversation

@prathieshna
Copy link
Copy Markdown

…ES-256-GCM

  • Refactor TinkVaultCredentialStore and PasscodeRepository to use native AndroidKeyStore and Cipher (AES/GCM/NoPadding) for encryption, removing the Google Tink dependency.
  • Remove ScryptHashingStrategy and associated Bouncy Castle dependencies.
  • Replace ML Kit barcode scanning with ZXing in QRImageAnalyzer to reduce binary size (~20MB saving).
  • Update app/proguard-rules.pro with comprehensive rules for Room, Koin, Retrofit, Serialization, and native JNI bridges.
  • Update app/build.gradle.kts:
    • Enable ProGuard minification and resource shrinking for release builds.
    • Restrict NDK ABIs to arm64-v8a and armeabi-v7a.
    • Apply locale filters to strip unused resources.
    • Remove several unused dependencies (Guava, Picasso, ML Kit, Bouncy Castle, etc.).
  • Modify IaConduit to stop uploading C2PA manifests to Internet Archive and update MediaPicker to only generate C2PA manifests for in-app camera captures.
  • Improve FolderBar UI with updated typography and error colors for destructive actions.
  • Bump versionCode to 30031 and versionName to 4.0.10.

…ES-256-GCM

- Refactor `TinkVaultCredentialStore` and `PasscodeRepository` to use native `AndroidKeyStore` and `Cipher` (AES/GCM/NoPadding) for encryption, removing the Google Tink dependency.
- Remove `ScryptHashingStrategy` and associated Bouncy Castle dependencies.
- Replace ML Kit barcode scanning with ZXing in `QRImageAnalyzer` to reduce binary size (~20MB saving).
- Update `app/proguard-rules.pro` with comprehensive rules for Room, Koin, Retrofit, Serialization, and native JNI bridges.
- Update `app/build.gradle.kts`:
    - Enable ProGuard minification and resource shrinking for release builds.
    - Restrict NDK ABIs to `arm64-v8a` and `armeabi-v7a`.
    - Apply locale filters to strip unused resources.
    - Remove several unused dependencies (Guava, Picasso, ML Kit, Bouncy Castle, etc.).
- Modify `IaConduit` to stop uploading C2PA manifests to Internet Archive and update `MediaPicker` to only generate C2PA manifests for in-app camera captures.
- Improve `FolderBar` UI with updated typography and error colors for destructive actions.
- Bump `versionCode` to 30031 and `versionName` to 4.0.10.
@prathieshna prathieshna merged commit 5aca188 into NEXT-WITHOUT-STORACHA Apr 26, 2026
1 check passed
Copy link
Copy Markdown

@github-advanced-security github-advanced-security AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

detekt found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

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.

2 participants