链客,专为开发者而生,有问必答!

此文章来自区块链技术社区,未经允许拒绝转载。

2017年9月4日,中国政府正式明令禁止ICO和数字货币交易行为,随即关闭了多个数字货币交易所。同时政府也多次声明,不会将区块链与数字货币划等号,依然非常重视区块链技术在中国的发展。随后,中国工业和信息化部成立了一个专门研究区块链的实验室——可信区块链开放实验室,进一步明确政府对区块链技术发展的重视和支持。

什么是区块链?

区块链技术源于比特币,是比特币底层支撑技术。中国政府禁止比特币交易主要是担心数字货币交易带来的金融风险,以及避免不法人士利用数字货币交易的法律漏洞设计交易骗局。但区块链是一种技术,可以让交易突破传统的信任交易模式和集中化架构,实现非安全环境下的交易安全。由于区块链技术能解决传统互联网交易过程中面临的诸多问题,近年来得到了各国政府及企业的广泛关注。目前,对于区块链技术很多网站都有详细的解释,但由于过于专业,很难让人理解,现在我们以一种通俗易懂的方式来帮助读者解读什么区块链?

简单来说,区块链就是一个分布式账本,通过去中心化、去信任的方式集中维护一个可靠的数据库。以支付宝交易为例,传统的交易方式是买家在淘宝平台购买商品,然后将购买商品的钱打到支付宝这个中介平台,待卖方发货以及买方确认收到货之后,再由买方通知支付宝将钱打到卖方账户。但区块链技术支撑的交易模式完全不同,买家和卖家可直接进行交易,不需要通过任何中间平台做信用交易,交易后系统通过广播的形式将交易信息发布到P2P网络中,所有收到交易信息的节点或主机会在确认信息无误后记录下这笔交易。这就相当于所有的节点主机都为这边交易做了数据备份,即便某一台机器出现宕机、系统崩溃、木马攻击和数据篡改等情况也不会影响数据的记录,因为还有无数台机器作为备份。

从数据的角度讲,区块链是一种几乎不可能被更改的分布式数据库,这种分布式不仅体现在存储架构上,也体现在分布式记录,即由系统参与者共同维护。从技术的角度讲,区块链并不是单一的技术,而是多种技术的复合体,包括分布式存储、数字签名和P2P网络架构等。

区块链的工作原理

区块链的数据存储方式其实就是“区块”+“链”。这就好比我们的日记本,每一页都是一张纸,纸上可以记录有用文字信息,但每一页都会有页码,记录每页文字所处的顺序。对比来说,区块就是“纸”,用来记录创建期间发生的所有价值交换活动。页码就是“链”,按照时间先后顺序将区块存储在数据库中。

那么或许你就要问,那么多节点到底选择有谁来优先记录区块信息?其实很简单,就是谁最先完成记录就以谁为准。如图1所示,如果老张和老李要进行一笔交易,就会产生一笔账单记录,账单记录会显示付款人信息、收款人信息、交易的内容以及当前所处的链条序列。在交易完成后,区块链系统会将本次交易清单与上一账单编号的数据进行加密之后发布到全网所有的节点,也就是接入网络中的每一台主机,所有节点在收到公告账单信息后会争夺第一记账权,这一过程包括验证交易双方的信息,在得到确认之后更新账簿,以第一个完成账单记录的节点为准。因此,一旦第一个记账完成,所有节点只能接收记账信息并更新本地账簿,这就是共识机制。

由于每笔账单交易的记录都包含上一个链条的信息,因此一旦某一条交易记录被篡改就自然会出现信息错误或上下链条信息部匹配,而且容易出现链条分叉,因此,采用区块链技术记录的数据篡改难度几乎不可能,数据的容错性极高。而且由于所有账单交易数据的公布都是以加密的方式在网络中发送,要想在网络中篡改数据就必须至少截获51%以上的节点数据并在极短的时间内破解,这种情况可以认为几乎没有可能。

区块链发展存在哪些瓶颈?

从2009年比特币出现,区块链技术的发展时间还比较短,各种层次的应用研究仍然在不断深入的过程中。但由于区块链突破的传统的集中式数据防护架构以及非信用的安全模式,其应用依旧存在着一定的安全局限,从技术层和业务层都面临诸多挑战。

首先,共识机制的挑战。区块链中的共识算法是否能实现并保障真正的安全,需要更严格的证明和时间的考验。采用的非对称加密算法可能会随着数据、密码学和计算技术的发展而变的越来越脆弱,未来可能具有一定的破解性。此外,区块链上包含账户安全的私钥是否容易窃取仍待进一步探索。

其次,51%攻击是否能突破。在比特币中,若控制节点中绝大多数计算资源,就能重改公有账本,这被称为51%攻击。真实的区块链网络是自由开放的,所以,理论上,区块链上无法阻止拥有足够多计算资源的节点做任何操作。在现实情况下,发起51%攻击是具有一定可行性的。当然,拥有足够的算力并不会迅速破坏整个体系——至少不是短时间内,但可能会导致系统混乱。

第三,N@S攻击。针对PoW共识算法容易遭受51%攻击的问题,一些研究人员对PoW共识算法进行了改进,但在解决旧有问题的同时,也引入了区块分叉时的N@S(Nothingatstake)攻击问题。比如,在某些情况下一个区块可以暂时拥有两个子区块。这种分叉状态出现时,一般是两个矿工都在短时间内发现了工作量的解答,然后将所添加的传播到临近网络中去,其他节点便慢慢形成两种版本(子区块)的区块链。区块链中规定,这种情况下的判定条件是选择工作总量最大的那条子区块。出于自身利益最大的考虑,节点上可以同时在两个分支上继续工作,以保证利益的获取。假设99%的节点用户都如此理性地考虑收益的话,即便攻击者只掌握1%的权益依旧可以决定区块链的分支走向。他可以发出交易请求,获得资产,然后再从另一条分支上获取添加货币到自己的钱包中。

此外,区块链也存在一些难以克服的不足:效率问题。区块链没有单一节点可信任,通过计算来换取信任。简单的一个承认交易操作,需要大量的计算参与进来。比如匿名引发的风险。区块链开发者认为匿名性在区块链交易中是重要的,并非“抗审查”。如果矿工决定不处理某笔交易在地址间的收发,那就证明交易是受矿工审查的。如果交易是匿名的,矿工就不能决定优先处理哪些交易,也就不能进行审查。但匿名性会造成非法交易的猖獗,执法部门很难溯源。

结束语

尽管存在一定的安全局限和难以克服的不足,但区块链技术提供了一个规模化的共识机制,可以作为一种更高效解决信任问题的手段,建立去中心化的可信网络。目前,区块链的应用已从单一的数字货币(如比特币)应用,延伸到经济社会的各个领域,除金融服务行业的应用相对成熟外,其他行业的应用还处于探索起步阶段,期待区块链技术的更新和完善。

通俗易懂,到底什么是区块链?相关推荐

  1. 到底什么是区块链?数字货币技术开发朔源

    在基于区块链技术的比特币系统出现之前,密码朋克的成员讨论.发明过失败的"数字货币"和支付系统多达数十个.蒂姆西·梅曾经提出过不可追踪的"数字货币"--加密信用( ...

  2. 云小课 | 到底什么是区块链?

    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:欢迎来到区块链的世 ...

  3. sha256可逆吗_当我们谈“X+区块链”的时候,到底搞懂区块链了吗?

    https://www.zhihu.com/video/1219202997248602112 你好,这里是BIMBOX. 今天的内容是一期付费内容免费看,内容来自于我们的专栏<精读10本好书中 ...

  4. 用最通俗易懂的方式打开区块链!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者简介:程序员小灰,帝都工程师一枚,先后在京东.摩拜任职. 什么是区块链? 区块链,英文  ...

  5. “区块”和“链”的火花,区块链到底为何物

    区块链的发展如火如荼,那么到底什么是区块链呢?目前业界对区块链的定义与解读各不相同.英国政府于2016年1月发 布的<区块链:分布式账本技术>报告认为:"区块链是数据库的一种.它 ...

  6. 【区块链】目前对区块链最通俗易懂的解释

    来源:网优雇佣军 物联网智库 整理发布 转载请注明来源和出处 ------   [导读]   ------ 这应该是目前对区块链最通俗易懂的解释了... 区块链如何运作的? 下面这篇文翻译自" ...

  7. 宜信区块链|一篇干货文读懂宜信的区块链实践

    12月6日下午,每月一次的CEO座谈会在北京如期举办,近百位同事到场参加.本期座谈会邀请了宜信首席技术官向江旭.宜信区块链实验室主任.翼启云服区块链业务总监于明扬.宜信金融科技产业基金合伙人秦琴等三位 ...

  8. 区块链的介绍和应用场景以及发展趋势

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.区块链是什么? (1)区块链的定义 (2)区块链的特点: 1. 去中心化: 2. 开放性: 3. 安全: 4. 不 ...

  9. 浅析区块链起源及安全问题

    [前言] 回忆几年前看雪的发展之路可谓荆棘铺路,曲折重重,后来随着生活所迫,走上了学习技术的道路,在之后由于家庭的羁绊,工作的繁杂,生活的艰辛,以及时间的流逝,让我渐渐淡出了看雪,甚至趋于忘却-- 而 ...

最新文章

  1. 全国大学生智能车智能汽车竞赛车模检查规范
  2. PowerShell入门
  3. vue 只在父级容器移动_Vue易遗忘的基础复习(二)
  4. linux查看ko信息,linux 查看信息命令
  5. windows linux cpu 抢占式 时间片_嵌入式Linux中进程调度怎样来解析
  6. 数据结构四——散列表(下)
  7. pythonweb自动化测试实例_[转载]python webdriver自动化测试实例
  8. php while 语录,PHP While 循环
  9. 中国内窥镜干燥存放柜市场趋势报告、技术动态创新及市场预测
  10. 离线搭建安卓环境 adt
  11. adb工具构成及原理
  12. python化学公式配平_PYTHON趣用—配平化学方程式-阿里云开发者社区
  13. 红黑联盟十周年 汇编语言系列教程
  14. 计算机网络本直通线的制作方法,计算机网络技术实训报告模版--交叉线与直通线制作.doc...
  15. python假设检验
  16. Qt 获取当前屏幕分辨率
  17. 生鲜电商之百果园的未来
  18. (极详细版)python计算分位点方法
  19. Tcp/ip协议 详解
  20. Linux查看主机信息及修改主机名hostname

热门文章

  1. 微信小程序如何进行登录授权和获取用户信息
  2. Java封装(速读版)
  3. php读取本地xlsx格式文件的数据并按json格式返回
  4. 人工智能 有信息搜索 (启发式)
  5. Altium Desgner软件,PCB设计中铺铜的作用
  6. ubuntu 编译源码包 dsc diff.gz orig.tar.gz
  7. Http 请求头中的 Proxy-Connection
  8. mysql中模糊查询的四种用法介绍
  9. Hibernate 异常org.hibernate.LazyInitializationException: could not initialize prox
  10. Oracle PL/SQL编程学习笔记:Merge方法的使用