【问题标题】:Codigniter Encode in version 1.7 decode in version 2.0Codeigniter 1.7 版中的编码 2.0 版中的解码
【发布时间】:2012-11-04 18:22:02
【问题描述】:

以前有人遇到过这个问题吗?

从 codignier v1.7 开始,我对一些数据进行编码,以便使用 codignier 2.0 向另一个站点提供 Web 服务

$to_send =  $this->encrypt->encode($data, '12345');

使用 codignier 2.0 从 curl 获取数据到另一个站点 如果我不编码和解码,来自 curl 的数据就可以了。

$to_get = $this->encrypt->decode($data, '12345');

我也尝试将其添加到 website 的两个站点,但如果默认值发生一些变化,仍然无济于事。

$this->encrypt->set_cipher(MCRYPT_RIJNDAEL_256);
$this->encrypt->set_mode(MCRYPT_MODE_CFB);

当 echo $to_get 数据不可用时

"^6>þ×È·¾ˆ­÷Íón´= wÁSùçâÈþbåNÚÁ»¿_óÈÔfÞã@sf=µ@¹vÏŽ§ÃíŽÞ"

谢谢

【问题讨论】:

  • 您的encryption_key 在两个站点上是否相同(位于 application/config/config.php 文件中)?
  • $this->encrypt->decode($data, '12345');在两个站点中,因此系统将使用您输入的“12345”
  • 哦,我明白了(现在),请查看升级指南的答案。

标签: php codeigniter decode encode


【解决方案1】:

在 2.0.0 更新中引入的加密库中有一个 encode_from_legacy 方法。请参阅upgrading guide's Step 4. 了解更多信息。

同时确保在使用该方法时使用旧站点的加密密钥(通过配置文件或显式传入)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-22
    • 1970-01-01
    • 2015-05-26
    • 1970-01-01
    • 2021-03-14
    相关资源
    最近更新 更多