信息安全除了要保障信息的机密性外,还要保障信息在存储、使用、传输过程中不被非法篡改,即信息的完整性。
Hash函数可以将“任意长度“的输入经过变换以后得到固定长度的输出,也称为消息摘要。
消息摘要能有用于完成消息的认证功能,消息认证是保证信息完整性的重要措施。
Hash函数也成散列函数、哈希函数、杂凑函数等,是密码学的一个重要分支,Hash函数可以看做是一种单向密码体制,即它是从一个明文到密文的不可逆映射,即只有加密过程,不能解密。

Hash函数的基本概念
Hash函数的单向特征和输出数据长度固定的特征使得它可以生成消息或其他数据块的“数据指纹”(消息摘要或hash值),用于消息认证和数字签名等区域。
hash值的生成过程可以表示为h=H(M),其中M是“任意”长度的消息,H是hash函数,h是固定长度的hash值。

  • H可以用于“任意”长度的消息,“任意”是指实际存在的
  • H产生的hash值是固定长度的,这是hash函数的基本性质
  • 对于任意给定的消息M,容易计算H(M)值,这是要求hash函数的可用性。

Hash函数的性质

  • 抗第一原像(单向性):对于给定的hash值h,要找到M使得H(M)=h在计算上是不可行的
  • 抗第二原像(抗弱碰撞性):对于给定的消息M1,要发现另一个消息M2,满足H(M1)=H(M2)在计算上是不可行的
  • 抗强碰撞性:找任意一对不同消息M1、M2,使H(M1)=H(M2)在计算上是不可行的

消息对应hash值的每一比特应与消息的每一个比特有关联
当消息原文发生改变时,求得的消息摘要必须相应的变化

hash函数结构
hash函数的设计主要分为两类:

  • 基于加密体制实现,例如使用对称分组密码算法的CBC模式来产生hash值
  • 直接构造复杂的非线性关系实现单向性,是目前使用较多的设计方法

典型的hash算法中著名的是MD系列和SHA系列

消息认证技术

  • 消息认证的目的主要包括:验证信息来源的真实性和验证消息的完整性
    消息认证码是一种重要的消息认证技术,利用消息和双方共享密钥通过认证函数来生成一个固定长度的短数据块,并将该数据块附在消息后
  • 消息认证码是与密钥相关的hash函数,也称消息鉴别码
    消息认证码与hash函数类似,都具有单向性,此外消息认证码还包括一个密钥
    不同的密钥会产生不同的hash函数,这样就能在验证消息没有经过篡改的同时,验证是由哪个发送者发送的

消息认证码的实现过程

由于消息在发送过程中是明文形式,所以只提供认证性而未提供保密性
提供保密性可在生成MAC之后或之前进行一次加密,而且加密密钥也需被收发双方共享
通常希望直接对明文进行认证,因此先计算MAC再加密的使用方式更为常用
MAC算法与加密算法类似,不同之处是MAC不必是可逆的,因此与加密算法相比更不易被攻破

生成消息认证码的方法主要包括:基于加密函数的认证码和基于hash的认证码

信息安全概论:Hash函数概念与性质相关推荐

  1. 函数极限的概念及性质

    没看过数列极限的可以先看看: 数列极限的概念及性质 函数极限的概念 函数 定义 函数的连续 函数的极限 函数极限的描述性定义 函数极限的定义 函数极限的几何意义 例题 函数极限的性质 三个性质 例题 ...

  2. 信息摘要函数(Hash函数)的设计与性质验证

    1.信息摘要函数(Hash函数)的设计与性质验证实验 2.实验目的:信息摘要函数(Hash函数)的设计与性质验证. 2.1实验设备:PC机 一台/人 2.2实验原理: 2.2.1.信息摘要函数具有固定 ...

  3. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第20篇]Merkle-Damgaard hash函数如何构造

    这里讲的是MD变换,MD变换的全称为Merkle-Damgaard变换.我们平时接触的hash函数都是先构造出一个防碰撞的压缩函数.然后先证明这个小的,固定长度的压缩函数是安全的,然后再用它构造一个任 ...

  4. 密码学-第一讲信息安全概论

    一.机械化-电气化-信息化(摩尔定律.吉尔德定律.千倍定律) 信息的保密性.完整性.认证性和不可否认性 密码技术的基本思想是对数据进行可逆的数学变化(即加密)未授权者不能理解信息的真实含义 密码编码: ...

  5. 信息安全概论(第3版)课后习题答案 牛少彰 崔宝江 李剑编著

    整理不易,点个赞呗 信息安全概论(第3版)习题参考答案 (牛少彰 崔宝江 李剑) 第一章 概论 1.谈谈你对信息的理解. 答:信息是事物运动的状态和状态变化的方式. 2.什么是信息技术? 答:笼统地说 ...

  6. 信息安全概论作业题(精简版)

    信息安全概论课后答案(精简版) 第一章 3.信息安全的基本属性主要表现在哪几个方面? (1)完整性(Integrity) (2)保密性(Confidentiality) (3)可用性(Availabi ...

  7. 哈工大信息安全概论期末复习

    防扒链接: 何以牵尘的博客_CSDN博客-哈工大课内学习,哈工大精品课程笔记领域博主何以牵尘擅长哈工大课内学习,哈工大精品课程笔记,等方面的知识https://blog.csdn.net/m0_617 ...

  8. 叙述无保密机制的rsa签名过程_电科18年12月考试《信息安全概论》期末大作业【标准答案】...

    17年12月考试<信息安全概论>期末大作业-0001 试卷总分:100    得分:0 一. 单选题 (共 49 道试题,共 98 分) 1.信息具有的重要性质中,不包括() A.普遍性: ...

  9. 【转】理论计算机初步:从hash函数到王小云的MD5破解

    转:http://zhiqiang.org/blog/science/computer-science/preliminary-computer-theory-xiao-yun-wang-from-t ...

最新文章

  1. Spring Boot——自定义多个拦截器(HandlerInterceptor)配置方法与执行顺序
  2. 使用小波变换进行Pan和多光谱融合
  3. Java之品优购课程讲义_day09(2)
  4. 【Stimulsoft Reports.WPF教程】在代码中使用报表变量
  5. k-means 文本聚类 java_K-means文本聚类系列(已经完成)
  6. SPSS基础教程:SPSS菜单命令详解
  7. Vulnhub DC-7
  8. 6120:学长的沙包
  9. 北漂生活第十四弹-5.24 兜兜转转又是一周
  10. Opencv打开basler相机——实现显示视频、保存图片、记录视频(Windows下)
  11. android高德地图后台运行,Android手把手教你集成高德地图
  12. IIR数字低通滤波器
  13. 自适应网页设计(Responsive Web Design)别名(响应式web设计、响应式布局)
  14. 解放双手!无需注解快速生成API文档,跟SpringBoot绝配!
  15. 魔兽世界服务器卡顿原理,暴雪解释《魔兽世界》怀旧服卡顿原因 这款插件你还在用吗?...
  16. 自己录的ASP.NET MVC制作一个视频站点的视频
  17. 微信支付企业付款到零钱
  18. 天大计算机应用基础试题答案,天大2019年秋季考试《计算机应用基础》在线考核试题100分答案...
  19. 拒绝搜狗 - 流氓软件怎么不罚款? | 搜人引擎
  20. 查看电脑最大运行内存大小

热门文章

  1. 计算机无法安装蓝牙驱动,电脑没有蓝牙驱动怎么安装具体方法
  2. 多功能的small_vmt_hook
  3. MC最强辅助模组,有了它从此下矿再也不怕了
  4. tkinter自定义下拉多选框
  5. 中国智慧城市健康发展应注意八个方面
  6. 从未这么明白的设计模式(三):装饰器模式
  7. jsd 多线程与socket网络通信
  8. 凯撒密码,可输入任意长度字符串进行转换
  9. 鸿蒙系统宣传标语,有多项新功能加持,搭载鸿蒙系统的华为手表WATCH 3来了!...
  10. 计算机科学与技术考研报名属于哪一类,计算机考研属于13大门类的哪一类