900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > php使用openssl进行Rsa长数据加密 解密保存问题

php使用openssl进行Rsa长数据加密 解密保存问题

时间:2021-05-17 19:32:07

相关推荐

php使用openssl进行Rsa长数据加密 解密保存问题

原来代码:

public function encrypt($data) { if (openssl_public_encrypt(base64_encode($data), $encrypted, $this->pubkey)) $data = base64_encode($encrypted); else throw new Exception('Unable to encrypt data. Perhaps it is bigger than the key size?'); return $data; } public function decrypt($data) { if (openssl_private_decrypt(base64_decode($data), $decrypted, $this->privkey)) $data = $decrypted; else $data = ''; return $data; }

修改分段以后:

public function encrypt($originalData){$crypto = '';foreach (str_split($originalData, 117) as $chunk) {openssl_public_encrypt($chunk, $encryptData, $this->pubkey);$crypto .= $encryptData;}return base64_encode($crypto);}public function decrypt($encryptData){$crypto = '';foreach (str_split(base64_decode($encryptData), 128) as $chunk) {openssl_private_decrypt($chunk, $decryptData, $this->privkey);$crypto .= $decryptData;}return $crypto;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。