点击打开看目录
在这个类别中,你可使用 Substrate 构建一个自定义区块链的挑战。在不久的将来,你的链将有能力接入 Kusama 中继链以实现互操作性和即插即用的安全性。下面的想法是为了能给你一些启发。我们希望你发挥创意,构建你认为对 Substrate 生态系统的其他建设者最有用的定制链!
游戏可以定义为具有附加预定义规则的两个或多个参与方之间的状态变化。我们对理想游戏链的设想并不是它能够支持缓慢的双人回合制游戏(这个问题已经得到解决),而是一个足够抽象的链,可以适用于从国际象棋和战舰到几乎实时的、有许多玩家在同一世界的 rogue-like 游戏。这类产品理想上将是一个抽象链,开发者/企业家可以在这个链上将游戏无缝地投放到多元宇宙中,以此来建立一个具有体育预订和电子竞技功能的锦标赛平台,为游戏筹集资金,并使得游戏开发者能够得到公平的分配。其功能可以包括以下所有或部分特性:
- 执行多令牌标准(ERC1155)。
- ERC1155令牌的交换或互换协议(例如修改为ERC1155)。
- 链上/链下(例如IPFS)的元数据部署和托管工具。
- 稳定币集成(Acala)。
- 用于以JS/Unity为基础的游戏的交易和集成API。
尝试使用免费的tx,在特定限制下的免费tx,或者基于玩家声誉的免费tx。构建一个web3游戏的概念证明,它不会破坏中心化游戏的感觉,而是坚持玩家、物品和信息,以实现虚拟角色的真正所有权。
例子:
- NFT平行链例子
- Substrate收藏品例子
- Substrate游戏例子
现有的游戏链例子:
去中心化金融是对传统金融服务的重新构想,其核心是区块链的信任最小化。DeFi的其中一个例子就是贷款和有息头寸,例如 MakerDAO 的抵押债务头寸系统。另一个例子就是合成资产协议,它允许用户创建稳定币头寸或衍生品。对 Kusama 来说,通过创建优化的执行,DeFi可以单独存在于它自己的平行链中,或者通过在底层原语之上组成协议并使用XCMP实现互操作性,从而跨平行链存在。
稳定币是波动性较低的加密货币,通常与参考资产(如美元)的价值挂钩。通过使用算法稳定币设计,现在有不同的设计来执行稳定币,如 Schellingcoin 或合成资产设计。一个 Kusama 稳定币可能是类似的其中一个或完全原始和新的东西。
这个类别种的其他想法包括一个稳定币储蓄帐户(例如 Dharma)、一个用于 DeFi 的保险层(例如 Opyn)、一个B2B支付平台(例如 Veem)、一个快速支付链,或是一个再生的订阅支付执行,或一个可以与任何监护方案集成的没有监护的互换过程,这个过程允许用户互相交易而无需放弃对第三方的监管。
现有的 DeFi 链例子:
区块链本质上就是透明的,所有的交易历史是对所有人可见的。一些应用程序会需有更强的隐私保护。在Kusama上,可以通过使用zkSNARK、STARK、环形签名等链上隐藏信息的方法来集成隐私。通过设计隐藏节点或验证人身份,也可以在协议或网络级别创建隐私。一个项目在这里能包含的最小功能就是让用户能够在Kusama或Polkadot生态系统中私下交易价值。不同的设计是有可能的,但最有用的设计会是一个平行链,它允许使用任意Substrate令牌来处理私密交易。其功能可以包括以下所有或部分特性:
- 机密交易: 具有在两个账户之间转移令牌而不透露转移的数量或类型的能力,即使是涉及到的交易地址仍然可见。
- 匿名交易: 具有在两个账户之间转移令牌而不透露涉及地址的能力,即使转移令牌的数量或类型是公开的。
- 保密账户: 帐户余额未知,但也有一个查看秘钥允许指定用户查看这个帐户的余额,但不能查看传入或传出的交易。这与ZCash的z地址是类似的。
参考例子:
一个DAO,或去中心化自治组织,是一个区块链应用程序,它允许社区成员在DAO中的某些决策上共同达成协议。Aragon是Ethereum世界中最著名的DAO框架。它允许某个人点击几下鼠标就可以启动一个DAO,同时添加入新的应用程序(例如不同的投票或融资模式),以及允许成员发起对执行行为的投票,不仅是在DAO内部执行,还有DAO对外的智能合约(即DAO可以对DeFi投资,从而赚取会员费利息)。一个Kusama的DAO链允许使用具有开箱即用的基本模块的模块化DAO框架,并且允许用户轻松地将自己的定制模块接入到DAO中。这是否能更好的通过智能合约或需要治理的WASM模块来完成是由开发人员决定的,但一个DAO的本质是能够以编程的方式与其他在同一链中的DAO互动的能力——治理的互操作性是一种新的思考数字国家状态的方法。
示例:
一个内容或存储链的重点将会是方方面面的,包括从去中心化的Github的版本和获取个人数据的所有权,到托管不可阻挡、不受审查的网站。内置隐私的社交网络、去中心化的电子邮件平台、下一代的种子,所有的这些都应该通过与类似IPFS或Storj这样的协议集成一个Substrate链而成为可能。一个Kusama存储链将证明去中心化存储的真实需求,而不仅仅是为了存储而存储。或者,它可以是一个抽象链,用于基于费用的读/写,而其他人可以像连接AWS S3 bucket一样轻松地连接它。这可能包括与IPFS、Storj等的集成。
示例:
- SubSocial
- Redis 风格的数据存储和命令
想法:https://github.com/substrate-developer-hub/hacktoberfest/issues/27
参考例子:
想法:https://github.com/substrate-developer-hub/hacktoberfest/issues/27
- 公众投票链
- 计算链(例如Golem)
- 许可链
- 预测市场
- 联邦预言机
从构建之初,探索和试错就是区块链应用与生具来的特性,目前成熟的区块链应用大多是以公链的形式存在,它们就好像一个“封闭”的系统,与现实世界的交互能力极弱。现存的信息系统,通过采用联盟链的方案,将公开、透明的逻辑引入到 Web2.0 的世界,不仅可以满足用户的需求即足够的隐私和数据主权,也可以满足监管的要求。
Substrate 是一个卓越的区块链开发框架,可以根据需求,自由地定制联盟链的开发。目前已经支持的联盟链特性包括,
- 许可制的验证人网络
- 许可制的节点网络连接 (有个 Substrate 教程关于这题目)
- 多级管理员账户
- 等等
还有一些模块目前还不完善,欢迎参加者集思广益,如:
- 国密标准的集成
- 与法定货币的集成应用
联盟链适用的业务领域有,
- 票据流转
- 供应链金融
- 在获得用户授权情况下的企业间数据共享和交易
- 提升政务系统的透明和效率,如房产信息登记和交易、婚姻登记、企业注册和税务
- 建立开放的社会正义、正能量行为、公益行动的激励机制
参赛的团队可选择感兴趣的联盟链所依赖的技术要点、特性或者应用场景,基于 Substrate 进行开发和完善,也欢迎提出更多有趣、可行、改善民生的想法。
智能合约链是用于小段代码的沙箱执行环境,其他开发人员可以不经许可地部署这些代码。Substrate提供了一个基于Wasm的智能合约模块,Kusama肯定需要执行这个模块来部署一个活跃的平行链。一些具体的想法可以包括使用其它语言的智能合约,例如汇编脚本,特别是那些已有工具链的语言。在你看来,一个完美的智能合约链是什么样的?
参考例子:
及如:
- 基于 EVM 合约的应用
- 基于 Wasm 合约的应用
目前,编写自动化测试还不是很直接-例如为 Truffle、Ethereum 中的 Embark 可用的对象-特别是以 Substrate 为基础的链上的特定区块链功能编写。一个测试套件允许在套件中植入测试钱包,并以确定性的方式执行状态测试。输出应该是一个完整的类别,包括问题和如何修复它们的建议(如果已知修复方式)。理想情况下,错误修复过程应该是一项众包工作。在此之前,未被发现的错误将自动转化为问题和配方中央存储库中的新类别。
参考例子:
我们想到了从以下角度思考,但如果你有其他视角,别犹豫,用你的行动告诉我们吧。
-
区块块可视化工具
建立一个有趣、深刻,和美丽的方法来可视化 Polkadot 中继链增长,允许简单的区块探索、最终化、验证人数据、临时叉,或其他与Polkadot上的区块生产相关的信息。
-
区块探索者
如果你有一个很棒的方式来探索历史区块链状态,现在就是你的向世界展示它的机会。
-
验证人可视化工具
用你的动态展示验证人信息的方法来打动我们吧——例如它们的身份信息、地址、年代节点,或它们生成了哪些区块。您可以根据生成区块的数量或它们作为活跃验证人组的时间长度来对它们进行排序。发挥你的创造力吧!
-
提名可视化
在Polkadot中,验证人通常是由其他人提名从而进入活跃验证人组的。我们将其想象成一个巨大的图,其中一些节点是验证人,更多的节点是提名人,以及提名人和他们选择的验证人之间的连接。请分享您的观点,告诉我们如何将现有提名生态系统的状态展示给用户。
-
令牌分布图
向我们展示如何展示Polkadot令牌在不同帐户之间的分布方式。
-
账号信息可视化工具
发挥你的创造性,在一个页面上提供有关用户的相关信息——任何有关链上身份、持有令牌、提名对象的信息,如果他们正在验证,可以提供帐号年龄、之前的投票、提交的提案,或者任何其他关于个人账号的信息。
-
一个中继链时钟
也许它在每次一定数量的区块经过的时候就会发出嘟嘟声,或者每100个区块就会有一只布谷鸟跳出来?有更好的主意吗?
-
吞吐量可视化工具
展示中继链上正在处理的交易数量,以及一旦启动之后,在平行链上正在处理的交易数量。或展示交易池中有多少交易。由你决定。
-
Burner 钱包
在开始使用该应用程序时,你只需输入一次密码。在接下来的会话中,你就可以在不输入密码的情况下与该应用程序进行交互。对用户体验的巨大改进。一个Burner钱包可以在本地存储中获取一个私钥,或者通过GET创建一个临时钱包。
灵感:
在这个类别中,我们希望你能突破可能的极限。要有创造力、打破事物、让我们笑、让我们哭。测试套件、可视化过程、Wasm互操作性以及介于两者之间的所有符合这个类别的东西。用你的才华来震惊我们吧!