为了账号安全,请及时绑定邮箱和手机立即绑定

双向加密:我需要存储可以检索的密码。

双向加密:我需要存储可以检索的密码。

宝慕林4294392 2019-07-03 11:23:49
双向加密:我需要存储可以检索的密码。我正在创建一个存储密码的应用程序,用户可以检索和查看密码。密码是为硬件设备,所以检查与散列是不可能的。我需要知道的是:如何在PHP中加密和解密密码?密码加密最安全的算法是什么?我把私钥存放在哪里?要求用户在需要密码解密时输入私钥,而不是存储私钥,这是个好主意吗?(此应用程序的用户可以信任)密码可以什么方式被窃取和解密?我需要知道什么?
查看完整描述

3 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

如何在PHP中加密和解密密码?通过实现多种加密算法之一。(或使用多个库中的一个)

密码加密最安全的算法是什么?有很多不同的算法,没有一个是100%安全的。但是它们中的许多对于商业甚至军事目的来说都是足够安全的。

我把私钥存放在哪里?如果您已决定实现公钥密码算法(例如RSA),则不存储私钥。用户有私钥。您的系统有公钥,可以存储在任何您想要的地方。

要求用户在需要密码解密时输入私钥,而不是存储私钥,这是个好主意吗?(此应用程序的用户可以信任)好吧,如果你的用户能记住可笑的长素数,那么-是的,为什么不呢?但是一般来说,您需要想出一个系统,它将允许用户将他们的密钥存储在某个地方。

密码可以什么方式被窃取和解密?我需要知道什么?这取决于所使用的算法。但是,始终要确保您没有向用户发送未加密的密码,也不从用户发送密码。要么在客户端加密/解密它,要么使用https(或用户其他加密方法来保护服务器和客户端之间的连接)。

但是,如果您所需要的只是以加密的方式存储密码,我建议您使用一个简单的XOR密码。该算法的主要问题是容易被频率分析打破。然而,由于密码一般不是由英文文本的长段组成的,我认为你不应该担心它。XOR密码的第二个问题是,如果您有加密和解密形式的消息,您可以很容易地找到加密的密码。同样,在您的情况下也不是什么大问题,因为它只影响已经被其他方法破坏的用户。


查看完整回答
反对 回复 2019-07-03
  • 3 回答
  • 0 关注
  • 692 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信