密码学笔记

作者: 阮一峰

日期: 2006年12月10日

1.

密方法可以分为两大类。一类是单钥加密(private key cryptography),还有一类叫做双钥加密(public key cryptography)。前者的加密和解密过程都用同一套密码,后者的加密和解密过程用的是两套密码。

历史上,人类传统的加密方法都是前一种,比如二战期间德军用的Enigma电报密码。莫尔斯电码也可以看作是一种私钥加密方法。

2.

在单钥加密的情况下,密钥只有一把,所以密钥的保存变得很重要。一旦密钥泄漏,密码也就被破解。

3.

在双钥加密的情况下,密钥有两把,一把是公开的公钥,还有一把是不公开的私钥。

双钥加密的原理如下:

a) 公钥和私钥是一一对应的关系,有一把公钥就必然有一把与之对应的、独一无二的私钥,反之亦成立。

b) 所有的(公钥, 私钥)对都是不同的。

c) 用公钥可以解开私钥加密的信息,反之亦成立。

d) 同时生成公钥和私钥应该相对比较容易,但是从公钥推算出私钥,应该是很困难或者是不可能的。

4.

目前,通用的单钥加密算法为DES(Data Encryption Standard),通用的双钥加密算法为RSA( Rivest-Shamir-Adleman),都产生于上个世纪70年代。

5.

在双钥体系中,公钥用来加密信息,私钥用来数字签名

6.

因为任何人都可以生成自己的(公钥,私钥)对,所以为了防止有人散布伪造的公钥骗取信任,就需要一个可靠的第三方机构来生成经过认证的(公钥,私钥)对。目前,世界上最主要的数字服务认证商是位于美国加州的Verisign公司,它的主要业务就是分发RSA数字证书。

(完)

留言(21条)

hehe, it's about pin~~~

最近开始研究密码学了?

引用ppip的发言:
最近开始研究密码学了?

IT的东西一直在看,只是日志里很少写而已。

看Dan Brown的Digital Fortress里写了不少关于密码学的东西,不过据说其中有不少错误。最后结局那个密码最傻,我早都猜出来了,小说里的人物还在忙活。

引用Paul的发言:

看Dan Brown的Digital Fortress里写了不少关于密码学的东西,不过据说其中有不少错误。最后结局那个密码最傻,我早都猜出来了,小说里的人物还在忙活。

丹布朗专唬外行,不管是IT,还是基督教历史。

刚付了款,请查收,哈哈哈哈~

“目前,世界上最主要的数字服务认证商是位于美国加州的Verisign公司,它的主要业务就是分发RSA数字证书。”

为什么美国加州的Verisign公司能做数字服务认证商?为什么它就这么有“公信力”,让全世界都信任它?

引用guobosheng的发言:

“目前,世界上最主要的数字服务认证商是位于美国加州的Verisign公司,它的主要业务就是分发RSA数字证书。”

为什么美国加州的Verisign公司能做数字服务认证商?为什么它就这么有“公信力”,让全世界都信任它?

首先,VeriSign已经不存在了,现在只有Symantec, 旗下有数字证书服务,也就是原来的VeriSign.

为什么“美国加州的Verisign公司能做数字服务认证商?。。。。。” 其实,Symantec (VeriSign),都是沾了美国的优势。IT的历史,可以查一下。。。本人才疏学浅,就不露怯了。

其实,现在又很多具有一定“公信力”的数字证书服务上,RapidSSL, COMODO, thawte, 当然,咱们的铁老大的证书也是自己做的,其“公信力”,呵呵,你懂的。

关于RSA逻辑我这么理解对吗?

私钥加密后,可以被私钥解密,也可以被公钥解密。
公钥加密后,可以被私钥解密,但是不能被公钥解密。

这么理解对吗?

关于RSA逻辑我这么理解对吗?

私钥加密后,可以被私钥解密,也可以被公钥解密。
公钥加密后,可以被私钥解密,但是不能被公钥解密。

这么理解对吗?

引用林晨的发言:

关于RSA逻辑我这么理解对吗?

私钥加密后,可以被私钥解密,也可以被公钥解密。
公钥加密后,可以被私钥解密,但是不能被公钥解密。

这么理解对吗?


用一把钥匙加密只能用另一把钥匙解密。

云里雾里啊,不过看起来里面很有学问啊!

小弟实在是是膜拜博主,断断续续从博主这里学习了好多知识。


用公钥可以解开私钥加密的信息,反之亦成立

在RSA原理的文章里,爱丽丝将生成的密钥对里的公钥给了鲍勃,我们知道公钥是对外的,也就是说爱丽丝用自己的私钥加密的信息发给鲍勃是不是就可以被其它人知道?因为公钥公开的。(如果不是,比方说鲍勃将自己生成的密钥对里的公钥也给了爱丽丝,爱丽丝发信息时是用的这个公钥?要是这样,在我们平常用SSH-KEYGEN生成密钥对,爱丽丝可以将自己的公钥给鲍勃,那鲍勃怎么将自己的公钥给爱丽丝呢,因为在爱丽丝这里有 id_rsa, 但没有authorized_keys?文件,还是说鲍勃是通过公钥加密将自己的公钥给了爱丽丝?)

引用路人甲的发言:


用公钥可以解开私钥加密的信息,反之亦成立

在RSA原理的文章里,爱丽丝将生成的密钥对里的公钥给了鲍勃,我们知道公钥是对外的,也就是说爱丽丝用自己的私钥加密的信息发给鲍勃是不是就可以被其它人知道?因为公钥公开的。(如果不是,比方说鲍勃将自己生成的密钥对里的公钥也给了爱丽丝,爱丽丝发信息时是用的这个公钥?要是这样,在我们平常用SSH-KEYGEN生成密钥对,爱丽丝可以将自己的公钥给鲍勃,那鲍勃怎么将自己的公钥给爱丽丝呢,因为在爱丽丝这里有 id_rsa, 但没有authorized_keys?文件,还是说鲍勃是通过公钥加密将自己的公钥给了爱丽丝?)

爱丽丝是用鲍勃的公钥加密文件发给鲍勃的,鲍勃的公钥爱丽丝可以通过全球服务器查询的到,

如果两个人要加密通讯。是不是就要互相持有对方的公钥。
然后用对方的公钥加密信息,之后只有对方的私钥才能解密。是这个意思吧 ?

那请问签名是个什么用法?

为什么需要证书,文章说为了防止有人散布伪造的公钥骗取信任,还是不懂啊

好文章,谢谢分享,不过好像写的不是特别清晰。
比如是第5点和第3.c点有些矛盾。

加密分为对称加密(私钥加密)与非对称加密(公钥加密);
对称加密是只有一个秘钥,发送和接收双方都用这个秘钥进行解密加密,使用的钥匙是对称的,相同的;
非对称加密是将钥匙分为公钥和私钥,用一个加密就只能用另一个打开,双方钥匙是不一样,不对称的;公开的称为公钥,主人保密存放的叫做私钥

公开密钥加密(非对称加密):公钥和私钥是配对的,使用公开密钥加密,私有密钥解密。
共享密钥加密(对称加密):只有一个密钥用来加密和解密。

结合这个看看,更明白一下:https://blog.csdn.net/forever_2015/article/details/76040311

应该说
用私钥加密后,能且只能被公钥解开
用公钥加密后,能且只能被私钥解开
私钥拥有者,也知道公钥
将公钥发给我想通讯的人
他发的信息就只有我能解开

我要发表看法

«-必填

«-必填,不公开

«-我信任你,不会填写广告链接