使用openssl命令加解密 aes-128-cbc的简单示例

网上找了下openssl 加解密 aes-128-cbc相关命令, 发现都比较含糊, 这里是摸索出的一个aes-12b-cbc加解密的实例.

  1. 将要加密的内容输入到plain.txt

echo "1234567890abc" > plain.txt

  1. 使用openssl加密. -p 表示打印出加密用的salt, key, iv. salt就是所谓的加盐, 防止同样的内容产生同样的加密数据. iv和key是openssl 的cbc模式需要的参数. 关于aes加密, 详情可见漫画:什么是 AES 算法?,漫画:AES 算法的底层原理, AES加密算法动画演示.

openssl enc -aes-128-cbc -in plain.txt -out encrypt.txt -iv f123 -K 1223 -p
salt=E0DEB1EAFE7F0000
key=12230000000000000000000000000000
iv =F1230000000000000000000000000000

  1. 输出加密前和加密后内容的十六进制. 这里使用xxd和hexdump都可以.

xxd plain.txt
00000000: 3132 3334 3536 3738 3930 6162 630a 1234567890abc.

xxd encrypt.txt
00000000: c5af 18cb ddee 9923 0374 6a21 9bb6 3f99 .......#.tj!..?.

  1. 解密加密后的数据

openssl aes-128-cbc -d -in encrypt.txt -out encrypt_decrypt.txt -S E0DEB1EAFE7F0000 -iv F1230000000000000000000000000000 -K 12230000000000000000000000000000

  • -S salt Salt to use, specified as a hexidecimal string
  • -salt Use a salt in the key derivation routines (default)
  1. 查看解密后的数据和原始数据是否一致.

xxd encrypt_decrypt.txt
00000000: 3132 3334 3536 3738 3930 6162 630a 1234567890abc.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容