AE中国

æternity发布主网V3.3.0版本,加入Stratum支持

云纳百里 发布于 07月06日 阅读 704 本文共2377个字,预计阅读时间需要6分钟。

更新内容:

  • 修复/transactions/{hash}/info末端JSON响应中错误的字段。abi_version和vm_version应该是整数值,但在某些转账中,它们是(十六进制)字符串;
  • 额外增加一次检查,拒绝GA在mempool中签名的普通转账。该检查很便宜,所以我们避免因错误的交易而弄乱mempool;
  • 为Aeternity节点提供实现Stratum协议的alpha版AESTRATUM应用程序;
  • 添加对HTTP API缓存标头的支持(Expires和ETag)。可以通过设置http- > cache- > enabled来启用true。有关更多选项,请参阅配置架构;
  • 状态通道响应者可以为不同的通道使用相同的监听端口(监听端口只有一个响应者ID)。

此版本向后兼容以前的v3.*版本。

关于Stratum,可以前往论坛参与更多讨论:

https://forum.aeternity.com/t/stratum-is-here/3966

关于æternity Stratum介绍:

Github链接:

https://github.com/aeternity/protocol/blob/master/STRATUM.md

节选内容:

stratum协议,该协议允许矿工们连接到服务器,该服务器协调矿工之间工作任务的分配。

最初的stratum协议是为比特币编写的,包含几个需要调整的部分才能与Aeternity一起使用。

希望实施此规范的矿池运营商应该注意,Bitcoun-NG协议的使用改变了aeternity挖矿情况。由于需要应用Bitcoun-NG协议,矿池将最终创建包含交易的微块,而矿工试图找到关键快,其用于决定领导者的选择。这个过程将更多的权力交给矿池操作员,同时也增加了更多的负担。这种负担以增加记录复杂性的形式出现 – 一个epoch的全部收入只能在事实之后计算 – 并且增加了签署微块所需的计算资源。

关于AESTRATUM application (alpha版本)介绍:

Github链接:

https://github.com/ae….pha

节选内容:

通过将配置值设置stratum > enabled改为true,节点将启动Aestratum app。Aestratum app是适用于Aeternity网络的stratum协议的服务器端部分的实现[ https://github.com/aeternity/protocol/blob/master/STRATUM.md ]

该协议的目的是使矿池服务器和矿池客户端之间的信息交换协调正式化。

Aestratum应用程序是Aeternity节点的一部分,但我们在未来可能会将此功能移动到单独的可执行文件中。启用stratum服务器会导致节点在本地不进行挖矿工作证明,启用stratum允许用户充当挖矿矿池并同时充当矿池操作员。为了向零散矿工提供矿池,矿池操作员可以指定他们从挖矿区块奖励中抽水的奖励百分比。

Aestratum客户端

[ https://github.com/aeternity/aestratum_client]连接到运营商矿池节点(Stratum服务器),并解决挖矿加密难题。服务器向客户端发送任务,他们尝试解决这些问题并将份额(称为shares)发回。服务器使每个客户端的目标与其计算能力保持一致并相应地分配奖励。当矿工找到Cuckoo循环算法的结果 – 随机数和工作证明时,矿工在链的后续两个关键块之间发生的挖矿时期中被授予shares份额。如果shares是在挖矿epoch创建的,则可以将shares理解为符合条件的支付权利的最小单位。如果解决方案的难度与主网络的难度相匹配,我们可以将区块候选与计算的nonce和工作证明相结合,构造下一个区块并进行发布。

如果网络接受我们的新块,则生成下一个关键块的节点将获得挖矿奖励。该奖励将用于支付在挖矿期间提交份额的参与者。当stratum app注意到最新的关键块已经改变时,stratum回顾BENEFICIARY_REWARD_DELAY顶部密钥块后面的180()时期并找到两个(可配置的)后续挖矿时期。为这些挖矿贡献其shares的矿工将按其贡献按比例支付,同时考虑矿工难度。奖励计划称为PPLNS – 每次付费N股[ https://virtopia.ca/what-is-pplns/ ]。

向矿池操作员和矿工的奖励支付由部署到主网的支付合约执行,地址为[ https://explorer.aepps.com/#/tx/th_2raHdPQ8xtbE6oKh3z1pFmUpyFC5H7ZTBkkNB8TuVydJjwedduL ]。向运营商节点提交合约呼叫交易会调用合约功能并更改奖励参与者的余额。合约的源代码可以在这里看到:[ https://github.com/aeternity/aeternity/blob/master/apps/aestratum/priv/Payout.aes ]

支付频率取决于矿池的客户找到与主网相同难度的shares频率。理想情况下,拥有CUDA硬件的矿工替矿池挖矿,因为这极大地增加了在可接受难度下找到计算结果获得收益的机会。

Aestratum计划进行一些改进,也取决于社区的反馈:

  • 矿工代理(对于有多个挖矿设备的矿工)
  • Aestratum与Aeternity节点的分离
  • 基于Web的简单gui,以获得更好的观察

原文链接:

https://github.com/aeternity/aeternity/blob/v3.3.0/docs/release-notes/RELEASE-NOTES-3.3.0.md

翻译:Mark

知乎专栏:Aeternity

微信公众号:Aeternity社群

社区进群请加微信号:abinble

知识星球:Aeternity

如果你喜欢这篇文章,可在网站底部地址捐赠AE

喜欢 3
or

相关文章

更多

切换注册

登录

忘记密码 ?

切换登录

注册