Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CodeIgniter将类加密到java_Java_Php_Codeigniter_Encryption_Mcrypt - Fatal编程技术网

CodeIgniter将类加密到java

CodeIgniter将类加密到java,java,php,codeigniter,encryption,mcrypt,Java,Php,Codeigniter,Encryption,Mcrypt,我正在使用Encrypt类加密来自codeigniter的一些数据,这些数据将被发送到java程序,需要在那里进行解码 php代码: $this->load->library('encrypt'); $this->encrypt->set_key(SERVER_ENCRYPT_KEY); $this->encrypt->set_mode(MCRYPT_MODE_CFB); $this->data = $this->e

我正在使用Encrypt类加密来自codeigniter的一些数据,这些数据将被发送到java程序,需要在那里进行解码

php代码:

    $this->load->library('encrypt');
    $this->encrypt->set_key(SERVER_ENCRYPT_KEY);
    $this->encrypt->set_mode(MCRYPT_MODE_CFB);
    $this->data = $this->encrypt->encode($this->input->post('data'));
其中
SERVER\u ENCRYPT\u KEY
是密钥

我发现了这个:但我无法让它工作。 还有其他LIB可以做到这一点吗?或者是一个如何使用java版本的MCrypt实现这一点的示例。

看看这个类。除了调用mcrypt库之外,它还执行各种非标准操作。例如,它通过自己发明的
\u add\u cipher\u noise
方法运行加密数据。此外,加密格式似乎随着版本的不同而发生了变化——这表明这种情况可能再次发生


如果要在codeignite之外使用加密数据,则不应使用codeignite自己的mcrypt加密数据包。

我决定避免使用CI_加密,并对其进行一些小改动:添加噪声和使用两种密钥。此外,我还构建了一个工具,将旧的加密数据转换为新的格式。

我在加密上看到了噪音,在java上也看到了噪音,但我想知道是否有人在codeigniter之外使用了加密数据。我尝试这样做是为了避免要求+10k客户再次输入一些数据。但也许最后我会在双方都应用自定义加密方法。请注意,您从codeigniter中的编码调用中获得的消息不是自包含的。在解密时,您需要预先知道使用了什么密码进行加密。用户可能使用了
$this->encrypt->set_cipher()并且您不能从消息中扣除。此外,如果mcrypt不存在,它会返回到其他方法-这也需要处理。密码使用默认值
mcrypt_RIJNDAEL_256
,mcrypt模式使用默认值
mcrypt_MODE\u CBC
。此外,还安装了mcrypt。