【发布时间】:2020-12-19 19:29:59
【问题描述】:
我在一个 c++ 项目中使用 SQLCipher。它有多个用户,每个用户都必须拥有自己的数据库凭据。 SQLCipher 可以为我做这个吗?如果是,请留下示例代码。如果没有,请分享您对如何操作的看法。
【问题讨论】:
标签: c++ sqlite authentication database-connection sqlcipher
我在一个 c++ 项目中使用 SQLCipher。它有多个用户,每个用户都必须拥有自己的数据库凭据。 SQLCipher 可以为我做这个吗?如果是,请留下示例代码。如果没有,请分享您对如何操作的看法。
【问题讨论】:
标签: c++ sqlite authentication database-connection sqlcipher
不,你不能。看起来 SQLCipher 使用密钥派生函数将您的密码转换为每个 SQLite 数据库页面应用的密钥。
您可以做的是启用多方加密的常用技巧:
k加密数据库;(user, encrypt(k, user_key)) 的元组存储在数据库旁边的文件中。
反过来,user_key 可以使用密钥派生函数从密码生成。【讨论】:
k?