对于Algorand的介绍

介绍

  • Algorand具有能耗低、效率高、民主化、分叉概率极低、可拓展性好等优点,旨在解决现有区块链项目存在的“不可能三角”(高度可扩展的、安全的、去中心化)问题。Algorand由MIT教授、图灵奖得主Silvio Micali发起,拥有MIT区块链大牛为主的开发团队和全明星阵容的顾问团队。是第一个提出随机共识机制的区块链项目,该项目旨在成为一个高度可扩展的、安全的、去中心化的区块链。它具有抗分叉的弹性,并能在一分钟内实现区块的最终确认。

项目亮点

  • Algorand是由图灵奖获得者Silvio Micali教授带领着团队发起的,团队聚集了世界级顶尖的技术人才,技术研发实力很强;
  • Algorand中的随机函数以有效保证信息的隐私性防止参与者被攻击的可能性,具有较大的创新性;
  • 顾问包括知名风投Pillar和USV的合伙人、MIT和哈佛大学的经济学教授、美国顶级高校的电子信息工程和计算机科学教授、COINLIST的创始人和ZEC底层协议的联合发明者等等。

项目风险

  • W.sean Ford已经兼任公司的CEO ,推测之前的Steven已经离职,管理团队不稳定;
  • Algorand的共识机制虽然设计很新颖,但是还有待市场验证,存在一定的技术风险;
  • 没有公布项目路线图,白皮书披露信息不完全。

项目测评

市场分析

比特币网络存在很多缺陷

  • 第一,比特币区块链系统的工作量证明共识机制需要消耗大量计算资源和能源。根据Digiconomist网站数据,截至2018年1月底,每产生一个比特币区块,需要运行1.18*10²²次哈希运算。考虑到哈希函数作为随机预言(random oracle)的性质,比特币区块的产生过程,相当于掷一个有面的骰子,直到掷出某一特定的面为止。比特币区块链系统一年的耗电量,与秘鲁全国一年的耗电量相当,而且还在快速增长中。这些巨量计算和耗电,除了产生比特币区块以外,对人类社会几乎没有任何价值。
  • 第二,比特币区块链系统要长期存续,要求50%以上的计算资源掌握在诚实用户的手中。否则,恶意用户在力量占优时可能篡改区块链。但随着市场演变(中本聪应该没有预见到这种情况),比特币区块链系统中的计算资源集中在少数几个“矿池”中。这就构成了一个潜在的不稳定因素。“矿池”的存在也使比特币区块链系统偏离了其早期宣称的民主特征,形成了“矿工”和普通使用者这样不同阶层的使用者。从比特币历史上关于扩容的讨论以及多次分叉不难看出,比特币区块链系统已经形成了中心化程度很高的社区结构
  • 第三,比特币区块链系统容易出现分叉。根据中本聪的白皮书,当一笔交易被记入一个区块并接入区块链后,要等该笔交易所在区块后面再接上5个区块,才能比较肯定这笔交易进入比特币的公共账本,而非在某一个分叉上。因为比特币区块链系统平均每10分钟才能产生一个区块,一笔交易从被记入区块到被确认需要1个小时左右时间。
  • 第四,比特币区块链系统的可拓展性比较差。比如,一个比特币区块的大小为1M,大约能容纳2000笔左右交易,因为平均每10分钟产生一个区块,比特币平均每秒钟能支持3-4笔交易;相比而言,Paypal平均每秒钟能支持193笔交易,Visa平均每秒钟能支持1667笔交易。

Algorand针对比特币区块链系统的几个核心缺陷进行了改进,具有能耗低、效率高、民主化、分叉概率极低、可拓展性好等优点,旨在解决现有区块链项目存在的“不可能三角”问题。以比特币为代表的区块链技术在降低信任成本用户激励方面优势明显,在各个行业都有比较好的应用前景。Algorand提出的技术方案将加快推进区块链技术应用落地的速度,市场潜力很大。

竞争情况

  • Algorand主要采用了VRF来产生随机数进行加密抽签,而Dfinity同样使用了VRF的机制来作为随机数生成器。同时,在这两个项目的共识过程中,都选取小范围委员会作为区块的提议以及公证,因此Algorand与Dfinity在一些特点上拥有较多的相似之处,但又保留了各自的核心技术,两者的对比如下表所示:

  • 面临较大的同业竞争压力,但是团队在技术创新优势明显。虽然针对区块链“不可能三角”问题提出方案的项目较多,Algorand会面临较大的同业竞争压力。但是Algorand是由图灵奖获得者Silvio Micali教授带领着团队发起的,团队聚集了世界级顶尖的技术人才,技术研发实力很强。同时Algorand中的随机函数以有效保证信息的隐私性和防止参与者被攻击的可能性,具有较大的创新性。

生态循环

  • 应用场景多,但是暂时没有激励方案。由于区块链技术在降低信任成本和用户激励方面的优势,已经有很多相关的应用在开发,这些领域包括交通的使用、物流的运输、社会公益、文化医疗、教育等。Algorand提供的技术方案将使应用落地速度加快,进一步提高生态网络的运行效率。但是Algorand在激励机制上还没有提供一套确定的方案,用户激励作为生态建设中重要的一环,这将很大程度上限制Algorand技术性能的发挥。

团队分析

创始人

  • 创始人Silvio Micali是MIT计算机科学教授,被誉为「计算机中的诺贝尔」的图灵奖的获奖者,同时也是零知识证明的共同发明者之一,在公钥密码系统、伪随机函数、数字签名、拜占庭协议和安全多方计算等方面的工作而出名。Micali教授带领的Algorand团队聚集了世界级顶尖的密码学专家,均是麻省理工学院计算机科学领域的佼佼者,专业理论和科研实力雄厚。

创始团队

  • 团队很多来自MIT,技术研发实力强。通过团队成员的资料可知,11名研发人员中有10名供职或毕业于MIT,具有名校背景。全部25名成员中,至少19名供职或毕业于MIT,并且很多成员都是硕士或者博士学位,团队配置豪华。Algorand团队包含众多重量级专家,经验丰富,属于区块链领域的顶尖团队。

顾问团队

  • Algorand在战略管理、经济学、计算机科学和加密货币四大重要板块的顾问均是各自领域的行业影响者,包括知名风投Pillar和USV的合伙人、MIT和哈佛大学的经济学教授、美国顶级高校的电子信息工程和计算机科学教授、COINLIST的创始人和ZEC底层协议的联合发明者等等。

技术分析

  • Algorand 采用可验证随机函数、POS (账户余额权重)以及新的拜占庭协议议定书(Byzantine Agreement Protocol,BA*)整合方式的共识机制来实现提高TPS的同时,没有牺牲去中心化和隐私性,并且拥有良好的扩展性。
  • 具体的技术细节介绍参见博客 

Algorand 的优缺点

通过上述分析,Algorand 基本解决了先前提出的一系列问题:

  • 通过 PoS 和可验证随机函数(VRF)实现区块生产者和验证者的选择
  • 通过改进的拜占庭共识 BA* 对新产生的区块达成共识
  • 通过一定的参数设计,从数学上将分叉的概率降至极低值
  • 引入种子参数,回溯系数以及一次性公钥等机制进一步增强安全性
  • 每一轮都只进行局部验证,并通过减少节点间通信量进一步提升系统的吞吐量,提高可扩展性

Algorand 在可扩展性,安全性和去中心化程度三个方面达到了一个很好的均衡,但这不意味着其真的打破了所谓的”不可能三角“

  • 可扩展性方面:本质上还是通过较少的验证节点对所有交易进行验证,当网络中全节点变多时,只能保证性能不下降太多,不是真正意义上的可扩展。另外,每一轮验证节点之间的通信依赖于所处的网络状态,网络不稳定将导致共识时间变长,影响 TPS。官方称 Algorand 在 Permissinoed 环境下将有更好的性能,原因可能在于 Permissionless 环境下节点所处环境有太多不确定性,会在一定程度上影响可扩展性。
  • 安全性方面:Algorand 本质上采用的还是拜占庭共识,恶意节点不能超过 ⅓,而比特币可以在恶意节点数小于 ½ 的情况下保证安全。
  • 去中心化方面:Algorand 采用 PoS 共识和 VRF 决定区块生产者和验证者,拥有较多代币的节点在 PoS 过程中被选中的概率较高,且 Staking 奖励向大户集中,有一定的中心化趋势;而 VRF 选举机制的引入让链上计算只由部分节点进行验证,损失了去中心化系统全网验证的特性。

此外,Algorand 的主网刚刚发布[6],此前所有结果均是理想环境下的数据,且部分代码未开源,虚拟机相关设计也暂未提及,其实现的复杂度、稳定性和实际性能还有待时间的检验。

参考链接

  • AIgorand:兼顾高性能、去中心和安全的公有链 | ONETOP评级
  • Qtum研究院:深度解析Algorand共识协议

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/447080.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++学习 高级编程

C 文件和流 到目前为止,目前使用最为广泛的是 iostream 标准库,它提供了 cin 和 cout 方法分别用于从标准输入读取流和向标准输出写入流。以下将介绍从文件读取流和向文件写入流。这就需要用到 C 中另一个标准库 fstream,它定义了三个新的数…

内存池中的嵌入式指针

嵌入式指针 可以union改struct 内存分配后 next指针就没用了 直接作为数据空间比较省内存 因为对指针指向的内存存储的时候 编译器是不管你是什么类型的 &#xff0c;这里有道练习题可以对指针的概念稍微理解一下&#xff1a; #include <iostream> using std::cout; us…

内存池的实现4 alloc内存池

alloc 内存池 优点: &#xff1a;本质是定长内存池的改进&#xff0c;分配和释放的效率高。可以解决一定长度内存分配的问题。 缺点 &#xff1a;存在内碎片的问题&#xff0c;且将一块大内存切小以后&#xff0c;申请大内存无法使用&#xff0c;别的FreeList挂了很多空闲的内存…

c语音的一些特殊关键字

PRETTY_FUNCTION C语言中获取函数名 C语言中的__LINE__用以指示本行语句在源文件中的位置信息

vim 不常见但好用的命令

● 跳跃 ○ 向前跳跃是 f ○ 向后跳跃是 F ● 继续 ○ 保持方向是 ; ○ 改变方向是 , ● 可以加上 [count] 来加速 ● ^ 是到本行第一个非空字符 ● 0 是到本行第一个字符&#xff0c;不管是不是空格 ● g_ 是到本行最后一个非空字符 ● 两个按键要依次按下 ● $ 跳到本行最后…

加密机组会 会议纪要

2020年9月28日 1&#xff0c;使用基类继承的机制&#xff0c;调用写好的函数接口 1&#xff0c;不要 使用Content&#xff08;封装数据&#xff0c;本质是一个json字符串&#xff09;&#xff0c;1&#xff0c;因为每次使用这个需要对里面的内容进行序列化&#xff0c;转化成…

演示IPFS的一个完整的流程以及针对部分概念的详解

整体的流程 1&#xff0c;创建ipfs节点 通过ipfs init在本地计算机建立一个IPFS节点本文有些命令已经执行过了&#xff0c;就没有重新初始化。部分图片拷贝自先前文档&#xff0c;具体信息应以实物为准 $ ipfs init initializing IPFS node at /Users/CHY/.ipfs generating 2…

TDengine安装教程

TDengine安装教程 前言 TDengine的安装十分简单&#xff0c;可以有以下三种安装方式&#xff0c;源码安装、通过Docker容器进行安装、通过安装包进行安装。但是使用源码安装较为复杂&#xff0c;通过docker的方式最为简单&#xff0c;但是需要一定docker相关的知识&#xff0…

android 软件首次运行时引导页左右滑动效果

很多手机软件在安装后首次运行都会进入到引导页面&#xff0c;再次运行时会进入到主页面。 多了不说了&#xff0c;先看效果图&#xff1a; 代码如下&#xff1a; main.xml <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:an…

dex分包之--------multidex包的配置使用

目录&#xff1a;一、前言二、产生原因三、MultiDex的简要原理四、MultiDex的使用 一、前言 首先说一下我遇到的情况&#xff0c;最近接手了一个项目是在已有的项目里进行更新添加一些功能&#xff0c;然后该项目导了N多的包&#xff0c;在我使用Android Studio的run”App”直…

Android Studio打包和引用aar

一、简介 Android 库在结构上与 Android 应用模块相同。它可以提供构建应用所需的一切内容&#xff0c;包括源代码、资源文件和 Android 清单。不过&#xff0c;Android 库将编译到您可以用作 Android 应用模块依赖项的 Android 归档 (AAR) 文件&#xff0c;而不是在设备上运行…

C++有限状态机的实现

//待完善 有限状态机是一个很常用的技术&#xff0c;在流程控制和游戏AI中都比较实用&#xff0c;因为状态机编程简单又很符合直觉。与有限状态机类似的是设计模式中的状态模式。本文是参考《Programming Game AI by Example》 一、 记得最开始工作时候也接触过有限状态机&…

C++ unsigned char*转化为string的形式

unsigned char*转化为string int main(int argc,char **argv){//unsigned char * 转化为string//参考链接 https://www.itdaan.com/tw/4ff531a5e6651468a5b7c6d95927ba3dunsigned char *foo;unsigned char str[] "Hello world";string strHH;foo str;strHH.append…

我的职业生涯规划(软件工程)

以后笔记先在语雀整理 方便一点https://www.yuque.com/juhao-pqdor/goeie3 整理一下自己的笔记 弥补一下以前没写博客的遗憾吧 二十载求学路将尽&#xff0c;行文至此&#xff0c;思绪万千。求学之路始于家乡&#xff0c;竿转热河&#xff0c;而今终于石门。一路行之如人饮水…

Android设计模式之——Builder模式

一、介绍 Builder模式是一步一步创建一个复杂对象的创建型模式&#xff0c;它允许用户在不知道内部构建细节的情况下&#xff0c;可以更精细的控制对象的构造流程。该模式是为了将构建复杂对象的过程和它的部件解耦&#xff0c;使得构建过程和部件的表示隔离开来。 因为一个复…

Android设计模式之——原型模式

一、介绍 原型模式是一个创建型的模式。原型二字表明了该模型应该有一个样板实例&#xff0c;用户从这个样板对象中复制出一个内部属性一致的对象&#xff0c;这个过程也就是我们俗称的“克隆”。被复制的实例就是我们所称的“原型”&#xff0c;这个原型也是可定制的。原型模…

针对C++异常的学习

源码 头文件 sdf_exception.h #pragma once#include <exception> #include <string>namespace sdf {namespace common{using sdf_error_code_t uint32_t;class SdfException : std::exception{public:explicit SdfException(sdf_error_code_t errorCode) : erro…

Android设计模式之——抽象工厂模式

一、介绍 抽象工厂模式&#xff08;Abstract Factory Pattern&#xff09;&#xff0c;也是创建型设计模式之一。前一节我们已经了解了工厂方法模式&#xff0c;那么这个抽象工厂又是怎么一回事呢&#xff1f;大家联想一下现实生活中的工厂肯定都是具体的&#xff0c;也就是说…

Android设计模式之——策略模式

一、介绍 在软件开发中也常常遇到这样的情况&#xff1a;实现某一个功能可以有多种算法或者策略&#xff0c;我们根据实际情况选择不同的算法或者策略来完成该功能。例如&#xff0c;排序算法&#xff0c;可以使用插入排序、归并排序、冒泡排序等。 针对这种情况&#xff0c;…

密码学在区块链隐私保护中的应用学习

身份隐私保护技术 混淆服务 混淆服务的目的在于混淆消息双方的联系&#xff08;如 图 2 所示&#xff09;。当发送方需要告知接收方消息 M 时&#xff0c; 它会首先用接收方的公钥 KB 加密 M&#xff0c;并在密文后 附带真实接收地址 R。为了借助第三方&#xff08;图 2 中的…