非对称加密算法(公钥与密钥)

  非对称加密算法发送方使用公钥,接收方使用私钥。
  首先回顾一下非对称加密算法的相关知识,阐述一下自己的理解,再说明的原因。

概念

  非对称加密算法:该算法需要两个密钥:公开密钥和私有密钥。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
我对该算法进行简单概括就是如下: 
非对称加密有一对密钥,公钥和私钥。可以用公钥加密,也可以用私钥加密。
1,公钥和私钥成对出现
2,公开的密钥叫公钥,只有自己知道的叫私钥
3,用公钥加密的数据只有对应的私钥可以解密
4,用私钥加密的数据只有对应的公钥可以解密
5,如果可以用公钥解密,则必然是对应的私钥加的密
6,如果可以用私钥解密,则必然是对应的公钥加的密

原因

  从以上非对称加密算法概念可以看出,公开密钥和私有密钥都可以对发送的数据进行加密然后传送。然后问题就出来了,如果我不想让除了接收方以外的其他人知道我发送的数据内容,应该用哪种密钥对数据进行加密?这里我先假设用私钥进行加密,根据以上算法的概念,接收方需要用公钥来解密,我的公钥已经公开给接收方,但是用私有密钥对发送的数据进行加密是极其危险的,公开密钥是公开的,任何需要的人都可以得到该公钥,我如果用私钥加密数据,别人利用我公开的公钥就可以进行解密,这样我发送的信息就会被别人盗取,这是很不安全的,说白了就是根本没加密。反过来,如果我使用公钥对数据加密,那么接收方就需要使用私钥进行数据解密,由于私钥只保存在接收方手中,其他人无法获得私钥,这样其他人就不会得到数据的内容了。这样看来,在非对称加密中,如果需要保护我的数据不被第三方得到,密钥需要由接收方产生,然后接收方将公钥公开出去,发送方使用这个公开的公钥对数据进行加密后传输给接收方,接收方使用自己的私钥进行解密,从而保证了数据的安全性。

举例

  简单过程大概是这样的,首先接收方生成一对密钥,即私钥和公钥;然后接收方 将公钥发送给发送方;发送方用收到的公钥对数据加密,再发送给接收方;接收方收到数据后,使用自己的私钥解密。
比如,我要通过电子邮件给老师发一封保密文档,首先老师把他的公钥发送给我,然后我用老师的公钥对文档加密并通过电子邮件发送给老师,老师收到我的文档后,就可以用自己的私钥进行解密从而恢复原始文档。因为该文档只能有老师的私钥才能解密,其他人无法获得老师的私钥,所以其他人即使知道老师的公钥,我发的文档也是安全。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值