首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

区块链将被毁灭?全面解读黎曼猜想

近日,“黎曼猜想”四个字突然被刷屏。

欲颠覆世界的区块链竟然要被颠覆了?

圈内充斥着恐慌!

而一切的根源来自于9月24日,媒体发布的一则关于“黎曼猜想被证明”短讯。

2018年9月20日,菲尔兹奖和阿贝尔奖双料得主、英国皇家学会前主席Michael Atiyah爵士宣称自己证明了黎曼猜想,并将在9月24日海德堡获奖者论坛上宣讲。

看内容只是数学界的一件大事,为何网上会传言“区块链”将亡?黎曼猜想究竟是什么?和区块链有什么关系?它真的会毁灭区块链吗?

“黎曼猜想”是什么?

“黎曼猜想”由数学家波恩哈德•黎曼于1859年提出。简单来说,黎曼猜想就是一个找素数的方法。

波恩哈德•黎曼

(波恩哈德•黎曼(公元1826—1866年),是德国著名的数学家,他在数学分析和微分几何方面作出过重要贡献,他开创了黎曼几何,并且给后来爱因斯坦的广义相对论提供了数学基础。)

回忆一下:素数指那些只能被1和自己整除的整数,比如2、3、5、7。而每个整数都能表示成有限个素数的乘积,比如,6=2*3,8=2*2*2,因此素数可以看做是自然数体系的原子。

无数的数学家表现出了对素数的兴趣,尤其是素数在自然数中的分布:区间内到底有多少个素数?比如2、3、5、7、11、13、17,我们假设17后面的下一个素数是P,那么这个P是多少呢?如果一直找下去,我们该如何知道下一个P是多少呢?

这就是黎曼猜想要解决的问题,他想找到素数精确的分布规律。

实际上,早在古希腊时代,人们就已经发现了素数,但是直到现在,依然没有完全揭开素数的神秘面纱。

黎曼猜想从被提出到现在,一直悬而未决,困扰世人长达一个半世纪。德国数学家希尔伯特在1900年,将黎曼猜想列为23个著名的数学问题之一。在2000年提出的 “千年大奖问题”中,黎曼猜想又赫然在列。

如今,迈克尔•阿蒂亚(Michael Atiyah)爵士宣称自己证明了黎曼猜想,看上去,这应该是数学界的狂欢。那么,这个黎曼ζ函数ζ(s)的零点分布的猜想,为什么会对加密货币产生影响呢?

占据加密算法半壁江山的非对称算法

“黎曼猜想被证明对互联网的安全加密方式造成相当的影响。因为目前主要的非对称加密包括RSA密钥加密等都是基于大数的分解。基于大数分解的流行加密方案原则上可以在多项式时间内破译。而黎曼猜想得证,将会为找到那样一个多项式时间的高效算法提供强烈的提示。”

这是南大周志华教授,物理学家赖光泽微博发布的有关黎曼猜想被证明的消息。听着是不是晦涩难懂?

要想明白黎曼猜想为什么会对加密货币造成影响,首先我们要先理解加密货币加密的原理。

首先要先明确一个关键词:非对称加密算法

全世界所有的加密货币的加密方式无非是“对称加密”和“非对称加密”两大类,而黎曼猜想所能影响的就是使用非对称加密的加密货币。

假如现实世界中存在A和B进行通讯,为了实现在非安全的通讯通道上实现信息的保密性、完整性、可用性(即信息安全的三个性质),A和B约定使用非对称加密通道进行通讯。

非对称加密算法逻辑原理

A和B是要通讯的两个用户,CA则是密钥管理系统。在这个系统里,如果A要和B进行加密通讯,那么A首先要在CA处生成自己的签名证书、加密证书两张证书,然后A将自己要发送的信息通过哈希(Hash)运算将信息打包成摘要,并且用加密证书加密,在此之后在加上自己的签名证书。

然后发送给用户B,B在通过与CA协商时获得的公钥、私钥以及签名证书和加密证书来对A发过来的信息进行拆解。这样一次加密信息的交流就完成了。

这就是非对称加密算法。

素数与RSA算法

非对称加密算法是基于RSA算法实现的,而RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解却极其困难。

在RSA算法中,生成秘钥的方式是:随机生成两个超大的素数(一般是几百位),相乘得到一个合数,破解密码需要将合数分解,找到那两个素数。

果壳网友“零天”解释,这就相当于,你握着密码能够解开密文,但是,给你密文你却怎么也找不到那个解开密文的密码。因此,我们可以将乘积公开作为加密密钥。

举一个具体的例子(太长可不看):

我们假设有两个不同的素数p和q,然后我们计算二者的乘积n=pq和Φ(n)=(p-1)(q-1);然后我们选择一个大于1小于Φ(n)的随机整数e,使得gcd(e,Φ(n))=1;注:gcd即最大公约数;

之后,我们计算d使得d*e=1mod Φ(n);注:即d*e mod Φ(n) =1;

对每一个密钥k=(n,p,q,d,e),定义加密变换为Ek(x)=xe mod n,解密变换为Dk(x)=yd mod n,这里x,y∈Zn;

最后,p,q销毁,以为公开密钥,为私有密钥。

大家是不是已经被绕晕了,没关系,接下来一个例子会让大家一清二楚的。

到这里,公钥和密钥已经确定。公钥为(N, e) = (33, 3),密钥为(N, d) = (33, 7)。

这样就是一次信息交流中,公钥和私钥的诞生方式,这样在进行信息传递(买进、卖出等一系列行为)时,往往会选择数额极大的两个素数来进行RSA算法加密,因此破解起来十分困难。因为素数越大,破解的难度几乎是呈几何性倍增。

RSA算法会运用在很多互联网领域,比如保护你的微信聊天隐私等等。可以说,素数是现代密码学的支柱。

因此,如果黎曼猜想被证明,如果我们知道素数分布的规律,那么RSA算法、非对称加密甚至现代密码学,会不会被攻破呢?

黎曼猜想对加密货币有什么影响?

黎曼猜想发表于1859年,主要解决了素数的分布问题,之后有大约1000多条数学理论基于该猜想被提出,也就是说很多数学家已经在拿着黎曼猜想在使用了。

如果它能破解某个加密体系那早就被提出来了,但是我们依然期待本次阿蒂亚爵士对黎曼猜想的证明,因为他有可能带来全新的工具。

RSA的安全性依赖的大整数分解(正确的说,应该是如果谁能够分解大整数,那么他就能破解RSA;但是破解RSA的人不一定能够分解大整数)。而目前最有效的分解算法当属数域筛法,但依然不能有效的分解大整数。

如何随机的选取两个大素数是安全使用RSA的基础条件。但实际上,如何判定一个数是否是素数并不简单,尤其是当这个数很大的时候。

目前最常用的素数判定算法是Miller-Rabin素数判定算法,但该算法只能确定性的判断一个数不是素数,不能得出待测数是素数的确定性结论,所以通常我们对待测数进行多次Miller-Rabin判定来提升正确性。

2004年Manindra Agrawal等人首次证明了能够在多项式时间(计算机能承受的时间)内确定性的判定一个数是否是素数。但该算法耗时还是太大,并不能在实际上使用:比如要判定一个2048位的数是不是素数,需要近10亿次2048位大整数的乘法。

RSA曾经爆出过的后门事件中,正是因为非随机的选取大素数,导致有可能同一个素数被两个用户选取使用,这时使用公约数算法就能很轻松的分解这两个用户使用的大整数了。

在区块链中,使用得最多的是基于椭圆曲线的相关算法,并不直接与素数相关。我们知道椭圆曲线有丰富的数学特性,比如英国数学家安德鲁怀尔斯利用椭圆曲线证明了费马大定理,日本数学家望月新一利用椭圆曲线证明了abc猜想(虽然最近该论文受到了一定的质疑)。

椭圆曲线与黎曼猜想或者证明黎曼猜想的工具之间有什么联系,我们拭目以待。

但至少,黎曼猜想是否被证明,都与区块链无关!

如果说黎曼猜想真正对加密货币造成威胁的话,那么也只能是部分投机者利用黎曼猜想造成的恐慌心里来操控币价。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180925B1IEP000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券