首页 > 编程知识 正文

ssh公钥和私钥的区别,知道公钥怎么求私钥

时间:2023-05-04 03:28:52 阅读:135866 作者:4491

里德

在学习ssh章节时,一定有不少人对公钥和私钥产生过不解。在搜索公钥跟私钥的理解时,发现了这篇有趣的图解小文章,与大家共享。

1. mldmz有两个密钥。 一个是公钥,另一个是私钥。

2. mldmz把公钥给他的朋友们——自觉的日记本、道格、bzdxxm—-每人一把。

3. bzdxxm给mldmz写密函。 她写完后,用mldmz的公钥加密,可以达到保密的效果。

4 .接收到4. mldmz后,用私钥解密,可以看到信的内容。 在此要强调的是,只要mldmz的私钥不被泄露,此信息是安全的,即使落入他人之手也无法解密。

5. mldmz回复了bzdxxm,并决定采用“数字签名”。 他写完后首先使用散列函数生成信的摘要。

mldmz接着使用私钥加密此摘要以产生“数字签名”。

7. mldmz将此签名附加在信的下方,并一起发送到bzdxxm。

8 .在接收到8. bzdxxm之后,用mldmz的公钥解密数字签名并获得信的摘要。 由此证明,这封信确实是从mldmz寄来的。

9. bzdxxm还在消息本身中使用Hash函数,将结果与上一步骤中的摘要进行比较。 如果两者一致,就证明这封信没有被修改。

10 .出现了复杂的情况。 道格为了欺骗bzdxxm,偷偷用bzdxxm的电脑,用自己的公钥交换了mldmz的公钥。 此时,bzdxxm实际上拥有道格的公钥,但我以为这是mldmz的公钥。 因此,道格能够冒充mldmz,用自己的秘密密钥创建“数字签名”,给bzdxxm写信,用假的mldmz公开密钥解密bzdxxm。

11 .随后,bzdxxm感到奇怪,并意识到无法确定公钥是否真的属于mldmz。 她去mldmz找“证书中心”(certifiCAte authority,简称ca ),想出了一个认证公钥的方法。 证书中心使用自己的私钥加密mldmz的公钥和一些相关信息,并生成“数字证书”(Digital Certificate )。

12. mldmz获得数字证书后,可以放心。 稍后给bzdxxm写信,签名的同时附上数字证书就可以了。

13 .收到bzdxxm后,用CA的公钥解密数字证书,就可以得到mldmz的真正的公钥。 然后,可以证明“数字签名”是否真的是用mldmz签名的。

14 .接下来,我们来看看应用“数字证书”的例子。 是https协议。 这个协议主要用于网页的加密。

15 .首先,客户端向服务器发出加密请求。

16 .服务器用自己的私钥加密网页,然后与自己的数字证书一起发送到客户端。

17 .客户端(浏览器)的“证书管理器”中有一个“受信任的根证书颁发机构”列表。 客户端将根据此列表检查列表中是否存在用于解密数字证书的公钥。

18 .如果数字证书中的网站与浏览的网站不匹配,则证书可能被滥用,浏览器会发出警告。

19 .如果此数字证书不是由受信任的机构颁发的,浏览器会发出另一个警告。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。