尝试编写一些将加密或解密文件的函数,并使用此处的类来尝试实现此目的:
http://www.itnewb.com/v/PHP-Encryption-Decryption-Using-the-MCrypt-Library-libmcrypt
下面的加密函数似乎有效,因为它似乎加密文件并将其放在目标目录中.我现在正试图解密该文件,它只是死于"无法完成解密"的消息(在那里编码...)在php错误日志中没有任何内容,所以我不确定它为什么会失败,但由于mcrypt对我来说是全新的,我更倾向于相信我在这里做错了...
以下是功能:
//ENCRYPT FILE
function encryptFile() {
global $cryptastic;
$pass = PGPPASS;
$salt = PGPSALT;
$key = $cryptastic->pbkdf2($pass, $salt, 1000, 32) or die("Failed to generate secret key.");
if ($handle = opendir(PATH.'/ftpd')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$newfile = PATH.'/encrypted/'.$file.'.txt';
$msg = file_get_contents(PATH.'/ftpd/'.$file);
$encrypted = $cryptastic->encrypt($msg, $key) or die("Failed to complete encryption.");
$nfile = fopen($newfile, 'w');
fwrite($nfile, $encrypted);
fclose($nfile);
unlink(PATH.'/ftpd/'.$file);
}
}
closedir($handle);
}
//DECRYPT FILE
function …
Run Code Online (Sandbox Code Playgroud) 如果只包含月份和年份,我如何存储信用卡的到期日期?
mysql中的日期字段接受以下格式:yyyy-mm-dd.使用该格式,没有一天的到期日期无效.
我是否使用varchar?这不妨碍我进行计算以确定卡何时到期以及什么不到期?
我已经阅读了在MySQL数据库中保存信用卡信息?并存储信用卡信息.
我知道存储信用卡信息需要PCI合规,这不是一件容易的事.
这不是这个问题的意思.我的问题如下:
什么是加密用户信用卡的安全方式?想到的最简单和最简单的方法是使用私钥并使用它加密CC.这似乎不太安全,因为密钥必须存储在服务器上,如果攻击者可以获取我的数据库,他们也可能获得密钥.
我希望能够做的是使用该用户密码加密每个CC作为加密过程的一部分.如果有人获得数据库,他们无法解密任何东西,因为密码存储为盐渍哈希.这对于交易购买非常有用 - 用户点击"购买",输入密码作为确认,我解密他们的CC并收取费用.它们的密码仅在请求期间在内存中,并且永远不会写入磁盘.
不幸的是,这对我正在尝试构建的东西不起作用 - 这项服务收取经常性费用(例如,每月一次),无论用户是否在我需要收费时登录.
鉴于这种情况,是否有一种存储用户CC的安全方式?
可能重复:
在MySQL数据库中保存信用卡信息?
我想知道将信用卡详细信息存储到数据库中是否安全.
我开始考虑使用AES128加密它,每个条目都有单独的解密密钥.
但我想知道它是否安全?
我使用hextobin和bintohex来编码和解码它我成功完成了所有这一切但我关心的是安全性.
什么是存储这个细节的IV我有效地完成了所有的编程,但我担心安全我需要采取哪些步骤才能使其安全.
如果我使用专用服务器并使用SSL,是否安全?还有什么我能做的.
Thanx提前