区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > 火币下载 > 正文

区块链:白话解析 RSA 加密算法的数学原理_woonklypower币种BCH

作者:

时间:

从自然数开始,一直讲明白了RSA非对称式加密的细节。前不久Jason同学邀请复旦大学数学系的梅同学给希望了解Web3的朋友们上了5节硬核的数学课。从自然数开始,一直讲明白了RSA非对称式加密的细节。我再回顾一下,尝试解释这个其实还挺复杂的事儿。

大数无法分解

3*7算出21容易吗?容易。反过来,21是哪两个数的乘积?也不难,但肯定比算3*7麻烦。

同理967*379=366493容易。反过来,366493是哪两个数乘积?难多了。

随着乘积的不断变大,算乘法的难度略微增大,算是这个数是由哪两个数相乘的难度陡峭的增加。

一个一百位数字的数和一百位数字的数相乘,手工算不容易,但对计算机来说不难,结果是一个大约两百位数字的数字。

反过来,把这个200位的数字分解?基本上现在能想到的办法就是近似于一个一个的试。别说算乘法了,光从一数到80位的数字,按照现在的计算水平,就要消耗掉一个中等恒星一生的能量了。所以,简单结论是,超级大的数字做分解不可能。

就利用这个简单的原理,加上听起来故弄玄虚的欧拉定理,就是一个精妙绝伦的RSA加密算法。

火币全球商务副总裁Ciara:2021年区块链技术应用场景将继续增加:2021年2月25日,在由加拿大商业生态咨询(Canadian Ecosystem Institute)主办的线上区块链论坛中,火币全球商务副总裁Ciara表示,数字货币市场还处于萌芽状态,2021年仍然是投资包括比特币在内的数字货币的机会,2020年受疫情影响,全球经济大环境低迷,比特币价格一度下探3800美元低点,而现在不到一年的时间,比特币一度触及58000美元高点,价格已经翻了十余倍。可以预测,2021年传统机构仍将不断入场加密货币,区块链技术应用场景将继续增加,更多的企业会开始应用区块链技术。

“比如在社会公共事务方面,我们已经看到了加密技术和区块链应用于公益慈善事业的案例,火币公益利用区块链技术的可溯源和不可篡改等特质,来保持公益事件的透明性。”Ciara最后表示道。[2021/2/25 17:52:22]

n进制取个位

这个东西的数学名称叫「取模」,就是算「一个数除以n以后的余数是几」。

不过我们不用这个名字。我自己发明的一个混杂了数学和计算机的概念,叫做?n进制取个位。比如n=8,八进制下只取个位,超过的十、百、千位数就直接扔掉,那么15这个数本来八进制就是17,只取个位,就是?7。所以,我们规定,15在八进制个位模式下,就等于7。同样,23,31等,在8进制取个位下,都等于7。这个「等于」,不是绝对数字的相等,而是经过了?n进制取个位,我们用?≡?表示这种特殊的等于。

数据:排名前100的以太坊交易所地址持有的ETH继续减少:Santiment发推称,就交易所持有的ETH代币而言,排名前100的以太坊交易所地址的资产继续缩水。可公开出售的巨鲸资产持续减少,这进一步鼓励了目前市值排名第二的资产(ETH)的发展。[2020/12/29 15:59:35]

这样,如果n是4万公里的话,数字的世界变成像地球一样,是一个循环。在赤道上可以向东走?1万公里,和向西走?3万公里结果是一样的,甚至向西走?7万,11万,15万公里的终点是一样的,就是一圈一圈的转就是了。所以4万进制取个位,1万?≡?-7万?≡-11万?≡-15万。注意,毕竟走7万公里和走11万公里不相等(=?),但是在地球赤道上走,他们的效果相等?(?≡?)。

例子:比如在?20?进制取个位下,3*7?的结果就是?1?。

连着乘两个数就是它本身

这有啥用呢?神奇的事情在于,在?20进制取个位下,任何数乘以3再乘以7,就相当于乘以?1,就是这个数本身!

比如?12*3?=36;36%20=?16;?16*7?=112;112%20=?12

变回原来了。神奇吗?

火币行情播报:BTC日内缩量横盘,或将继续尝试上破:据火币行情显示,BTC日内在19400USDT一线缩量横盘。一小时级别来看,今早BTC再次尝试上破,仍未能有效突破前期高点,但上方阻力位在不断抬升,可见多方仍存在一定的动能,横盘整理一段时间后或将再次尝试上破。日线级别来看,今日BTC迎来两连阳,基本回到了前期高位横盘区间的上沿。截至18:00,火币平台的主流币的具体表现如下:[2020/12/16 15:24:37]

在?20进制取个位下,你把一个数乘以3,我不用除以3,而是继续乘以7,就是原来那个数。不仅仅是7,我把乘3的数字乘以67,127,或者187。。。。它都会回到原来那个数,只是转的圈数多了些。

这就使得,如果两个数在一个?n进制取个位下乘积为1,这两个数不就是一个很好的加密和解密的工具吗?

比如数字大一点,在366492进制取个位下,任何数乘以?967得到的数再乘以379,就是它本身。

公钥和密钥

如果我把?e=967?当做公钥,d=379?当做密钥,我只需要告诉别人这两个数字,别人乘积以后交给我,我再乘以d,然后。。。。

不过有一个小问题,如果给出了这两个数,别人除以e不就得到了我的秘钥d吗?毕竟,你可以算乘法,别人就可以算除法,而且难度差不多。我们把这个办法成为露馅儿加密法。

5月中国区块链经理人指数63,继续复苏:2020年6月5日,由中央财经大学共识经济学课题组和互链脉搏联合发布的中国区块链经理人指数(Blockchain Manager Index,BMI)5月份数据为63.0,相较4月的45.5大幅上涨,结束了持续半年的衰落周期。共识分歧指数(CDI)为6.4,相较于4月的-12.7显著缩小,同时出现了反转,说明投资者的预期回升较快,市场复苏节奏加快。(互链脉搏)[2020/6/5]

接下来要做的事情,就是想办法把这自己的密钥藏起来,让别人拿到n进制数,还有公钥e,没有办法算出我的密钥,但是依然可以用e加密,我可以用私钥d解密不就好了?

欧拉定理

我们引入?φ(n)。它的定义可厉害了,是「小于?n?的正整数中和?n?互质的数的个数」。这个定义忽略就好,只要知道,如果n是两个素数p,q的乘积的话,?φ(n)=(p-1)(q-1)。

欧拉发现了一个惊天大秘密,居然在?n进制取个位下,如果m和n互为质数,m的φ(n)次方居然等于1:

m^?φ(n)?≡?1

两边都取k次方:

m^?(k*?φ(n))?≡?1

分析 | 反弹急先锋EOS休整后 有望继续上攻:分析师K神表示,前期EOS出现日线级别的底背离形态,然后展开日线级别的反弹,并小幅放量突破6月1号触顶的日线下降三角形趋势压制,突破后并未再度大幅拉升,量能并未同步放大是制约因素,这两天持续位于4美元附近弱势波动,目前已站上60日均线,日线MACD快慢线已上穿0轴,依旧处于强势状态,预计盘整后将继续上攻至斐波那锲0.5点位4.5美元附近,支撑3.85美元。[2019/9/17]

两边都乘以m:

m^?(k*?φ(n)+1)?≡?m

k*?φ(n)+1?是啥意思?就是这是一个「除以??φ(n)余数为1」的数字。也就是说,只要找到e*d这两个数,使得他们的乘积除以?φ(n)?余数为1就好。这个好找,有一个叫做辗转相除法的方法,不过这里先略过。我们一般常常把e固定的设为65537,然后就可以找到一个满足的d。

最后,也就是最惊艳的一步,如果我们能够找到这样的e,d,我们把?e?和?n?告诉整个世界,让他们在?n进制取个位下,把要加密的数字?m?取?e?次方发给我,我对这个数再进行d次方,我就能得到m。

(m?^e)^?d?≡?m

重新梳理

到现在大家应该已经无一例外的晕厥了。这很正常。我们再理一下就清楚了。

就是说,如果我能无论用什么方法,找到一个进制n,在这个?n进制取个位下,能够找到两个数字e和d,e公开给整个世界,d留给自己,同时还能让任何数字m的e次方的d次方还等于原来这个m,加密解密算法不就成立了吗?就跟最早我说的那个乘以一个数,再乘以另一个数,总等于原来的数字一样?

但露馅儿加密法两个乘法的算法的明显的漏洞在于,e和n给出了,d也就给出了。

在这个新的算法中,e给出了。n给出了,但e*d??≡?1的进制,不是简单地?n,而是和n同源,但是不同的?φ(n)?。正因为进制改了,所以也不能用露馅儿加密法里面的两次乘法,而借用欧拉的惊天发现,做了两次幂运算。

从?n?能不能算出来??φ(n)?呢?如果有能力分解n当然?φ(n)?唾手可得,把两个因子各自减一再乘起来就好。

但是从n能不能轻易地找到p和q呢?根据最早的大数不可分解,要想找到100个太阳烧掉都不够用,p和q好像是脚手架,算出来n,算出来?φ(n)就扔掉了。?那么??φ(n)?就是一个秘密。如果?φ(n)?是个秘密,有了e也找不到d。

所以,整个算法是无比精巧的安全。

举例子

我们找两个脚手架数字:p=2,q=7,算出n=2*7=?14,??φ(n)?=?(2-1)*(7-1)=?6?。那两个脚手架数字p,q在算出n和?φ(n)后就退休了。找在?6进制取个位下,e*d?≡?1好办,e=5,d=11就行。

这样,公布给全世界的数字就是(e=5,n=14),保留给自己的就是d=11。φ(n)千万也不能告诉任何人。φ(n)?就如同总统,n如同他的影子。世界只能看到他的影子,看不到总统本人。好在影子在世间行走不怕暗杀,总统躲在防空洞里是安全的。

我们来试一下,在?14?进制个位模式下,如果要传递的数字?m=?2,别人把m^e算出来,就是2^?5=?32?=2*?14?+4?≡?4

现在,4就可以大大咧咧的在互联网上随便传输了。只有我知道有一个秘密是11。我拿到以后,算4的11次方,4^11?≡?4,194,304%14?≡?2?,不就是别人要给我的那个数字吗?前提是,我们认为别人从n=14无法分解成2*7,否则就全露馅了。

14肉眼可以看出等于2*7。

这个数n:

8244510028552846134424811607219563842568185165403993284663167926323062664016599954791570992777758342053528270976182274842613932440401371500161580348160559?

是p

91119631364788082429447973540947485602743197897334544190979096251936625222447

乘以q

90480063462359689383464046547151387793654963394705182576062449707683914045697

计算机眼也看不出来。?p和q如同两位门神,死死的守住了获取它们后面的秘密的入口。但是从p,q算出?φ(n)?,以及e,d,却都是举手之劳。

如果知道n的组成是p,q,我们按照上面的算法可以选出来e和d:

65537

2545549238258797954286678713888152865623498585866759298032549597771444725977268190722532488574321463855938811396613702406984581214587037347197409962813953

也就是说,这个游戏,任何人要把一个数字m传给我,只需要在n进制取个位下,对它进行65537次幂,我再把它进行d次幂,我就拿回了原来的数字。

这个精巧的算法,就是RSA加密算法。

希望有人能够看明白。我真的是尽力了。

原文标题:《用吃奶的劲试着解释加密算法的数学原理》

撰文:王建硕

来源:ForesightNews

来源:金色财经

标签:以太坊POW区块链POS以太坊价格走势woonklypower币种BCHyac币是区块链吗posi币最新消息

火币下载热门资讯
BNS:域名生意逆市火爆 BNS能否接棒ENS?_web3域名注册

更多优质内容请点击「Odaily星球日报」官网进行阅读:https://www.odaily.news/ 熊市之下,Web3域名交易成为热门生意,尤以?ENS?最为突出.

WEB:继续震荡,等待周五变盘?_WEB3

08-24日 周二,现货黄金于美盘时段急速拉升约24美元,一度涨至1750美元上方,而后有所回落,最终收涨0.69%,报1748.40美元/盎司;现货白银收涨0.65%,报19.11美元/盎司.

POW:趣味动画|什么是以太坊合并?为什么说以太坊合并将给加密世界带来巨大震动?_POS

为什么说以太坊合并或将给加密世界带来巨大震动以太坊作为加密世界最大的生态它的每一次升级都给行业带来不小的影响而它的这次合并升级更是从网络底层共识入手是以太坊有史以来最重大的升级那么什么是以太坊合.

ETH:金色前哨|以太坊合并升级预计将发生在9月15日_USH

金色财经报道,8月19日消息,推特用户Crypto-Gucci.eth发布推文称,在最新的以太坊核心开发者会议上,已确定以太坊合并的主网TTD为58750000000000000000000.

加密货币:谁接受以太坊作为付款方式?_比特币最新价格行情以太坊实时行情

1. 什么是以太坊? 以太坊是第一代区块链技术,用于在去中心化环境中构建DApp、持有资产和进行交易。在区块链技术的支持下,以太坊是一个去中心化的平台,旨在具有可扩展性、可编程性和安全性.

随着美联储选择限制性利率:比特币暴跌

比特币的价格趋势似乎随着美联储设定的利率而变化。美联储7月会议后不久,BTC暴跌。然而,从8月17日星期三公布的会议记录来看,决策者已经讨论了更多的加息以对抗通胀.