1 / 96

数论与信息安全

数论与信息安全. 王晓峰. 深圳大学数学与计算科学学院. 目录. 1. 引言. 2. 历史背景与若干基本概念. 3. 初等数论. 4. 公钥密码. 5. 量子计算与量子密码介绍*. 6. 实用例子: PGP*. 1. 引言. 目的及意义. 研究秘密通信. 保证通信安全. 密码分类. 对称密码 ( symmetric ciphers). 1) 分组密码 ( block ciphers )-- 第一类 对称密码. 2) 流密码 ( stream ciphers )-- 第二类 对称密码.

pooky
Download Presentation

数论与信息安全

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数论与信息安全 王晓峰 深圳大学数学与计算科学学院

  2. 目录 1. 引言 2. 历史背景与若干基本概念 3. 初等数论 4. 公钥密码 5. 量子计算与量子密码介绍* 6. 实用例子:PGP*

  3. 1.引言 目的及意义 • 研究秘密通信 • 保证通信安全

  4. 密码分类 对称密码(symmetric ciphers) 1) 分组密码(block ciphers)--第一类对称密码 2)流密码 (streamciphers)--第二类对称密码 非对称密码(asymmetric ciphers) 1) 秘密密钥密码 2) 公开密钥密码

  5. 数学基础 1) 数论知识 2)群论基础 3) 有限域 4) 信息论 5) 概率论 6) 可计算理论

  6. 2. 历史背景与密码学基本概念 • 传输密文的发明地--古希腊 公元前2世纪,一个叫Polybius的希腊人设计了一种将字母编码成符号对的方法,他使用了一个称为Polybius的校验表:

  7. 两次世界大战扮演重要角色 Arthur Scherbius于1919年设计出了历史上最著名的密码机—德国的Enigma机, 在二次世界大战期间, Enigma曾作为德国陆、海、空三军最高级密码机. Enigma机使用了3个正规轮和1个反射轮. 这使得英军从1942年2月到12月都没能解读出德国潜艇发出的信号. 4轮Enigma机在1944年装备德国海军. 转轮密码机的使用大大提高了密码加密速度, 但由于密钥量有限, 到二战中后期时, 引出了一场关于加密与破译的对抗. 二次大战期间, 波兰人和英国人破译了Enigma密码, 美国密码分析者攻破了日本的RED, ORANGE和PURPLE密码, 这对联军在二次世界大战中获胜起到了关键性作用, 是密码分析最伟大的成功.

  8. 1970-1977: 七十年代早期 Feistel 在IBM做的工作和1977年美国官方宣布将DES作为数据加密标准算法. 标志着密码学的理论与技术的划时代的革命性变革, 宣布了近代密码学的开始. 近代密码学与计算机技术、电子通信技术紧密相关. 在这一阶段, 密码理论蓬勃发展, 密码算法设计与分析互相促进, 出现了大量的密码算法和各种攻击方法. 另外, 密码使用的范围也在不断扩张, 而且出现了许多通用的加密标准, 促进网络和技术的发展.

  9. 1976: 1976年W.Diffie和M.Hellman发表了“密码学的新方向”(New Directions in Cryptography)一文, 提出了适应网络上保密通信的公钥密码思想, 开辟了公开密钥密码学的新领域, 掀起了公钥密码研究的序幕. 受他们的思想启迪, 各种公钥密码体制被提出, 特别是1978年RSA (Rivest, Shamir, Adleman) 公钥密码体制的出现, 成为公钥密码的杰出代表, 并成为事实标准, 在密码学史上是一个里程碑. 可以这么说: “没有公钥密码的研究就没有近代密码学”.

  10. 2000-? 混沌密码? 量子密码?

  11. 密码学基本概念 密码学泛指一切有关研究密码通信的学 问,包括: • 如何达成秘密通信---密码编码学 • (cryptography); • 如何破译秘密通信---密码分析学 • (cryptanalysis).

  12. 基本概念 m: 明文 (Plaintext) c: 密文 (Ciphertext) 加密(算法):把明文经某种方式处理成他人难以 理解的密文. 解密(算法):将密文用特定的变换还原成明文.

  13. 密钥(K): 用以控制加密和解密的一定长度的符号串. 采用密钥后,保密通信过程则为:

  14. 例如:明文为 during the last twenty years there has been an explosion of public academic research in cryptography K=5

  15. 加密算法: 1.将明文m按每5个字符分组: durin gthel asttw entyy earst hereh asbee nanex plosi onofp ublic acade micre searc hincr yptog raphy  2.每组反序得密文c: nirudlehtgwttsayytnetsraehereheebsaxenanisolppfonocilbuedacaercimcraesrcnihgotpyyhpar

  16. 理论安全与实际安全 1949年, Shannon 提出如下的安全问题: 1. 当破译者有无限制的时间和无限制的计算能力 时一个密码系统的安全性; 2. 当破译者在有限的时间和有限的计算能力时, 一个密码系统的安全性.

  17. 计算复杂性 Turing machine & computability Turing machine: · 一个有限控制器; · 一条右端无限延长的输入带; · 一个能左右移动的读写头.

  18. Turing machine 的特点: 非常简单的数学模型; 本质上类似于现代计算机 定义:一数论函数称为可计算当且仅当它是 Turing machine可计算.

  19. 计算问题分类

  20. 计算问题的时间复杂性   记一可计算问题的输入数据的二进制数串的长度为n, 则计算此问题的时间(Turing machine 操作的次数)是一个n的函数f(n). 如果 f(n)=a0+a1n+…+aknk 则记f(n)=O(nk),并称此问题是k次多项式时间内可计算的-现实可计算的.

  21. P与NP问题 P问题:多项式时间内可计算; NP问题:在不确定性Turing machine上多项式时间内可计算, 不确定性Turing machine能进行猜测, 即不确定性Turing machine如能猜出一个解的话, 则确定性Turing machine在多项式时间内可校验解的正确性. 显然:NPP

  22. 3.数论基础 3.1 带余除法:设a, b是整数,b0. 则a可唯一地表为 a=bq+r 其中q, r为整数并且0r<|b|.

  23. 3.2数的因数分解 整除、素数、合数、因数、公因数 、倍数、 公倍数 互素 最大公因数 (greatest common divisor) gcd. 最小公倍数(least common mutiple)lcm.

  24. 引理 如果 r是一正整数,那么gcd(r, 0)=r. 定理3.1若a=bq+r,则 gcd{a, b}=gcd{b, r}

  25. Euclidean Algorithm 3. 如果 r=0, 那么 gcd(a, b)=b. 如果 r=0, 重复上述过程并且有 gcd(a, b)=gcd(b, r), |a|>|b|>r0. 但是0 到 |a|间仅有有限多整数. 所以存在 i使得: |a|>|b|>r=r1>r2>…>ri=0, 并且 gcd(a, b)=gcd(b, r1)=…=gcd(ri2, ri1) = ri1 1. 设整数a 和b满足: |a|>|b|0. 2. 如果 b=0, 那么 gcd(a, b)=a. 如果b0, 由带余除法存在q 和 r 使得 a=bq+r |b|>r0

  26. 定理 3.2 每一对不为零的整数a, b有一个正的 gcd, 记为(a, b). 定理 3.3若d=(a, b),则存在整数p, q使得 pa+qb=d

  27. 例1 求(726, 393), 并求整数p和q使得 (726, 393)=726p+393q

  28. 定理3.3的推论整数a, b互素当且仅当存在整数p, q使得 pa+qb=1

  29. 定理 3.4若a|bc, (a, b)=1,那么a|c. 推论若素数p整除a1a2…an,则存在k, 1kn, 使得p|ak. 定理 3.5每一个正合数可表为若干个素数的积,并且若不考虑素数在积中的顺序则此表示是唯一的. 从而, 如果一合数c有素因子p1, p2, …, pn,那么

  30. 3.3 同余类 设m>1为整数,a, b为任意整数. 如果 m|(ab) 则称a和b模m同余,记为(称为同余式) ab mod m

  31. 设m>1为整数, a为任意整数. 如果存在整数b 使得 ab 1 mod m 则称b为a 模m的逆元,记为 b  a1 mod m 定理 3.7 若(a, m)=1, 则a1 mod m 存在. 例3.2求51 mod 13 , 和 111 mod 13. 习题 求51 mod 17.

  32. 定理 3.8模m的同余关系是等价关系. 定理 3.9若ab mod m,cd mod m,则 (1) a cbd mod m; (2) acbd mod m 定理 3.10若acbcmodm,且c与m互素,则 abmodm 定理 3.11若acbcmodm,且d=(c, m), 则 ab mod m/d

  33. 例3.4已知 427 mod 5,且1=(7, 5), 则 61 mod 5 例3.5 633 mod 12, but 211 mod 12 ?

  34. 3.4 线性同余式 来自《孙子算经》的问题: “今有物不知其数, 三三数之剩二, 五五数之剩三, 七七数之剩二, 问物几何?” 一般地,称 axb mod m 为线性同余式.

  35. 定理 3.12 如果x1是线性同余式axb mod m的解,则对模m与x1同余的每一整数也是axb mod m的解. 例 易知x=5是 5x7 mod 6 的一个解,求更多的解.

  36. 定理 3.13设(a, m) =d. 同余式 axb mod m (A-2) 有解的充分必要条件是 d | b

  37. 定理3.14联立的线性同余式 3.5 联立的线性同余式和中国剩余定理

  38. 定理3.15联立的线性同余式

  39. 中国剩余定理

  40. 例 3.6求解联立的线性同余式

  41. 习题 1. 求(937, 576), 并求整数p和q使得 (937, 576)=937p+576q 2. 将23456表为16进制数. 3.求51 mod 17. 4. 求解联立的线性同余式:

  42. 3.6 欧拉定理和费尔玛定理 模m的完全剩余集 :

  43. 定理3.18 (1)欧拉函数 设m>0为一正整数, 记 (m)为小于m且与m互素的正整数的个数, 并称其为m的欧拉函数. 定理3.17若m1,m2互素,则 (m1m2)=(m1) (m2)

  44. (2)欧拉定理 定理3.19 (Euler)若a与m互素,则 a(m)1 mod m 推论 (Fermat)若p是素数,(a, p)=1, 则 ap11 mod p 定理3.20 (Fermat)若p是素数,则 apa mod p 故当p是素数,则 a1ap2 mod p

  45. 例子: 例3.9求21 mod 11.

  46. (3) 应用

  47. 例3.11解方程: 7x22 mod 31 习题 1. 解方程: 7x5 mod 23 2. 求 31 mod 13.

  48. 3. 7 威尔森定理 定理 3.21(Wilson) 若p是素数,则 (p1)! 1 mod p 反之,如果整数p满足上式, 则p是素数.

  49. 3.1.8 平方剩余 例子 设有下列同余式: x21, x22, x23, x24 mod 5 求解?

More Related