gpt4 book ai didi

linux - 如何使用公钥加密openssl中的大文件

转载 作者:IT老高 更新时间:2023-10-28 12:29:26 36 4
gpt4 key购买 nike

我怎样才能用公钥加密一个大文件,这样只有拥有私钥的人才能解密它?

我可以制作 RSA 公钥和私钥,但在使用此命令加密大文件时:

openssl rsautl -encrypt -pubin -inkey public.pem -in myLargeFile.xml -out myLargeFile_encrypted.xml

以及我如何也可以执行解密....

我通过以下命令创建我的私钥和公钥

openssl genrsa -out private.pem 1024
openssl rsa -in private.pem -out public.pem -outform PEM -pubout

我收到此错误:

RSA operation error
3020:error:0406D06E:rsa routines:RSA_padding_add_PKCS1_type_2:data too large for key size:.\crypto\rsa\rsa_pk1.c:151:

我尝试制作大小从 1024 到 1200 位的 key ,但没有运气,同样的错误

最佳答案

公钥加密不适用于加密任意长的文件。一个使用对称密码(比如 AES)进行正常加密。每次生成、使用一个新的随机对称 key ,然后使用 RSA 密码(公钥)进行加密。密文与加密的对称 key 一起被传送给接收者。接收方使用自己的私钥解密对称 key ,然后使用对称 key 解密消息。

私钥永远不会共享,只有公钥用于加密随机对称密码。

关于linux - 如何使用公钥加密openssl中的大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7143514/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com