关于公钥加密,私钥解密,数字证书和签名的一点理解


RSA非对称加密,产生一对公钥和私钥,应该是当前非对称加密的主流。以下的资料来自网络。便于我们从整体上来理解。


/

RSA加密和其他加密手段配合使用:

为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。这就使加密的计算量很大。为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DESIDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。

 

/

关于公钥加密,私钥解密的流程,如下例子: 

 

·  小明想秘密给小英发送消息

·  小英手里有一个盒子(public key),这个盒子只有小英手里的钥匙(private key)才打得开

·  小英把盒子送给小明(分发公钥)

·  小明写好消息放进盒子里,锁上盒子(公钥加密)

·  小明把盒子寄给小英(密文传输)

·  小英用手里的钥匙打开盒子,得到小明的消息(私钥解密)

·  假设小刚劫持了盒子,因为没有小英的钥匙,他也打不开

 

/

数字签名无非就两个目的:
证明这消息是你发的;
证明这消息内容确实是完整的---也就是没有经过任何形式的篡改(包括替换、缺少、新增)。

其实,上面关于“公告”那段内容,已经证明了第一点:证明这消息是你发的。
那么要做到第二点,也很简单,就是把你公告的原文做一次哈希(md5或者sha1都行),然后用你的私钥加密这段哈希作为签名,并一起公布出去。当别人收到你的公告时,他可以用你的公钥解密你的签名,如果解密成功,并且解密出来的哈希值确实和你的公告原文一致,那么他就证明了两点:这消息确实是你发的,而且内容是完整的。

 

/

公钥加密私钥解密是密送,保证消息即使公开也只有私钥持有者能读懂。
私钥加密公钥解密是签名,保证消息来源是私钥持有者。
目前的计算能力,公钥有效时间内推不出私钥,私钥也推不出公钥。


/

数字证书是由权威机构--CA证书授权(Certificate Authority)中心发行的,能提供在Internet上进行身份验证的一种权威性电子文档,人们可以在互联网交往中用它来证明自己的身份和识别对方的身份。

数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。

做个简单比喻:
数字证书 好比 现实中你的身份证
数字签名 好比 现实中你的签字

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值