文件AES对称加密-openssl命令和C代码实现

本文介绍了如何使用openssl命令和C语言实现AES对文件的对称加密和解密,包括加密步骤、解密过程以及加密结果中文件换行符的影响。

        前两天发布了《字符串AES对称加密》的博文,虽然很相似,但还是觉得有必要介绍下如何对文件进行AES对称加密、解密。文件加密实际就是读出文件内容,再进行字符串加密

        还是分别用openssl命令C语言方式实现相同的AES对称加、解密功能

准备工作:新建文件 file_in.txt,内容随意,我在文件里输入的 "123456"。

一、openssl命令对文件AES对称加密、解密

1、使用OpenSSL命令对文件加密

$ openssl aes-256-cbc -e -nosalt -in file_in.txt -out file_cmd_en.txt -pass pass:aes_password

  • -aes-256-cbc:使用AES算法的256位密钥和CBC模式;
  • -e:加密操作;(-d 表示解密)
  • -nosalt:不使用盐值。在AES-CBC模式中,盐值通常是随机生成的,以增加密钥的强度。
  • -in:表示输入文件,后面应该紧跟输入文件的文件名
  • -out:表示输出文件,后面应该紧跟输出文件的文件名。
  • -pass pass:<password> 指定了加密的密钥

file_in.txt文件加密(没有使用base64编码)生成加密文件 file_cmd_en.txt,内容如图:

2、使用OpenSSL命令对文件解密

$ openssl aes-256-cbc -d -nosalt -in file_cmd_en.txt -out file_cmd_de.txt -pass pass:aes_password

将加密文件 file_cmd_en.txt 解密,生成 file_cmd_de.txt ,内容与加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值