dbk*_*bkk 19 .net c# sqlite encryption file
在.Net/C#中加密SQLite数据库文件的最佳方法是什么?我正在使用sqlite-dotnet2包装器.
有像SQLite加密扩展和SQLite Crypt这样的工具,但两者都是非自由的,而我的项目是在GPL下.
我想要使用的天真方法是让SQLite处理一个临时文件,然后在程序退出时对其进行加密,并覆盖(清零)原始文件.显而易见的缺点是,如果程序崩溃(并且在运行时),则可以访问纯文本DB.
有没有更好的方法来解决这个问题?我可以将加密流传递给包装器(而不是使用SQLiteConnection.CreateFile)吗?
[编辑]也许我在思考这个问题.是否足以在连接字符串中使用密码选项?在这种情况下文件是否会被正确加密(或者它是一些较弱的保护)?
Ed *_*wer 23
我建议使用System.Data.Sqlite包含加密的包装器.它工作得很好,它易于使用,而且它是一个完整的ADO.Net实现.您可以从https://system.data.sqlite.org获取包装器,开发人员将在此论坛上介绍如何使用加密:https://web.archive.org/web/20100207030625/http : // sqlite.phxsoftware.com/forums/t/130.aspx.提示 - 您只需设置密码属性.他还描述了他如何使用论坛中其他地方的Microsoft Crypto API进行加密.
我会尝试http://code.google.com/p/csharp-sqlite/,它是在MIT许可下在C#中重写SQLite 3.6.16.我想调整它会很容易.
编辑:如下面的说明所述,它也支持sqlcipher加密
更新:由于谷歌代码只读了该项目已转移到它自己的网站https://system.data.sqlite.org/index.html/doc/trunk/www/index.wiki
| 归档时间: |
|
| 查看次数: |
37403 次 |
| 最近记录: |