diff --git "a/task_list/task_20180726/\343\200\220\347\231\275\347\232\256\344\271\246\347\263\273\345\210\227\343\200\221\345\210\235\351\223\276-\346\226\260\344\270\200\344\273\243\346\267\267\345\220\210\345\205\261\350\257\206\346\227\240\351\234\200\350\256\270\345\217\257\351\223\276__\345\223\246\345\223\246\357\274\210\345\255\224\351\243\236\357\274\211.md" "b/task_list/task_20180726/\343\200\220\347\231\275\347\232\256\344\271\246\347\263\273\345\210\227\343\200\221\345\210\235\351\223\276-\346\226\260\344\270\200\344\273\243\346\267\267\345\220\210\345\205\261\350\257\206\346\227\240\351\234\200\350\256\270\345\217\257\351\223\276__\345\223\246\345\223\246\357\274\210\345\255\224\351\243\236\357\274\211.md" new file mode 100644 index 0000000..aa35dde --- /dev/null +++ "b/task_list/task_20180726/\343\200\220\347\231\275\347\232\256\344\271\246\347\263\273\345\210\227\343\200\221\345\210\235\351\223\276-\346\226\260\344\270\200\344\273\243\346\267\267\345\220\210\345\205\261\350\257\206\346\227\240\351\234\200\350\256\270\345\217\257\351\223\276__\345\223\246\345\223\246\357\274\210\345\255\224\351\243\236\357\274\211.md" @@ -0,0 +1,72 @@ +作为区块链小白,看完初链的白皮书之后,还是有一些不明白的地方。不明白的地方主要集中在一些概念上。那么笔记就先从概念聊起吧。 + +## 概念 + +### 【概念1】 无需许可链 + +> 打造承载未来商用去中心化应用的无需许可链,是时代的需求,也是初链的梦想。 + +白皮书的标题中也提到无需许可链,那么所谓的无需许可链指什么呢?看一下中国信息通信研究院发布的《区块链白皮书》中如何定义的: + +> 按照系统是否具有节点准入机制,区块链可分类为许可链和非许可链。许可链中节点的加入退出需要区块链系统的许可,根据拥有控制权限的主体是否集中可分为联盟链和私有链;非许可链则是完全开放的,亦可称为公有链,节点可以随时自由加入和退出。 + +所以,无需许可链也就是我们常说的公链。所以,初链是要做新一代的公链。 + +### 【概念2】混合共识机制 + +这是标题的另外一个关键词。我们常见的共识机制都有POW、POS、DPOS、PBFT、VRF,但是每一种共识机制都存在缺陷,如POW会白白浪费很多的电力资源,POS容易引起“巨大的贫富差距”,DPOS目前常饱受“中心化”的诟病,而PBFT和VRF一般使用在许可链中。因此,目前区块链技术发展趋势之一就是在共识方面,从单一共识向混合共识演变。而初链就是其中的一个代表,其在共识方面讲POW和PBFT相结合,而不是使用单一的共识机制。 + +### 【概念3】 PBFT + +由于之前都是学习公链的共识算法,对PBFT没有多少了解。所以,查阅了一些资料,进行汇总如下: + +> 定义为:PBFT(Practical Byzantine Fault Tolerance)实用拜占庭容错算法。 + +其算法的时间复杂度是O(n^2),其坏节点数量要求为小于节点总数的三分之一。PBFT算法前提:采用密码学算法保证节点之间的消息传送是不可篡改的。其流程如下: + +![](https://upload-images.jianshu.io/upload_images/2564562-5d0c9c4c5e993f6d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) + +PBFT随着节点的增加,其节点间的通信快速增加,从而导致性能下降。PBFT主要用于联盟链,这里初链使用POW来选择出节点,使这些节点更可信,从而再进行PBFT。既保证了性能,又做到了一定的分散。 + +下面是初链白皮书的正文,针对几个自己感兴趣的部分记录下自己的想法 + +## 初链 + +### 安全性 + +> 以 PoW 为基础,选举产生 PBFT 节点的混合共识机制设计可以保证 PBFT 节点出现问题时及时进行重新选举,并对PBFT节点进行实时监督。 + +混合共识机制是初链的一大创新点。白皮书中没有谈到一些具体的细节,这里还存在一些疑问:POW如何进行选举PBFT节点?PBFT节点的个数?如何判断PBFT节点出现问题?如何确保作恶节点不会超过三分之一?如何进行监督?等等 + +只能在接下来的黄皮书以及代码的学习中进一步学习了。 + +### 技术架构 + +> 初链的技术架构自下而上共分为四层:一是底层服务,包含P2P 网络、LevelDB 数据库、密码学算法、分片优化;二是核心层,包含区块链模块、TRUE 模块、共识算法模块;三是 API 接口层,包括TVM 虚拟机、gRPC通讯协议;四是智能合约层。 + +技术架构上区块链项目均差不多,中国信息通信研究院发布的《区块链白皮书》中对区块链项目的框架如下图: +![区块链技术架构](https://upload-images.jianshu.io/upload_images/2564562-92f04592cb483a7d.JPG?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) + +初链的技术架构中包含一些没有了解过的技术:levelDB以及分片优化。百度了解到:Leveldb是一个google实现的非常高效的kv数据库。不确定这是不是一个中心化的服务器。如果是中心化的服务器,那么初链如何进行使用?存储哪些内容?分片优化在后文中只是说了将串行改为并行。 + +### 混合共识机制 + +> 其(共识机制)需要足够去中心化以实现安全性,又需要高运行速度以保证性能。行业已经基本形成认识——仅靠单一共识机制难以兼顾效率与去中心化本质。为弥补前两代区块链比特币与以太坊TPS 过低导致无法应用到实质商业应用开发的弊病。 + +应该说POW机制的TPS过低,POS和DPOS的TPS有了一定的提升,但在其他方面有些缺陷。目前的公链也在高TPS上进行各个方向的探索。 + +### fPoW + +> 在挖矿过程中,PBFT 生产大区块,而水果链负责将大区块分成若干个水果,这些水果具有保鲜期,每个水果中记录了若干条交易信息,普通挖矿只用验证这些交易信息即可,并不需要投入大量的挖矿设备、电力和带宽,水果链的轻节点设计理念,可以让普通参与者挖矿。 + +降低挖矿的门槛,将挖矿进行普及,使得挖矿的参与者增加,从而人数的增加进一步降低了联合作恶以及垄断的产生,从而促成公平公正。 + +之前有尝试过挖矿,不过发现没有成功。所以,希望更进一步降低挖矿门槛。只有挖矿的参与者多了,其公平公正的特点才会得以体现。 + +### 产品矩阵 + +![产品矩阵](https://upload-images.jianshu.io/upload_images/2564562-7f88249ff5d8b301.JPG?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) + +除了传统区块链的钱包、区块链浏览器、开发工具外,还有包含面向用户的DAPP下载平台,即应用分发工具。目前的情况是公链多,应用少,杀手级(能够面向普罗大众)的应用基本没有。DAPP应用又需要进行兼顾开发者、用户以及国家法律法规等诸多因素。并且目前的面向用户的DAPP并没有真正使用区块链技术真正做到是传统中心化技术无法替代的。因此,DAPP应用的发展和区块链的发展相辅相成。希望初链能够在开发工具以及DAPP上取得好的进展。 + +最后,祝初链能够发展壮大,早日实现美好远大的愿景。