加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何使用PHP或mySQL实现双向加密?

发布时间:2021-07-06 04:17:10 所属栏目:大数据 来源: https://www.jb51.cc
导读:我正在尝试安全地存储OAuth令牌和密钥,我知道最佳做法是加密这些并将其视为用户密码.我怎么能这样做,同时仍然能够解密它们并使用它们来对Twitter进行API调用(我只是哈希我的密码,这对于OAuth密钥不起作用,因为散列是单向的)? 我愿意在MysqL或PHP中这样做,所

我正在尝试安全地存储OAuth令牌和密钥,我知道最佳做法是加密这些并将其视为用户密码.我怎么能这样做,同时仍然能够解密它们并使用它们来对Twitter进行API调用(我只是哈希我的密码,这对于OAuth密钥不起作用,因为散列是单向的)?

我愿意在MysqL或PHP中这样做,所以我会欣赏每种方法中的示例或优点/缺点.

解决方法:

您可以在PHP(http://php.net/manual/en/book.mcrypt.php)中使用mcrypt库,它支持所有主要的加密算法.我建议你使用AES-128,这是一种行业标准.只需确保将密钥存放在安全的位置即可.然后,您可以加密数据,将其转换为base64并将其存储在数据库中.无论何时需要使用数据,只需从数据库中检索它并应用逆操作即可.

我不熟悉MysqL的工作原理.也许有可能存储加密数据并将密钥存储在安全的地方?

从安全的角度来看,PHP方法会更好,因为进出数据库的数据仍然是加密的.

请不要使用XOR密码,它充其量是可笑的.单个泄漏的普通密文对将显示您的完整密钥(明文XOR密文=密钥).当用作one-time pad时,这只提供了完美的安全性.当然你不能使用它,因为现在你必须为每个数据使用不同的密钥,并且必须安全地存储所有那些一次性密码.也许你可以使用一些加密;)……? (在这里插入无限循环).

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读