2020年5月,æternity开发社区宣布Superhero.com正式上线。Superhero.com是一个真正去中心化的社交打赏平台,旨在为内容创作者及慈善事业提供支持,且消除了第三方中介。
这也就意味着无第三方收取佣金,且内容创作者无需进行KYC即可接收小费!
那么它真有这么完美吗?我们可以肯定地说,Superhero平台绝无任何隐藏缺点!所有组件的源代码都在GitHub上开放。
平台如何运作 ? 背后是什么原理 ?
普通用户通常并不会注意到平台背后的工作原理。本文将对工作原理进行深入探讨,并解释为什么æternity区块链非常适合构建Superhero这样的平台。
步骤 1 —— Superhero钱包: 打赏
用户可使用Superhero钱包对URL直接进行打赏。为了能够进行打赏,用户需要拥有足够的AE代币以支付打赏小费及(低廉的)交易费用。
当用户确认要执行打赏操作时,智能合约将会执行打赏功能,并保存小费,直到符合条件的内容发布者申领。
使用ÆNS(æternity命名系统),你可以轻松查找小费合约的地址。比如,你可以使用ænalytics查找superhero.chain指向的合约地址。
步骤2 —— Superhero钱包: 小费申领
发布者(或符合条件的接收者)使用Superhero钱包申领某个URL上的小费。此时,Superhero官方后端将代表用户执行所需操作。发布者无需购买AE代币即可申领小费。
注意:
·为了符合条件,申领人需要在URL的html中添加Superhero钱包的æternity地址(ak _…)或ÆNS域名(* .chain)。以下为示例,在我们的网站标题中添加ÆNS域名:
·在Twitter或GitHub的个人主页中,接收方可以在简介中添加æternity地址(ak _…)或ÆNS域名(* .chain)。
·以下步骤(本文以Superhero后端为例)也可以由其他任意用户“手动”执行。其他用户也可通过提供合格用户的地址,代表该用户申领小费。这实际上也是Superhero后端可执行的操作。Superhero钱包将用户地址提供给Superhero后端,然后Superhero后端代表用户申领小费。
步骤2.1 —— Superhero后端:预 申领
Superhero后端接收Superhero钱包发来的地址及当前的URL,接着调用提供此信息的小费合约的pre-claim(预申领)函数。
步骤2.1.1 —— 小费 合约 :查询 预言机
小费合约调用预言机合约的query_oracle(查询预言机)函数。
步骤2.1.2 ——预言机合约 :查询受信任的 预言机
预言机合约管理着一系列受信任的预言机,并对每个预言机执行实际查询。
步骤2.1.3 —— 多个 预言机 :找到地址时响应
每个受信任的预言机都运行轮询服务,如果收到请求,则执行逻辑以确定所提供URL的html是否包含了预期地址。只有在找到预期地址时,预言机才会响应。
步骤2.2 ——Superhero 后端: 申领
只有当小费合约的check_claim函数调用成功时,此操作才会执行。由于check_claim(检查申领)函数无状态,因此Superhero后端使用的aepp-sdk-js则会自动执行一个dry-run(试运行)调用。
如此一来,Superhero后端无需支付任何费用就可以检查pre-claim函数是否成功。check_claim函数的返回值类型为success_claim,并包含属性success (bool),account (address) 及percentage (int)。
创建类型为success_claim的响应值逻辑在预言机合约(分析预言机响应)中执行。
只有当check_claim函数的试运行调用返回属性success为true的值时,才会执行小费合约的claim(申领)函数。
步骤2.2.1 —— 小费 合约 :检查 允许
在执行实际支付之前,小费合约需要询问预言机合约是否允许给定地址接收claim函数中的小费。
其幕后逻辑与调用check_claim函数时Superhero后端触发的逻辑类似。此时将执行“真实交易”,因为claim函数有状态。
值得注意的是,该逻辑要求50%以上的预言机响应预期地址。否则支付将不会被执行!
步骤2.2.2 —— 小费 合约 : 支付
当上一步得到允许后,且URL的小费金额大于零时,小费合约将执行支付,claim函数所拥有的地址将收到小费。
Philipp Piwowarsky的Superhero 讲解视频
常见 问题 解答
·这个平台真的是 免费 的 吗?
是免费的!
·这跟Brave打赏 系统有什么区别?
Brave打赏系统目前还未实现真正的去中心化。它最大的问题在于,发布者需要在Uphold上创建一个帐户,并执行了KYC后才能接收小费。然后这些小费还将按月打入发布者的Uphold帐户中。由于交易在区块链上是不可追踪的,因此我们不能100%确保一切顺利。相比之下,在Superhero中,小费直接被发送到æternity区块链的智能合约中,且发布者可以立即查看或申领。这样一来,哪些URL被打赏,以及小费被申领后,哪些地址收到了小费等情况就是完全公开的。
· 注意:
我们仍然是Brave浏览器的忠实粉丝。Brave和Superhero是相辅相成的,你可以同时使用这两种打赏系统来发送和接收小费!
· 我可以 打赏任意 公共 URL 吗?
可以的。
· 我 该 如何 参与 ?
访问https://superhero.com,并遵循教程进行操作。
100%开源
Superhero在GitHub上是100%开源的。可查看以下存储库:
·GitHub - aeternity/tipping-contract
包含涵盖打赏相关功能的智能合约逻辑,并保存所有小费,直到小费被申领
·GitHub - aeternity/tipping-oracle-service: Superhero tipping oracle service
包含管理预言机、处理预言机查询请求以及预言机响应,并检查地址是否符合申领某URL小费的资格的智能合约逻辑
同时还包含预言机的服务器逻辑
·https://github.com/aeternity/tipping-community-backend
包含涵盖Superhero平台内所有操作的后端逻辑
例如申领端点就是由Superhero钱包进行调用以进行小费申领,因此终端用户无需支付任何交易费用即可申领小费
·GitHub - aeternity/superhero-utils: Superhero Tip button widget for creators
Superhero打赏按钮的源代码,可嵌入你的网站中
·GitHub - aeternity/superhero-wallet: Superhero wallet
Superhero官方钱包的源代码
·GitHub - aeternity/superhero-ui: Superhero UI
Æternity ——Superhero 区块链!
Superhero平台构建于æternity区块链,它是展示æternitys众多强大功能如何利用的首个去中心化æpp。
Superhero平台使用的功能
Superhero平台使用了æternity的以下功能。
ÆNS
发布者可以使用æternity命名系统,在其网站或社交媒体主页(如Twitter或GitHub)上添加* .chain域名。一个域名可以有无数的pointer(拥有不同键),协议中定义了以下pointer键:
·account_pubkey
·contract_pubkey
·oracle_pubkey
·channel
举个例子,命名系统可直接将AE代币发送到SpendTx中的域名。只有当设置了account_pubkey,且协议确定地址能够发送代币后,此操作才能成功。
预言机
预言机在æternity中为一级工具,也就是它们已内置于核心协议中。开发人员无需开发定义应如何处理预言机查询和响应的合约。Sophia(æternity的智能合约语言)提供了注册预言机以及与预言机进行通信的内置方法。
智能合约
æternity添加了一种类似于OCaml函数式语言的新智能合约语言Sophia。Sophia语法与Reason的最为相似。与大多数其他智能合约区块链有所不同,æternity不再使用EVM(以太坊虚拟机),并认为AEVM(EVM修改版)未来将会过时。
于是æternity开发了FATE,它是一种类型安全的高级虚拟机,与相似的EVM合约相比,该合约的存储安全高达90%。
附加功能(Superhero平台未明确使用)
Æternity提供的出色功能众多。我们建议每个人都可以前往æternity官网以了解有关æternity的更多信息。接下来说说æternity如何解决当前的可扩展性问题。
Bitcoin-NG( 链上扩展性方案 )
除了上述功能外,æternity还致力于解决现有的可扩展性问题,并且它还是首个实施Bitcoin-NG共识协议的区块链。使用Bitcoin-NG,æternity每秒最多可处理约116笔交易(在链上)。
状态通道(链下 扩展性方案 )
æternity为提高可扩展性而引入的第二种解决方案称为状态通道。状态通道的原理在于,交易双方开启一条通道来存放交易资金,在此通道开放之后,交易双方可以以安全且去信任的方式执行交易,而无需借助区块链(在链下)。
https://www.weibo.com/tv/v/J110wp0pr?fid=1034:4502420752105476
通道开启后,仅在以下情况下使用区块链:
·当某一方有欺诈行为时,为解决纠纷
·关闭通道
·存入更多资金
状态通道可能是æternity最强大的一个功能,当然它也是核心协议的一部分。比如说,在以太坊中,有许多项目想通过使用智能合约来提供状态通道解决方案。2019年8月,多个状态通道项目联合设计且公布了状态通道的统一规范标准StateChannels.org。
Æeternity发布了自己的状态通道参考实现及核心协议。虽然团队仍有大量工作待完成(如使状态通道在手机上可用),但目前基础已经奠定好,状态通道目前已可使用!
欢迎打赏 !
如果你喜欢本篇文章,且拥有Superhero钱包,欢迎给我们打赏,我们将不胜感激!
在此表示衷心感谢!
原文:https://kryptokrauts.com/log/superhero-a-truly-decentralized-social-tipping-platform
知乎专栏:Aeternity
微信公众号:Aeternity社群
社区进群请加微信号:abinble
知识星球:Aeternity