OpenSSH、OpenSSL与GnuPG生成公私钥的方式与联系

  • OpenssL
  • OpenSSH的ssh-keygen
  • GnuPG的gpg
  • 一、OpenSSL

    OpenSSL是用于应用程序的软件库,该应用程序可保护计算机 络上的通信免遭窃听或需要识别另一方的身份,是SSL和TLS协议的开源实现。

    使用步骤如下:

    1.生成私钥*.pem(传统格式)

    openssl genrsa -out rsa_private_key.pem 1024

    2.对私钥进行PKCS#8编码(在密码学中PKCS代表“公钥密码学标准”。这些是RSA Security LLC于1990年代初开始设计和发布的一组公共密钥加密标准。PKCS#8规定了存储私钥信息的标准语法)

    openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt > rsa_private_key_pkcs8.pem

    3.根据私钥生成对应的公钥:

    openssl rsa -in rsa_private_key.pem -out rsa_public_key_1024.pub -pubout

    二、OpenSSH的ssh-keygen

    OpenSSH是基于安全外壳SSH协议的一组安全 络实用程序,可在客户端-服务器体系结构中的不安全 络上提供安全通道,可以替代Telnet和FTP等未加密协议。

    使用步骤如下:

    1.执行指令

    ssh-keygen -t rsa

    2.几次回车默认后便生成了公私钥对

    三、GnuPG的gpg

    GNU Privacy Guard隐私保护,简称(GnuPG的或GPG),是一种是一种混合加密软件程序。因为它结合了传统的对称密钥加密技术来提高速度,并使用公共密钥加密技术来简化安全密钥交换。

    使用步骤如下:

    1.由于默认已经安装GPG,故直接输入“gpg –gen-key”并按回车键执行,然后输入“1”选择密钥种类,然后回车。

    2.选择加密算法。默认选择第一个选项,表示加密和签名都使用RSA算法。这里输入13.询问密钥对位数,默认为2048,本例中手动输入1024.

    3.提示输入密钥对有效期,输入“0”(永不过期)并按回车键确定。

    4.示将永不过期,输入“y”确认。

    5.输入密钥对名称(本例中为cheshi)。

    6.依次输入邮件地址和备注。

    7.询问是否修改或者确认,直接输入“o”确认。

    8.提示输入私钥密码短语

    9、再次输入后系统需要时间生成密钥对,期间最好随机输入字符或移动鼠标等,有助于生成密钥对,结果如下图

    10、分别导出公私钥

    导出公钥

    导出私钥

    四、区别

    1.OpenSSH 与 OpenSSL有什么关联?

    OpenSSH常常被误认以为与OpenSSL有关联,但实际上这两个计划有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密通讯软件。

    2、SSH、SSL、TSL的区别是什么?

  • SSL(Secure Socket Layer–安全套接字层):为 络通信安全以及数据完整性提供保障的一种安全协议,在TCP/IP的传输层对 络连接进行加密;
  • TSL(Transport Layer Security–传输层安全):为SSL 3.0的后继版本,TSL与SSL 3.0的显著差别在于加密算法不同,TSL的主要目的是使SSL更加安全,使协议的规范更加精确和完善,在TCP/IP的传输层对 络连接进行加密;
  • SSH(Secure Shell):由 IETF 的 络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他 络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
  • 五、总结

    OpenSSH是SSH协议的具体实现、OpenSSL是SSL与TSL的具体实现。OpenSSH 与OpenSSL只是名字相似但是关联不大,同样软件发展目标是为提供开放源代码的加密通讯软件。而生成非对称公私钥的方式有很多,如上面列举出的OpenSSH 、OpenSSL与GnuPG。三者生成的公私钥的区别在于OpenSSH ssh-keygen ssh-keygen 输出的RSA密钥文件的版本较旧, 这种比较旧文件格式不同于PKCS#8标准. 但是openssl支持这种旧版密钥格式。

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2019年9月15日
    下一篇 2019年9月15日

    相关推荐