密码基础加密OpenSSL C++

问题描述:

我正在创建一个用于医疗环境的应用程序的团队。我们希望存储使用AES加密的本地数据,这些数据基于存储在SQLite数据库中的密码(散列和腌制)。这样做似乎没有太多的信息。我错过了一招吗?密码基础加密OpenSSL C++

编辑:

正如我似乎越来越下降投票这里是一些什么我已经知道了。

我假设我需要使用PBKDF2密钥派生(见SO here)。然后我需要按照this answer的方法做一些事情。我的问题是,所有这些都是C代码,它不利用任何C++的OOP细节。我希望我缺少一些用于OpenSSL或其他第三方库的漂亮的C++包装,我可以使用它来编写干净,可读和OO代码来解决问题。

P.S.由于这是Uni的一个软件工程项目,并且该软件的收件人是慈善机构,所以我没有为这个应用程序付费。

+0

我在想,倒票来自一个相当模糊的问题。一些事情:所以你加密数据是好的,那么加密的密码怎么样,或者(请不要...)存储? – 2013-02-15 11:33:29

+0

我在原始文章(预编辑)中声明密码存储在使用盐腌SHA256的SQLite数据库散列中。 应用程序启动时有一个登录界面,它们输入密码,该密码使用SQLite数据库进行验证,然后附加到用户对象并用于解密数据。 – Prydie 2013-02-15 12:01:30

+0

对不起,您好,我刚刚在一个行业工作中受到了污染,在这个行业中,我几乎没有听过人们对加密和密钥存储的态度。好的,所以用户输入每次会话都很好。对我来说,你似乎是在安全的正确轨道上。至于支持库取决于你的目标是什么,为C库创建一个C++包装器总是一个选项。 – 2013-02-15 12:34:33

你现在的问题似乎集中在面向对象的C++加密库上。对于这个问题,我可以推荐Botan。它似乎专注于现代计算算法并包含PBKDF2。

请注意,我不能担保此库的安全性,我没有亲自使用或评估过它。

+0

谢谢,这看起来非常接近我后。 – Prydie 2013-02-15 12:02:43