我有以下的加密代碼:PHP AES加密256字符怪異
function encryptData($value){
$key = "7685647tfyr65413285746352413sgfh";
$text = $value;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv);
return $crypttext;
}
echo 'Encrpt: ' . encryptData('This is just a test');
輸出是:Encrpt:yUBF3 * LG-ۅd8f_X/O
我打算將它放入一個mySQL數據庫,但不確定它是否會接受這些類型的奇怪字符?
我是否正確地做這件事?
base64_encode並在將其發送到數據庫之前將其添加進去 –
那些不是字符。它是您的輸出方法無法表示的二進制數據。它可以以這種方式存儲在接受二進制數據的列中,或者可以通過'base64_encode()'將其編碼爲ascii。 –