zoukankan      html  css  js  c++  java
  • ssh-keygen -t rsa -C "youremail.com"的意思

    在用Git生成密钥的时候,查询到的命令是:ssh-keygen -t rsa -C "邮件地址@youremail.com"和ssh-keygen -t rsa -b 4096 -C "邮件地址@youremail.com"。使用的时候只是复制粘贴,却不明白这俩命令有什么区别,为什么都可以!后来百度才明白,这里记录一下。

    1、ssh

    SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

    2、ssh-keygen

    从客户端来看,SSH提供两种级别的安全验证:

            第一种级别(基于口令的安全验证):只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。

            第二种级别(基于密钥的安全验证)ssh-keygen:需要依靠密钥,这里的密钥是非对称密钥。

    3、t :  t是type的缩写

              -t 即指定密钥的类型,密钥的类型有两种,一种是RSA,一种是DSA

    4、rsa:是指RSA算法

            RSA:RSA加密算法是一种非对称加密算法,是由三个麻省理工的牛人弄出来的,RSA是他们三个人姓的开头首字母组合。

            DSA:Digital Signature Algorithm (DSA)是Schnorr和ElGamal签名算法的变种。

    为了让两个linux机器之间使用ssh不需要用户名和密码。所以采用了数字签名RSA或者DSA来完成这个操作。ssh-keygen默认使用rsa密钥,所以不加-t rsa也行,如果你想生成dsa密钥,就需要加参数-t dsa。

    5、b :b是bit的缩写

              -b 指定密钥长度。

    6、4096

        对于RSA密钥,最小要求768位,默认是2048位。4096指的是RSA密钥长度为4096位。

        DSA密钥必须恰好是1024位(FIPS 186-2 标准的要求)。

    7、C:C是comment的缩写

             -C表示提供一个注释,用于识别这个密钥。

    8、 "邮件地址@youremail.com":用于识别这个密钥的注释

          引号里的内容为注释的内容,所有" "里面不一定填邮箱,可以输入任何内容。

    总结:当你创建ssh的时候:-t 表示密钥的类型 ,-b表示密钥的长度,-C 用于识别这个密钥的注释 ,这个注释你可以输入任何内容,很多网站和软件用这个注释作为密钥的名字。

  • 相关阅读:
    对象并不一定都是在堆上分配内存的
    Minor GC、Major GC和Full GC之间的区别
    JAVA内存分配与回收策略
    HotSpot虚拟机对象相关内容
    JAVA运行时数据区域
    Java 的强引用、弱引用、软引用、虚引用
    去哪儿网支付系统架构演进(下篇)
    去哪儿网支付系统架构演进(上)
    心智模式:如何改善我们的心智模式?
    心智模式:心智模式成熟的标志
  • 原文地址:https://www.cnblogs.com/gloria-5/p/12203044.html
Copyright © 2011-2022 走看看