如何使用OpenSSL加密和解密文件


这篇文章主要讲解了“如何使用OpenSSL加密和解密文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思免费云主机域名路慢慢深入,一起来研究和学习“如何使用OpenSSL加密和解密文件”吧!加密是对消息进行编码的一种方法,这样可以保护消息的内容免遭他人窥视。一般有两种类型:密钥加密或对称加密公钥加密或非对称加密密钥加密secret-key encryption使用相同的密钥进行加密和解密,而公钥加密public-key encryption使用不同的密钥进行加密和解密。每种方法各有利弊。密钥加密速度更快,而公钥加密更安全,因为它解决了安全共享密钥的问题,将它们结合在一起可以最大限度地利用每种类型的优势。公钥加密使用两组密钥,称为密钥对。一个是公钥,可以与你想要秘密通信的任何人自由共享。另一个是私钥,应该是一个秘密,永远不会共享。公钥用于加密。如果某人想与你交流敏感信息,你可以将你的公钥发送给他们,他们可以使用公钥加密消息或文件,然后再将其发送给你。私钥用于解密。解密发件人加密的消息的唯一方法是使用私钥。因此,它们被称为“密钥对”,它们是相互关联的。OpenSSL 是一个了不起的工具,可以执行各种任务,例如加密文件。本文使用安装了 OpenSSL 的 Fedora 计算机。如果你的机器上没有,则可以使用软件包管理器进行安装:要探索文件加密和解密,假如有两个用户 Alice 和 Bob,他们想通过使用 OpenSSL 交换加密文件来相互通信。在加密文件之前,你需要生成密钥对。你还需要一个密码短语passphrase,每当你使用 OpenSSL 时都必须使用该密码短语,因此务必记住它。Alice 使用以下命令生成她的一组密钥对:此命令使用 OpenSSL 的 genrsa 命令生成一个 1024 位的公钥/私钥对。这是可以的,因为 RSA 算法是不对称的。它还使用了 aes128 对称密钥算法来加密 Alice 生成的私钥。输入命令后,OpenSSL 会提示 Alice 输入密码,每次使用密钥时,她都必须输入该密码:Bob 使用相同的步骤来创建他的密钥对:如果你对密钥文件感到好奇,可以打开命令生成的 .pem 文件,但是你会看到屏幕上的一堆文本:要查看密钥的详细信息,可以使用以下 OpenSSL 命令打开 .pem 文件并显示内容。你可能想知道在哪里可以找到另一个配对的密钥,因为这是单个文件。你观察的很细致,获取公钥的方法如下:注意,公钥是你可以与他人自由共享的密钥,而你必须将私钥保密。因此,Alice 必须提取她的公钥,并将其保存到文件中:你可以使用与之前相同的方式查看公钥详细信息,但是这次,输入公钥 .pem 文件:Bob 可以按照相同的过程来提取他的公钥并将其保存到文件中:这些公钥在 Alice 和 Bob 彼此交换之前没有太大用处。有几种共享公钥的方法,例如使用 scp 命令将密钥复制到彼此的工作站。将 Alice 的公钥发送到 Bob 的工作站:将 Bob 的公钥发送到 Alice 的工作站:现在,Alice 有了 Bob 的公钥,反之亦然:假设 Alice 需要与 Bob 秘密交流。她将秘密信息写入文件中,并将其保存到 top_secret.txt 中。由于这是一个普通文件,因此任何人都可以打开它并查看其内容,这里并没有太多保护:要加密此秘密消息,Alice 需要使用 openssls -encrypt 命令。她需要为该工具提供三个输入:秘密消息文件的名称Bob 的公钥(文件)加密后新文件的名称加密后,原始文件仍然是可见的,而新创建的加密文件在屏幕上看起来像乱码。这样,你可以确定秘密消息已被加密:删除秘密消息的原始文件是安全的,这样确保任何痕迹都没有:现在,Alice 需要再次使用 scp 命令将此加密文件通过网络发送给 Bob 的工作站。注意,即使文件被截获,其内容也会是加密的,因此内容不会被泄露:如果 Bob 使用常规方法尝试打开并查看加密的消息,他将无法看懂该消息:Bob 需要使用 OpenSSL 来解密消息,但是这次使用的是 -decrypt 命令行参数。他需要向工具程序提供以下信息:加密的文件(从 Alice 那里得到)Bob 的私钥(用于解密,因为文件是用 Bob 的公钥加密的)通过重定向保存解密输出的文件名现在,Bob 可以阅读 Alice 发送给他的秘密消息:Bob 需要回复 Alice,因此他将秘密回复写在一个文件中:为了发送消息,Bob 采用和 Alice 相同的步骤,但是由于该消息是发送给 Alice 的,因此他需要使用 Alice 的公钥来加密文件:Bob 通过 scp 将加密的文件发送至 Alice 的工作站:如果 Alice 尝试使用常规工具去阅读加密的文本,她将无法理解加密的文本:所以,她使用 OpenSSL 解密消息,只不过这次她提供了自己的私钥并将输出保存到文件中:OpenSSL 在加密界是真正的瑞士军刀。除了加密文件外,它还可以执行许多任务,你可以通过访问 OpenSSL文档页面来找到使用它的所有方式,包括手册的链接、 《OpenSSL Cookbook》、常见问题解答等。要了解更多信息,尝试使用其自带的各种加密算法,看看它是如何工作的。感谢各位的阅读,以上就是“如何使用OpenSSL加密和解密文件”的内容了,经过本文的学习后,相信大家对如何使用OpenSSL加密和解密文件这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云编程开发博客,小编将为大家推送更多相关知识点的文章,欢迎关注!

相关推荐: 网络基础入门4

以太网/LAN(local area network )的相关概念:问题:信号传输距离有限;解决方案:中继器 – 放大电信号,延长信息的传输距离;中继器带来的问题:只有2个端口,连接设备少;解决方案:集线器 – 多端口的中继器,可以连接多个设备;集线器的问题:…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 02/01 22:43
下一篇 02/01 22:43