回答
如果您试图加密专用于应用程序的数据,而不是用户,那么您需要访问密钥/令牌/随机数才能解密。除非您正在远程执行加密或使用Android NDK,否则获取密钥/令牌/随机数并解密密钥会很简单。 Apk's没有编译,可以很容易地解压缩,并查看源代码。
你对Java有多了解?您可以使用Android中的所有javax.security
和javax.crypto
类(如Cipher
)来提供数据加密/解密。
请记住,用户可以直接访问SD卡上的文件(通过安装在PC上并浏览或通过文件管理器应用程序),这意味着有可能无法访问要阅读文件中的数据,用户理论上可以删除在那里创建的目录,如果他们这样选择的话......并且这对您的应用程序可能不是犹太教。
此外,真的没有办法简单地将文件夹设置为“加密”并自动为您保存任何文件。您需要创建要使用的目录,然后在写入/读取数据时加密/解密每个文件。
希望有帮助!
嘿这个链接是行不通的 – 2016-01-09 07:40:40
您可以在Android上加密和解密数据,如其他答案中所述。但考虑到“做”会变得更加复杂。
1)使用DES和一个56位的密钥,你不需要在美国的出口许可证。使用AES或TDES 128或256位密钥,你可能需要开始填写文书工作:)
2)除非你想让用户输入一个完全等于你想要种子的密钥大小的密码,然后使用SHA256多哈希密码。
3)您可能需要将密码数据编码为64位字符集(字母大写和小写,数字,+和/)作为密文。这通常需要三个字节的组,将它们扩展为四个字节,并在需要时用=作为填充。只需在网上搜索base64编码解码算法即可。
4)您可能希望将LEVEL OF INDIRECTION添加到方案中,以便用户可以在以后更改密码而不更改文件对称密钥。所以有两种加密方式:用随机对称密钥加密文件,然后用用户密码加密随机对称密钥。啊。
- 1. 我们可以加密整个配置文件吗?
- 2. 我可以在Android中创建密码保护的文件夹吗?
- 3. 我们可以在java中加速CPU密集型任务吗?
- 4. 我可以在IIS文件夹中加一个+号吗?
- 5. 我可以在'res'文件夹中添加什么文件夹?
- 6. 我可以在iPad应用程序中加密TSV文件吗?
- 7. ALAssetLibrary可以在Document文件夹中加载图像文件吗?
- 8. 我可以在Android内部存储上创建文件夹吗?
- 9. 我们可以下载c#中的多个文件和/或文件夹吗#
- 10. 我们可以在android视频视图中增加音量吗?
- 11. 我们可以在密钥库中加载多个证书和密钥吗?
- 12. 我可以在Android中使用AWS KMS加密进行客户端加密吗?
- 13. 您可以在Eclipse Android项目中添加子文件夹以布局吗?
- 14. 我可以在我的DropBox文件夹中运行(XAMPP)MySQl吗?
- 15. 我们可以在Android 2.2中安装印地文字体吗?
- 16. magento中/ app/code/local /文件夹的用途是什么?我们可以把我们的核心PHP文件吗?
- 17. 我们可以在TLF中添加UI组件吗
- 18. 我们可以在日历中加载JSON数据(事件)吗?
- 19. 我们可以从pod文件中删除文件吗?
- 20. 我们可以将通知保存到iphone/ipad的SMS文件夹中吗?
- 21. 我们可以在C++/VC++中访问ODB ++文件(PCB)吗?
- 22. 我们可以使用akka.event.Logging在文件中写入日志吗?
- 23. 我们可以在休眠中有多个cfg文件吗?
- 24. 我们可以在QML文件中声明全局变量吗?
- 25. 我的Windows域管理员可以解密我的DPAPI加密文件吗?
- 26. 我可以加密我的android和ios的源代码吗?
- 27. Android,我们可以在不同的xml文件中重复使用id吗?
- 28. Drupal:我可以手动将文件放入我的“文件”文件夹中吗?
- 29. 我们可以在android
- 30. 我们可以在android中使用svg图像吗?如果我们可以使用然后如何在android
这并不是说NDK不会遇到类似的反汇编问题,但与dex文件相比,它并不是微不足道的。 – 2011-06-07 13:56:11
不要这么快猜测OP想要做什么。也许密码是由用户输入的,在这种情况下,你的任何参数都是无效的。 – Felix 2011-06-07 13:56:39
诚然,如果用户提供了更多信息,我们就会知道。 – 2011-06-07 13:58:25