【发布时间】:2011-06-19 05:23:46
【问题描述】:
我的任务是编写一个加密函数,让我的老板可以轻松地加密各种数据位以进入数据库。这将包括信用卡详细信息银行账户信息。
我以前从未在 PHP 中使用过加密,所以有点担心。
以下是我在 O'reilly 的 Essential PHP Security 的帮助下目前所做的工作: http://pastebin.com/7L2GxPNJ
IV 实际上似乎没有做任何事情,这让我很担心。这是为什么呢?
如果有人可以查看此代码并进行检查,将不胜感激。我和一位朋友谈过,他认为最好将其编写为 PHP 将连接到的另一台服务器上的守护进程,但是这还不能完成目前 - 我只是在关注订单。
目前,有什么可以改进的吗? IV 是怎么回事?
谢谢。
【问题讨论】:
-
有点离题,但是如果您打算存储信用卡详细信息(顺便说一句,这很可能是一个非常非常糟糕的主意),您需要符合 PCI 标准。请参阅pcisecuritystandards.org 了解更多信息。
-
谢谢。它不是一个常规的电子商务应用程序或其他什么,我们正在为一家必须存储详细信息的大公司开发(尽管已经考虑与其他公司、PayPal 等集成)。
-
PHP 版本是多少?你说的 IV 什么都不做是什么意思?
-
5.2.当我注释掉第 78 行,或在那里设置一个随机 IV 时,它似乎没有效果。无论如何它只是解密。
-
在 5.3 之前你需要 srand,但我猜不是 MCRYPT_DEV_URANDOM。还没有想法。
标签: php security cryptography credit-card mcrypt