1
2018 . 1 . 28 周日
宜
开心 欢乐
忌
猜疑 生气
生命可以归结为一种简单的选择:要么忙于生存,要么赶着去死。
—肖申克的救赎
由风声到莫斯密码,由区块链到加密货币
密码学支撑了区块链的安全,因此我们才会将token称为加密货币,在本文中你就会知道其中的原因,知道公钥的作用以及私钥的重要性。
对称加密:加密和解密使用同一种规则(密码本),在传递信息的时候需要将信息和密码本一起传递。因此密码本的安全尤为重要。
其中的一个例子就是莫斯密码,在二战中的电报传递广泛运用,喜欢上密码学也是在电影《风声》中初见了莫斯密码,电影中结尾的话打动了我——我不怕死,怕的是爱我者,不知我为何而死,我身在炼狱,留下这份记录,只希望家人和玉姐,能原谅我此刻的决定,但我坚信你们终会明白我的心情,我亲爱的人,我对你们如此无情,只因民族已到存亡之际,我辈只能奋不顾身,挽救于万一,我的肉体即将陨灭,灵魂将与你们同在,老鬼老枪不是一个人,而是一种精神,一种信仰。
运用莫斯密码举个例子:
用的是国际通用莫尔斯电码表,密码本百度就可以搜到然后进行解密,这只是用了一次加密,当然你可在制定几套规则,再层级加密。
当接触了区块链,里面的加密吸引到了我,用的是非对称加密。
非对称加密:加密和解密使用了不同规则,就是区块链中公钥和私钥,只是公钥和私钥之间有某种对应关系。公钥每个人都知道,私钥只有自己才知道,区块链中的钱包地址是用自己的公钥生成的,私钥用来签名证明自己是这个公钥的主人。
举个例子:RSA加密三个字母分别代表三个发明者
生成公钥和私钥
N=P*q p和q为质数,质数就是只能被1和它本身整除的数。
设p=17 q=19
N=17*19=323
求L,L只出现在生成公钥和私钥的过程中,
L是p-1和q-1的最小公倍数
L=144
求E,E和L必须互质,E和L之间除了1以外没有其他公约数
E必须满足:1
我们取E=5所以公钥为(5,323)
求D,D是由E计算得到的,
D必须满足:1
所以,5*D mod 144 =1
D=29 , N=323私钥(29,323)
加密时明文必须小于N,如果数字很多可以拆分加密
假设明文是123
我们尝试着解:N是已知的,我们只有把N分解成P和q求出P和q私钥就能破解了,数字小当然能够破解,但是请你对下面的这个数字分解:
12301866845301177551304949
58384962720772853569595334
79219732245215172640050726
36575187452021997864693899
56474942774063845925192557
32630345373154826850791702
61221429134616704292143116
02221240479274737794080665
351419597459856902143413
他等于
33478071698956898786044169
84821269081770479498371376
85689124313889828837938780
02287614711652531743087737
×
36746043666799590428244633
79962795263227915816434308
76426760322838157396665112
79233373417143396810270092
这已经是人类分解的最大整数。
而区块链中用的是椭圆曲线密码,椭圆曲线密码可以用比RSA更短的的密钥来实现同等的强度,这个得等到下篇文章和数字签名一起解释。
领取专属 10元无门槛券
私享最新 技术干货