网络安全协议 Network Security Protocols 薛开平(Xue Kaiping) 信息网络实验室(电三楼305) kpxue@ustc.edu.cn http://staff.ustc.edu.cn/~kpxue
教科书和参考书Textbook & Reference William Stallings, Network Security Essentials: Applications and Standards, 5th Edition, Prentice Hall,2010 英文影印版4th ,清华大学出版社,2010 中文版5th,清华大学出版社,2014 参考教材 1.荆继武等, PKI技术,科学出版社,2008 2.何泾沙译,Linux防火墙第三版,机械出版社,2006 3.Charlie Kaufman等著,许剑卓、左英男等译 “网络安全——公众世界中的秘密通信”,第二版,电子工业出版社,2004 William Stallings, Cryptography and Network Security: Principles and Practice (5th Edition), 2010 Behrouz A. Forouzan著,马振晗等译,密码学与网络安全,清华大学出版社,2009 课程主页: http://if.ustc.edu.cn/course 课程讨论QQ群:413524611 课程助教:李威(lwz159@mail.ustc.edu.cn ),电三楼313
课程安排和成绩评定 课程安排:48学时授课+6学时研讨+2学时复习 成绩评定: 期末考试60% 平时作业25% (大作业15%,课程小作业10%) 课堂等平时表现5%+课堂测试10%
Contents of the Course 第一章:网络安全综述 第二章:公钥基础设施PKI 第三章:IPSec-AH和ESP 第四章:IPSec-IKE 第五章:SSL/TLS基本协议 第六章:防火墙与NAT 第七章:虚拟专用网VPN 第八章:应用层安全协议 第九章:无线局域网安全
第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型与安全模型 1.3网络各层的相关安全协议 1.4密码学基础知识 第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型与安全模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 1.6 网络安全的标准组织
引入: 现实中的举例 电子门钥认证 挂窗帘 防止外人偷窥(保密) 加锁(防盗锁) 防小偷(保密) 挂窗帘 防止外人偷窥(保密) 加锁(防盗锁) 防小偷(保密) 养狗 拒绝不受欢迎之客(访问控制、防火墙) 安装警报系统,摄像头 检测不速之客(入侵检测) 物业,门卫 审查,授权(权限管理、访问控制)
网络安全事件——网络监听? 网络监听者 屏幕输入 用户名:abcde 密码:12345 正常连接 信 息 被 截 获 服务器 屏幕显示
网络安全事件——假冒站点? 当假冒服务器出现时 当浏览者输入 www.vstc.edu.cn时, 且不被访问者察觉时, 实际访问的是服务 服务器A 网址 www.ustc.edu.cn 浏览者与服务 器A连接,访 问站点 www.ustc.edu.cn 服务器B 假冒www.vstc.edu,cn 当假冒服务器出现时 当浏览者输入 www.vstc.edu.cn时, 且不被访问者察觉时, 实际访问的是服务 器B,这样他的私 人信息就可能被B 非法获取
网络安全事件——不安全Email A B Email偷盗者 邮件在传送过程中被截取 偷盗者篡改邮件后以甲的身份重新发送 后不发给乙,怎么办? 2.如果偷盗者直接假冒 甲的身份给乙发了假 邮件,怎么办? 乙收到该Email 甲给乙发出Email
网络安全事件——抵赖? 甲给乙发送了一封Email 甲否认发送过 商家否认收到过 甲通过商家的 来自甲的购货款 网站购买了某些 商品,并通过网络 支付了所需的货款 商家否认收到过 来自甲的购货款
网络安全概述 网络安全的重要性 网络安全是一个跨多门学科的综合性科学 政务、商务、金融、军事等 包括:通信技术、网络技术、计算机软件、硬件设计技术、密码学等 在理论上,网络安全是建立在密码学以及协议设计的基础上的 从技术上,网络安全取决于两个方面:网络设备的硬件和软件的安全,以及设备的访问控制 伴随着网络的重要性
常见的不安全因素 物理因素:物理设备的不安全,电磁波泄漏等 系统因素:系统软、硬件漏洞,病毒感染,入侵 网络因素:网络协议漏洞,会话劫持、数据篡改,网络拥塞,拒绝服务 管理因素:管理员安全意识淡漠,误操作
不安全的原因 自身的缺陷:系统软硬件缺陷,网络协议的缺陷 开放性 黑客攻击 系统开放:计算机及计算机通信系统是根据行业标准规定的接口建立起来的。 标准开放:网络运行的各层协议是开放的,并且标准的制定也是开放的。 业务开放:用户可以根据需要开发新的业务。 黑客攻击 基于兴趣的入侵 基于利益的入侵 信息战
常见攻击手段 社会工程:攻击者可通过各种社交渠道获得有关目标的结构、使用情况、安全防范措施等有用信息从而提高攻击成功率 口令破解:攻击者可通过获取口令文件,然后运用口令破解工具获得口令,也可通过猜测或窃听等方式获取口令 地址欺骗:攻击者可通过伪装成被信任的IP 地址,邮件地址等方式来骗取目标的信任 连接盗用:在合法的通信连接建立后,攻击者可通过阻塞或摧毁通信的一方来接管已经过认证建立起来的连接,从而 假冒被接管方与对方通信 网络窃听:网络的开放性使攻击者可通过直接或间接窃听获取所需信息 数据篡改:攻击者可通过截获并修改数据或重放数据等方式破坏数据的完整性
常见攻击手段(续) 恶意扫描:攻击者可编制或使用现有扫描工具发现目标的漏洞,进而发起攻击 基础设施破坏:攻击者可通过破坏DNS 或路由信息等基础设施,使目标陷于孤立 数据驱动攻击:攻击者可通过施放病毒、特洛伊木马、数据炸弹等方式破坏或遥控目标 拒绝服务:攻击者可直接发动攻击,也可通过控制其它主机发起攻击,使目标瘫痪,如发送大量的数据洪流阻塞目标
常见攻击小结 中断(Interruption)〈-〉可用性(Availability) 窃听(Interception)〈-〉机密性(Confidentiality ) 修改(Modification) 〈-〉完整性(Integrity) 伪造(Fabrication) 〈-〉可认证性(Authenticity)
网络安全的特征 机密性 信息不泄漏给非授权的用户、实体或者过程的特性。 机密性 信息不泄漏给非授权的用户、实体或者过程的特性。 完整性 数据未经授权不能进行改变的特性,即信息在存储或传输过程中保持不被修改、不被破坏的特性。 可用性 可被授权实体访问并按需求使用的特性,即当需要时应能存取所需的信息。 可认证性 确保通信实体就是它所声称的那个实体
信息安全分类
网络安全的主要任务 保障网络与系统 安全、可靠、高效、可控、持续地运行和被访问 保障信息 机密、完整、不可否认、可认证地传输和使用
需要保护的对象 硬件 服务器、路由器、主机(PC&工作站等)等 软件 操作系统、应用软件等 数据 电子邮件、电子商务、电子政务、信息发布等
第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型与安全模型 1.3网络各层的相关安全协议 1.4密码学基础知识 第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型与安全模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 1.6网络安全的标准组织
1.2 网络参考模型与安全模型 网络的体系结构 网络参考模型 采用分层原则 层与协议的集合 网络参考模型 ISO - OSI (国际标准化组织-开放系统互连)模型 TCP/IP模型(IETF) 安全体系结构:ITU-T的X.800(ISO安全框架)和IETF的RFC2828 安全攻击 安全机制 安全服务 安全模型 网络安全模型:涉及信息在网络传输中的安全(公网上的私有性保护) 网络访问安全模型:涉及网络本身的安全(访问控制)
ISO-OSI模型 分组 帧 PDU: Protocol Data Unit 协议数据单元 应用层: 处理应用进程之间所发送和接收的数据中包含的信息内容。 表示层: 在两个应用层之间的传输过程中负责数据的表示语法 传输层: 为会话层提供与下面网络无关的可靠消息传送机制 网络层: 路由、转发,拥塞控制 数据链路层: 成帧,差错控制、流量控制,物理寻址,媒体访问控制 分组 物理层: 缆线,信号的编码,网络接插件的电、机械接口 帧 PDU: Protocol Data Unit 协议数据单元
数据的封装 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 OSI mnemonics All People Seem To Need Data Processing Please Do Not Throw Sausage Pizza Away 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层
TCP/IP模型 HTTP SMTP DNS RTP TCP UDP IP 网络层 链路+物理层 传输层 应用层 … 网络接口 1 网络接口 2 网络接口 3
OSI与TCP/IP模型的比较 相同点: 1.都是基于独立的协议栈概念。 2.两者都有功能相似的应用层、传输层、网络层。 不同点:
安全体系结构 RFC 2828(Internet Security Glossary) X.800(Security Architecture for OSI) 安全攻击:损害机构所拥有信息的安全的任何行为。 安全机制:设计用于检测、预防安全攻击或者恢复系统的机制。 安全服务:系统提供的对资源进行特殊保护的进程或者通信服务。 用一种或多种安全机制来实现安全服务,安全服务致力于抵御安全攻击。
安全体系结构——安全攻击 主动攻击(passive attack): 更改数据流,或伪造假的数据流。 伪装(masquerade) 重放(replay) 篡改(modification) 拒绝服务(denial of service) 被动攻击(active attack): 对传输进行偷听与监视,获得传输信息。 窃听攻击(eavesdrop) 流量分析(traffic analysis)
安全体系结构——安全机制 特定的安全机制 另外有其他5种普通的安全技术:可信功能、安全标记、事件检测、安全审计跟踪、安全恢复。 加密:用加密算法对信息加密。保护信息的机密性 数字签名:用签名算法对信息进行计算,计算结果附加于信息单元。用于身份认证、数据完整性和非否认服务 访问控制:用于实施资源访问权限的机制 数据完整性:用于确保信息的完整性 认证交换:确保信息交换的实体是所声称的实体,通过信息交换以确保实体身份,包括公知密码、特征、位置信息等 流量填充:填充信息,防止流量分析 路由控制:能够为特定数据选择特定路由 公证:采用可信任的第三方以确保一些信息交换的性质 另外有其他5种普通的安全技术:可信功能、安全标记、事件检测、安全审计跟踪、安全恢复。
安全体系结构——安全服务 认证(Authentication):提供某个实体的身份保证 对等实体认证、数据源认证 访问控制(Access control):保护资源,防止对它的非法使用和操纵 数据机密性(Data encryption):保护信息不被泄露 连接保密性、无连接保密性、选择域保密性、流量保密性 数据完整性(Integrity):保护信息以防止非法篡改 具有恢复功能的连接完整性、无恢复功能的连接完整性、选择与连接完整性、无连接完整性、选择域无连接完整性 不可否认性(No-repudiation):防止参与通信的一方事后否认 源点的不可否认性、信宿的不可否认性 X.800定义了五类共14种安全服务 5类14种,pp9
安全服务与攻击的关系 攻 击 服 务 报文分析 流量分析 伪装 重放 篡改 拒绝服务 对等实体认证 Y 数据源认证 访问控制 机密性 攻 击 服 务 报文分析 流量分析 伪装 重放 篡改 拒绝服务 对等实体认证 Y 数据源认证 访问控制 机密性 流量机密性 数据完整性 非否认服务 可用性
安全服务与机制的关系 安全机制 Y 安全服务 加密 数字签名 访问控制 完整性 认证 流量填充 路由控制 公证 对等实体认证 数据源认证 机密性 流量机密性 数据完整性 非否认服务 可用性
网络安全模型:实现端到端的安全通信 身份认证 信息的机密性、完整性、不可否认性 算法 机制 协议
网络访问安全模型:保护信息系统免遭恶意访问 保证网络的 可用性、可控性 Firewalls and Security Gateways IDS VPN
第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 1.6网络安全的标准组织
1.3 网络各层的相关安全协议 链路层:链路隧道协议、加密技术 网络层:包过滤机制、NAT、IPsec协议、VPN 传输层/会话层 :SSL/TLS 协议 应用层:SHTTP、HTTPS、PGP、S/MIME等
Security Protocol Layers
第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 1.6网络安全的标准组织
1.4 密码学基础知识 1.密码学分类 2.古典密码 3.对称密码 4.非对称密码 5.Diffie-Hellman密钥交换
1. 密码算法分类 按发展进程或体制分 按加密模式分 古典密码: 基于字符替换的密码,现在已很少使用了,但是它代表了密码的起源 对称密钥体制( Symmetric System ):加密密钥和解密密钥相同,这些算法也叫作单钥密码体制(one-key system) 非对称密钥体制(Asymmetric System) :加密密钥和解密密钥不同,也叫公钥密码体制(public key system)或双钥密码体制(two-key system) 按加密模式分 序列密码(stream cipher): 序列密码按位或字节加密,也可以称为流密码,序列密码是手工和机械密码时代的主流。 分组密码(block cipher): 分组密码将明文分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文。
2. 对称密码算法 DES(数据加密标准,Data Encryption Standard ) 背景 1973年,NBS(后来的NIST, National Institute of Standards and Technology ) 美国国家标准局征集数据加密标准方案 1974年,IBM的Tuchman和Meyers发明Luciffer加密算法, NBS公布了IBM公司提供的该密码算法,以标准建议的形式在全国范围内征求意见 1977年1月15日, DES正式颁布,供商业界和非国防性政府部门使用,同年7月15日生效。 DES是一种对二元数据进行加密的算法,数据分组长度为64位,密文分组长度也是64位,使用的密钥为64位,有效密钥长度为56位,有8位用于奇偶校验,解密时的过程和加密时相似,但密钥的顺序正好相反,DES的整个体制是公开的,系统的安全性完全靠密钥的保密。
DES算法的过程 是在一个初始置换 (IP,Initial Permutation)后,明文组被分成左半部分和右半部分,每部分32位,以L0和R0表示,然后是16轮迭代的乘积变换,称为函数f,将数据和密钥结合起来。16轮之后,左右两部分进行一次交换,再经过一个初始逆置换IP-1 ,算法结束。 初始置换与初始逆置换在密码意义上作用不大,他们的作用在于打乱原来输入x的ASCII码字划分关系,并将原来明文的校验位变成置换输出的一个字节。
DES算法流程
Single Round of DES Algorithm
DES算法的破解 DES使用了近 25年时间,它具有很强的抗密码分析能力,但它的密钥长度只有56比特, 56-bit 密钥有256 = 72,057,584,037,927,936 ≈ 7.2亿亿之多,随着计算机运算能力的增加,56比特长度的密码系统显得不安全了。 1997年,RSA公司发起破译RC4、RC5、MD2、MD5,以及DES的活动,破译DES奖励10000美金。 由Roche Verse牵头的工程小组动用了70000多台通过因特网连接起来的 计算机系统,花费了96天找到了密钥。 1998年7月,电子前沿基金会花费25万美圆制造的一台机器在不到3天的时间里攻破了DES。 1999年在超级计算机上只要22小时!
对称密码的性能 安全性能 密钥长度 分组长度 轮数 密钥编排函数 对密码分析的抵抗能力 实现性能 计算开销 内存利用
对加密系统的攻击 未知算法攻击:仅从密文进行破译 仅知密文攻击:根据加解密算法和密文进行破译 已知明文攻击:攻击者拥有部分密文和对应的明文,根据算法寻找密钥 选择明文攻击:有选择地使用任意明文和与之对应的密文信息,根据算法寻找密钥 选择密文攻击:有选择地使用密文和与之对应的明文信息,根据算法寻找密钥
其他算法 三重DES 使用三个密钥对数据块进行三次DES操作,三重DES有四种模型: DES-EEE3 使用三个不同密钥顺序进行三次加密变换 DES-EDE3 使用三个不同密钥依次进行加密-解密-加密变换 (3DES标准) DES-EEE2 其中密钥K1=K3 顺序进行三次加密变换 DES-EDE2 其中密钥K1=K3 依次进行加密-解密-加密变换
其他算法-续 3DES问题所在 AES的出现 算法开销 采用64bits分组长度 1997年NIST征集高级加密标准 2001年,两轮评估,最终选择比利时密码学家提出的Rijndael算法,成为正式标准。
其他算法-续 IDEA IDEA是国际数据加密算法(International Data Encryption Algorithm )的缩写,是1990年由瑞士联邦技术学院X.J.Lai和Massey提出的建议标准算法,称作PES( Proposed Encryption Standard),Lai 和Massey 在1992 年进行了改进,强化了抗差分分析的能力,改称为IDEA ,它也是对64bit大小的数据块加密的分组加密算法,密钥长度为128位,它基于“相异代数群上的混合运算”设计思想算法,用硬件和软件实现都很容易,它比DES在实现上快得多。 被推荐使用在PGP中 64位明文经128位密钥加密成64位密文,穷举分析需要1038次试探,按每秒100万次计算说,则需要1013年。 加密密钥与解密密钥不同,但是从一个主密钥派生出来,因此仍是对称的加密体制,目前尚无破译方法。算法本身倾向于软件实现,加密速度快。
其他分块加密算法-续 Blowfish RC5 CAST-128 1993年开发,密钥长度可变,最长可达448位,实际中常采用128位,块长度64 RC5 提出者:Ronald L. Rivest 1994年开发,可变轮数,可变长密钥 其后续版本RC6是作为AES的候选方案之一 RC4是流密码算法(密钥生成伪随机流,与明文按bit异或) CAST-128 密钥长度40-128bits可变,每轮的函数互相不同
几种对称加密算法的比较 算法 密钥长度 轮数 数学计算 应用 DES 56 16 异或、固定S盒 SET,Kerberos Triple DES 112或168 48 PGP,S/MIME IDEA 128 8 异或、加法、乘法 PGP Blowfish 可变至448 异或、变长S盒、加法 RC5 可变至2048 可变至255 加法、减法、异或、旋转 CAST-128 40至128 加法、减法、异或、旋转、固定S盒
分组密码的工作模式 分组密码一次处理一个数据分组。 对于较长的明文,在分解成若干个分组之后,采用相同的密钥进行加密,NIST定义了5种工作模式 电码本(ECB)模式 密码分组链接(CBC)模式 密码反馈(CFB)模式 输出反馈(OFB)模式 计数器(CRT)模式
分组密码的工作模式 电码本(ECB:Electronic Codebook)模式 直接应用密码算法的工作模式 给定明文x=x1x2· · ·,将它分为b比特长的xi,ek是加密算法,产生密文分组ci = ek (xi),完整的密文c按次序将ci连接起来:即c= c1 c2 · · ·。
分组密码的工作模式-续 密码分组链接(CBC)模式 给定明文的一个比特串x=x1x2· · · , xi是b比特分组,IV是一个初始向量。 c1 = ek (x1⊕IV), c2 = ek (x2⊕c1), ci = ek (xi⊕ci-1) 输入为当前明文分组与前一明文分组的异或
分组密码的工作模式-续 密码反馈(CFB)模式 给定明文的一个比特串x=x1x2· · · , xi是s比特分组,IV是一个初始向量。 z1 = ek (IV), c1 = x1⊕z1的s位 z2 = ek (IV 移位||c1的s位), c2 = x2⊕z2的s位 zi = ek (上个移位寄存器内容移位||ci-1 的s位), ci= xi⊕zi的s位
分组密码的工作模式-续 输出反馈(OFB)模式 z1 = ek (IV), c1 = x1⊕z1 zi = ek (zi-1 ), ci= xi⊕zi
分组密码的工作模式-续 计数器(CRT)模式 给定计算器初始值counter z1 = ek (couter), c1 = x1⊕z1 z2 = ek (counter+1), c2 = x2⊕z2 zi = ek (counter+i-1), ci= xi⊕zi 59
3. 公开密钥算法 对称密码算法问题: 密钥管理量问题:两两分别用一对密钥,当用户量增大时,密钥空间急剧增大。 对称算法无法实现抗否认需求——数字签名 非对称密码体制的基本原则 加密能力与解密能力是分开的 密钥分发简单 需要保存的密钥量大大减少,N个用户只需要N个 可满足不相识的人之间保密通信 可以实现数字签名
公开密钥算法基本思想 公钥密码又称为双钥密码和非对称密码,1976年由Diffie和Hellman在其“密码学新方向”一文中提出的。 RSA是1978年MIT的Rivist, Shamir 和Adlemar开发的第一个公钥密码体制,最早提出的满足要求的公钥算法之一。(2002年图灵奖,2011年RSA2011终生成就奖)
RSA密码体制基本原理 A. 密钥的生成 B. 加密 (用e, n), C. 解密 (用d, n) 选择p, q, p, q为互异素数,计算n=p*q, φ(n)=(p-1)(q-1), 选择整数e与φ(n)互素,即gcd(φ(n),e)=1,1<e<φ (n) 计算d,使d=e-1(modφ (n)),公钥Pk={e, n}; 私钥Sk={d, n} B. 加密 (用e, n), 明文是以分组方式加密的,每一个分组的比特数应小于n的二进制表示,即每一个分组的长度应小于log2n 明文M<n, 密文C=Me(mod n). C. 解密 (用d, n) 密文C, 明文M=Cd (mod n)
模运算性质 1. [(a mod n) + (b mod n)] mod n=(a +b) mod n 例: 887 mod 187=[(884 mod 187) x (882 mod 187) x (88 mod 187)] mod 187 882 mod 187=7744 mod 187 =77 884 mod 187=[(882 mod 187) * (882 mod 187)] mod 187 =(77 x*77) mod 187=132 887 mod 187=(132 * 77 *88) mod 187=11
例:p=5,q = 7,n = 35,φ(n)=24 选d = 11,则e = inv(11, 24) = 11,m = 2 C = me mod n = 211 mod 35 = 18 M = Cd mod n = 1811 mod 35 = 2 例:p = 53,q = 61,n = pq = 3233, φ(n)=52*60 = 3120 令d = 791,则e = 71 令m = RE NA IS SA NC E 即m = 1704 1300 0818 1800 1302 0426 170471 mod 3233 = 3106,…, C = 3106 0100 0931 2691 1984 2927
RSA的安全分析 选取的素数p, q要足够大,使得给定了它们的乘积n,在不知道p, q情况下分解n在计算上是不可行的。 1999年,一个292台计算机组成的网络花了5.2个月时间分解了一个155位的十进制数(512比特)。基于短期安全性考虑,要求n的长度至少应为1024比特,而长期安全性则需n至少为2048比特。
其它公钥算法 ELGamal密码 椭圆曲线密码 Diffie-Hellman密钥交换 1985年N. Koblitz和V. Miller分别独立提出了椭圆曲线密码体制(ECC) ,其依据就是定义在椭圆曲线点群上的离散对数问题的难解性。 Diffie-Hellman密钥交换
4. Diffie-Hellman密钥交换 中间人攻击 Alice Bob (YB ) mod p = K (YA ) mod p = K XB XA Private Value, XA Public Value, YA Private Value, XB Public Value, YB Alice Bob YA YB YB = g mod p YA =g mod p 本原根:如果g是素数p的本原根,那么下列数字 g mod p, g2 mod p, … gp-1 mod p 是互不相同的数,且以某种排列包含了从1到p-1的所有整数 中间人攻击 Alice Eve Bob YA YA’ YB YB’
第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 1.6网络安全的标准组织
1.5 数字签名与认证 通信中潜在的威胁 消息伪造 内容篡改 延迟或重播 否认 数字签名-消息的不可否认性 消息认证-消息的完整性
1. 数字签名 公钥密码学的一个重要应用就是数字签名,数字签名就是利用私钥生成签名,而用公钥验证签名。 一个数字签名方案时是由签名算法和验证算法组成 签名算法利用私钥生成签名,称消息m的签名为sig(m),然后将(m,sig(m))发给接收方 验证算法利用签名者的公钥对sig(m)进行解密,如果解密输出与m一致,则为合法数据。 由于无法识别数字签名与其拷贝之间的差异,所以,在数字签名前应加上时间戳。 数字签名标准(DSS) DSA(数字签名算法,是Elgamal公钥算法的一种变体) RSA
2. 消息认证 可用来做认证的函数有三类: (1) 加密函数 用对称密钥加密,信息的完整作为对信息的认证 用公钥密码中的私钥加密,但加密速度太慢,并且很多情况下,消息并不需要加密。 (2) 消息认证码MAC (Message Authentication Code) 是对信源消息的一个编码函数,以消息和密钥作为输入,定长输出 (3) 散列函数 (Hash Function) 是一个公开的函数它将任意长的信息映射成一个固定长度的信息
消息认证码MAC 利用函数f和密钥k ,对要发送的明文x或密文y变换成r bit的消息认证码f(k,x)(或f(k,y)) ,将其称为认证符附加在x(或y)之后发出,接收者收到发送的消息序列后,按发方同样的方法对接收的数据(或解密后)进行计算,应得到相应的r bit数据 K 消 息 MAC 算法 MAC 算法 消息认证码 比较 K
散列函数 单向散列函数(hash,杂凑函数)可以从一段很长的报文中计算出一个固定长度的比特串,这种散列函数通常称为报文摘要(message digest),用于消息的完整性检验。 单向散列函数H有以下特性: H能够应用于任何大小的数据块 H产生固定长度的输出 对于任意给定的数据X,易于计算H(X) 对于任何给定的数据h,计算H(X)=h是不可行的 对于任意给定的数据X,寻找满足H(Y)=H(X),Y≠X,在计算上是不可行的。这也称为弱碰撞抵抗。 寻找满足H(Y)=H(X)的(X,Y)对,在计算上是不可行的。这也称为强碰撞抵抗 满足前5个性质的hash函数称为弱hash函数,如果6条都满足就称为强hash函数。 标准:MD5(128比特),SHA-1(160比特)等
采用散列函数认证消息 消 息 消 息 消 息 H 比较 K或K私钥 H K或K公钥 E 1.采用对称密钥加密 2.采用公钥密码加密 D S 3.使用秘密值
第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 第一章 网络安全综述 1.1网络安全概述 1.2网络参考模型 1.3网络各层的相关安全协议 1.4密码学基础知识 1.5数字签名与认证技术 1.6 网络安全的标准组织
1.6 网络安全的标准组织 国际组织 国内组织 国际标准化组织(ISO) 国际电信联盟(ITU-T) 国际电工委员会(IEC) 因特网工程任务组(IETF) 欧洲计算机制造商协会(ECMA) 美国国家计算机安全中心(NCSC) 美国国防部(DOD) 国内组织 信息技术安全标准化委员会(CITS) 通信标准化协会(CCSA)下辖的网络与信息安全技术委员会
小结 掌握网络安全的基本概念 复习计算机网络分层结构 从安全体系结构的角度理解课程所覆盖的内容 复习密码学导论,掌握对称密码与非对称密码在网络安全中的用途 了解数字签名的基本过程 熟悉三类认证方式以及具体的实现方法
作业 阅读教材第一章、第二章、第三章 第一章 思考题1.2 第二章 思考题 2.4、2.7 第二章 习题 2.11、2.12、2.18 补充:给出PPT中分组密码的5种工作模式的解密数学表示方法 第三章 习题 3.2-3.4、3.10、3.15、3.16、3.20、3.21