火星链 火星链
Ctrl+D收藏火星链
首页 > 狗狗币 > 正文

区块链:密码学基础——伪随机数生成器

作者:

时间:1900/1/1 0:00:00

如果想要深入了解区块链和区块链项目,不可避免的需要了解密码学。区块链是对密码学的一次整合运用,理解了密码学,才能真正理解区块链。猎豹区块链中心在密码学起源的科普文章中,给大家介绍了经典的加密方法,从凯撒密码到多表密码,以及一次一密,在本篇文章中,我们将会和大家分享最早实现一次一密的加密机以及伪随机数生成器。Enigma加密机

第二次大战初期,法西斯的整体战争实力其实是远远不如同盟国的,但是,德国、日本采取了大量的的突袭战术,在二战初期先发制人,取得了一定的战争优势。要想有效的实施突袭战术,情报是非常关键的,那么如何保证情报的安全性,就是二战期间加密学的主要目标。在上一篇文章中我们提到,要想保证信息都绝对安全,就需要用一次一密都方式对信息进行加密,也就是对每个字母进行随机位移的加密,理想的情况是,这个机器将每一个输入的字母,都对其进行随机位移,然后输出加密过的字母。当时最先进的机器,被称为转子加密机,它很好的实现了一次一密。而其中的原理其实和我们熟知的里程表很像。我们都很清楚里程表的机器,它需要很长时间才会重复一周。想象一下,我们把里程计轮子上的数字打乱,当没嘀嗒向前一次时,都把转子上的每一个数字相加,来得到了位移数字,然后把我们要加密的字母进行位移加密,这就是转子加密机的大致原理。加密者和接受者可以根据下面的方法生成相同的位移序列:首先,他们需要共享相同的机器,然后就初始状态达成一致。这被定义为机码设置,然后他们把各自的机器调整到相同的位置,最后,不断进行相同的操作,来得到相同的序列。对于三个转子、每个转子有26个数字而言,每个序列经过转子26的三次方次的转动的位移序列才会重复。而每一个转子的位置,都等同于序列里的对应位置,最初的机器状态被称为机码设置,而所有的机码设置的集合,则被称为机码空间,如果最初设置机器的方法增加了的话,机码空间也就增加了。当我们选择一个机码设置,我们就选择了这个空间里的一个起始点,如果把机码设置给暴露了,就泄露了整个加密序列。所以,这种转子加密机的安全性取决于机码空间的大小,与机码设置的随机性这两方面。在第二次世界大战期间,德国纳粹使用的最重要的加密技术之一,就是被称为Enigma的加密机。在临近战争结束时,Enigma可以被设置成超过150百万百万百万种方式。这让德国人相信,盟军获得了Enigma机,也无法验证所有可能的机码设置。对于使用Enigma进行通信的双方,他们需要首先共享每天的机码设置,这使他们可以将各自的机器调整到同一位置,这个协议在战争期间一再改变,但通常都会在分配密钥表上分发给所有操作者,每一天,操作者都会剪下当日的设定,而这会告诉他们,机器当天需要的配置,例如,使用哪个转子,以及转子的顺序,然后在使用之后,机码设置就会被销毁。然而,对于操作者而言,仍剩下一个至关重要的步骤,在通信之前,他们将要选择,每一个转子的初始位置,而一些懒惰的操作者,犯下一个很简单的错误,这和我们锁自行车机械锁犯下的错误一样,我们倾向于把转子从初始位置移动很少几下,或者重复使用一个常见的密码,这破坏了初始转子位置的均匀分布,在重复观测后,使得盟军可以完全可以反向还原转子的线路分布。这种人为的低级失误导致了Enigma机的最终破解,间接影响了战争的走势。我们可以看到,一次一密最大的问题是,我们不得不提前共享这么长的密钥。为了解决这个问题,我们需要引入伪随机数。伪随机数生成器

海南大学密码学院获批国家重点研发计划“区块链”重点专项项目:金色财经报道,近日,海南大学密码学院教授曹春杰牵头,联合中科院信息工程研究所、西安电子科技大学、中国电子科技集团有限公司、国家信息中心等单位科研团队申报的国家重点研发计划“区块链”重点专项项目获得立项批复。

该项目在海南落地实施,并开展区块链技术在金融科技、政务民生、社会治理等场景下的示范应用,将有利于推动海南自贸港开放环境下区块链应用生态的健康发展,为我国区块链监管技术的创新发展探索路径、积累经验、提供示范。(南海网海南新闻)[2022/3/21 14:08:26]

在理解伪随机数之前,我们先来看看真正的随机数,我们的物理世界,其实到处都存在着随机波动,通过测量被称为噪音的随机波动,我们可以生成真正的随机数,测量噪音的过程被称为取样,我们可以通过取样得到某个随机数字。但是,相对来说,机器其实是确定的,他们的操作是可预测并且可重复的。在1946年,冯诺依曼参与了军方的氢弹的设计,应用了一个名为ENIAC的计算机,他打算重复地计算核聚变过程的模拟,然而这需要随机生成数进行快速存取,并且保证这些数是可重复的,然而,ENIAC的内存相当有限,存储长的随机序列是不可能的。于是,冯诺依曼设计了一个算法,来机械的模仿随机性,该算法如下:首先,选择一个被成为种子的真正随机数,这个数可以来自于对噪音的测量,如当前时间的毫秒数,这被称为种子。然后,把这个种子作为输入,进行一个简单的计算——将种子乘以它自身,然后输出这个结果的中间部分,接下来,使用这个输出,作为下一个种子,并按照需要多次重复这个过程。这被称为评分取中法,这是大量伪随机数发生器其中的一个。那么,随机生成的数列和伪随机生成的数列之间的差别是什么呢?核心区别就在于,伪随机数如果达到一定数量,序列最终一定会重复,当算法中出现了之前已经使用过的种子数字时,循环就开始了,在伪随机数序列重复之前的长度,被称为周期,周期严格地由最初种子的长度所限制。例如,如果我们使用一个两位的种子,那么算法在重复循环之前,最多能生成100个数,一个3位的种子在重复循环之前,可以生成1000个数,而4位种子在重复之前,可以生成10000个数,然而,如果我们使用一个足够大的种子,在重复之前,序列中的数字将会到扩大到万亿个。还有一个关键区别非常重要,那就是当你伪随机地生成数字时,将会有一些无法产生的序列。例如,如果加密者Alice生成一个含有20个位移的真正随机序列,这将等价于从所有可能的位移序列的堆栈中,随机选择一个序列,这个堆栈中包含了26的20次方种可能,这是一个天文数字。但如果加密者使用一个4位的随机种子生成一个20位的伪随机数序列的话,他只能在10000种可能的结果中,做出等概论的选择,也就是说她只能生成10000种不同的序列。当我们从随机位移转向伪随机位移时,相当于把密钥空间缩小成了一个相对较小的种子空间。伪随机数概念的提出使得加密者与接收者不需要再事先共享整个随机位移序列,而只需要共享相对较短的随机种子,然后再需要时把它扩展成相同的看起来很随机的序列就可以。但是如果他们始终无法见面来共享这个种子,该怎么解决呢?这就是现代加密技术最重要的内容,也是区块链中加密的核心,我们将下一篇文章中重点介绍。

动态 | 央视《东方时空》栏目普及密码学和区块链知识:在10月27日晚20:32分央视13套播出的《东方时空》栏目中,栏目以技术案例大幅讲解了区块链和密码学的基础知识。栏目介绍了目前区块链的应用范围,如:金融服务,供应链管理,公共服务,智能制造,教育就业,文化娱乐等领域。栏目还强调了区块链解决了证明你妈是你妈的难题。并且解决了数字身份,版权保护,严把质量关,更便捷交易,旅行消费,卫生保健等领域的难题。对此,国家金融与发展实验室特聘研究员董希淼还在栏目中表示,区块链技术已开始逐步应用。有些应用已经逐步走向成熟,例如在医疗方面的应用,医疗数据应用区块链,实现病历共享。[2019/10/28]

声音 | 杨庆峰:现代密码学结合区块链技术可基本消除技术层面的安全问题:据澎湃新闻消息,上海大学哲学系教授杨庆峰发文指出,如果说长三角一体化建设过程中数据共享会成为一个问题,数据共享会影响到未来长三角一体化公共服务的落实,那么这个问题就必须严肃对待。同时,其表示现代密码学的方法已完全可以解决这一问题,再加上区块链技术的未来运用的可能性极大,这基本上消除技术层面出现的安全问题。需要担忧的是伦理方面的问题,诸如隐私保护、被遗忘权等方面的问题。[2019/3/14]

美国国家标准和技术研究所的研究人员宣布 密码学中随机数的方面出现突破:美国国家标准和技术研究所的研究人员最近宣布,在密码学最重要的一个“随机数的产生”方面取得了突破。这种实验性的新技术可能会对网络安全产生巨大影响。在以电子方式运行现代世界的“1”和“0”的数字面纱后面,随机数字每天都要在加密过程中进行数千亿次的排序,这些过程通过不断扩大的互联网为全球提供数据。[2018/4/19]

V神回应EOS创始人对其使用经济激励和密码学来治理社区言论的质疑:4月1日,Vitalik发文回应经济激励和密码学来治理社区言论的质疑,V神表示:

1.希望创造一些工具,供至少2/3的诚实竞争团队使用。但这2/3的人是诚实的不等于2/3的资本是诚实的。

2.靠思想来竞争的社区将比购买选票的社区更有竞争力。

3.不过现在的情况不可能“证明”个人的经济风险,因为他们可能比内部人员有更多的获益或损失。

4.密码学永远无法证明的事就是审查制度。[2018/4/2]

标签:区块链ENIGMAALINIA区块链通俗易懂的例子图Reality MetaverseDarwinia Crab Network

狗狗币热门资讯
区块链:EOS 治理:一票一投和投票分红对 DPOS 公有链是不是必须?

编者按:本文作者为EOS原力创始人孤矢,星球日报经授权转发。BlockOne的CEOBB近期罕见的频繁在各种公开频道发表关于投票分红和一票一投的看法,甚至提出了要收转账手续费.

1900/1/1 0:00:00
比特币:TPS 是一种糟糕的评价标准

编者按:本文来自以太坊爱好者,作者:NicCarter,翻译&校对:IANLIU&Elisa,,星球日报经授权发布.

1900/1/1 0:00:00
TOK:Tokenview链上数据解读(12月3日)

Tokenview链上数据解读(12月3日)区块链市场总览Tokenview行情|截止10:00,近24小时市值前五的数字货币成交额排名及占比根据Tokenview.com数据显示.

1900/1/1 0:00:00
LAR:为何GO语言成为开发区块链底层的趋势?

随着各大公司进军区块链,区块链开发已成为开发者们关注的新技能领域,而区块链开发语言也从C语言逐渐向GO语言转移.

1900/1/1 0:00:00
HER:君士坦丁堡硬分叉激活点确定,以太坊开发者会议实施重大改革

据星球日报了解到,以太坊开源开发团队已经就君士坦丁堡激活时间达成协议,旨在为社区用户提供更多、更新的区块链功能.

1900/1/1 0:00:00
区块链:区块链世界中的“左π”与“右π”

编者按:本文来自:碳链价值,本文作者:古千峰,Odaily星球日报经授权转载。“相比于提防“极右”,更要小心“极左”.

1900/1/1 0:00:00