laravel使用RSA公钥加密AES密钥
我已经生成了一个自定义AES密钥,我需要用RSA公钥加密这个AES密钥 我们怎么能在拉雷维尔做到这一点 如有任何建议,将不胜感激laravel使用RSA公钥加密AES密钥,laravel,encryption,aes,rsa,Laravel,Encryption,Aes,Rsa,我已经生成了一个自定义AES密钥,我需要用RSA公钥加密这个AES密钥 我们怎么能在拉雷维尔做到这一点 如有任何建议,将不胜感激 $aesKey = base64_encode(Encrypter::generateKey('AES-128-CBC')); 我找到了一个解决方案,而且似乎很有效 通过composer安装phpseclib composer require phpseclib/phpseclib use phpseclib\Crypt\RSA as Crypt_RSA; $rs
$aesKey = base64_encode(Encrypter::generateKey('AES-128-CBC'));
我找到了一个解决方案,而且似乎很有效 通过composer安装phpseclib
composer require phpseclib/phpseclib
use phpseclib\Crypt\RSA as Crypt_RSA;
$rsa = new Crypt_RSA();
$rsa->loadKey($publickey);
$rsa->setEncryptionMode(2);
$data = 'Your String';
$output = $rsa->encrypt($data);
echo base64_encode($output);
你听说过吗。在
[1,n]
中生成一个随机数x
,其中n
是RSA模。使用具有此值的密钥派生函数(KDF)获取AES密钥k
,并使用此密钥加密消息。使用RSA encryption ofx
Enc(pk,x)
发送加密邮件。另一方解密并获取x
,然后使用KDF
获取AES
密钥。@kelalaka有相关文档吗?请参阅最近关于加密的问题。