【问题标题】:can not insert MCRYPT encrypted data to the database无法将 MCRYPT 加密数据插入数据库
【发布时间】:2015-09-02 15:29:39
【问题描述】:

我正在使用 MCRYPT 加密敏感数据并将它们保存到数据库中。加密后的数据是这样的(加密数据上面的非加密数据)

然后像往常一样在文本字段 utf8_unicode_ci 中插入 MySQL PDO 数据库,但大多数时候结果为空。有时它只保存第一个字符。那么如何将加密后的值保存到数据库中呢?

$stmt=$db->prepare("insert into TABLE (myData) VALUES (:enc) ");
$stmt->bindParam(':enc',$encrypted);
$stmt->execute();

【问题讨论】:

标签: php mysql encryption pdo mcrypt


【解决方案1】:

另外编码base64

加密后编码

base64_encode($encrypted)

解密前解码

base64_decode($encrypted)

【讨论】:

    【解决方案2】:

    您是否从 pdo 获得异常?

    有了这些小信息,我猜你想将数据保存到 varchar 字段中。

    您可能需要将 varchar 字段更改为 varbinary 字段。

    【讨论】:

      猜你喜欢
      • 2012-04-13
      • 2013-03-02
      • 2021-07-23
      • 2017-10-24
      • 2015-02-22
      • 1970-01-01
      相关资源
      最近更新 更多