防御保护15

混合密码体系**---数字信封
逻辑 --- 先用快速的对称密钥来对消息进行加密,保证数据的机密性。然后只需要保证对称密钥的机密性即可,使用公钥密钥体系来对对称秘钥消息进行加密。


身份认证和数据认证技术
**Hash
**散列**
指纹 ---> 单向散列函数
Hash ---> 散列函数、散列算法、哈希算法;---> 将任意长度的输入数据,输出为相对较小的数据的方法,目标数据长度是不固定的,输出为固定的长度,且过程不可逆。
散列并不是加密,加密是可逆的,而散列是不可逆的
不可逆
明文可以很长,而散列值固定长度
相同的明文,产生的散列值相同;不同的明文,产生的散列值一定不同。
雪崩效应
用途

  1. 网络传输的校验和
  2. 确保传递信息的真实性和完整性
    MAC --- 消息认证码 --- 类似于散列,将明文转换为MAC值
    对消息进行认证并确定其完整性的技术。通过使用发送者和接收者之间的共享密钥,就可以识别是否存在伪装和篡改行为。--->散列值确保的是消息的完整性,而MAC是在完整性的基础上,进一步确保消息未被篡改**(发出者是A而不是C)**。
    散列的输入只有明文,而MAC会多出一个密钥。
    HMAC --- 基于哈希的消息认证码 --- 使用了某个密码学散列函数的MAC算法
  3. 电子签名
    网络中的"身份证",由数字签名算法实现。
    数字签名算法 ---> 需要散列函数进行计算。
  4. 保存敏感资料,如密码信息
  5. 散列表 --- 快速查找 --- HashTable
    利用key的散列值来映射到内存地址中,从而实现快速读写value
    散列算法一般分为两种 密码学哈希 和 非密码学哈希
    密码学哈希 ,指的是用于保证密码学安全性的散列算法;指的是很难发生 哈希碰撞 ,或者很难被找出哈希前的明文数据,即哈希值表现出很强的随机性。 密码学哈希 关键指标就在于抗碰撞性。
    非密码学哈希 ,只是尽量避免非恶意输入带来的哈希碰撞 ---> CRC,又或者HashTable
    如果一个密码学哈希算法被证实在当下计算机的计算能力内出现碰撞的可能性较高,或出现过碰撞,则该算法会成为不安全的密码学哈希算法。
    消息认证码的局限性 ---> 无法解决"对第三方证明"和"防止否认"两个问题
    生成消息签名的行为
    由消息发送者来完成,被称为"对消息签名"。
    验证消息签名的行为
    由消息接收者来完成,也可以由第三方来完成。
    验证该消息是否真正的属于某一个发送者。
    数字签名过程中,生成签名和验证签名的两个行为需要使用各自专用的密钥来完成 --- 即验证签名的****密钥无法生成签名。--->类似于公钥密码体系。

    数字证书
    所谓证书,将公钥当做是一条消息,由一个可信任的第三方对其签名后所得到的公钥
    证书
    公钥证书(PKC),与驾照很相似,里面存在姓名、组织、邮箱地址...个人信息和公钥。并由认证机构**(CA)来实施数字签名**。

    认证机构对公钥对应证书的申请者会进行身份验证
    1、通过邮箱发送邮件来确认本人身份
    2、通过第三方数据库来确认本人身份
    3、通过当面认证和身份证明来确认本人身份
    认证机构CA
    生成密钥对 --- 可以由用户完成,也可以由CA机构完成。
    在注册公钥时,对本人身份进行认证 --- RA完成
    生成并颁发证书
    作废证书 --- 用户私钥丢失,被盗。
    要作废证书 --- 就需要认证机构制作一张证书作废清单 --- CRL
    PKI用户需要从认证机构获取最新的CRL,并查询自己要用于验证签名(或者用于加密)的公钥证
    书是否已经作废。--->不是用户完成的,而是由处理证书的软件来完成的。
相关推荐
sp4214 分钟前
白话 LRU 缓存及链表的数据结构讲解(一)
算法
_不会dp不改名_1 小时前
leetcode_42 接雨水
算法·leetcode·职场和发展
Swaggy T1 小时前
自动驾驶轨迹规划算法——Apollo EM Planner
人工智能·算法·自动驾驶
野生的编程萌新2 小时前
从冒泡到快速排序:探索经典排序算法的奥秘(二)
c语言·开发语言·数据结构·c++·算法·排序算法
weixin_307779132 小时前
VS Code配置MinGW64编译backward库
开发语言·c++·vscode·算法
花开富贵ii4 小时前
代码随想录算法训练营四十三天|图论part01
java·数据结构·算法·深度优先·图论
weixin_307779134 小时前
AWS Lambda解压缩S3 ZIP文件流程
python·算法·云计算·aws
code小毛孩5 小时前
leetcode hot100数组:缺失的第一个正数
数据结构·算法·leetcode
legendary_bruce11 小时前
【22-决策树】
算法·决策树·机器学习