区块链(Blockchain)

以博主看过的文献或查阅的资料为基础,本博文将介绍区块链(Blockchain)的相关知识点,以及归纳与总结。这也是博主个人的学习过程,长期更新,建议收藏,也欢迎指正!

区块链一句话解释:一种由密码学算法、共识机制、点对点传输、数学、计算机编程等多种技术为基础,而形成的分布式记账系统。

一、区块链的诞生及演变

2008年,一位名为中本聪(Satoshi Nakamoto)的密码学家发表了一篇《Bitcoin: A Peer-to-Peer Electronic Cash System》(中译:比特币:一种点对点的电子现金系统)白皮书,开始了比特币(BTC)的时代。

在2009年1月3日,第一个序号为0的创世区块才诞生,在一周后,也就是1月9日出现了序号为1的区块,这样标志着区块链的诞生。

二、区块链相关名词解释

  • 1)中本聪(Satoshi Nakamoto):比特币的创始者,至今真实身份不得而知。有人说是美国人,发行比特币好以后控制全世界;也有人说是日本人,因为中本聪比较像日本名;还有人说是中国人,因为可以理解为“国人来就明”。
  • 2)区块(Block):在区块链网络中,数假会以多条文件的形式进行打包放在一起,类似于将这些文件放入一个盒子里,故也称为数假区块。
  • 3)(Chain):指区块按照时间顺序进行排序,并通过前一区块和后一区块之间的哈希值进行串联而成,并非是真实的链条,而是一种比喻。

  • 4)区块头(Block Header)和区块体(Block Body):是指数假区块分为区块头和区块体两个部分,区块头存储了前一区块的哈希值、当前区块的哈希值、随机数、时间戳和Merkle根,而区块体存储了所有的真实数据。
  • 5)哈希值(Hash Value):是指通过一个较短的随机字符串表示任意长度的输入消息,经过哈希函数(也称散列函数、数字摘要)得到的“数据指纹”。

  • 6)随机数(Nonce):由系统自动生成的一次性随机数,用于解决数学难题的问题,每次解决都会重新生成随机数。
  • 7)时间戳(Timestamp):是指从区块生成的那一刻开始就存在于区块中,用于标记此数据的交易时间的字符序列,一般存储于区块头中,具有唯一性。
  • 8)梅克尔根(Merkle Root):是指区块体中交易的数据经过哈希运算得到的梅克尔树(Merkle tree),也称为哈希树,一种二叉树,常常被用来快速查验特定的交易是否存在。先将交易经过哈希运算后,得到叶子节点,然后每两个叶子节点经过哈希运算,每个中间节点是它前两个子节点的哈希值,如此往复,直至最后生成一个哈希值,这个最终的哈希值被称为梅克尔根,也称Merkle根。

  • 9)节点(Node):是指区块链网络中的每个参与者或网络节点。
  • 10)全节点(Full Node):在指拥有完整的区块链账本的节点,全节点占用内存较大,其需要同步所有区块链的数据,主要负责区块链的交易的广播和验证。
  • 11)点对点(Peer-to-Peer):是指单个节点与其他节点可直接交互,而无需中间节点或中介机构。
  • 12)挖矿(Mining):并非真实的挖矿,而是指利用电脑硬件“解决一道数学难题”的数字记录信息过程。由于其工作原理与矿物开采十分相似,故称为“挖矿”。
  • 13)挖矿难度(Mining Difficulty):是衡量将信息记录到被称为区块链的数字记录上的难度。在比特币共识过程中,为了使得区块生成的速度维持在10分钟一个,产生的挖矿难度会定期调整。
  • 14)矿工(Miner):是指区块链网络中,不断进行哈希运算来求解数学难题并产生工作量证明的网络节点。
  • 15)区块高度(Block Height):一个区块的高度是指在区块链中它与创世区块之间的块数。例如,区块高度为100,则表示该区块和创世区块之间含有100个区块。
  • 16)创世区块(Genesis Block):是指区块链系统中的第一个区块,被称为“创世”区块,它一般用于初始化,不带交易信息。例如比特币系统中,创世区块由中本聪创建。
  • 17)分布式(Distributed):通过区块链的P2P技术实现,描述了一个系统由多台计算机上同时运行和维护的完整副本,没有任何人或组织这个系统。
  • 18)账本(Ledger):是指区块链的数据结构、所有的交易信息的一种记录状态,类似与记账,故称为“账本”。
  • 19)51%攻击(51% attack):在比特币系统中,当系统的算力优势超过系统所有的一半(>50%,即51%)时,就可以篡改或撤销自己的付款记录,因此它能比其他节点更快创建区块,而不利于系统稳定。
  • 20)双重支付(Double Spending):是指具有大量计算能力的节点发送一个交易后,在资金未及时确认时,又发出另外一个交易,并将相同的币发给其他节点。(一笔钱花两次)

三、区块链的分类

  • 1)公有链(Public Blockchain):完全去中心化,任何节点都可以进行访问,每个人都可以参与到区块链当中的计算,而且任何人都可下载完整的区块链账本。例如比特币、以太坊等网络都是公有链。其特点是保护隐私和系统效率低。
  • 2)联盟链(Consortium Blockchain):半中心化,参与每个节点的权限都完全对等,各个节点在完全不信任的情况下进行数据交互和可信交换。联盟链的各个节点只有通过授权后才能加入网络。例如Hyperledger Fabric、R3联盟等。其特点是自行背书、系统效率高。
  • 3)私有链(Private Blockchain):中心化,某些区块链的应用场景下,开发者不希望任何人参与这个系统,因此建立一个只有被许可的节点才可以参与并看所有数据的私有区块链。例如私有机构、企业内部等。其特点是集体背书,系统效率较高。

四、区块链的层级结构

  • 1)数据层(Data Layer):主要描述了区块链系统的物理形式,是区块链从创世区块起始的链式结构,包含了区块数据、随机数、时间戳和公私钥等数据,是整个区块链技术中最底层的数据结构。
  • 2)网络层(Network Layer):主要通过P2P技术实现分布式网络的机制,包括P2P组网机制、数据传播机制和数据验证机制。
  • 3)共识层(Consensus Layer):包含共识算法以及共识机制,能够让高度分散的节点在去中心化的区块链网络中高效地针对区块数据达成共识,是区块链的关键技术之一。
  • 4)激励层(Actrator Layer):主要包括经济激励的发行制度和分配制度,其功能是提供一定的激励措施,鼓励节点参与区块链中的验证工作,并将经济因素纳入到区块链技术体系中。
  • 5)合约层(Contract Layer):主要包括各种脚本、代码、算法机制和智能合约,是区块链可编程的基础。
  • 6)应用层(Application Layer):封装了各种应用场景和案例,类似于电脑操作系统上的应用程序。

五、参考资料

  1. 区块链行业字典.pdf
  2. 袁勇, 王飞跃. 区块链技术发展现状与展望. 自动化学报, 2016, 42(4): 481-494.

区块链基础知识的归纳与总结相关推荐

  1. 区块链基础知识与关键技术解析

    区块链基础 1. 区块链的来龙去脉     1.1 区块链技术起源     1.2 比特币产生背景与现状     1.3 数字货币概念     1.4 比特币技术原理 2. 区块链概念与产业现状   ...

  2. 区块链 - 区块链基础知识:交易哈希链

    区块链 - 区块链基础知识:深入了解交易哈希链 本文的主题是执行有关交易哈希链. 交易池的角色以及 一个最长的区块链如何永远占据主导. 讨论的细节包括以下内容: 事务哈希链的实现细节 交易池的角色 为 ...

  3. 【问链财经-区块链基础知识系列】 第四十四课 邮储银行:U链福费廷业务系统

    一.案例摘要 福费廷业务是银行根据客户或其他金融机构的要求,在开证行.包买行或其他指定银行对信用证项下的款项做出付款承诺后,对应收款进行无追索权的融资.邮储银行以企业级开源区块链平台 Hyperled ...

  4. 【问链财经-区块链基础知识系列】 第四十七课 蚂蚁区块链的布局和打法

    近日,一年一度的云栖大会在杭州云栖小镇举行,"区块链"再度成为热词. 在9月24日的蚂蚁金服投资者日上,蚂蚁区块链已经成为蚂蚁金服董事长兼CEO井贤栋口中的"后天&quo ...

  5. 【问链财经-区块链基础知识系列】 第四十一课 中外银行跨境业务运用区块链技术创新案例对比

    中国作为贸易大国,国际贸易和内外贸一体化的市场规模庞大.近年来,随着"走出去"和"一带一路"国家战略的深化,企业层面的跨境支付与结算业务将迎来新的市场契机.加之 ...

  6. 【问链财经-区块链基础知识系列】 第三十二课 从区块链溯源来看农产品链的设计

    在区块链的应用场景中,农产品溯源和食品溯源一直是翻来覆去讲的故事,但实际上溯源是一个伪命题,农产品和食品的加密上链实现溯源看起来很丰满,然而现实却很骨干.我们经常忘记了初心:溯源的目的是为了什么? 农 ...

  7. 【问链财经-区块链基础知识系列】 第三十课 区块链金融面临的四大挑战

    编者按:越来越多的人意识到区块链带来的价值和好处.其中他们最关心的问题是,如何将区块链不可篡改的特性与自己所在企业或行业的应用场景结合起来.就像区块链在金融领域的应用,探索的触角已伸出,效果又如何呢? ...

  8. 【问链财经-区块链基础知识系列】 第二十七课 区块链与分布式账本的异同

    编者按:在加密货币和区块链领域,有一个业内人士常挂在嘴边的新术语:分布式账本技术(简称DLT).但具有讽刺意味的是,恰恰是比特币和各种区块链试图颠覆的实体们,例如银行,政府和大公司,对分布式账本技术情 ...

  9. 【问链财经-区块链基础知识系列】 第二十二课 贸易金融区块链平台的技术机理与现实意义

    简介:贸易金融区块链平台的技术机理.模式.优势与现实意义都有哪些?对湾区贸易金融区块链平台的未来建设有何展望?本文将进行详述. 小微企业贡献了我国60%以上的GDP.50%以上的税收以及80%的城镇就 ...

  10. 【问链财经-区块链基础知识系列】 第十九课 区块链应用于电子存证

    编者按:在传统的具有法律效益的存证需要第三方权威公证处进行公证,并且需要绑定时间戳和相关信息,步骤繁琐,进度比较慢,后来存证电子化后一定程度上提高了效率.节省了成本,但也会有一些其他的问题,比如第三方 ...

最新文章

  1. WAMPSERVER安装之笑话
  2. 20211028 Stabilizability
  3. jzoj4671-World Tour【图论,bfs】
  4. 新消费催生新制造:拼多多一年将培育百家销量过亿家纺企业
  5. 去年买彩票中了400多万
  6. matlab拼接tiff文件_ImageJ实用技巧——自动图片拼接(基本功能篇)
  7. Netlink 0003 -- Netlink动手实践
  8. 计算机网络-自顶向下方法 第五章课后习题答案(第七版)
  9. 数据处理—ArcGIS处理地理空间数据云30mDEM数据
  10. java 度分秒转换为度_andriod Java中度转度分秒
  11. 【Matlab土壤分类】多类SVM土壤分类【含GUI源码 1398期】
  12. 您未被授权查看该页原来是不瑞星个人防火墙的问题
  13. ## 解决: IIS部署静态页面更新时html,js文件没有更新的问题
  14. 自媒体视频素材|短视频标题文字动画PR模板素材
  15. 测试点先发散后收敛思考
  16. 千人千面、用户画像的设计、技术选型与架构实现
  17. Java基础新手上路篇
  18. sincerit 算法竞赛宝典--油桶问题
  19. iOS Main.string国际化不起作用
  20. java 正则表达式不包含某个字符

热门文章

  1. poj1265 -- Area(皮克定理)
  2. LambdaQueryWrapper的不同写法
  3. 面向物联网的可重构流式深度卷积神经网络加速器
  4. html代码广告代码大全,强制弹窗广告代码大全.doc
  5. 开关电源—Buck电路原理及其仿真
  6. 私厨菜谱app的设计与实现(二)
  7. layui树形组件渲染
  8. arcgis10之地理配准
  9. YOLOv7官方开源 | Alexey Bochkovskiy站台,精度速度超越所有YOLO,还得是AB
  10. 如何在 Android 中减小 APK 大小?