视窗
loading...
  虚拟主机域名注册-常见问题其他问题 → 其他问题

在Linux上如何使用openssl为文件加密

  创建示例参考文件

  由于本教程侧重于加密大文件,因此我们需要创建一个大的文件。我们可以使用Util-Linux软件包中的fallocate命令。

  让我们使用fallocate命令创建一个 1GB 的大文本文件:

  $ fallocate -l 1024M test.txt

  我们应该能够使用echo 命令向该文件添加一些文本。

  $ echo www.jyhost.com >> test.txt

  我们可以使用cat 命令来确认我们写入文件的内容:

  $ cat test.txt

  使用 OpenSSL 使用密码加密文件

  在这里,将使用单个密码或密钥来加密我们的大文本文件。我们将引用的对称密钥加密算法是AES(高级加密标准)。

  该算法可以容纳 128、192 和 256 位加密密钥,以便成功加密和解密 128 位块中的数据。

  要加密大的test.txt文件,我们将运行以下命令:

  $ openssl enc -aes-256-cbc -pbkdf2 -p -in test.txt -out test.txt.enc

  上述命令中使用的选项的说明:

  enc执行对称密钥加密过程。

  -aes-256-cbc指定使用 256 位加密密钥。

  -pbkdf2是使用的默认算法。

  -p打印使用的组成、密钥和 IV。

  -in指向输入文件。

  -out指向输出文件。

  当命令执行时,您将被要求输入并确认您的首选加密密码。我们可以使用cat 命令来确认我们不能再读取该文件。

  $ cat test.txt.enc

  要解密文件,请运行:

  $ openssl aes-256-cbc -d -pbkdf2 -in test.txt.enc -out sample_decrypted.txt

  您将需要输入之前生成的加密密码。

  使用 OpenSSL 使用密钥加密文件

  第一步是生成密钥文件:

  $ openssl rand 256 > symmetric_keyfile.key

  我们现在可以使用密钥文件来加密我们的文件:

  $ openssl enc -in test.txt -out test.txt.enc -e -aes-256-cbc -pbkdf2 -k symmetric_keyfile.key

  cat 命令应确认无法读取该文件。

  $ cat test.txt.enc

  要解密文件,请运行:

  $ openssl enc -in test.txt.enc -out draft_decrypted.txt -d -aes-256-cbc -pbkdf2 -k symmetric_keyfile.key

  非对称加密

  使用这种生成私钥并从中生成公钥的方法与加密大文件不兼容,您将看到错误提示:data too large for key size。




免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:bkook@qq.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:Linux服务器上查找和解释系统日志文件的方法
下一篇:Ubuntu上安装Caddy Web服务器的操作方法
  >> 相关文章
没有相关文章。
0

在线
客服

在线客服服务时间:9:00-18:00

客服
热线

19899115815
7*24小时客服服务热线

关注
微信

关注官方微信