Trust, but verify — every audit conclusion is published here.
Overall: the project's security posture is sound. Core mechanisms are properly implemented: Hive sensitive-data encryption, sandbox isolation, enforced HTTPS. Main issues center on Android build-machine key management, a few Hive boxes outside the encryption scope, and password input in the plugin layer.
The following mechanisms passed cross-file verification and are confirmed safe and effective:
| # | Mechanism | Verification path | Status |
|---|---|---|---|
| 1 | Hive encryption key hardware protection | FlutterSecureStorage → Android Keystore / iOS Keychain | ✓ |
| 2 | 7/7 sensitive Boxes encrypted | cross-checked in main.dart; sensitive boxes all opened with cipher | ✓ |
| 3 | Backups forcibly encrypted | no password → UnencryptedBackupException | ✓ |
| 4 | Backup encryption algorithm | PBKDF2 (300k rounds) + AES-256-GCM | ✓ |
| 5 | Zero logging overhead in release | all log output inside kDebugMode | ✓ |
| 6 | WebDAV HTTPS enforced | HTTP configurations rejected outright | ✓ |
| 7 | Sandbox eval / Function disabled | full Object.defineProperty coverage | ✓ |
| 8 | Sandbox CSP injection | meta tag + HTTP header dual path | ✓ |
| 9 | Path traversal protection | security checks on plugin import and backup restore | ✓ |
| 10 | Other confirmed items | backup cipher v3, atomic restore flow, FLAG_SECURE on sensitive pages, etc. | ✓ |