加密

作者: qinxi | 来源:发表于2021-08-30 11:03 被阅读0次

不可逆:

单向散列函数:MD5,SHA等

散列值的长度固定,计算速度快,具备单向性

可逆:

对称加密:DES,3DES,AES等

非对称加密:RSA等

其它:

混合密码系统

数字签名

证书

常用加密:

MD5:生成128bit的散列值,目前不安全

SHA-1:生成160bit的散列值,目前不安全

SHA-2:SHA-256,SHA-384,SHA-512

DES:将64bit明文加密成64bit密文的对称加密算法,秘钥长度是58bit,目前不安全

3DES:使用DES加密-解密-加密(3把秘钥)

AES:AES-128,AES-192,AES-256

RSA:非对称加密,公钥加密私钥解密,私钥加密公钥解密,速度慢

混合密码系统:网络上的密码通信所用的SSL、TLS都运用了混合密码系统

加密步骤:

1.消息发送者要拥有消息接收者的公钥

2.生成会话秘钥,作为对称加密的秘钥,加密消息

3.用消息接收者的公钥,加密会话秘钥

4.将2,3生成的加密结果,一并发给消息接收者

发送出去的内容包括:

用会话秘钥加密的消息(加密方法:对称加密)

用公钥加密的会话秘钥(加密方法:非对称加密)

解密步骤:

1.消息接收者用自己的私钥解密出会话秘钥

2.再用第一步解密出来的会话秘钥,解密消息

数字签名:防止有人篡改

1.消息发送者生成公钥私钥,把公钥给接收者

2.消息发送者把消息通过单向散列函数生成散列加密消息

3.消息发送者用自己的私钥对散列加密消息进行加密,生成签名

4.消息发送者把明文和用签名发给接收者

5.接收者通过发送者的公钥对签名进行解密,得到散列加密信息

6.接收者用散列函数对明文进行加密

7.把6的加密数据和5的加密数据进行对比

证书:

公钥证书:包含姓名,邮箱等个人信息,以及此人的公钥

并由认证机构CA施加数字签名

HTTPS:超文本传输安全协议

HTTP默认占用80断口,HTTPS默认占用443断口

HTTPS在HTTP基础上使用SSL/TLS来加密报文

TLS:传输层安全协议,前身是SSL(安全套接层)

HTTPS的成文:

1.证书费用,2.降低了访问速度

有些企业的做法是:包含敏感数据的使用HTTPS,其它的用HTTP

HTTPS的通信过程

1.TCP的3次握手

2.TLS的连接

3.HTTP请求和响应

TLS1.2连接的步骤,交换秘钥算法为ECDHE:

1.ClientHello,客户端发送,包含TLS版本,支持的加密组件(秘钥加密算法,对称加密算法,摘要算法),随机数

2.Server Hello,服务端发送,包含TLS版本,选择的加密组件,随机数

3.Certificate,服务器发送,服务器的公钥证书(CA认证)

4.Server Key Exchange,服务端发送,用以实现ECDHE(秘钥交换)算法的其中一个参数(Server params),为了防止伪造,Server Params经过了服务器私钥签名

5.Server Hello Done,服务端发送,告知客户端协商部分结束

客户端验证公钥签名

6.Client Key Exchange,客户端发送,用以实现ECDHE算法的另一个参数

客户端,服务器都可以使用ECDHE算法

根据Server Params,Client Params计算出一个新的随机秘钥串Pre-master secret

然后结合Client Random,Server Random,Pre-master secret生成用以加密会话的会话秘钥(主密钥),还会分别派生出客户端发送消息的秘钥和服务器端发送消息的秘钥

7.Change Cipher Spec,客户端发送,告诉服务器之后的通信会采用计算出的会话秘钥进行加密

8.Finished,客户端发送,包含连接至今全部报文的整体校验值(摘要),加密之后发送给服务器

9.Change Cipher Spec,服务端发送

10.Fished

到此为止,客户端服务器都验证加密解密没问题,握手正式结束

相关文章

  • Android数据加密(转)

    Android数据加密之Rsa加密 Android数据加密之Aes加密 Android数据加密之Des加密 And...

  • iOS常见信息加密方式总结

    目录 MD5加密HMAC加密base64加密对称加密RSA加密 - 非对称加密 一.MD5加密 MD5加密是最常用...

  • 加密算法的理解

    加密算法按类型分类: 对称加密、非对称加密、散列算法 对称加密: 加密双方都持有加密算法及密钥 非对称加密: 加密...

  • Web开发必须了解的密码学技术

    对称加密与非对称加密 按照密钥的使用形式,加密算法可以分为对称加密和非对称加密(又叫公钥加密)。对称加密在加密和解...

  • iOS 关于加密

    常见的iOS代码加密常用加密方式包括Base64加密、MD5加密、AES加密、RSA加密等。 Base64加密 B...

  • iOS代码加密常用加密方式

    iOS代码加密常用加密方式,常见的iOS代码加密常用加密方式算法包括MD5加密、AES加密、BASE64加密,三大...

  • iOS常用加密方式

    iOS代码加密常用加密方式,常见的iOS代码加密常用加密方式算法包括MD5加密、AES加密、BASE64加密,三大...

  • 4.加密函数编写

    加密算法分类: md5系列加密 ,哈希算法类型 aes加密对称加密,加密/解密是一个密钥 rsa加密 非对称加密,...

  • 加密算法的应用

    加密算法的应用 [TOC] 加密算法 加密算法主要分为对称加密和非对称加密。 对称加密 对称加密采用了对称密码编码...

  • PHP加密算法

    加密技术的重点是加密算法,加密算法主要分为三类: 对称加密 非对称加密 不可逆加密 对称加密算法 加密过程: 将明...

网友评论

      本文标题:加密

      本文链接:https://www.haomeiwen.com/subject/imnsiltx.html