970 likes | 1.36k Views
数论与信息安全. 王晓峰. 深圳大学数学与计算科学学院. 目录. 1. 引言. 2. 历史背景与若干基本概念. 3. 初等数论. 4. 公钥密码. 5. 量子计算与量子密码介绍*. 6. 实用例子: PGP*. 1. 引言. 目的及意义. 研究秘密通信. 保证通信安全. 密码分类. 对称密码 ( symmetric ciphers). 1) 分组密码 ( block ciphers )-- 第一类 对称密码. 2) 流密码 ( stream ciphers )-- 第二类 对称密码.
E N D
数论与信息安全 王晓峰 深圳大学数学与计算科学学院
目录 1. 引言 2. 历史背景与若干基本概念 3. 初等数论 4. 公钥密码 5. 量子计算与量子密码介绍* 6. 实用例子:PGP*
1.引言 目的及意义 • 研究秘密通信 • 保证通信安全
密码分类 对称密码(symmetric ciphers) 1) 分组密码(block ciphers)--第一类对称密码 2)流密码 (streamciphers)--第二类对称密码 非对称密码(asymmetric ciphers) 1) 秘密密钥密码 2) 公开密钥密码
数学基础 1) 数论知识 2)群论基础 3) 有限域 4) 信息论 5) 概率论 6) 可计算理论
2. 历史背景与密码学基本概念 • 传输密文的发明地--古希腊 公元前2世纪,一个叫Polybius的希腊人设计了一种将字母编码成符号对的方法,他使用了一个称为Polybius的校验表:
两次世界大战扮演重要角色 Arthur Scherbius于1919年设计出了历史上最著名的密码机—德国的Enigma机, 在二次世界大战期间, Enigma曾作为德国陆、海、空三军最高级密码机. Enigma机使用了3个正规轮和1个反射轮. 这使得英军从1942年2月到12月都没能解读出德国潜艇发出的信号. 4轮Enigma机在1944年装备德国海军. 转轮密码机的使用大大提高了密码加密速度, 但由于密钥量有限, 到二战中后期时, 引出了一场关于加密与破译的对抗. 二次大战期间, 波兰人和英国人破译了Enigma密码, 美国密码分析者攻破了日本的RED, ORANGE和PURPLE密码, 这对联军在二次世界大战中获胜起到了关键性作用, 是密码分析最伟大的成功.
1970-1977: 七十年代早期 Feistel 在IBM做的工作和1977年美国官方宣布将DES作为数据加密标准算法. 标志着密码学的理论与技术的划时代的革命性变革, 宣布了近代密码学的开始. 近代密码学与计算机技术、电子通信技术紧密相关. 在这一阶段, 密码理论蓬勃发展, 密码算法设计与分析互相促进, 出现了大量的密码算法和各种攻击方法. 另外, 密码使用的范围也在不断扩张, 而且出现了许多通用的加密标准, 促进网络和技术的发展.
1976: 1976年W.Diffie和M.Hellman发表了“密码学的新方向”(New Directions in Cryptography)一文, 提出了适应网络上保密通信的公钥密码思想, 开辟了公开密钥密码学的新领域, 掀起了公钥密码研究的序幕. 受他们的思想启迪, 各种公钥密码体制被提出, 特别是1978年RSA (Rivest, Shamir, Adleman) 公钥密码体制的出现, 成为公钥密码的杰出代表, 并成为事实标准, 在密码学史上是一个里程碑. 可以这么说: “没有公钥密码的研究就没有近代密码学”.
2000-? 混沌密码? 量子密码?
密码学基本概念 密码学泛指一切有关研究密码通信的学 问,包括: • 如何达成秘密通信---密码编码学 • (cryptography); • 如何破译秘密通信---密码分析学 • (cryptanalysis).
基本概念 m: 明文 (Plaintext) c: 密文 (Ciphertext) 加密(算法):把明文经某种方式处理成他人难以 理解的密文. 解密(算法):将密文用特定的变换还原成明文.
密钥(K): 用以控制加密和解密的一定长度的符号串. 采用密钥后,保密通信过程则为:
例如:明文为 during the last twenty years there has been an explosion of public academic research in cryptography K=5
加密算法: 1.将明文m按每5个字符分组: durin gthel asttw entyy earst hereh asbee nanex plosi onofp ublic acade micre searc hincr yptog raphy 2.每组反序得密文c: nirudlehtgwttsayytnetsraehereheebsaxenanisolppfonocilbuedacaercimcraesrcnihgotpyyhpar
理论安全与实际安全 1949年, Shannon 提出如下的安全问题: 1. 当破译者有无限制的时间和无限制的计算能力 时一个密码系统的安全性; 2. 当破译者在有限的时间和有限的计算能力时, 一个密码系统的安全性.
计算复杂性 Turing machine & computability Turing machine: · 一个有限控制器; · 一条右端无限延长的输入带; · 一个能左右移动的读写头.
Turing machine 的特点: 非常简单的数学模型; 本质上类似于现代计算机 定义:一数论函数称为可计算当且仅当它是 Turing machine可计算.
计算问题的时间复杂性 记一可计算问题的输入数据的二进制数串的长度为n, 则计算此问题的时间(Turing machine 操作的次数)是一个n的函数f(n). 如果 f(n)=a0+a1n+…+aknk 则记f(n)=O(nk),并称此问题是k次多项式时间内可计算的-现实可计算的.
P与NP问题 P问题:多项式时间内可计算; NP问题:在不确定性Turing machine上多项式时间内可计算, 不确定性Turing machine能进行猜测, 即不确定性Turing machine如能猜出一个解的话, 则确定性Turing machine在多项式时间内可校验解的正确性. 显然:NPP
3.数论基础 3.1 带余除法:设a, b是整数,b0. 则a可唯一地表为 a=bq+r 其中q, r为整数并且0r<|b|.
3.2数的因数分解 整除、素数、合数、因数、公因数 、倍数、 公倍数 互素 最大公因数 (greatest common divisor) gcd. 最小公倍数(least common mutiple)lcm.
引理 如果 r是一正整数,那么gcd(r, 0)=r. 定理3.1若a=bq+r,则 gcd{a, b}=gcd{b, r}
Euclidean Algorithm 3. 如果 r=0, 那么 gcd(a, b)=b. 如果 r=0, 重复上述过程并且有 gcd(a, b)=gcd(b, r), |a|>|b|>r0. 但是0 到 |a|间仅有有限多整数. 所以存在 i使得: |a|>|b|>r=r1>r2>…>ri=0, 并且 gcd(a, b)=gcd(b, r1)=…=gcd(ri2, ri1) = ri1 1. 设整数a 和b满足: |a|>|b|0. 2. 如果 b=0, 那么 gcd(a, b)=a. 如果b0, 由带余除法存在q 和 r 使得 a=bq+r |b|>r0
定理 3.2 每一对不为零的整数a, b有一个正的 gcd, 记为(a, b). 定理 3.3若d=(a, b),则存在整数p, q使得 pa+qb=d
例1 求(726, 393), 并求整数p和q使得 (726, 393)=726p+393q
定理3.3的推论整数a, b互素当且仅当存在整数p, q使得 pa+qb=1
定理 3.4若a|bc, (a, b)=1,那么a|c. 推论若素数p整除a1a2…an,则存在k, 1kn, 使得p|ak. 定理 3.5每一个正合数可表为若干个素数的积,并且若不考虑素数在积中的顺序则此表示是唯一的. 从而, 如果一合数c有素因子p1, p2, …, pn,那么
3.3 同余类 设m>1为整数,a, b为任意整数. 如果 m|(ab) 则称a和b模m同余,记为(称为同余式) ab mod m
设m>1为整数, a为任意整数. 如果存在整数b 使得 ab 1 mod m 则称b为a 模m的逆元,记为 b a1 mod m 定理 3.7 若(a, m)=1, 则a1 mod m 存在. 例3.2求51 mod 13 , 和 111 mod 13. 习题 求51 mod 17.
定理 3.8模m的同余关系是等价关系. 定理 3.9若ab mod m,cd mod m,则 (1) a cbd mod m; (2) acbd mod m 定理 3.10若acbcmodm,且c与m互素,则 abmodm 定理 3.11若acbcmodm,且d=(c, m), 则 ab mod m/d
例3.4已知 427 mod 5,且1=(7, 5), 则 61 mod 5 例3.5 633 mod 12, but 211 mod 12 ?
3.4 线性同余式 来自《孙子算经》的问题: “今有物不知其数, 三三数之剩二, 五五数之剩三, 七七数之剩二, 问物几何?” 一般地,称 axb mod m 为线性同余式.
定理 3.12 如果x1是线性同余式axb mod m的解,则对模m与x1同余的每一整数也是axb mod m的解. 例 易知x=5是 5x7 mod 6 的一个解,求更多的解.
定理 3.13设(a, m) =d. 同余式 axb mod m (A-2) 有解的充分必要条件是 d | b
定理3.14联立的线性同余式 3.5 联立的线性同余式和中国剩余定理
习题 1. 求(937, 576), 并求整数p和q使得 (937, 576)=937p+576q 2. 将23456表为16进制数. 3.求51 mod 17. 4. 求解联立的线性同余式:
3.6 欧拉定理和费尔玛定理 模m的完全剩余集 :
定理3.18 (1)欧拉函数 设m>0为一正整数, 记 (m)为小于m且与m互素的正整数的个数, 并称其为m的欧拉函数. 定理3.17若m1,m2互素,则 (m1m2)=(m1) (m2)
(2)欧拉定理 定理3.19 (Euler)若a与m互素,则 a(m)1 mod m 推论 (Fermat)若p是素数,(a, p)=1, 则 ap11 mod p 定理3.20 (Fermat)若p是素数,则 apa mod p 故当p是素数,则 a1ap2 mod p
例子: 例3.9求21 mod 11.
例3.11解方程: 7x22 mod 31 习题 1. 解方程: 7x5 mod 23 2. 求 31 mod 13.
3. 7 威尔森定理 定理 3.21(Wilson) 若p是素数,则 (p1)! 1 mod p 反之,如果整数p满足上式, 则p是素数.
3.1.8 平方剩余 例子 设有下列同余式: x21, x22, x23, x24 mod 5 求解?