CodeIgniter将类加密到java
我正在使用Encrypt类加密来自codeigniter的一些数据,这些数据将被发送到java程序,需要在那里进行解码 php代码: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
$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。