Openssl加密库中是否有一个函数可以安全地输入密码?

时间:2012-05-12 22:56:59

标签: c linux cryptography passwords openssl

我正在使用Openssl 0.9.8k,在我的项目中使用EVP API来使用AES256CBC加密/解密数据。

现在我正在使用fgets(pwd,pwd_len,stdin)从用户那里获取密码输入。

openssl是否有任何可用于安全密码输入的功能。 我尝试在网上搜索但找不到任何内容。(openssl文档本身是不够的)

对任何文档的任何建议或指示都将受到高度赞赏。

注意:: 如果Openssl没有这样的功能,有人可以建议我使用fgets从stdin获取当前方法中的密码可以利用的可能的安全漏洞我可以为此编写自己的自定义函数。

非常感谢

1 个答案:

答案 0 :(得分:2)

如果您使用pem例程打开受密码保护的文件,

openssl将提示用户输入密码 - 它在http://www.openssl.org/docs/crypto/pem.html中描述(搜索“提示”)。这些函数还允许您指定执行提示的回调例程;默认回调是提示用户的回调。

我找不到的是默认回调例程的任何文档 - 我认为你需要在代码中寻找。但如果您只是想阅读受密码保护的文件,那么上述内容就足够了。