2014-10-12 76 views
1

我使用Xamarin开发iOS和Android应用程序。我已经创建了一个共同的两个平台共同的项目。 因为我使用数据库它的共同点,并把共享项目。我需要加密数据库文件。共享项目中的跨平台数据库加密Xamarin

项目结构就像Tasky

我已经从Xamarin建议的GitHub link中替换了SQLite.cs文件。

没有SQL-密码组件可以用作它的付费组件。

注意:其他方法反而是用C#的AES加密DB文件。

但是,我需要一个很好的方法。

欢迎任何建议。

回答

0

SQLCipher也作为免费社区版提供。多一点工作来自己编译C代码,但不会太糟糕。我必须为我之前的项目之一做这件事,即使我有商业许可证,因为某些功能(数据类型)丢失了。通过导入sqlcipher AAR https://github.com/sqlcipher/sqlcipher

+0

但是,C源本身的转换是另一个长寿命项目。 – vITs 2014-10-14 05:52:29

+0

转换?不,只为Android和iOS编译它。当然,如果一个人没有太多的C经验,编译本身就是一项嘲弄任务。查看我的更新以获取Android版GitHub项目的链接。它应该给你本地的C库。如果您搜索它,也有一个iOS版本。 – SKall 2014-10-14 11:48:31

0

您可以创建xamarin机器人结合项目:

例如在这里,你可以得到SQLCipher机库: https://github.com/sqlcipher/android-database-sqlcipher

SQLite的源代码(包括XCode项目以及)文件和生成的DLL可以用于数据库加密。 签出使用开源sqlcipher社区版本实现的完整示例代码here