在你心尖上起舞书包

admin 475 0

编者按:

早在2013年“区块链”概念在国外备已受关注,国内对于区块链的关注始于2015年,尽管关注一度上升,但关于区块链在企业应用的具体案例尚稀缺。关于区块链,大家可以脱口就出“去中心化”、“分布式结构”、“交易信息不可伪造”……blahblahblah……然而,具体的原理以及应用优势就不一度能信手拈来了吧!莫急,今天小编就同大家一起补上这一课!

区块链概念一览

区块链是一种分布式共享数据库,利用去中心化和去信任方式集体维护一本数据部的可靠性的技术方案。该方案要让参与系统中的任意多个节点,通过一串使用密码学方法相关联产生的数据块(即区块,Block),每个数据块中都包含了一定时间内的系统全部信息交流的数据,并生成数据“密码”用于验证其信息的有效性和链接下一个数据库块。

听不明白?偷懒点,记住下面三条就好了。

区块链原理解密

区块链有两个重要的特点:

1.每个区块的块头包含了前一区块的交易信息的压缩值,继而形成链条;

2.每个区块的主体上的交易记录是前一区块创建后、本区块创建前所有的信息交换活动。

区块链结构图

展开全文

正是由于以上的结构设定,保证了区块链交易信息的不可伪造、不可虚构、不可篡改。具体原理如下:

不可伪造

区块链的记录原理需要所有参与记录的节点共同验证交易记录的正确性。因为所有节点都在记录全网的每一笔交易,一旦出现与大多数不同的记录就不会被写入区块内。

不可虚构

当发送者广播交易信息时,参与记录的节点会通过历史记录验证发送者是否有能力履行该交易,而不是验证广播交易信息是否真实。通过历史数据的校验功能,保证了信息不可虚构。

不可篡改

如果尝试入侵某一区块并改变该区块的交易信息,那么之后的每一个区块都会随之改变。如想要成功改变区块信息,必须同时入侵参与记录51%及其以上的节点篡改数据,这在技术上几乎是不可能的。

区块链公式

看懂了没?还是很难理解?一个公式就可以概括了: 区块+链=历史+验证

区块链特征揭秘

每一个数据块都存有全部节点的信息,但这样一种设计怎么保证信息的权属安全呢?具体信息的所有权问题又如何判定呢?信息所有权通过数字密钥、地址和数字签名来确定。

数字加密

数字密钥由用户生成并储存在文件或数据库中,成为“钱包”。钱包中不包含数据,只包含密钥。一个用户的密钥是完全独立于协议的,由钱包自由生成与管理,不需要区块链环境或者网络连接。只有正确有效的数字密钥才能生成有效的数字签名,即确保了用户对数据信息的控制权。

密钥是由私钥与公钥组成。公钥是公开的,类似于传统的银行帐号,用于接收信息;私钥只供所有者使用,类似于银行帐号的交易签名。

我们以比特币的私钥、公钥与地址观察三者之间的关系。其私钥是一个随机数,通过椭圆曲线加密函数运算,生成一个公钥,在通过哈希函数生成一个比特币地址(字符串,由数字与字母构成,可分享)。

分布式结构

“分布式结构”也叫“去中心化”。区块链的分布式结构使得数据并不是记录和存储在一个固定的中心上,取而代之的是,让每一个参与数据交易的节点都记录并且储存下所有的数据信息。

1. 传播:区块链中每一笔交易信息都会由单个节点发送给全网所有节点。因此想通过拦截某几条路径而拦截信息是不可能的;

2. 记录:区块链有一套独特的协议机制,让网络的全部节点参与记录数据的同时也参与验证信息的正确性,只有当大部分节点的信息验证都通过才会被记录入区块;

3. 储存:在分布式结构的网络系统中,参与记录的节点会实时更新并存储全网的数据,其数据的完整性并不会随着某几个节点的破坏而遭到破坏。

由于现行区块链应用案例难以获取,我们以比特区块链的全球存储分布观察其结构特征(数据来源:Blitnodea 2016-05-11)

证明机制

区块链不易被篡改记录,其相互验证技术就是区块信息安全的保障。而各种相互验证的背后就是证明算法,即证明区块的正确性和拥有权,最终使得各个节点达成共识。

目前区块链的证明机制有三种:POW:(proof of work)工作量证明机制(比特币所用);POS:(proof of stake)权益证明机制;DPOS:(delegated proof of stake)股份授权证明机制。

又是很难理解对吗?我们现在单单就比特币所用的POW进行解释。在通过“挖矿”得到比特币的过程中,需要找到其相应的解m,而对于任何一个六十四位的哈希值,要找到其解m,都没有固定算法,只能靠计算机随机的hash碰撞,而一个挖矿机每秒钟能做多少次hash碰撞,就是其“算力”的代表,单位写成hash/s。

从上述解释也不难察觉到两个潜在问题:挖矿对算法技术与“算力集”要求特别高,很容易引起挖矿垄断,进而形成“矿池”;“挖矿者”是用比特币支付劳务费的,由于算法的设计,挖矿的成功率逐步下降,比特币的价值也随着供给增加而下降。这样一种利益错位问题也是一种潜在的隐患。

区块链信息安全

区块链的优点大家都了解差不多了,难道区块链就没有什么缺陷吗?难道他就是信息安全不可攻破的吗? 区块链的信息安全威胁来自于以下两个方面:

1. 试图更改之前某个区块上的交易信息

某个恶意节点若想要成功更改交易信息,需要重新计算被更改区块后续所有区块,并且追上网络中合法区块链的进度后,把这个长的区块链分叉被提交给网络中的其他节点,才有可能被认可。

2. 试图控制新区块的生成

由于区块中的交易正误由节点决定,当恶意节点的计算能力高于全网所有节点计算能力总和时,恶意节点可以永远不让某个交易得到认可。换句话说,恶意节点占据了全网51%的计算能力,恶意节点就可以控制新区块的生成。

理论上是可以被攻破的,但是基于现有计算机运算水平却很难实现。如果有人硬要较真说区块链不安全,网络上最多的一个回答就是“现金装在身上还有可能掉了呢”

结语

新技术的面世总是要经过时代的淘汰,只有多尝试新鲜事物,给新技术学习改进的机会他们才会进步,问题与弊端也只有在暴露出来后才能找到解决办法。

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~