native_armor_vault 1.0.2 copy "native_armor_vault: ^1.0.2" to clipboard
native_armor_vault: ^1.0.2 copied to clipboard

Native code obfuscation for Flutter. Encrypts secrets using rotating XOR and stores them in C++ native layer for better protection against reverse engineering.

1.0.2 #

🔴 Critical Android Build Fixes #

  • BREAKING: Fixed Java keyword conflict in package name
    • Changed from com.native.armor_vault to com.nativearmor.vault
    • native is a reserved keyword in Java - was causing compile errors
  • AGP 8.x compatibility: Added namespace to build.gradle
    • Required for Android Gradle Plugin 8.x+
    • Prevents "Namespace not specified" error
  • Removed deprecated package attribute from AndroidManifest.xml
    • Package now defined in build.gradle (modern approach)

⚠️ Migration Required #

If upgrading from v1.0.0 or v1.0.1:

  1. Run flutter clean
  2. Run flutter pub get
  3. Rebuild your Android app

No code changes needed - package rename is internal!

1.0.1 🎉 #

🔒 Major Security & Stability Improvements #

  • Rotating XOR encryption - Now uses ALL characters of the key
    • Previous versions: Only first character was used (very weak!)
    • Now: Full key rotation for better obfuscation
  • Fixed memory crash - Removed incorrect calloc.free() for static buffers
    • Static memory cannot be freed - was causing crashes!
    • Added explanatory comments in generated code
  • Thread safety - Added thread_local to static buffers
    • Prevents race conditions in multi-threaded apps
    • Each thread gets its own buffer
  • Honest documentation - Clarified this is obfuscation, not military-grade security
    • Added realistic threat model
    • Clear use case guidelines
    • Warnings about limitations

🐛 iOS Bug Fixes #

  • Generator now writes to .symlinks/plugins/ directory
    • Ensures pod install sees C++ files immediately
    • No more manual copying required
  • Simplified podspec - removed complex script_phases

📝 Documentation #

  • Updated README with honest security assessment
  • Added "Known Limitations" section
  • Clear guidance on when to use (and when NOT to use)

⚠️ Breaking Changes #

If upgrading from v0.x:

  1. Run dart run native_armor_vault:generate again
  2. Your secrets will be re-encrypted with rotating XOR
  3. No code changes needed in your app!

0.0.9 #

Bug Fixes #

  • FINAL FIX: iOS symbol not found - Generator writes to .symlinks
    • Generator now writes C++ files directly to .symlinks/plugins/ directory
    • This ensures pod install sees the file immediately
    • Removed complex script_phases - simple and reliable solution
    • Also writes to .dart_tool/ and ios/Classes/ as fallback

0.0.8 #

Bug Fixes #

  • CRITICAL: iOS symbol not found - Fixed with PODS_ROOT
    • Uses $PODS_ROOT/../.. for reliable project root detection
    • Script runs during Xcode build (before_compile)
    • Fallback to ios/Classes/ if .dart_tool/ not found
    • Added debug output showing searched path
    • This version WILL work!

0.0.7 #

Bug Fixes #

  • Attempted fix with SRCROOT (didn't work - wrong path)

0.0.6 #

Documentation #

  • IMPORTANT: Added critical iOS setup instructions to README
    • Clear step-by-step guide for iOS users
    • Highlighted pod install requirement after generate
    • Added warning about "symbol not found" error prevention
    • Improved user experience with explicit instructions

0.0.5 #

Bug Fixes #

  • CRITICAL: iOS "symbol not found" - Final fix with prepare_command
    • Added prepare_command to podspec to copy C++ files before build
    • Generator writes to both .dart_tool/ and ios/Classes/
    • Podspec copies from .dart_tool/ to plugin's Classes/ directory
    • No manual file copying required
    • Works correctly from pub-cache

0.0.4 #

Bug Fixes #

  • CRITICAL: iOS "symbol not found" error (proper fix)
    • Generator now writes C++ files to .dart_tool/native_armor_vault/ios/Classes/
    • Podspec updated to read from .dart_tool directory
    • No manual file copying required
    • Works correctly from pub-cache

0.0.3 #

Bug Fixes #

  • Attempted iOS fix (incomplete - relative path didn't work from pub-cache)

0.0.2 #

Bug Fixes #

  • CRITICAL: Fixed iOS "symbol not found" error
    • Updated podspec to include user's project ios/Classes directory
    • No more manual file copying required
    • Improved user experience significantly

0.0.1 #

  • Initial release
  • XOR encryption for secrets stored in native C++ layer
  • Automated code generation via CLI (dart run native_armor_vault:generate)
  • Support for Android (dynamic library .so)
  • Support for iOS (static linking)
  • FFI bridge for seamless Dart-C++ integration
  • Customizable secret names
  • Example app demonstrating usage
  • Comprehensive documentation
4
likes
0
points
532
downloads

Publisher

unverified uploader

Weekly Downloads

Native code obfuscation for Flutter. Encrypts secrets using rotating XOR and stores them in C++ native layer for better protection against reverse engineering.

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

ffi, flutter, path, yaml

More

Packages that depend on native_armor_vault

Packages that implement native_armor_vault