Aleo入门知识及挖矿分析

8月3日,Aleo公布了第三个测试网,这意味着Aleo的实践又进一步,而加密货币爱好者也陆续进场,期望趁此风口赚取一笔红利。作为世界上第一个专注隐私的区块链项目,Aleo已经收获了三星、a16z等多家投资机构的认可,更是在今年二月完成2亿美元融资。如果你还不了解Aleo项目,或者想知道其中的投资机会,这篇文章可以帮助你快速认识它。

什么是Aleo

Aleo是一个成立于2019年的开源去中心平台,旨在为用户提供真正私密的网络体验。针对开发人员,Aleo还具备自由的可编程性,通过去中心化系统和零知识密码学,让任何开发者都能利用其技术构建完全隐私的应用程序。相对其他项目,Aleo的理念在于它瞄准了传统区块链网络的几大漏洞,并使用有效的技术手段进行解决。

  1. 现有的区块链无法满足现实世界的应用

以大家熟知的以太坊为例,在以太坊网络上构建的智能合约、暗池等仍然存在隐私方面的缺陷,这意味着用户行为无法得到完全的保护。对公司而言,在全球范围内同步使用商业逻辑和数据听起来挺吸引人的,但如果缺乏隐私,员工在遵守准则之前就会产生排斥。所以为了让区块链技术更好地适应现实世界,应该让它默许对隐私的尊重。

  1. 技术应该为社会贡献更多价值

技术的发展应该推动解决现实问题,但当今的许多区块链并未遵守这个准则,反而招致了其他问题。Aleo从用户体验、开发缺陷出发,提供轻松易用的技术,帮助社会进步。

Aleo如何实现信息隐私化

目前,中心化网络的公司仍然占据主导地位,他们手握消费者的海量信息,从中获取巨大效益。与之相对的,消费者的隐私和利益受到了极大威胁。比如你在Instagram上误触了一个床垫的照片,那么接下来几个月,Facebook会不断向你推送床垫广告,而这一切都没有得到消费者的允许,更不受消费者控制。为了解决这种隐私困境,Aleo提出了全新解决方案:零知识证明(Zero Knowledge Proof)。

零知识证明是一种密码学协议,在协议的规定下,一方(证明者,the prover)需要向另一方(验证者,the verifier)证明某个事件是真实的,但不能透露事件细节。具体到区块链交易时,见证交易的验证者和其他参与者都只能知道“交易已经完成”的事实,而无法了解交易发生的方式和时间等信息。即便如此,因为协议底层逻辑中的密码学原理,他们还是会信任证明者所提供的事实陈述。这听起来可能有点不可置信,但零知识证明早已运用在电商领域的加密算法中,并非天马行空的想象。Aleo希望在当前的基础上,把零知识证明推向更广泛的社会运用。

Aleo挖矿分析

一、概述

Aleo官方计划进度:

第 1 阶段(2022 年 8 月):Web3 开发人员开始在 Aleo 上部署和执行

  • 任何人都可以运行 snarkOS 客户端节点来参与 Aleo 网络。

  • 开发人员可以在 Aleo 上构建和部署应用程序。

  • 开发人员将因部署和执行 Aleo 程序而获得代币奖励。

第 2 阶段(2022 年 9 月):证明者在 Aleo 上获得 Coinbase 奖励

  • 任何人都可以运行 snarkOS 证明者节点来解决 coinbase 难题。

  • 证明者将通过确认的 coinbase 证明获得 coinbase 奖励。

  • 启动用于提交和修复 snarkOS 和 snarkVM 中的错误的错误赏金。

  • 最成功的证明者将获得足够的奖励成为验证者。

第 3 阶段(2022 年 10 月):验证者开始在 Aleo 上进行质押

  • 推出 AleoBFT,一种新颖的股权证明共识机制。

  • 拥有 100 万积分或更多积分的参与者可以质押成为验证者。

  • 测试网用户将能够委托他们的质押来获得质押奖励。

随着Aleo testnet3路线图的公布,针对Aleo的挖矿策略有了新的变化,由于目前Aleo对于testnet3 的实现细节披露的较少因此接下来我们将结合snarkos和snarkvm的代码对 testnet3 进行解析以其对Aleo的挖矿策略提供支撑。

事实上对于矿工来说其关注的核心点主要是:

I.Aleo 有哪些优势和技术特点

II.挖矿的方法/角色有哪些、工作原理是怎样的

III. 不同角色在挖矿中的收益(代币)是怎样的

IV.Aleo 的发行总量以及通缩模型是怎样的

V.如何挖矿

接下来我们将尝试回答上面所提出的几个问题。

二、Aleo 挖矿核心点分析

I.Aleo 的优势和技术特点:

1.posw 工作量证明:

从 testnet3 阶段后posw不再作为Aleo的共识算法,但依然作为矿工工作量的证明,从而实现对矿工的零知识证明工作激励,posw使得证明工作和收益密切相关从而解决pow了挖矿无效计算的弊端。

2.AleoBFT

纯粹的posw 算法虽然解决了pow算法无效计算的问题,但依然存在共识效率低,交易确认不稳定,算力集中等问题,因此引入AleoBFT作为共识层算法,从而加速共识改善网络效率。同时结合posw算法进行block打包,实现对零知识证明工作激励,最终解放posw矿工算力。

3. 可选择隐私性

snarkvm支持完备的定制化编程这在当前监管和隐私双重要求下难能可贵。

4.架构成熟

Aleo的零知识证明架构在成熟groth16,marlin 等成熟稳定的开源类库之上可靠性相对较高,同时引入了lookup 来优化hash等电路提高效率。

II.AleoBFT和POSW 的基本流程:

Aleobft+posw的基本原理:

从代码上来看Aleobft是一种基础的权益证明,其基本流程如下:

img

每个质押的Aleo的候选人通过对比vote_info_hash与其自身的score选出leader进行出块,这是一个典型pos过程因此不再详述。

当一个candidate获得了出块权同时也就意味着其获得了对应的stake_reward:

img

接下来就是矿工们(prover)进行posw的过程了,与Aleo testnet2 相似矿工需要对block进行零知识证明计算,同时解决coinbase的hash难题,除了是hash函数是零知识证明外其和pow挖矿基本一致。

解决了hash puzzle也就意味着prover获得了相应的coinbase_reward:

整个流程概括来说就是:

validator 负责出块,Prover负责基于零知识证明block打包,validator间出块的规则是pos,prover打包权通过posw获得,在这一过程中validator获得stake_reward,prover获得coinbase_reward。

III.Prover 和Validator的收益情况:

从snarkos目前代码看来其初始的参数如下:

再根据staking的奖励函数:

img

可以知道

staking_reward = floor(1000000000 * 0.025 / (365 * 24 * 3600 / 15) )=11 Credit

而coinbase_reward 计算公式如下:

img

img

img

带入初始化参数并假设validator 1000人的前提下可以得到第一年平均每个块收益约为80Credit左右,之后随着块高逐块递减,第二年约为71Credit直到第10年末减为0。

可以看到随着时间的推移prover与validator间的收益比例逐年降低并最终变为0,而validator自身的收益是不变的。

注:代码来自 https://github.com/AleoHQ/snarkOS 下的feat/experimental-networking2分支,并未合并到主线,具体的参数可能会有调整这里只给出参考数据。

IV.Aleo 的发行总量和通缩模型:

根据III中对于prover和validator的收益分析以及一些代码中设置的初始化参数可以知道Aleo的出事供应量为10BCredit之后逐年通胀,切前期通胀幅度大后期通胀幅度逐渐减小。

根据代码中的逻辑Credit的减少是线性的,块均数据如下:

============

1年 79.891200+11

============

2年 71.481602+11

============

3年 63.07200+11

============

4年 54.662402+11

============

5年 46.252802+11

============

6年 37.843202+11

============

7年 29.433602+11

============

8年 21.024002+11

============

9年 12.614402+11

============

10年 4.204802+11

但这与官方目前披露的数据有较大的出入。

这是之前社区得到的通胀 数据以及块收益:

通胀:

img

credits/块:

img

总的来说数据出入范围较大,但基本的趋势是一致的,关键的节点数据也基本一致,社区给出的是分段函数而代码中实现的是线性减少的。

IV.挖矿策略

1. validator 挖矿:

从代码中可以知道要想成为validator只少要求质押1M 的credit。

img

成为validator后需要参与到pos共识中,由于采用的是pos模式因此硬件投入较低且硬件投入与产出不相关,因此这部分投入基本可以忽略。

需要说明的是AleoBft的币龄系数的增加如下

img

可知其只是线性的增加score值,并未设置round上界因此分配系数更为均匀,可以预见质押挖矿收益的方差更小,预期收益稳定。

2. prover 挖矿:

由于prover挖矿没有准入门槛,这里我们更加关心prover硬件挖矿路线:

2.1 posw 挖矿原理简述:

简单可将挖矿归结为如下步骤

img

这其中主要的计算发生在bls377曲线的点乘(MSM)上以及FFT上也就是2)部分,这也是后续优化的关键点。

2.2 gpu 挖矿

正因为prover的一大部分计算都发生在MSM上,且MSM的计算是可以被GPU加速的,因此Aleo的可加速性完全取决于其对bls377的MSM在Gpu上的支持,下图是snarkvm 的testnet3分支的代码:

img

其明确表明gpu挖矿在testnet3上依然支持。经验上看标量乘法在同时期主流cpu和gpu上会有3~4的差距,由于Aleo证明的中标量乘法只占实际计算的一部分因此实际总体加速只有~20%左右。

关于gpu 矿机的选取:

依据目前的源码来看,Aleo依然只支持nvidia的显卡,且对于gpu的利用依然不高,在fft以及重制nonce环节均会出现较长的gpu空白时期。

理论上RTX 3060,RTX3080,RTX 3090以及i系列等型号都完全支持,但由于其挖矿特性使得在选型上我们更倾向于高主频而相对来说显存不高的型号。

2.3 多线程利用cpu多核芯资源:

虽然gpu对于posw挖矿有一定的提升(后期随着代码的优化相信还能得到更大的提升,但由于msm的计算占总计算量的比例小于70%因此其优化上限也就在3倍左右)但对于cpu依然较为依赖,因此在多核芯的cpu上实现多线程挖矿对于算力的提升也较为明显,从代码上我们可以完全单独的抽离出prove部分做成纯挖矿机器来进行(gpu同样适用,只是现在还无法充分利用gpu多核芯特性)。

3. validator与prover 的依赖以及混合挖矿:

3.1激励阶段挖矿的依赖性与收益预期

从Aleo testnet3的路线图中我们知道validator 质押会在挖矿的第三阶段(10月份)出现,因此前期的credit积攒主要来源为posw挖矿,从这个角度看prover是作为validator的前提,是重依赖项。由于没有进一步的官方信息,我们暂且假设testnet2的credit 可以在testnet3 的第三阶段使用(大概率是不能使用的)那么根据官方的数据可知会多出800w的积分,理论最大可产生8个验证者而testnet3的前两个阶段的最大收益不高于1500W,理论上最多能增加15个validator,也就是说后续的在10月每个validator的理论下限收益也有4.34w,折合年化收益66%。若testnet2收益不可用则每个validator的理论下限收益为6.67w,年化116%。

若按照此前官方曾说的激励中validator与prover相当那么每个validator的理论下限收益为30w,年化2300%。

基于上面的分析可知只要满足在第三阶段前获得100w的credit条件,就可以获得很高的无风险回报,因此理论上在激励阶段完成100w,则在全部3个阶段的收益应该在160W。

若不能达成100w,也就是说理论上在第三阶段前无法收入78W的credit,那么总收益将少于100W,与凑够100W情形相比会有20%左右的收入差距。

上面所有的讨论均是在质押劣势的假设下得到的,因此实践中前期凑足100Wcredit的优势应该会更加明显,可以看出此项目头矿效应非常明显。

3.2 激励效果

在3.1中我们讨论了激励阶段的策略以及相应的头矿效应,但从实际奖励数据来看其奖励并不足够诱人,因为当主网正式启动后第一年前三个月的总credit释放量有4700W要远高于2500W,因此从投资的角度激励阶段的参与人规模也是极其重要的考量。(也存在着激励阶段的奖励是附加额或有一定的转化比例的情况)

3.3 非激励期挖矿收益分析:

当主网正式启动,我们假设其按照上文介绍的代码的逻辑来进行分配收益,即第一年按照80:11的比例产块,并随着块高依次递减,由于我们很难对矿工规模以及validator总人数进行有效的估计,因此在这里只进行定性分析,从prover收益的递减情形来看若我们假设Aleo的credit价值稳定则在挖矿人未到收益上界前早投入一次性初期投入是其优势策略(若考虑抢占效应,以及币价影响则成为了更加复杂投资问题这里不做论述),考虑到validator 的规模上限(代码里设置为1000)则囤币最大限度的质押同样是优势策略。

在3.1中提到的头矿效应在这里依然成立,只是边界估计变得困难,这里不做详细的讨论。

三、总结

前文我们从代码的层面讨论了Aleo testnet3的基本特征,并分析了其不同角色的收益情况,挖矿要求,硬件选型策略以及不同阶段的各个角色简化参数下的优势策略。

总结来说:

  • Aleo的技术方案简洁创新且架构稳健

  • 基于Aleobft和posw衍生出了validator和prover两种角色。

  • validator负责共识 prover负责零知识证明打包

  • 初期prover与validator收益比为80:11之后逐渐降低并在10年后最终减少为0

  • validator挖矿需要至少100W的credit

  • prover 挖矿建议采用gpu 或多核cpu多线程挖矿

  • 在简单模型假设下无论是激励期亦或是主网启动后的前期抢占式posw挖矿都是优势策略

  • 在简单模型假设下作为validator长期质押是优势策略(不考虑币价,实际意义不大)

  • 激励阶段的激励规模并不大

  • 以上所有结论都是基于 https://github.com/AleoHQ/snarkOS 下的feat/experimental-networking2分支代码推理而得,可能与实际执行逻辑存在着较大区别,因此结论只供参考,不构成其他抉择性建议。

可乐矿池目前也在积极跟进Aleo动态,准备为大家提供稳定的配套挖矿服务,敬请关注。

可乐矿池官方网站:https://www.kelepool.com/