我正在使用InnoDB MySQL引擎。
我在存储过程中进行加密,然后写入表。
似乎是在记录对DB的低级别更改。该数据已经加密(如果需要的话)。
据我所知,有两种不同类型的日志可以记录对DB的更改:
重做日志(
。
(资料来源:http://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_ib_logfile)
谢谢。
编辑:
找到关于二进制日志的良好链接:http://dev.mysql.com/doc/refman/5.6/en/binary-log.html
但我还是想知道重做日志的事。
发布于 2011-11-04 18:56:52
也许是吧。如果您的MySQL服务器被设置为将所有语句记录到常规查询日志,或者如果启用了二进制日志记录并且没有设置为使用基于行的格式,那么将在那里记录明文和键。
此外,在数据库中执行加密/解密可能会将您的数据暴露给可以修改存储过程的攻击者。这通常不是个好主意,我会避免的。
发布于 2012-03-09 14:16:44
最好对应用程序中的数据进行加密。从那里开始的任何登录都会加密数据。我们使用PHP加密使用mcrypt。
$key = mhash(MHASH_MD5, $key);
$cipher = MCRYPT_RIJNDAEL_256;
$vector = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg, MCRYPT_MODE_ECB), MCRYPT_RAND);
$CC_number = mcrypt_encrypt($cipher, $key, "4111111111111111", MCRYPT_MODE_CBC, $vector);
$CC_name = mcrypt_encrypt($cipher, $key, "Prion Interactive", MCRYPT_MODE_CBC, $vector);对于PCI法规,您确实需要有一个单独存储加密密钥的separate key server。PCI审计师对于在CC data绑定日志中传递MySQL非常犹豫,即使您使用的是基于行的复制。对一个人来说要改变这种状况太容易了。
发布于 2011-11-04 18:55:30
你认为明文将被记录在什么知识的基础上?存储过程到底是做什么的?
https://stackoverflow.com/questions/8014290
复制相似问题