现代密码学基础
教师:张茹
电话,62283694
Emal,zhangru@china.com
课程安排
? 第 1~ 17周上课
? 第 18周考试
参考书
? 应用密码学。 【 美 】 Burce,机械工业
出版社
? 现代密码新理论 。杨义先,科学出版社
1.1密码学研究的基本问题
? 一、密码体制
– 密钥
– 明文、密文
– 加密算法
– 解密算法
? 安全性评价
– 无条件安全性
若密文中不含明文的任何信息,则认为该密码体制
是安全的,否则就认为是不安全的。已经证明,达
到这样高等级(完善)的安全性,仅当所用密钥的长度不短于加密的发送消息的总长度才有可能。
– 有条件安全性
把搭线者提取明文信息的可能性改为搭线者提取明
文信息的可行性,这种安全性称为有条件安全性,
即搭线者在一定的计算资源条件下,他不能从密文恢复出明文。
? 密码分析学
– 密码分析是研究密码体制的破译问题,即试
图在不知道密钥的情况下,从截取到的密文
恢复出明文消息或密钥。
– 对一个具体的密码体制的分析结果是评价这
一体制安全性的一种检验。
? 密码分析(或称攻击)分类
– 唯密文分析(攻击),密码分析者取得一个或多个用同一密 钥加密的密文;
– 已知明文分析(攻击),除要破译的密文外,密码分析者还 取得一些用同一密钥加密的明密文对;
– 选择明文分析(攻击),密码分析者可取得他所选择的任何
明文所对应的密文(当然不包括他要恢复的明文),这些明 密文对和要破译的密文是用同一密钥加密的;
– 选择密文分析(攻击),密码分析者可取得他所选择的任何
密文所对应的明文(要破译的密文除外),这些密文和明文
和要破译的密文是用同一解密密钥解密的,它主要应用于公 钥密码体制。
? 二、单向函数与伪随机序列生成器
– 一个单向函数是一个函数,由 x计算函数值 y是容易
的,但由 y计算函数的逆是困难的(在某种平均意
义下)。
– 直观地说,一个伪随机序列生成器是一个确定算法,
它把短的随机比特(种子)扩展为长得多的貌似随
机的比特序列,换句话说,伪随机序列生成器的输
出虽然不是真正的随机序列,但在计算资源一定的
条件下,要判别这个输出与等长的真随机序列的不
同是不可行的。
? 三、数字签名与杂凑( Hash)函数
– 对一个不能伪造的数字签名方案有下列要求,
– 每个用户能有效(容易)地在他选择的文件上产生他
自己的签名;
– 每个用户能有效(容易)地验证一给定的数字串是否
是另一特定用户在某特定文件上的签名;
– 没人能在其他用户没签名的文件上有效(容易)地产
生他们的签名。
? 杂凑函数是一个将不等长消息压缩为固
定长度消息的确定性算法 h,它具有如下
性质,
– 任给消息 x,计算 h( x)是容易的;
– 要找两个不同的消息 x1,x2 使得
h(x1)=h(x2)是计算上不可行(困难)的。
? 四、消息认证和身份识别
– 一个不保密的论证方案是一个使通信双方能进行公开通信而
不受入侵者欺骗的协议。
– 一个典型的认证方案包括:认证算法、消息和认证密钥。
– 对一个安全的认证方案有下列要求,
( 1)通信双方能有效(容易)地产生任意消息的认证标签;
( 2)通信双方能有效(容易)地验证一给定的数字串是否是
一给定消息的认证标签;
( 3)没有入侵者能有效(容易)地产生通信双方没发送消息
的消息认证标签。
? 用户方需要向提供服务方证明自己的身份而使
提供服务方(可能是计算机)能验证是真正用
户还是假冒该用户的入侵者。
? 一个安全的身份识别方案有下列要求,
– 每个用户能有效地提供自己的身份证明信息;
– 每个提供服务者能有效地验证提供身份证明信息者
的身份;
– 没人(包括服务提供者)能有效地提供其他人的身
份证明信息。
? 五、抗欺骗协议( fault-tolerant
protocol)和零知识证明
– 同时交换秘密问题 —— 合同问题
– 函数的多方计算问题 —— 投票问题
? 零知识证明是构造安全协议的一个主要
工具。
– 不严格地说,零知识证明除了给出结论的正
确性外不给出任何其他信息,它提供一个工
具使各方能放心地执行所给协议。
1.2密码学应用
? 特点
– 密码学是在密码设计者和密码分析者之间不断斗争中发展起
来的。
– 密码学的发展与通信技术和计算技术的发展密切相关。
– 密码学是密码体制和安全协议(包括它们的分析和破译方法)
的总体。
? 应用领域
– 军事、政府和外交等机要通信的保密和识破别国的密码
– 扩大到商务、金融和社会各个领域