我的世界传送指令怎么用

我的世界传送指令怎么用

大文件传输场景交互过程详解

在这个场景中,我们采用了非对称加密RSA和对称加密AES混合加密技术方案。以下是详细的实现过程:

用户B生成密钥对

用户B使用的是linux系统,首先需要通过openssl版本查看命令确认其openssl版本,如图所示。接着进行以下操作:

1. 使用openssl生成一个基于RSA算法的私钥,此处选择了AES-256加密,并生成了一个长度为2048的私钥文件B_private.pem,同时设置密码保护私钥。

命令如下:

openssl genpkey -algorithm RSA -aes256 -pkeyopt rsa_keygen_bits:2048 -out B_private.pem

2. 基于生成的私钥,生成对应的公钥文件B_public.pem。

命令为:

openssl rsa -pubout -in B_private.pem -out B_public.pem

用户A处理大文件

用户A位于Windows系统下操作,同样需要确认其openssl版本。然后开始进行以下步骤:

1. 生成一个随机的对称密钥文件aes256.bin,该文件包含32字节即256位的随机对称密钥。

命令为:

openssl rand -out aes256.bin 32

2. 使用aes-256-cbc对称加密算法对源文件1.txt进行加密,输出加密文件1.txt.enc。其他参数如盐值、PDF2迭代次数等也一并设置。

命令如下:

用户A加密对称密钥文件并传输

接下来,用户A需要将生成的对称密钥文件加密,以便安全地传输给用户B。利用用户B的公钥对对称密钥进行加密,输出加密文件aes256.bin.enc。具体操作命令为:

openssl pkeyutl -encrypt -in aes256.bin -pubin -inkey B_public.pem -out aes256.bin.enc

用户B解密并验证文件

用户B收到加密的对称密钥文件后,使用自己的私钥进行解密,得到解密的对称密钥文件aes256_decrypted.bin。命令如下:

openssl pkeyutl -decrypt -in aes256.bin.enc -inkey B_private.pem -out aes256_decrypted.bin

之后,用户B使用相同的对称加密算法和对称密钥对大文件进行解密,得到解密文件1_decrypted.txt。并计算解密后文件的哈希值进行验证。命令如下:

openssl enc -d -aes-256-cbc -pbkdf2 -iter 100000 -in 1.txt.enc -out 1_decrypted.txt -pass file:aes256_decrypted.bin

以及验证哈希值:

openssl dgst -sha256 1_decrypted.txt

确保文件在传输过程中没有被篡改。


我的世界传送指令怎么用