密码学的数学基础
密码学的数学基础

定理:若acbc mod m,d=gcd(c,m), 则:ab mod m/d 因为 acbcmod m
所以 ac=km+bc 所以 c(a-b)=km 又因为 d=gcd(c,m) 所以 c=c1· d,m=c2· d,gcd(c1,c2)=1 所以 c1· d(a-b)=k· c1 · d 所以 c1(a-b)=k· c2 又因为 gcd(c1,c2)=1 所以 c1|k 所以k=h· c1 所以 a-b=k· h· c2 所以 ab mod c2 所以 ab mod (m/d)
按模指数运算:am mod n
将指数运算作为一系列乘法运算,每次做一次模运 算。 例:a8 mod n = ((a2 mod n)2 mod n)2 mod n 当m不是2的乘方时,将m表示成2的乘方和的形式。 例如:25=(11001)2,即25=24+23+20 a25 mod n = (a16 a8 a) mod n = ((((a2)2)2)2 ((a2)2)2 a) mod n = ((((a2 a)2)2)2 a) mod n 适当存储中间结果,则只需6次乘法: (((((((a2mod n) a)mod n)2mod n)2mod n)2mod n) a)mod n
3为6的因子,记为3|6,3除尽6
任意的a|b,a|c,称a为b,c的公因子
最大公因数:a与b的公因数中能被所有a,b 的公因数整除的正整数,记为gcd(a,b)。 互素(互质):两个整数称为互素的,如果它 们除了1以外没有其他的公因数,即 gcd(a,b)=1。
定理:若a=b· q+r,则gcd(a,b)=gcd (b,r) 证明:d=(a,b),d’=(b,r) d| a – bq d | r,d为b,r的公因数; d|d’ d’=h· d d’|b· q+r d’|a,d’为a,b的公因数;d’|d d=k· d 所以 k· h=1 k=h=1;
密码学中的数学基础

数论 群论 有限域(Galois Field)理论 计算复杂性理论
密码学数学引论----数论
一、素数 1 除数 ➢ 若a=mb,其中a,m,b均为整数,当b≠0时,b
能整除a,记为b|a,称b为a的一个除数(或因 子)。 ➢ 对于除数,以下规则成立: (1)如果a|1,则a=±1; (2)如果a|b且b|a,则a=±b; (3)对于任何b≠0,有b|0; (4) 如 果b|g 且 b|h, 则 对任 何 整数 m 和 n有
b|(mg+nh)。
密码学数学引论----数论
2 素数 ➢ 如果整数p>1且因子仅为±1和±p,则称p是素
数(质数)。 ➢ 在只考虑正整数的情况下,素数是指只能被1和
它本身整除的整数。 ➢ 目前没有一个规律来确定所有的素数。 ➢ 素数有无穷多个。
算术基本定理:任何大于1的整数a都可以分解写 成唯一的表达式:
56=53×53≡132 mod 56≡1 mod 56 因此
560=56×56×56×56×56×56×56×56×56×56 ≡(1 mod 56) ×…× (1 mod 56) ≡(1×1×…×1)mod 56 ≡1 mod 56
所以56|560-1。
密码学数学引论----数论
三、欧几里德(Euclid)算法 欧几里德算法用于确定两个整数的最大公因子,
和传递性。 (2)模运算满足可交换、可结合、可分配。
[a(modn)±b(modn)]=(a±b)modn [a(modn)b(modn)]=(ab)modn
[(ab)(modn)+(ac)(modn)]modn=[a(b+c)]mo dn
例:证明560-1是56的倍数 证明:53=125≡13 mod 56
数学知识点归纳数论与密码学的基础

数学知识点归纳数论与密码学的基础数学知识点归纳:数论与密码学的基础数论是数学的一个分支,研究的是整数及其性质。
而密码学是应用数论的一个领域,研究的是信息保密和安全通信的方法。
本文将就数论和密码学的基础知识进行归纳和总结。
一、数论的基础知识1. 整数和整除性质:整数是自然数、0和负整数的集合。
整除是指一个数能够整除另一个数,也可以说是被整除的那个数是另一个数的倍数。
2. 最大公约数和最小公倍数:最大公约数是两个数中最大的能够同时整除它们的数;最小公倍数是能够同时被两个数整除的最小的非零自然数。
3. 模运算:模运算是指将一个数对另一个数取余得到的结果,表示为a mod b。
常用于解决循环问题、计算机编程和密码学等领域。
4. 素数和合数:素数是指只能被1和自身整除的数,大于1的非素数称为合数。
二、RSA公钥密码体制RSA密码体制是一种基于数论的非对称加密算法,由三位数学家Rivest、Shamir和Adleman共同发明。
它利用了大数分解的困难性来提供安全性。
1. 密钥生成:RSA算法需要生成一对公私密钥。
首先选择两个不同的素数p和q,计算它们的乘积n=p*q。
选择一个与(p-1)*(q-1)互质的整数e作为公钥,计算私钥d使e*d ≡ 1(mod (p-1)*(q-1))。
2. 加密过程:将明文M转换为整数m,然后使用公钥(e,n)对明文进行加密,得到密文C ≡ m^e(mod n)。
3. 解密过程:使用私钥(d,n)对密文进行解密,得到明文M ≡C^d(mod n)。
三、素性测试素性测试是判断一个大数是否为素数的方法,其中最著名的是费马素性测试和米勒-拉宾素性测试。
1. 费马素性测试:根据费马小定理,如果p是素数且a是p的一个互质整数,那么 a^p-1 ≡ 1(mod p)。
因此,对于一个给定的大数n,若不等式a^n-1 ≡ 1(mod n)成立,那么n一定是合数。
费马素性测试虽然简单,但在实际应用中效果较差。
密码学的数学基础及其应用

密码学的数学基础及其应用密码学是现代信息安全领域中的重要分支,它涵盖了加密、解密、数字签名、密钥管理等方面。
其基本目的是确保信息的安全性、可靠性和隐私性。
密钥是解密或解码所需的加密或编码过的文本,因此,密码学的基础是在数学和其他相关学科中找到可行的方法来创建和管理密钥。
一、密码学的数学基础密码学的数学基础主要包括大量的数学理论、算法和问题,这些是建立密码体系必不可少的基础。
其中,最基础也最重要的是数论、代数、离散数学和计算机科学。
1. 数论数论是密码学的基础。
在密码学中,一种常用的数论方法叫做模运算。
模运算是在某一范围内进行的算术运算,例如将100除以7得到的余数是2,即100 mod 7 = 2。
这个方法被用于创建密钥和密码。
2. 代数代数在密码学中的作用与数论一样重要。
这是因为密码的创建和破解过程中,有时需要用到代数方法。
例如,当使用基于公钥的密码体系时,常常需要使用解方程式的方法来计算密钥。
3. 离散数学离散数学是密码学的关键,特别是在数据结构、图论、组合数学等方面。
在密码学中,离散数学的一种应用是用于构建Diffie-Hellman密钥交换协议和ElGamal加密算法等。
4. 计算机科学计算机科学是密码学的另一个重要基础。
密码学中使用的大多数算法都需要计算机的支持。
因此,对于密码学的学习者,必须了解计算机科学的基础知识,例如数据结构、算法、计算机体系结构和操作系统等。
二、密码学的应用密码学的应用涵盖了众多领域。
在计算机网络安全领域,有四种常见的密码学应用。
1. 对称加密技术对称加密技术是一种常见的密码技术,使用相同的密钥加密和解密数据。
这种技术能够快速加密和解密数据,但有一个问题是,不安全地传输密钥会导致密钥泄漏的风险。
2. 公钥加密技术公钥加密技术也被称为非对称加密技术。
它使用两个密钥,一个用于加密数据,另一个用于解密数据,因此只有拥有私钥的人才能读取数据。
这种技术缺点是速度慢,因为加密和解密都需要昂贵的数学计算。
数学与密码学的关系与应用

数学与密码学的关系与应用数学与密码学的关系密不可分,密码学是一门利用数学方法来研究信息保密和信息安全的学科。
密码学通过运用数学原理和算法来设计密码系统,保护敏感信息的机密性和完整性。
这篇文章将探讨数学与密码学的关系,并探讨密码学在现实世界中的应用。
1. 数学与密码学的基础密码学从根本上依赖于数学。
数论、代数学、概率论和统计学等数学领域中的概念和方法都在密码学中发挥了重要作用。
数论中的素数和模运算,代数学中的群、环和域的概念,概率论和统计学中的随机性和分布等都是密码学研究的基础。
2. 对称密钥密码与数学对称密钥密码系统是一种使用相同密钥进行加密和解密的方法。
这些密码系统的设计依赖于数学中的置换和替换算法。
例如,凯撒密码、DES和AES等算法都是基于数学方法的,其中包括模运算、置换和代换等。
3. 公钥密码与数学公钥密码系统使用不同的密钥进行加密和解密。
这些系统的设计依赖于数学中的数论和代数方法。
RSA算法就是基于数论中的大数分解问题,而椭圆曲线密码算法则是基于代数中的椭圆曲线离散对数问题。
4. 数学在密码分析中的应用密码分析是破解密码系统的过程,此过程也依赖于数学。
数学方法如概率统计、线性代数和数论等被广泛应用于密码分析中。
通过分析密码系统的数学特性和算法弱点,攻击者可以发现密码系统中的漏洞,从而破解密码。
5. 数学与现实生活中的密码学应用密码学在现实生活中有广泛的应用。
银行和电子商务使用密码学来确保交易的安全和隐私。
例如,在进行网上银行交易时,通过使用公钥密码系统,用户可以对敏感信息进行加密,防止信息被窃取。
另外,数字版权管理、电子票务系统以及移动通信等领域也应用了密码学技术,以确保信息的安全传输和存储。
6. 数学与量子密码学量子密码学是密码学领域中的一个新兴研究方向,它利用了量子力学的原理来构建安全的密码系统。
量子密码学是建立在数学和量子力学的交叉领域上的,它的发展需要深厚的数学基础,涉及到概率、线性代数和信息论等数学概念和方法。
密码学的数学基础

密码学的数学基础密码学是研究信息安全和通信保密的一门学科,它涉及到数据加密、解密、认证、签名以及密码系统的设计等领域。
密码学作为信息安全的基石,具备坚实的数学基础。
本文将探讨密码学中涉及的一些重要的数学原理和算法。
一、模运算在密码学中,模运算是一种关键的数学运算,它对于生成密码算法和破解密码算法都有着重要作用。
模运算是指对于给定的正整数n,将一个整数a除以n所得的余数。
模运算具有以下几个重要性质:1. 加法的封闭性。
对于任意的整数a和b,(a+b) mod n=(a mod n + b mod n) mod n。
2. 乘法的封闭性。
对于任意的整数a和b,(a×b) mod n=(a mod n × b mod n) mod n。
3. 乘法的分配律。
对于任意的整数a、b和c,(a+b) mod n=(a mod n + b mod n) mod n。
二、欧拉函数和费马小定理在密码学中,欧拉函数和费马小定理是密码算法设计的重要数学基础。
1. 欧拉函数欧拉函数φ(n)表示小于等于n的正整数中与n互质的数的个数。
对于任意正整数n,欧拉函数满足以下性质:- 如果p是一个质数,那么φ(p)=p-1。
- 如果a和b互质,那么φ(a×b)=φ(a)×φ(b)。
2. 费马小定理费马小定理是一个基本的数论定理,它指出如果p是一个质数,a是不可被p整除的整数,那么a^(p-1) mod p ≡ 1。
费马小定理在密码学中应用广泛,特别是在RSA算法中。
RSA算法是一种非对称加密算法,基于大数因子分解的困难性。
三、素数和大数因子分解密码学中的许多算法都依赖于素数和大数因子分解的困难性。
1. 素数素数是只能被1和自身整除的正整数。
在密码学中,素数的选取十分重要,因为对于一个大的合数,将其分解质因数是非常困难的。
2. 大数因子分解大数因子分解是指将一个大的合数分解成质因数的过程。
在密码学中,大数因子分解的困难性是许多加密算法的基础,如RSA算法。
信息安全导论5密码学数学基础

2024/4/3
13
3、模运算:对于某个固定模m的同余式可以象普通的等式那 样相加相减和相乘:
a(mod m)±b(mod m)=(a±b)(mod m)
a(mod m)*b(mod m)=a*b(mod m)
例:由同余式演算证明560-1是56的倍数,223-1是47的倍数。
解:
注意53=125≡13(mod56) 于是有56≡169≡1(mod56) 对同余式的两边同时升到10次幂, 即有56∣(560-1)。 其次, 注意26=64≡-30(mod47),
2024/4/3
5
互素与最大公约数
最大公约数(最大公因子):
若a,b,c∈Z,如果c∣a,c∣b,称c是a和b的公约数。正 整数d称为a和b的最大公约数(记d=gcd(a,b)或(a,b)) ,如 果它满足:
d是a和b的公约数。 对a和b的任何一个公约数c有c∣d。
等价的定义形式是:
gcd(a,b)=max{k: k∣a,k∣b} 若gcd(a,b)=1,称a与b是互素的。
2024/4/3
4
整除基本性质 a|a; b≠0,b | 0;
If a|b,b|c,then a|c;
if a|1, then a=±1; if a|b, and b|a,then a=±b; if b|g and b|h, then b|(mg+nh),for any integers m and n 注意: if a=0 mod n, then n|a
g c d ( a ,b ) = P 1 m in ( e 1 ,f1 )P 2 m in ( e 2 ,f2 )
P m in ( e t,ft) t
lc m ( a ,b ) = P 1 m a x ( e 1 ,f 1 ) P 2 m a x ( e 2 ,f2 )
密码学数学基础

第三章密碼學數學基礎本章摘要3.1 有限場3.2 同餘及模運算3.3 乘法反元素3.4 線性同餘3.5 中國餘數定理3.6 二次剩餘3.7 單向函數與單向暗門函數3.8 指數函數3.9 小結本章前言密碼學中需要使用到許多數學理論,如數論(Number Theory)、資訊理論(Information Theory)、複雜度理論(Complexity Theory)、機率(Probability),與線性代數(Linear Algebra)等,均為設計密碼系統與協定不可或缺的工具。
在分析密碼系統與協定時,這些理論提供我們証明或相信,這些密碼系統或協定提供足夠安全的保障。
在本章中,我們將對密碼學中必要的數學基礎,作一重點整理,期使讀者能全盤了解密碼學的運作原理及如何分析與証明其安全性。
學習路徑❖密碼學數學基礎包括有限場、同餘及模運算、乘法反元素、線性同餘、中國餘數定理、二次剩餘、單向函數與單向暗門函數,與指數函數等。
由於數論是密碼學中最重要的數學基礎,本章將針對必要的數論理論為讀者做一整體概念的介紹。
❖本章主要探討有限場、同餘及模運算、乘法反元素、線性同餘、中國餘數定理、二次剩餘、單向函數與單向暗門函數,與指數函數等。
有限場方面,將介紹環、群,與場。
同餘及模運算方面,包括同餘基本運算、尤拉商數、尤拉定理與費瑪定理之介紹。
乘法反元素方面,探討如何運用尤拉定理與歐幾里德演算法求得乘法反元素。
接著介紹線性同餘、中國餘數定理、二次剩餘,與單向函數與單向暗門函數之定義及其應用,並輔以實例加以說明。
本章最後將探討指數函數之特性。
本章內容 3.1 有限場若一個場中的元素個數為無限多個則稱為無限場(infinite field);反之,稱為有限場(finite field)。
密碼理論應用中常用有限場。
無限場的例子有實數場R 、有理數場Q 、複數場C 等;有限場的例子有Galois Field (GF)、模運算結果等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
素数
如何判断一个数是否为素数?
本章授课提纲
(1)整除
(2)素数
(3)最大公约数 (4)欧几里德算法
最大公约数
最大公约数的定义 a和b的最大公约数(Greatest Common Divisor ) 是能够同时整除a和b的最大正整数,记为gcd(a,b) 或者(a,b)。 例如:gcd(6,4)=2,gcd(5,7)=1,gcd(24,60)=12 互素的定义 如果gcd(a,b)=1,就称a和b互素
证明:记a-b=nk,b-c=nl,那么两式相减得ac=n(k-l),所以a≡c(mod n)。
模运算和同余
模运算和同余的性质 性质五:如果m|(a-b),则a≡b(mod m) 证明:由已知条件可得a-b=km,k为某一整数; 进而可得a=b+km,故a(mod m)=(b+km)除以m的余 数=b除以m的余数=b(mod m),由同余的第二个定 义可以得证。
[11(mod 8)-15(mod 8)](mod 8)=(3-7)(mod 8)=4
=(11-15)(mod 8)=-4(mod 8)=4
模运算和同余
模运算的乘法的结合律 [a(mod n)〓b(mod n)](mod n)=(a〓b)(mod n) 举例: [11(mod 8)〓15(mod 8)](mod 8)=(3〓7)(mod 8)=21(mod 8)=5 =(11〓15)(mod 8)=165(mod 8)=5
欧几里德算法
欧几里德算法的精确描述 两个整数用a,b表示,商用q表示,余数用r表示 Step1 取a,b较大者为a,较小者为b Step2 做除法,计算并保留余数r=mod(a,b) Step3 将原来的除数改做被除数,余数作为除数 a=b,b=r 重复Step1和Step2直到r=0,返回b
练习
欧几里德算法
欧几里德算法的简单描述 欧几里德算法又称“辗转相除法”,其算法可简 单描述如下: 对于两个正整数,取其中较大者为被除数,较小 者为除数,对这两个数做除法运算,得到商和余 数,把除数作为被除数,把余数作为除数,重复 上述过程,直到余数为零,最后一个非零的余数 就是最大公约数。
欧几里德算法
(1)整除
(2)素数
(3)最大公约数 (4)欧几里德算法
欧几里德算法
欧几里德算法的来历 计算两个数最大公约数最容易的方法是欧几里德 算法——因为它不需要因数分解,速度快。欧几 里德在公元前300年所写的Elements一书中描述了 这个算法。这个算法并非由他发明,历史学家相 信在当时也有200年历史(也就是距今已有2500年 历史)。它是幸存到现在最古老的非凡算法,至 今它仍然是完好的。
整除
性质一:对所有整数a(a≠0),a|0和a|a成立;同 理,对任意整数b,1|b成立。 证明:显然成立,证明略
性质二:如果a|b且b|c,则a|c成立。
证明:设存在k和l使得b=ak,c=bl成立,因此 c=(kl)a,所以a|c。
整除
性质三:如果a|b且a|c,则对所有的整数s和t, a|(sb+tc)成立。 证明:设b=ak1,c=ak2,那么sb+tc=a(sk1+tk2), 所以a|c。
π(x)≈x/lnx
素数的数量很多
仅100位的素数约有3.9〓1097个
素数
因素分解 每一个整数都是由一个或者几个素数的不同次幂 相乘得来得,比如 504=23〓32〓7
这种因式分解是唯一的,除非颠倒因子的顺序, 也就是说:504因素分解总是得到三个2,两个3, 一个7。
素数
因素分解唯一性定理
任何一个正整数都可以分解为几个素数的乘积, 且该因素分解是唯一的,除非颠倒因子的顺序。 证明略。
扩展的欧几里德算法
关于ax+by=d
求解ax+by=1可使用扩展的欧几里德算法。
扩展的欧几里德算法不仅能确定两个正整数的最大 公约数,如果这两个数互素,还能确定他们各自的 乘法逆元素。
模运算和同余
同余的加法消去律 如果(a+b)≡(a+c)(mod n),那么b≡c(mod n) 举例: (5+23)≡(5+7)(mod 8),那么23≡7(mod 8)
模运算和同余
同余的乘法消去律 设整数a,b,c,n(n≠0),且gcd(a,n)=1,如果 ab≡ac(mod n),那么b≡c(mod n)。 举例:
举例:73(mod 23)=4;27(mod 23)=4;
所以 73≡27(mod 23)
Hale Waihona Puke 模运算和同余模运算和同余的性质 性质一:当且仅当n|a,a≡0(mod n) 证明:a≡0(mod n)意味着a=a-0是n的整数倍, 即n|a。
模运算和同余
模运算和同余的性质 性质二:自反性 对任意整数a,有a≡a(mod n) 证明:a-a=0〓n,所以a≡a(mod n)。
5x≡7(mod 11),此处涉及乘法逆元素,一种可行 的方法是试探所有的7,18,29,40,51……直到有能 被5整除的为止。
本章授课提纲
(1)模运算和同余 (2)乘法逆元素 (3)扩展的欧几里德算法
乘法逆元素
乘法逆元素的引入 仿射密码解密时,需由加密函数 y=9x+2(mod 26)中反解出x,x=(1/9)(y-2)(mod 26) 1/9就表示在模26的条件下,9的乘法逆元素,换句 话说,就是:要求在0,1,2,3,4,…,25找一个数,这 个数和9相乘再取模26运算,结果为1。
乘法逆元素
乘法逆元素的一般提法 寻找一个x,使得1=(a〓x)(mod n) 写成另一种形式,即 a-1≡x(mod n)
解决乘法逆元素很困难,有时候有一个方案,有时 候没有。例如2模14的乘法逆元素就不存在,5模14 的乘法逆元素是3。
乘法逆元素
乘法逆元素的定义 假设gcd(a,n)=1,则存在整数,使得as≡1(mod n), 即s是a(mod n)的乘法逆元素。
模运算和同余
模运算和同余的性质 性质六:设整数a,b,c,d,n(n≠0),假设 a≡b(mod n),且c≡d(mod n),那么a+c≡b+d(mod n), a-c≡b-d(mod n), ac≡bd(mod n)。 证明:设存在整数k和l,使得a=b+nk,c=d+nl,那 么a+c=b+d+n(k+l), a-c=b-d+n(k-l), ac=bd+n(dk+bl+nkl),得证。
素数
素数的定义 如果整数p(p>1)只能被1或者是它本身整除,而不 能够被其它整数整除,则称整数p为素数(质数)。 最小的素数是2,1不是素数。
大于1的整数如果不是素数,则称为合数。
素数
素数有多少个呢? ——素数有无穷多个! 素数定理给出一种估计素数个数的方法: 设π(x)是小于x的素数的个数,则
本章授课提纲
(1)整除
(2)素数
(3)最大公约数 (4)欧几里德算法
素数
什么是素数? 素数是这样一种数:比1大,其因子只有1和它本 身,没有其它数可以整除它。 2是一个素数,其它的素数诸如73,2521, 2365347734339和2756839-1等。 密码学,特别是公开密钥密码常用大的素数(512 位甚至更长)。
最大公约数
求最大公约数的因数分解法 把a和b因素分解,比较每一个素数在a和b因素分 解中的幂的大小,取较小的一个,将所有素数的 幂相乘即可得到gcd。 举例 gcd(1728,135)=gcd(2632,355)=32=9 gcd(253472,22537)=22305071=227=28
本讲授课提纲
(4)模的幂、模n逆矩阵、模n平方根
(5)有限域理论
(6)素数判定和因数分解
本章授课提纲
(1)整除
(2)素数
(3)最大公约数 (4)欧几里德算法
本章授课提纲
(1)整除
(2)素数
(3)最大公约数 (4)欧几里德算法
整除
定义:设整数a和b,且a≠0,如果存在整数k使得 b=ak,那么就说b能被a整除,记做a|b,或者说b 是a的倍数。 举例:3|6,-15|60
欧几里德算法
举例说明欧几里德算法 例:计算gcd(12345,11111)
取较大数12345为被除数,较小数11111为除数,做除法 12345=1〓11111+1234 原来的除数11111作为被除数,余数1234作为除数,继续 11111=9〓1234+5 1234=246〓5+4 最后一个非零的余数即 5=1〓4+1 为所求最大公约数 4=4〓1+0
模运算和同余
模运算和同余的性质 性质三:对称性 如果a≡b(mod n),那么b≡a(mod n) 证明:由a≡b(mod n)可得a-b=nk,那么b-a=n(k),所以那么b≡a(mod n)。
模运算和同余
模运算和同余的性质 性质四:传递性 如果a≡b(mod n),b≡c(mod n),那么a≡c(mod n)
用欧几里德算法(辗转相除法)求最大公约数 (1)gcd(1970,1066) (2)gcd(23456,987654)
本章授课提纲
(1)整除、素数、最大公约数,欧几里德算法 (2)模运算、同余、乘法逆元素、扩展的欧几里 德算法 (3)中国剩余定理、费马小定理、欧拉定理
(4)模的幂、模n逆矩阵、模n平方根
本章授课提纲
(1)模运算和同余 (2)乘法逆元素 (3)扩展的欧几里德算法
扩展的欧几里德算法
关于ax+by=d
由欧几里德算法可以得到下面的重要结论
设a和b是两个正整数(至少有一个非零), d=gcd(a,b),则存在整数x和y使得ax+by=d成立,如 果a和b都是素数,那么存在整数x和y使得ax+by=1成 立。此时可以求出ax≡1(mod b)中的x。