数论

什么是数论

数论就是指研究整数性质的一门理论,指的就是数的理论(number theory)。

在整数性质的研究中,人们发现素数是构成正整数的基本“材料”,因为任何一个大于1的整数都可以被分解为素数的乘积。因此要深入研究整数的性质就必须研究素数的性质。因此关于素数性质的有关问题,一直受到数学家的关注。可以认为, 素数是整个数论的研究基石。寻找一个表示所有素数的素数通项公式(general term formula),或者叫素数普遍公式,是古典数论最主要的问题之一。


著名的数论问题

公元前300年,古希腊数学家欧几里得证明了有无穷多个素数。他也是数论的创始人之一。在科技日新月异的现代,数论中却有很多尚未解决的问题。

例如著名的哥德巴赫猜想就是关于素数的。它是德国数学家哥德巴赫(C.Goldbach,1690-1764)于1742年6月7日在给大数学家欧拉的信中提出的。内容是:

1,任一大于2的偶数都可写成两个素数之和,亦称为“强哥德巴赫猜想”或“关于偶数的哥德巴赫猜想”。

2,从关于偶数的哥德巴赫猜想,可推出:任一大于7的奇数都可写成三个素数之和的猜想。后者称为“弱哥德巴赫猜想”或“关于奇数的哥德巴赫猜想”。弱哥德巴赫猜想已经被苏联数学家证明。

哥德巴赫猜想的意义在于:如果成立,则任意一个正整数都可以用2或3个素数相加得到,从而从加法的角度验证了素数是正整数的基本材料这一直观感觉。

著名的费马大定理,费马小定理也都是关于素数的。

还有一个大名鼎鼎的定理是“素数的唯一分解定理”,说的是任何一个大于1的整数都只能被唯一分解成几个素数的乘积。例如12可以被分解为2*2*3,而且没有其他的分解方式。


素数在密码学中的应用


本世纪七十年代,几位美国数学家提出一种编码方法,这种方法可以把通讯双方的约定公开,然而却无法破译密码,这种奇迹般的密码就与素数有关。


人们知道,任何一个自然数都可以分解为素数的乘积,如果不计因数的次序,分解形式是唯一的。这叫做算术基本定理,欧几里得早已证明了的。可是将一个大整数分解却没有一个简单通行的办法,只能用较小的素数一个一个去试除,耗时极大。如果用电子计算机来分解一个100位的数字,所花的时间要以万年计。可是将两个100位的数字相乘,对计算机却十分容易。美国数学家就利用了这一点发明了编制容易而破译难的密码方式。这种编码方式以三位发明者姓氏的首字母命名为RSA码。

RSA是公私钥密码体系,公私钥密码的原理是:虽然私钥SK是由公钥PK决定的,但却不能根据PK计算出SK。

RSA产生公钥和私钥的过程大致如下:

1,随机的寻找两个大素数p和q;计算n=q*p, x=(p-1)(q-1).

2, 找一个与x互素的正整数e,用欧几里得辗转相除法可以找到另一个正整数d,使得ed对于x取模的余数为1.

3,整数对(e,n)即是公钥,(d,x)则是私钥。

加密和解密的过程非常简单,就是使用了费马小定理的推论:

设n=pq,其中p,q是任意大于2的两个相异素数,a是任意与n互素的非零整数,x=(p-1)(q-1)。则必然有a的x次方对n取模,余数为1.


如果有人企图破解密文就必须知道私钥(d,x)中的任意一值,而想利用公钥来计算d或x,就必须分解n。上面已经提到,要将n分解为大素数是非常困难的。

因此RSA密码安全是建立在无法快速将一个大数分解为两个素数之上。如果有朝一日找到一种方法解决这个问题,RSA密码体系就崩溃了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值