嵌入式SQL数据库加密?

时间:2016-03-25 05:19:41

标签: sql .net database embedded-database

我正在寻找可以使用C#Winforms应用程序分发的SQL数据库引擎。要求是:

  
      
  1. 将存储约1GB的文本(在任何压缩之前测量)。
  2.   
  3. 数据库必须加密,加密密钥将由应用程序在运行时提供。
  4.   
  5. 压缩(加密之前)会很好,因此可以通过低带宽网络远程替换损坏的数据库   连接。
  6.   
  7. 可靠性,替换损坏的数据库可能需要进行昂贵的现场访问。
  8.   
  9. 许可成本和支持成本低。
  10.   
  11. 用户只能通过应用程序访问数据,因此不需要花哨的UI。
  12.   

我考虑的选项:

  
      
  1. Sybase SQL Anywhere - 好的,但不是"免费"。
  2.   
  3. MS SQL Server Express - 没有全数据库加密!
  4.   
  5. SQLite - 加密需要许可证付款吗?
  6.   
  7. VistaDB - 不是"免费"。
  8.   

还有哪些其他产品符合要求?

1 个答案:

答案 0 :(得分:1)

获取Visual Studio“ SQLite / SQL Server Compact Toolbox ”扩展。使用这个:

来自Nuget的

Microsoft.SqlServer.Compact 将创建加密数据库,前提是您手动运行命令

Create Database "something.sdf" databasepassword 'somepassword' 

在扩展程序的查询窗口中。

来自Nuget的

System.Data.SQLite.Core 将使用加密数据库,前提是您使用上述扩展来创建数据库并在数据库创建时键入密码。