非对称加密
密钥是成对出现的
- 公钥:public key,公开给所有人,主要给别人加密使用
- 私钥:secret key,private key自己留存,必须保证其私密性
特点:用公钥加密数据,只能使用与之配对的私钥解密;反之亦然
缺点:
- 密钥长,算法复杂
- 加密解密效率低
功能:
- 数据加密:适合加密较小数据,比如:加密对称密钥
- 数字签名:主要在于让接收方确认发送方身份
常见算法:
- RSA:是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,可实现加密和数字签名。
- DSA(Digita Signature Algorithm):数据来源确认,即数字签名算法,是一种标准的DSS
- ECC
实现数据加密
Alice:
public key (公开) Pa
secret key | private key (不公开) Sa
Bob:
public key (公开) Pb
secret key | private key (不公开) Sb
非对称密钥:key1<>key2
用任何一把密钥加密,只能用对应另一把密钥解密
Alice--->Bob 独发
Data--->加密(key1=Pb)--->data--->解密( key2=Sb)--->data
Bob想要收到Alice的数据文件,必须将Bob的公钥发送给Alice,之后再用自己的私钥解密
接收者:生成公钥/密钥:P和S
生成公钥P,保密密钥S
发送者:使用接收者的公钥来加密信息M
将P(M)发送给接收者
接收者:使用密钥S来解密:M=S(P(M))
数据来源确认(数字签名)
Alice--->Bob 群发
--->Jack
data--->加密(key1=Sa)--->data--->解密(key2=Pa)--->data
只有Alice有私钥,Alice的公钥是公开的,任何人收到Alice数据文件都使用Alice的公钥解密,实现了数据来源只能是Alice的
发送者:生成公钥/密钥对:P和S
公开公钥P,保密密钥S
使用密钥S来加密信息M
发送给接收者S(M)
接收者:使用发送者的公钥来解密M=P(S(M))
标签:公钥,加密,Alice,---,密钥,key,非对称,加密算法 From: https://www.cnblogs.com/Lx-learner/p/17054051.html