0


2.4数据完整性验证

1.数据完整性概述

  • 数据完整性指数据不会被非授权更改或破坏,如篡改、删除、插入等
  • 主要类型:带恢复的连接完整性、不带恢复的连接完整性、选择字段连接完整性、无连接完整性、选择字段无连接完整性
  • 主要实现技术:基于密码技术的完整性保护和基于非密码技术的完整性保护
  • 在网络中的配置:可以配置在网络层、传输层和应用层

2.基于密码技术的完整性保护

  • 基本思想:利用密码技术在密钥的控制下生成被保护数据的认证符,密钥私密性保证只有授权用户才能产生正确的认证符,密码技术的安全特性保证只要对数据做了非授权修改,则通过认证符一定可以检测,即认证符对于数据的变化非常敏感
  • 主要方法:- 消息加密:将整个消息加密或者将消息的Hash值加密形成的消息摘要作为认证符。可以应用对称密码和公钥密码技术,如果用公钥密码,该方法则为数字签名。- 消息认证码(Message Authentication Code,MAC):输入消息和密钥,产生定长的输出作为认证符。- 认证加密(AE):同时为数据提供机密性和完整性的算法,避免分离地利用机密性和完整性算法,提高效率。

3.数据完整性验证Hash函数H:X->Y

  • 把任意长度的消息X,通过算法变换成固定长度的输出Y--Hash值或消息摘要(Message Digest)
  • 常用的Hash函数:- SHA1输出长度为160bit- SHA256输出长度为256bit- SHA512输出长度为512bit- MD5输出长度为128bit- 中国的Hash函数标准--SM3 其输出值的长度为256位,其安全性及效率与SHA-256相当

4.Hash函数的安全性

  • 单向性:第(1)个问题不可解
  • 抗弱碰撞:第(1)和(2)问题不可解
  • 抗强碰撞:第(1)和(3)问题不可解

5.基于对称密码加密的数据完整性保护模型

  • 提供的安全服务:- 数据原发鉴别:基于共享的密钥K- 数据完整性检测:消息摘要

6.基于数字签名的数据完整性保护模型

  • 提供的安全服务:- 数据原发鉴别:基于共享的密钥K- 数据完整性检测:消息摘要

7.消息认证码MAC模型

K为密钥,F为MAC函数

  • 基于Hash函数MAC--HMAC
  • 基于分组的MAC--DAA和CMAC

8.基于分组密码的MAC

(1)HMAC

  • 改进已有的Hash函数,将密钥用到Hash函数中
  • 应用不同的Hash函数得到不同的HMAC HMAC-MD5 HMAC-SHA1 HMAC-SHA256 HMAC-SHA512
  • HMAC已作为NIST的标准发布

(2)DAA

采用DES算法的密码块链(CBC)模式,且初始向量取为0

DAA的安全隐患

对于短消息,攻击者可以很容易就找到符合条件的M‘使MAC(K,M')=MAC(K,M)

(3)CMAC

相当于使用三个密钥客服DAA的安全弱点,其中两个密钥由加密密钥导出

适用AES和3DES

标签: 网络 安全

本文转载自: https://blog.csdn.net/m0_56534254/article/details/127102613
版权归原作者 耿小嘉 所有, 如有侵权,请联系我们删除。

“2.4数据完整性验证”的评论:

还没有评论