1、武汉纺织大学数学与计算机学院武汉纺织大学数学与计算机学院孔维广孔维广教学目的1,了解密码学和密码学的主要任务;2,掌握机密性、完整性、抗抵赖三个方面的密码学理论和方法;3,了解两种代表性密码算法及相应密钥管理方法;4,具备密码产品的设计、开发、应用能力,了解密码算法创新知识;1,密码学及其任务1,问题:存储的信息如何保密?传输的信息如何保密?如何确认信息没有被修改?如何确认信息是正确的人所发?如何确保发信息者不能否认自己的行为?1,密码学及其任务2,密码学的任务:机密性保证只有特定用户能访问信息;数据完整性保证不被未授权修改;鉴别与抗否认确信来源且阻止否认;1,密码学及其任务3 3,密码学,密
2、码学是与信息的机密性、数据完整性、身份鉴别是与信息的机密性、数据完整性、身份鉴别和数据原发鉴别等信息安全问题相关的一门和数据原发鉴别等信息安全问题相关的一门数学技术学科。数学技术学科。是产生符合要求的密码算法的数学技术;是产生符合要求的密码算法的数学技术;1,密码学及其任务被加工信息密码算法加工后信息钥匙要求:要求:足够安全足够安全70:DES算法78:RSA算法2,密码学基础理论1,机密性保证加密模型明文加密算法密文加密密钥2,密码学基础理论1,机密性保证解密模型密文解密算法明文解密密钥2,密码学基础理论1,机密性保证两种密码体制对称密码体制非对称密码体制2,密码学基础理论1,机密性保证对称
3、密码体制加密密钥解密密钥2,密码学基础理论1,机密性保证对称密码体制设E为加密函数,D为解密函数,k为密钥,m为明文,c为密文,则:加密:Ek(m)=c解密:Dk(c)=m特点:Dk(Ek(m)=m Ek(Dk(c)=c2,密码学基础理论1,机密性保证对称密码体制保护模型mEck传 输或存储mDc密码学基础理论例如:明文:attack begin at nine;密文:buubdl cfhjo bu ojof;2,密码学基础理论1,机密性保证非对称密码体制加密密钥解密密钥接收者拥有两个密钥,加密密钥公开,解密密钥保密;要求:由加密密钥推出解密密钥不可行;2,密码学基础理论1,机密性保证非对称密
4、码体制设E为加密函数,D为解密函数,k1为加密密钥,k2为加密密钥,m为明文,c为密文,则:加密:Ek1(m)=c解密:Dk2(c)=m特点:Dk2(Ek1(m)=m Ek1(Dk2(c)=c2,密码学基础理论1,机密性保证非对称密码体制保护模型mEck1传 输或存储mDck2(k1,k2)为接收者密钥对2,密码学基础理论1,机密性保证两种密码体制之优点公钥密码体制密钥管理方便,保密性强,计算量大,速度慢;对称密码体制计算速度快,可选算法多,硬件实现方便;2,密码学基础理论2,数据完整性保证散列算法公开数据是否完整?加密数据有没有被篡改?散列算法可以解决这个问题2,密码学基础理论2,数据完整性
5、保证散列算法X1X2X3Y1Y2单向函数2,密码学基础理论2,数据完整性保证散列算法散列算法的要求:任意长度的信息映射到固定长度的结果(摘要);强的无碰撞性;不可逆;2,密码学基础理论2,数据完整性保证方案消息:x摘要:y散列算法H(x)合并发送思考:接收端如何知道消息完整性遭到破坏?2,密码学基础理论3,抗抵赖数字签名算法如何确认消息的发送者是声明的人?如何向公证机关证明确实来自发送人?2,密码学基础理论3,抗抵赖数字签名算法消息:x签名:SIG=Dk2(y)散列算法H合并发送摘要:y=H(x)发送者对要发送的消息签名过程2,密码学基础理论3,抗抵赖数字签名算法消息:x签名:SIG=Dk2(
6、y)散列算法H摘要:y1=H(x)接收者认证签名的过程:还原摘要:y2=Ek1(SIG)=Ek1(Dk2(y)若y1=y2则成功2,密码学基础理论3,抗抵赖数字签名算法数字签名算法是公钥密码算法;抗抵赖只需向公证方出示认证过程即可;数字签名一般只对摘要进行签名;3,两种代表性密码算法对称密码体制的密码算法DES非对称密码体制的密码算法RSA3,两种代表性密码算法对称密码体制的密码算法DES数据加密标准;IBM公司1975年公布;1977年被美国政府采纳为非密级加密标准;3,两种代表性密码算法对称密码体制的密码算法DES主要思想:1,分组:分成等长64字节,密钥64字节;2,进行16轮代换和移位
7、运算产生密文;3,明文密文长度相同;3,两种代表性密码算法对称密码体制的密码算法DES步骤1:初始化1,将64位明文块送入初始置换函数进行初始换位;2,将64位密钥经过换位生成16个子密钥Ki;3,两种代表性密码算法对称密码体制的密码算法DES步骤2:进行一轮变换:1,将初始比特串,分为左明文L0和右明文R0两部分;2,右明文R0与子密钥K1进行 f 函数变换,得到32位比特串;将该比特串与左明文L0做二进制异或运算,其结果为R1;3,将R0原封不动的赋给L1;3,两种代表性密码算法对称密码体制的密码算法DES步骤3:1,经过16轮这样的变换,得到左明文和右明文合并成64位的比特串;2,合并后
8、的比特串进行最终置换得到64位密文;3,两种代表性密码算法对称密码体制的密码算法DES特点:1,易于标准化;2,易于软件硬件实现;3,随机性好;弱点:如果密钥弱的话,穷举法比较有效;适用:商业数据加密应用;3,两种代表性密码算法非对称密码体制的密码算法RSA1977年由Rivest,Shamir,Adleman发明;安全性基于整数因式分解的困难性;属于公钥密码体制;3,两种代表性密码算法非对称密码体制的密码算法RSA主要思路:1,选两个大素数p,q,令n=p*q;(n)=(p-1)*(q-1);2,取小于n的自然数a,b,使得a*b%(n)=1;则(a,n)为秘密密钥,p,q保密 (b,n)为
9、公开密钥;3,两种代表性密码算法非对称密码体制的密码算法RSA主要思路:x,y 均小于n加密运算:E(x)=x b%n 解密运算:D(y)=y a%n3,两种代表性密码算法非对称密码体制的密码算法RSA算法安全性说明:仅知道(b,n)的情况下,要计算出a,只有分解出大整数n;若n为500bit,每秒100万次运算的计算机,穷举分解n需要4.21025年3,两种代表性密码算法非对称密码体制的密码算法RSA例如:取素数5,17,则n5*1785 取513 (n)=1;则(5,85)为秘密密钥;(13,85)为公开密钥;明文 8,加密:8138543 解密:4358583,两种代表性密码算法非对称密
10、码体制的密码算法RSA特点:1,公开密钥体制,密钥管理容易;2,安全性好;3,计算速度比较慢;3,两种代表性密码算法非对称密码体制的密码算法RSA适用场合:1,多人通信情况下的加密;2,数字签名&身份认证;3,不适合大量数据的加密工作;3,两种代表性密码算法其他密码算法1,3DES;2,AES;(美国,高级加密标准,算法是比利时人设计的Rijndael算法,128位分组)3,限域上的椭圆曲线密码算法(椭圆曲线离散对数问题ECDLP)4,密钥管理密钥的生命期生成生成注册注册分发分发认证认证激活激活存储存储注销注销销毁销毁4,密钥管理密钥的生成要求:1,生成的密钥不可预测;2,密钥质量保证;4,密
11、钥管理密钥的生成主要质量标准:密钥随机性;关键因素:随机数质量检验;4,密钥管理密钥的注册、注销注册密钥与实体建立关联的过程;注册之后法律责任开始;注销密钥与实体取消关联;注销之后法律责任结束;4,密钥管理密钥的认证确认获得的公钥是否是确定实体的公钥;4,密钥管理密钥分发的几种思路方案1:网外分发;方案2:秘密密钥网上分发;方案3:公开密钥管理设施PKI;4,密钥管理密钥的分发方案1:网外分发;优点:保密性强;缺点:管理、更新不便;4,密钥管理密钥的分发方案2:秘密密钥分发;思路:分发中心,每个用户与分发中心有一个秘密通信密钥;优点:路上没有密钥明文的存在;4,密钥管理公开密钥的分发方案3:公
12、开密钥体制下的密钥管理PKI;思路:CA:认证中心,负责:1,为用户生成证书,签发数字证书;2,对用户证书的有效性进行验证;4,密钥管理4,密钥管理4,密钥管理4,密钥管理方案3:公开密钥体制下的密钥管理PKI;公钥交换与加密过程:A向B请求公钥;B发送自己的公钥;A向CA查询B的证书,CA给出确认;A用B的公开密钥加密信息,发送给B;4,密钥管理PKI的优点与问题优点:解决了公钥的分发与认证问题;问题:CA的速度问题,覆盖范围问题;5,两种主要加密策略链路加密链路加密端到端加密端到端加密链链加密端端加密6,密码应用1,用于口令;2,用于加密数据;3,用于签名;6.1,口令用途:知道口令,证明
13、操作者的身份;组成:一般是一组字符和数字组成的字符串;显示的时候一般是*,或者#;输入方式:一般是键盘,也可以是软键盘;6.1,口令输入用户名称:输入用户名称:输入用户口令:输入用户口令:系统核对系统核对系统记录系统记录的用户名的用户名和口令和口令正确正确错误错误6.1,Windows登录口令Administrator用户名:密码:*6.1,FTP服务器登录口令6.1,网站登录口令6.1,邮件服务器登录口令6.1,OUTLOOK口令6.1,WORD密码设置工具选项6.1,WORD密码设置文件打开6.1,QQ密码6.1,农业银行公共用户密码6.1,建设银行公共用户密码6.1,中国银行公共用户密码
14、6.1,工商银行公共用户密码6.1,交通银行公共用户密码6.1,浦东发展银行公共用户密码6.1,证券用户密码6.1,证券用户密码6.1,手机充值卡密码密码:XXXX XXXX XXXX XXXX序列号明码暗码6.1,密码的保存1,直接保存于服务器文件中;2,变形后保存于服务器文件中;3,本地保存于文件中;6.1,密码的输入1,键盘输入;2,软键盘输入;3,粘贴;6.1,密码的传输1,明文传输;2,加密传输;3,超时限制;6.1,密码的攻击方法1,设法获得户名、密码:如:偷看;键盘跟踪间谍软件;特定IE标题跟踪间谍软件;网络钓鱼;6.1,密码的攻击方法2,穷举户名、密码3,猜测户名、密码4,读取
15、服务器中的用户密码数据库5,网上监测、分析得到户名密码6.1,密码的保护1,小心保护自己的私人信息;2,密码绝不外传;3,使用复杂的密码;4,定期更新密码;5,尽量使用加密传输的应用系统;6,尽量限制网上业务的功能;7,高风险业务使用硬件密码产品;8,访问精确的网站;6.2,加密数据例如:文件加解密程序;6.2,加密数据例如:文件保险柜;帐号保险柜;6.2,加密数据例如:使用加密传输协议HTTPS;SSL安全连接;6.2,加密数据例如:邮件加密设置;6.2,对加密数据的攻击1,分析密码钥匙;2,重放;3,更改;4,算法漏洞分析;6.2,对加密数据的保护1,保护好密码钥匙;2,定期更新密码钥匙;
16、3,采用成熟的安全的密码算法;4,进行完整性检查;6.2,忘记密码?1,设法使用找回密码功能;2,使用密码破译工具破译密码;3,重置系统用户数据库;6.2,忘记密码?6.2,忘记密码?6.2,忘记密码?6.2,忘记密码?6.2,忘记WINDOWS密码软件重置6.2,忘记WINDOWS密码手工重置1、直接删除SAM文件 2、更换屏保程序为CMD.EXE,运行重置密码命令net user administrator3、:windowssystem32GroupPolicyMachineScriptsStartup下编写一个启动脚本配置文件scripts.ini内容如下:Startup 0CmdLine=a.bat a.bat的内容:Net user hello 1234560Parameters=6.3,数字签名 iKey产品6.3,数字签名 智能IC卡产品6.3,数字签名 6.3,其他签名 手写签名按手印盖公章6.3,签名的用途 机要通信网上商务本章总结1,密码学的任务;2,机密性、完整性、抗抵赖三个方面的密码学理论和方法;3,密钥管理问题与解决方案;