无法向数据库插入MCRYPT加密数据
can not insert MCRYPT encrypted data to the database
我正在使用 MCRYPT 加密敏感数据并将它们保存到数据库中。加密数据看起来像这样(加密数据上面是非加密数据)
然后像往常一样在文本字段 utf8_unicode_ci 中插入到 MySQL PDO 数据库,但大多数时候结果是空的。有时它只保存第一个字符。那么如何将加密后的值保存到数据库中呢?
$stmt=$db->prepare("insert into TABLE (myData) VALUES (:enc) ");
$stmt->bindParam(':enc',$encrypted);
$stmt->execute();
额外编码base64
加密后编码
base64_encode($encrypted)
解密前解码
base64_decode($encrypted)
你从 pdo 得到异常吗?
根据这些小信息,我猜您想将数据保存到 varchar 字段中。
您可能需要将 varchar 字段更改为 varbinary 字段。
我正在使用 MCRYPT 加密敏感数据并将它们保存到数据库中。加密数据看起来像这样(加密数据上面是非加密数据)
然后像往常一样在文本字段 utf8_unicode_ci 中插入到 MySQL PDO 数据库,但大多数时候结果是空的。有时它只保存第一个字符。那么如何将加密后的值保存到数据库中呢?
$stmt=$db->prepare("insert into TABLE (myData) VALUES (:enc) ");
$stmt->bindParam(':enc',$encrypted);
$stmt->execute();
额外编码base64
加密后编码
base64_encode($encrypted)
解密前解码
base64_decode($encrypted)
你从 pdo 得到异常吗?
根据这些小信息,我猜您想将数据保存到 varchar 字段中。
您可能需要将 varchar 字段更改为 varbinary 字段。