https中哪里用了对称加密,哪里用了非对称加密,对加密算法(如RSA)等是否有了解

加密算法一般分为两种:对称加密和非对称加密。

 

  1. 对称加密(Symmetric Key Algorithms)

对称加密算法使用的加密和解密的密钥一样,比如用秘钥123加密就需要用123解密。实际中秘钥都是普通数据在互联网传输的,这样秘钥可能会被中间人截取,导致加密被破解。

加密:将消息与秘钥通过加密算法加密出加密后的密文

解密:将加密后的密文与秘钥解密出消息

 

常用的对称加密算法包括:

(1)DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。

(2)3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。

(3)AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高;

 

对称加密算法的特点主要有:

(1)加密方和解密方使用同一个密钥;

(2)加解密的速度比较快,适合数据比较长时使用;

(3)密钥传输的过程不安全,且容易被破解,密钥管理也比较麻烦。

 

  1. 非对称加密(Asymmetric Key Algorithms)

所谓非对称,是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。把密钥分为公钥和私钥,公钥是公开的所有人都可以认领,私钥是保密的只有一个人知道。

 

非对称加密算法主要有:

(1)RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的;

(2)DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准);

(3)ECC(Elliptic Curves Cryptography):椭圆曲线密码编码学。

 

假如发送方有一对密钥:私钥(KA)和公钥(KPA),接收方也生成一对密钥:私钥(KB)和公钥(KPB),其中(KPA)和(KPB)是公开的。

发送方用接收方的公钥对消息加密,将消息与接收方的公钥加密,生成加密后的密文。【   E=ENC(M,KPB)  】

接收方接收到密文后使用自己的私钥进行解密,将加密的密文与接收方的私钥解密,生成解密后的消息【  M=ENC(E,KB)  】

 

这样,即使密文被中间人截获,由于其不知道接收方的私钥,无法破解密文,所以消息仍然是安全的。

https中哪里用了对称加密,哪里用了非对称加密,对加密算法(如RSA)等是否有了解_第1张图片

RSA的安全性是基于极大整数因数分解的难度。

你可能感兴趣的:(Android网络)