《密码学》教学大纲docx.docx
《《密码学》教学大纲docx.docx》由会员分享,可在线阅读,更多相关《《密码学》教学大纲docx.docx(33页珍藏版)》请在冰豆网上搜索。
《密码学》教学大纲docx
《密码学》教学大纲
《Cryptography》
课程编号:
2180081
学
时:
48
学
分:
2.5
授课学院:
软件学院
适用专业:
软件工程
教材(名称、主编或译者、出版社、出版时间)
:
[1]
WadeTrappe,LawrenceC.Washington,
Introductiontocryptography
withcodingtheory,Prentice-Hall(
科学出版社影印),2002。
[2]
AlfredJ.Menezes,PaulC.vanOorschot,ScottA.Vanstone,Handbook
ofappliedcryptography,CRCPress,1997
。
主要参考资料:
[1]卢开澄,计算机密码学-计算机网络中的数据保密与安全,清华大学出版社,
2003。
[2]BruceSchneie著,吴世忠,祝世雄,张文政等译,何德全审校,应用密码学-协议、算法与C源程序,机械工业出版社,2000。
[3]SteveBurnett,StephenPain著,冯登国,周永彬,张振峰,李德全等译,密码工程实践指南,清华大学出版社,2001。
[4]PaulGarret著,吴世忠,宋晓龙,郭涛等译,密码学导引,机械工业出版社,2003。
[5]WenboMao著,王继林,伍前红等译,王育民,姜正涛审校,现代密码学理论与实践,电子工业出版社,2004。
一.课程的性质、目的及任务
密码学是软件工程专业拓宽、提高性的专业选修课。
大量的信息以数据形式存放在计算机系统中并通过公共信道传输。
保护信息的安全已不仅仅是军事和政府部门感兴趣的问题,各企事业单位也愈感迫切。
密码技术是信息安全中的关键技术,它的有效使用可以极大地提高网络的安全性。
课程的目的在于为已经或即将完成计算机学位基础课程并计划从事信息安全工程实践或理论研究的学生提供基础指导。
课程的任务是通过对现代密码学中的基本概念、基本理论、基础算法和协议的讲授,使学生对运用密码学的方法解决信息安全问题有基本认识,为从事信息安全系统设计、开发、管理提供基本技能。
二.教学基本要求
通过本课程的学习,学生应掌握现代密码学的基本原理和基本目标;掌握现代密码学中的主要方法和关键技术;初步掌握一些现代密码学中的高级课题。
三.教学内容
课堂教学内容:
第1章绪论
1安全系统
1.1Shannon保密系统
1.1.1通信参与方
1.1.2信道
1.1.3攻击者的目标
1.2可能的攻击
1.3Kerckhoffs准则
2对称与公钥思想
2.1对称密钥机制
2.2分布系统的挑战:
密钥产生与管理
2.3公开密钥机制
2.4密码学的演化
3密码学的目的
4现代密码学的基本概念与技术
4.1单向函数/陷门单向函数
4.2加密
4.2.1基本术语
4.2.2加密方案
4.2.3对称加密
4.2.4公钥加密
4.2.5加密方案的攻击
4.3数字签名
4.3.1基本术语
4.3.2签名过程
4.3.3签名和认证函数必须满足的性质
4.3.4数字签名的争议解决(不可否认)
4.3.5数字签名与公钥加密的关系
4.4密钥管理
4.4.1基于对称密码技术
4.4.2基于公钥密码技术
4.5认证与鉴别
4.5.1鉴别
4.5.2数据源认证
4.6密码Hash函数
4.6.1修改发现码
4.6.2消息认证码
4.6.3密码Hash函数的简单分类
4.7随机数与随机序列
4.8高级密码协议
5安全评估模型
5.1无条件安全
5.2复杂理论安全
5.3可证安全
5.4计算安全
5.5自组织安全
第2章数论与代数初步
1基本概念
1.1整除性
1.2素数
1.3最大公约数
1.4算术基本定理
1.5线性Diophantine方程
2同余
2.1同余的定义与基本性质
2.2剩余类和完全剩余系
2.3缩系
2.4一次同余
2.5中国剩余定理
2.6模素数的同余式
3二次剩余
3.1二次剩余与二次非剩余
3.2模平方根
4原根
4.1整数的次数
4.2原根
5模n的逆矩阵
6群,环,域
6.1群
6.2环
6.3域
第3章DES加密标准
1简化DES算法
2差分分析
2.1三轮差分分析
2.2四轮差分分析
2.3差分分析
3DES
3.1DES算法描述
3.2初始化计算
3.3f(Ri1,Ki)函数
3.4密钥变换
3.5DES的安全
4DES是一个群
5DES的安全分析
5.1DES已显年迈
5.2增强DES安全的变化形式
6口令安全
6.1口令方案
6.2攻击
6.3实例-UNIX口令
7修改发现码
7.1攻击者对修改发现码的攻击目标
7.2实例-用DES构造修改发现码MDC-2
第4章AES加密标准
1关于有限域GF(pn)
1.1建立有限域GF(pn)
1.2除法
1.3有限域GF(28)
2基本算法
3层
3.1字节变换
3.2移动行变换
3.3混合列变换
3.4轮密钥加
3.5轮密钥生成
3.6S-盒的建立原理
4解密
5设计考虑
6执行考虑
7AES的积极意义
8加密模式
8.1ECB模式
8.2CBC模式
8.3CFB模式
9消息认证码
9.1攻击者对消息认证码的攻击目标
9.2伪造类型
9.3实例–基于CBC的消息认证码
第5章RSA算法与Rabin算法
1RSA加密算法
1.1算法描述
1.2例子
2RSA加密的实现
2.1素性测试
2.2模幂
3RSA加密的安全
3.1秘密参数的关系
3.2关于分解问题
3.2.1指数分解方法
3.2.2Pollardp1算法
3.2.3二次域筛法
3.2.4分解问题的进展
3.3小加密指数问题
3.4小解密指数问题
3.5乘法性质
3.6共模攻击
3.7部分密钥暴露攻击
3.8循环攻击
3.9消息暴露
3.10前项搜索攻击
3.11RSA-OAEP
3.12定时攻击
4实践中的RSA加密
4.1模的推荐大小
4.2素数的选择
4.3指数
5Rabin加密算法
5.1算法描述
6Rabin加密的实现
6.1寻找平方根
6.2关于效率
6.3冗余问题
7Rabin加密的安全
8公钥加密总结
8.1公钥加密的要求
8.2关于认证与不可否认问题
8.3陷门函数集
第6章离散对数
1离散对数问题
2计算离散对数
2.1
穷举搜索
2.2
小步大步算法
2.3
PollardRho算法
2.4
Pohlig-Hellman算法
2.5
指标积分算法
3ElGamal公钥加密系统
3.1算法描述
3.2例子
3.3ElGamal加密的效率
3.4ElGamal加密的安全
4比特承诺
4.1应用背景
4.2比特承诺的要求
4.3计算模4的离散对数
4.4一个比特承诺方案
第7章数字签名
1RSA签名算法
1.1算法描述
1.2例子
1.3RSA签名的可能攻击
1.3.1整数分解
1.3.2RSA的乘法性质
1.4RSA签名的执行
1.4.1分块问题
1.4.2长消息与短消息问题
1.4.3签名的产生与认证性能
1.4.4参数选择
1.4.5系统参数
2ElGamal族签名方案
2.1数字签名算法DSA
2.1.1算法描述
2.1.2例子
2.1.3DSA的安全与执行
2.2ElGamal签名方案
2.2.1算法描述
2.2.2例子
2.2.3ElGamal签名的安全
2.2.4ElGamal签名的性能
2.2.5ElGamal签名的变化形式
2.3Schnorr签名方案
2.3.1算法描述
2.3.2例子
2.3.3性能
2.4消息恢复与消息附加方案
3生日攻击
3.1生日问题
3.2对签名方案的生日攻击
3.3对离散对数的生日攻击
3.4双重加密中间人攻击
第8章椭圆曲线
1Weierstrass方程
2实数域上的椭圆曲线
2.1简化Weierstrass方程
2.2椭圆曲线
2.3加法法则
3有限域上的椭圆曲线
3.1模不为2,3的椭圆曲线
3.1.1加法法则
3.1.2例子
3.2有限域GF(2n)上的椭圆曲线
3.2.1简化Weierstrass方程
3.2.2群法则
3.2.3例子
3.3点的数量
3.4椭圆曲线上的离散对数问题
4椭圆曲线密码系统
4.1明文表示
4.2椭圆曲线ElGamal密码系统
4.3椭圆曲线数字签名算法ECDSA
5利用椭圆曲线的分解技术
5.1椭圆曲线分解算法
5.2退化的曲线
第9章公钥密码执行
1素数问题
1.1Miller-Rabin测试
1.2素数产生
1.2.1随机搜索概率素数
1.2.2强素数
1.2.3产生DSA型素数
2模幂
2.1问题模型
2.1.1加法链
2.1.2加-减法链
2.1.3加法序列和向量加法链
2.2一般模幂
2.2.1二进制方法
2.2.2k-ary方法
2.2.3滑动窗口模幂
2.3固定指数模幂
2.4固定底数模幂
2.4.1固定底数窗口方法
2.4.2固定底数Euclidean方法
3指数译码
3.1带符号表示
3.2使用NAF表示的二进制方法
4多维模幂
4.1Shamir窍门
4.2扩展Shamir窍门
5中国剩余定理加速RSA
6Montgomery约减方法
6.1Montgomery乘
6.2Montgomery模幂
第10章电子商务与电子现金
1安全电子交易
1.1安全需求
1.2SET协议
1.2.1元素
1.2.2问题
1.2.3交易方案
2电子现金
2.1应用背景
2.2安全需求
2.3Brands电子现金方案
2.3.1Brands方案架构
2.3.2Brands方案的算法
2.3.3Brands方案的匿名问题
2.3.4Brands方案的其他安全问题
第11章秘密分享
1应用背景
1.1关于秘密分割
1.2关于门限方案
2秘密分割
2.1通过模加实现的二元控制
2.2通过模加实现的一致同意控制
3门限方案
3.1Shamir门限方案
3.2向量门限方案
3.3有骗子的秘密分享
第12章零知识证明技术
1零知识概念总述
1.1思想
1.2交互证明系统与零知识证明协议
1.3零知识证明协议的一般结构
1.4零知识与非对称协议的比较
2Fiat-Shamir鉴别协议
3Feige-Fiat-Shamir鉴别协议
4GQ鉴别协议
5Schnorr鉴别协议第12章密钥建立技术
1技术的动机
2密钥预先分配
2.1简单密钥预先分配的缺陷
2.2Blom密钥预先分配方案
3密钥分配
4密钥协商协议
4.1Diffie-Hellman密钥协商
4.2中间人攻击
4.2.1国际象棋大师问题
4.2.2Diffie-Hellman密钥协商的中间人攻击问题
4.3站对站协议
4.4密钥协商协议的安全要求
5Kerberos
6公钥基础设施PKI
6.1X.509
6.2PGP网络
实验教学内容:
计算数论实验:
Euclidean算法,线性Diophantine方程求解,求逆,解线性同余方程,解同余方程组,解二次同余方程,求原根。
AES加密算法实现:
设计128位的AES加密算法。
公钥密码执行算法:
Miller-Rabin素数测试,模幂算法。
RSA加密算法实现:
RSA密钥产生算法,RSA加密算法,RSA解密算法。
ElGamal加密算法实现:
ElGamal密钥产生算法,ElGamal加密算法,ElGamal解密算法。
四.学时分配
章节序号
章节名称
学时分配
其
中
讲授
实验
1
密码学概论
2
2
0
2
数论与代数初步
12
6
6
3
DES加密标准
2
2
0
4
AES加密标准
6
2
4
5
RSA算法与Rabin算法
6
4
2
6
离散对数
4
2
2
7
数字签名
2
2
0
8
椭圆曲线
2
2
0
9
公钥密码执行
6
4
2
10
电子商务与电子现金
1
1
0
11
秘密分享
1
1
0
12
零知识证明技术
2
2
0
13
密钥建立技术
2
2
0
合计
共十三章
48
32
16