区块链技术原理.docx

上传人:牧羊曲112 文档编号:5066685 上传时间:2023-06-02 格式:DOCX 页数:6 大小:427.66KB
返回 下载 相关 举报
区块链技术原理.docx_第1页
第1页 / 共6页
区块链技术原理.docx_第2页
第2页 / 共6页
区块链技术原理.docx_第3页
第3页 / 共6页
区块链技术原理.docx_第4页
第4页 / 共6页
区块链技术原理.docx_第5页
第5页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《区块链技术原理.docx》由会员分享,可在线阅读,更多相关《区块链技术原理.docx(6页珍藏版)》请在三一办公上搜索。

1、区块链技术原理区块链(Blockchain )是比特币的一个重要概念,货币联合清华大学五 道口金融学院互联网金融实验室、新浪科技发布的2014 2016全球比特 币发展研究报告提到区块链是比特币的底层技术和基础架构。本质上是 一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用 密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络 交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链技术逻辑区块链可以简单的分为三个层次,协议层、扩展层和应用层。其中,协 议层又可以分为存储层和网络层,它们相互独立但又不可分割。如图:J i协议层所谓的协议层,就是指代最底层的

2、技术。这个层次通常是一个完整的区 块链产品,类似于我们电脑的操作系统,它维护着网络节点,仅提供Api供调用。通常官方会提供简单的客户端(通称为钱包),这个客户端钱包 功能也很简单,只能建立地址、验证签名、转账支付、查看余额等。这个 层次是一切的基础,构建了网络环境、搭建了交易通道、制定了节点奖励 规则,至于你要交易什么,想干什么,它一概不过问,也过问不了。典型 的例子,自然是比特币,还有各种二代币,比如莱特币等,本书介绍的亿 书币也是。这个层次,是现阶段开发者聚集的地方,这说明加密货币仍在 起步当中。从用到的技术来说,协议层主要包括网络编程、分布式算法、加密签名、 数据存储技术等4个方面,其中

3、网络编程能力是大家选择编程语言的主要 考虑因素,因为分布式算法基本上属于业务逻辑上的实现,什么语言都可 以做到,加密签名技术是直接简单的使用(请看书中相关的加密解密文章, 不建议自由发挥,没有过多的编码逻辑),数据库技术也主要在使用层面, 只有点对点网络的实现和并发处理才是开发的难点,所以对于那些网络编 程能力强,对并发处理简单的语言,人们就特别偏爱。也因此,Nodejs开发区块链应用,逐渐变得更加流行,Go语言也在逐渐兴起。忡忡H区快锤我把这个层面进一步分成了存储层和网络层。数据存储可以相对独立, 选择自由度大一些,可以单独来讨论。选择的原则无非是性能和易用性。 我们知道,系统的整体性能,主

4、要取决于网络或数据存储的I/O性能,网络I/O优化空间不大,但是本地数据存储的 I/O是可以优化的。比如,比 特币选择的是谷歌的LevelDB,据说这个数据库读写性能很好,但是很多功 能需要开发者自己实现。目前,困扰业界的一个重大问题是,加密货币交 易处理量远不如现在中心化的支付系统(银行等),除了I/O,需要全方位的突破。分布式算法、加密签名等都要在实现点对点网络的过程中加以使用,所以自然是网络层的事情,也是编码的重点和难点,Nodejs开发加密货币 全书分享的基本上就是这部分的内容。当然,也有把点对点网络的实现单 独分开的,把节点查找、数据传输和验证等逻辑独立出来,而把共识算法、 加密签名

5、、数据存储等操作放在一起组成核心层。无论怎么组合,这两个 部分都是最核心、最底层的部分,都是协议层的内容。扩展层这个层面类似于电脑的驱动程序,是为了让区块链产品更加实用。目前 有两类,一是各类交易市场,是法币兑换加密货币的重要渠道,实现简单, 来钱快,成本低,但风险也大。二是针对某个方向的扩展实现,比如基于 亿书侧链,可为第三方出版机构、论坛网站等内容生产商提供定制服务等。 特别值得一提的就是大家听得最多的“智能合约”的概念,这是典型的扩 展层面的应用开发。所谓“智能合约”就是“可编程合约”, 或者叫做“合 约智能化”,其中的“智能”是执行上的智能,也就是说达到某个条件, 合约自动执行,比如自

6、动转移证券、自动付款等,目前还没有比较成型的 产品,但不可否认,这将是区块链技术重要的发展方向。扩展层使用的技术就没有什么限制了, 可以包括很多,上面提到的分布 式存储、机器学习、VR、物联网、大数据等等,都可以使用。编程语言的 选择上,可以更加自由,因为可以与协议层完全分离,编程语言也可以与 协议层使用的开发语言不相同。在开发上,除了在交易时与协议层进行交 互之外,其他时候尽量不要与协议层的开发混在一起。这个层面与应用层 更加接近,也可以理解为B/S架构的产品中的服务端(Server)。这样不 仅在架构设计上更加科学,让区块链数据更小,网络更独立,同时也可以 保证扩展层开发不受约束。从这个层

7、面来看,区块链可以架构开发任何类型的产品, 不仅仅是用在 金融行业。在未来,随着底层协议的更加完善,任何需要第三方支付的产 品都可以方便的使用区块链技术;任何需要确权、征信和追溯的信息,都 可以借助区块链来实现。我个人觉得,这个目标应该很快就能实现。应用层这个层面类似于电脑中的各种软件程序,是普通人可以真正直接使用的 产品,也可以理解为B/S架构的产品中的浏览器端(Browser)。这个层面 的应用,目前几乎是空白。市场亟待出现这样的应用,引爆市场,形成真 正的扩张之势,让区块链技术快速走进寻常百姓,服务于大众。大家使用 的各类轻钱包(客户端),应该算作应用层最简单、最典型的应用。很快, 亿书

8、将基于亿书网络推出文档协作工具,这个就是典型的应用层的产品。限于当前区块链技术的发展,亿书只能从协议层出发,把目标指向应用 层,同时为第三方开发者提供扩展层的强大支持。 这样做既可以避免贪多, 又可以避免无法落地,是真正理性的开发路线。因为纯粹的开发协议层或 扩展层,无法真正理解和验证应用层,会脱离实际,让第三方开发者很难 使用。如果仅仅考虑应用层,市面上又找不到真正牢固、易用的协议层或 扩展层的产品。所以,我们只好全面发力,采取完全开源开放的态度,通 过社区的力量,共同去做一件有意义的事情,也算为中国区块链技术发展 做点技术积累和微薄贡献。区块链技术原理如今的区块链技术概括起来是指通过去中心

9、化和去信任的方式集体维 护一个可靠数据库的技术。其实,区块链技术并不是一种单一的、全新的 技术,而是多种现有技术(如加密算法、P2P文件传输等)整合的结果,这 些技术与数据库巧妙地组合在一起,形成了一种新的数据记录、传递、存 储与呈现的方式。简单的说,区块链技术就是一种大家共同参与记录信息、 存储信息的技术。过去,人们将数据记录、存储的工作交给中心化的机构 来完成,而区块链技术则让系统中的每一个人都可以参与数据的记录、存 储。区块链技术在没有中央控制点的分布式对等网络下,使用分布式集体 运作的方法,构建了一个P2P的自组织网络。通过复杂的校验机制,区块 链数据库能够保持完整性、连续性和一致性,

10、即使部分参与人作假也无法改变区块链的完整性,更无法篡改区块链中的数据。区块链技术涉及的关 键点包括:、去中心化、集体维护、时间戳、可靠数据库、去信任、非对 称加密等。区块链技术重新定义了网络中信用的生成方式:在系统中,参与者无需 了解其他人的背景资料,也不需要借助第三方机构的担保或保证,区块链 技术保障了系统对价值转移的活动进行记录、传输、存储,其最后的结果 一定是可信的。区块链技术原理的来源可归纳为一个数学问题:拜占庭将军问题。拜占 庭将军问题延伸到互联网生活中来,其内涵可概括为:在互联网大背景下, 当需要与不熟悉的对手方进行价值交换活动时,人们如何才能防止不会被 其中的恶意破坏者欺骗、迷惑从而做出错误的决策。进一步将拜占庭将军 问题延伸到技术领域中来,其内涵可概括为:在缺少可信任的中央节点和 可信任的通道的情况下,分布在网络中的各个节点应如何达成共识。区块 链技术解决了闻名己久的拜占庭将军问题一一它提供了一种无需信任单个 节点、还能创建共识网络的方法。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号