密码基础概念(二)

admin 2020年10月26日09:31:12评论9 views字数 1060阅读3分32秒阅读模式
密码基础概念(二)
无论你有没有意识到,日常生活中我们几乎每天都在跟密码学打交道。只要你接触过互联网,那么基本上都离不开密码学

 

举个最简单的例子,现在的很多网站都是通过HTTPS协议进行通信的,而支撑着HTTPS协议正常运行的正式密码学这一理论基础。

 

作为程序员,我们更有必要了解下密码学的一些基本理论及其背后的原理。

 

1

简单公钥加密体制模型  

密码基础概念(二)
使用公钥密码算法加密:公钥用于加密,私钥用于解密。

2

密钥交换模型    

密钥协商/密钥交换两个或多个实体通过相互传递一些消息来共同建立一个共享的秘密密钥的协议,且各个实体无法预先确定这个秘密密钥的值。

密码基础概念(二)

3

数字信封    

数字信封一种数据结构,包含用对称密钥加密的密文和用公钥加密的该对称密钥。

密码基础概念(二)

数字信封——过程

密码基础概念(二)

公钥保护对称密钥,对称加密保护plaintext。

新的安全问题:发送端不知道自己收到的公钥是否被中途篡改了。即,不能确定公钥是不是真的属于接收端。

4

数字签名模型    

数字签名签名者使用私钥对待签名数据的杂凑值做密码运算得到的结果,该结果只能用签名者的公钥进行验证,用于确认待签名数据的完整性、签名者身份的真实性和签名行为的抗抵赖性。

密码基础概念(二)

5

数字证书    

数字证书:也称公钥证书,由证书认证机构(CA)签名的包含公开密钥拥有者信息、公开密钥、签发者信息、有效期以及扩展信息的一种数据结构。按类别可分为个人证书、机构证书和设备证书,按用途可分为签名证书和加密证书。

密码基础概念(二)

6

杂凑函数    

杂凑算法:将一个任意长的比特串映射到一个固定长的比特串,且满足下列三个特性:

1、为一个给定的输出找到能映射到该输出的一个输入时计算上困难的。

2、为一个给定的输入找出能映射到同一个输出的另一个输入是计算上困难的。

3、要发现不同的输入映射到同一输出是计算上困难的。

注:杂凑运算一般不叫做加密。

密码基础概念(二)
使用举例:

密码基础概念(二)

M:消息。S:盐。H(M||S):加盐消息的杂凑值。

该协议可识别传输错误,但不能防止主动攻击。

不保护消息M的机密性。

7

消息认证算法MAC   

消息认证算法:使用密码算法计算消息认证码的计算方法,可用于数据完整性的鉴别。

密码基础概念(二)
HMAC是MAC的最常用的一种。

密码基础概念(二)
使用举例:

密码基础概念(二)

M:消息。C:消息认证算法MAC。K:MAC的密钥。

该协议保护消息完整性。

8

关联数据的认证加密    

带有关联数据的认证加密(AEAD):一种能够同时保证数据的保密性、 完整性和真实性的一种加密模式。

密码基础概念(二)
密码基础概念(二)
AEAD:同时完成加密与认证。保证数据的机密性、完整性和真实性。

密码基础概念(二)

密码基础概念(二)

扫描关注我们

微信:OPPO安珀实验室

密码基础概念(二)

原文始发于微信公众号(OPPO安珀实验室):密码基础概念(二)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年10月26日09:31:12
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   密码基础概念(二)https://cn-sec.com/archives/2495272.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息