网络安全 消息认证技术笔记

网络常见攻击方式

信息网络安全攻击类型

对信息网络安全的攻击有两种类型:


被动攻击:  通过侦听和截取手段获取数据  (加密技术)


主动攻击:  通过伪造、重放、篡改、乱序等手段改变数据 (认证技术)

--------------------------------------------------------------------------------------------------------

认证(Authentication)


指通过某种手段,完成对某种信息的确认,保证和其声称的一样,通俗地说,就是验明正身,防止有人冒充。


认证是防止主动攻击的重要技术

认证技术概述

认证的种类


身份认证


是用户向系统出示自己身份证明的过程;
是系统查核用户身份证明的过程。
认证技术
基于秘密信息的身份认证
基于信任物体的身份认证
基于生物特征的身份认证

基于秘密信息的身份认证——根据用户独知的东西
来证明身份
依靠一段设定的密码
依靠某个问题的答案
依靠动态口令
容易泄露,截获,安全性不高


基于信任物体的身份认证——根据用户所拥
有的东西来证明身份
依靠某种智能卡
依靠身份证
依靠某种电子指环(交互信号)或者电子钥匙
(磁场和声音)

基于生物特征的身份认证——根据用户独特的体征
来证明身份
依靠生理特征
指纹,视网膜,虹膜、脸型… …
依靠签名、语音等


消息认证

又称为鉴别、确认,它是验证所收到的消息确实是
来自真正的发送方且未被修改的消息,它也可验证
消息的顺序和及时性。

消息认证的内容
寄件人——消息来源(报文源)的鉴别
收件人——消息归宿(报文宿)的鉴别
寄出时间——消息的序号和操作时间(报文时间性)的鉴别
信件内容——消息内容(报文内容)的鉴别



行为认证


利用用户行为特征对其身份进行认证
经典故事:关宏峰V.S.关宏宇、行走步态
用户行为认证为基础的风险防控机制


权限认证

一般指根据系统设置的安全规则或者安全策略,对用户身份进行认证,并且用户可以访问而且只能访问自己被授权的资源,不多不少。
权限认证的要素:角色、权限、用户
经典故事
兵符
虎符

加密——加密整个报文,以报文的密文作为鉴别
报文鉴别码——依赖公开的函数对报文处理,生成
定长的鉴别标签
报文摘要——将任意长度的报文变换为定长的报文
摘要,并加以鉴别
数字签名——通信双方在网上用公钥密码交换信息,
是防止伪造和欺骗的一种身份认证

加密消息认证

消息认证的内容


        报文源
        报文宿
        报文时间
        报文内容
对称密码与公钥密码的鉴别方法不同

报文源的鉴别方法

对称密码体制的鉴别方法

若B能用与A相同的密钥对密文正确解密,则可确认报文源
条件:别人不知道该密钥

公钥密码体制的鉴别方法

若B能用A的公钥对密文正确解密,则可确认报文源 (此时只能认证不能保密)

报文宿的鉴别方法

对称密码体制的鉴别方法

若A在报文中加入B的识别码IDB,则可确认报文宿

公钥密码体制的鉴别方法
若B能用自己的私钥对密文正确解密,则可确认报文宿(此时只能保密不能认证)

报文鉴别实现消息认证

MAC函数

MAC函数是多对一函数

基于DES的报文鉴别码是使用最广泛的MAC算法之一
采用CBC工作模式,只保留最后一个加密分组,作为
DAC(数据认证码),也可以只取M位
 


若接收方计算的MAC与收到的MAC匹配
接收方可以相信消息未被修改
接收方可以相信消息来自真正的发送方
如果消息中含有序列号(如HDLC, X.25, TCP),那么接
收方可以相信消息顺序是正确的
MAC的特点
MAC函数与加密的区别之一是,MAC算法不要求可逆性
MAC不能提供数字签名


报文鉴别VS常规加密
保密性与真实性是两个不同的概念
根本上,报文加密提供的是保密性而非真实性
加密代价太大(公钥算法代价更大)
鉴别函数与保密函数分离能提供功能上的灵活性
某些报文只需要真实性,不需要保密性
广播的报文难以使用加密(信息量大)
SNMP网络管理报文等只需要真实性.

报文摘要实现消息认证

Message Digest,MD
是报文鉴别码的一个变种。
将可变长度的报文M作为单向散列函数的输入,然后得
出一个固定长度的散列值h,这个h就称为报文摘要。
               h=H(M)
这个散列函数,又称哈希(Hash)函数
也称为指纹函数、杂凑函数、压缩函数… …

特点
从一个报文生成一个MD代码是容易的,但反过来从一个代码
生成一个报文则实际上是不可能的;
消息中的任何一位或多位的变化都将导致该散列值的变化,即
保证不同的报文不会得出同样的MD代码。

散列函数(Hash)
没有正式的数学基础,而是依靠算法的复杂性产生随机
的输出来满足对其功能的要求。
散列函数是公开的,一般不涉及保密密钥
用于完整性校验和提高数字签名的有效性

对Hash函数的要求


H(x)可应用于任意大小的消息
H(x)能产生定长的输出
对任何给定的x,计算H(x)比较容易
对任何给定的hash值h,找到满足H(x)=h的x在计算上是不可行的(单向性)

压缩函数的构造原理


专门设计的压缩函数
基于分组密码算法的压缩函数
基于公钥密码算法的压缩函数
基于数学基础的压缩函数

最常用的散列函数


MD5算法
生成的是128位的哈希值
SHA-1算法
生成的是160位的哈希值

散列函数VS 报文鉴别码


报文鉴别码需要使用对称密钥;散列函数不需要使用密钥
报文鉴别码是对全部数据进行加密,因此计算速度慢;散
列函数是一种直接产生鉴别码的方法,因此计算速度快
报文鉴别码抵抗攻击的方法是,增加攻击者破解密钥的难
度;散列函数抵抗攻击的方法是,增加攻击者找到碰撞的
难度

小结


Hash函数把变长信息映射到定长信息
Hash函数不具备可逆性
Hash函数速度较快
Hash函数可用于消息认证
Hash函数可提高数字签名的有效性

数字签名体制

报文鉴别码和报文摘要的局限性
用于保护通信双方免受第三方攻击
无法防止通信双方的相互攻击
        报文宿方伪造报文
        报文源方否认已发送的报文
引入数字签名,是传统的笔迹签名的模拟
如:公钥密码实现数字签名体制

传统签名的基本特点:与被签的文件在物理上不可分割、签名者不能否认自己的签名、签名不能被伪造、容易被验证


数字签名的基本要求:能与所签文件“绑定”,签名者不能否认自己的签名,签名不能被伪造,容易被验证

数字签名需要满足的条件


收方条件:接收者能够核实和确认发送者对消息的签名,
及其日期时间,并能认证签名时刻的内容,但不能伪造对
消息者的签名
发方条件:发送者事后不能否认和抵赖对消息的签名
公证条件:公证方能确认收方的信息,做出仲裁,但不能
伪造这一过程。

数字签名体制的安全性


在于从M和其签名s难以推出密钥k或伪造一个M',使M'
和s可被证实是真。
签名密钥是秘密的,只有签名人掌握
验证算法是公开的

数字签名的分类

几种数字签名体制


RSA数字签名体制
用私钥签名,用公钥验证
缺点:分组长度太大,运算代价高,尤其速度较慢;产生密钥很麻烦
ELGamal数字签名体制
DSS数字签名体制

采用的算法是DSA (Schnorr和ELGamal的变种)
它只是一个签名系统
主要用于与美国政府做生意的公司

数字签名中的问题与改进


签字后的文件可能被接收方重复使用
改进:加入特有凭证(如时间戳)
安全的密钥越来越长
问题:①运算速度较慢;②密钥存储和管理问题
改进:设计新的算法(例如:ECC)
公钥算法不宜用于长文件的加密
改进:先哈希,再加密

数字签名作为电子商务的应用技术,越来越得到人们的重视


包括普通签名和特殊签名(盲签名、代理签名、群签名、
不可否认签名、门限签名等)

  • 19
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值