1 / 12
文档名称:

2022年区块链以和区块链技术总结.docx

格式:docx   大小:334KB   页数:12页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

2022年区块链以和区块链技术总结.docx

上传人:橙老师 2022/3/23 文件大小:334 KB

下载得到文件列表

2022年区块链以和区块链技术总结.docx

文档介绍

文档介绍:
精选资料,欢迎下载
区块链以及区块链技术总结
区块链是目前一个比较热门的新概念, 包蕴了技术与金融两层概念; 从技术角度来看, 这是一个牺牲一样性效率且保证最终一样性的的分布式的数据库, 当然这是比较片
而有关区块链技术的介绍, 在各个区块链平台的社区是有具体资料的, 但是针对这些资料的总结,以及抽象出一共通概念的介绍,仍是凤毛麟角,本文尝试总结一下;

精选资料,欢迎下载
在介绍之前,我想略微介绍一下公有链,联盟链的概念,这些概念是以太坊创始人 Vitalik
提出的,我在这些概念的基础上做了一些讨论;
其实区分公有链、 联盟链很简洁, 只要看这个区块链的拜访权限就可以了, 假如拜访该区块链需要获得链上节点的许可,那么这是一个联盟链,否就是公有链;
依据名称,我们也可以”望文生义“,公有表示一个完全开放的网络,联盟表示一个半开放
的网络, 成员之间是共享的, 非成员身份是没有自由拜访权限的, 所以我们也称联盟链为许可链;
下面我们来看几个比较主流的区块链平台(公有链,皆开源):
“1.
比特币 Bitcoin
2.
以太坊 Ethereum/
经典以太坊 Ethereum Classic
3.
比特股 Bitshares

我一般戏称为”三巨头“,从生态上来看,比特币是最为成熟稳固的,以太坊更像是一个冲在前面的勇士,比特股相比前两位生态要小许多,但是从创新的角度,也不亚于前两位;
其他的许多项目, 是从这三个区块链上衍生出来的, 所以以这三个为基础, 基本上可以吃透区块链了;
不得不提的仍有 Linux 基金会项目—— HyperLedger 项目(主打联盟链,开源),也是旨在打造一个通用的区块链技术,不过我认为目前尚在开发迭代当中,仍没有具体的应用案例,
按下不讲;
另外仍有一些好玩的联盟链项目—— R3 CEV项目(联盟链,闭源),以及中国的 R3 项目—
—ChinaLedger (联盟链,闭源),当然这些不是开源的,我无法获得有用的资料进行分析, 所以就不绽开了;
从技术上来看, 针对不同的业务场景,对区块链有不同需求, 比照实时结算业务, 要求区块链供应秒级的交割, 相对应的就是出块速度的要求, 而出块速度过快往往会导致区块链分叉
(fork ),形成孤儿链,孤儿链是无效的,那么交易也就作废了,影响了区块链的最终一样性;
假如频繁产生分叉造成相当比例的用户交易失效,那么可以认为系统是不行靠的;
假如我们将这种实时性要求比较高的业务安插到联盟链中, 就可以掌握风险, 通过调整共识算法,利用快速一样共识模型( Consensus Model )来防止上述问题,虽然不如公有链那么健壮,但对某些特殊场景足够了;
所以架构层面,对公有链和联盟链的技术也要差异化对待;不过客户端整体的设计仍是有一些通用的概念的,如下图:

精选资料,欢迎下载
(图 1)
一个区块链至少分为三层:
最底层是一些通用的基础模块,比如基础加密算法,网络通讯库,流处理,线程封装,消息
封装与解码,系统时间等;
中间一层是区块链的核心模块,
一般包含了区块链的主要规律, 如 P2P网络协议, 共识模块,
交易处理模块, 交易池模块,简洁合约或者智能合约模块,嵌入式数据库处理模块,钱包模
块等等;
最上面一层,往往都是基于
Json Standard RPC 的交互模块,基于 Json-RPC, 我们仍可以做
出更好的 UI 界面,也可以是一个 web-service ;
假如区块链 支持智能合约, 可能仍要分更多的层,
供应自治的服务,比如下面这张以太坊的架构图(来自
比如增加 BaaS层,区块链上的智能合约
google ,仅作参考):

精选资料,欢迎下载
(图 2)
这种分层更加关注的是区块链本身的分层,即业务上的视角,而不完全是技术的;我们再转向比特币的设计:
(图 3)
比特币几个模块之间的耦合度其实比较高, 而且有不少历史包袱, 比特币的创造者——中本聪在开发比特币的时候,使用 VC++开发,而 VC++的标准库中的 sstream 流处理性能特别感

精选资料,欢迎下载
人,不得不舍弃,自行实现了了基于 vector<char> 的流处理容器;而随着 c++11 的推出以及