2023XuperCore开源区块链创新赛

由工信部等单位主办、开放原子开源基金会承办、百度等参与共建的首届开放原子开源大赛正在火热举行中。为了提升我国区块链技术创新能力、推动区块链应用加速落地,百度超级链发起XuperCore开源区块链创新大赛,鼓励开发者组队参赛,大赛总奖金30万元,单奖项最高10万元,更有多位区块链技术专家参与交流指导,奖励丰厚、等你挑战!

开放原子超级链内核XuperCore

开放原子超级链内核XuperCore是百度自主研发的区块链底层技术内核,定位为广域适用、高可扩展、超高性能、高度易用,并且完全自由开放的区块链通用内核框架。基于XuperCore动态内核,您可以根据业务场景快速搭建自己的区块链。XuperCore提供完备和高性能的标准内核组件和引擎实现,全面降低区块链研发成本,实现非常轻量级的订制满足特定场景的区块链业务。基于XuperCore构建的区块链标准发行版XuperChain,在多行业、多场景得到了落地应用验证,已服务1000多家企业。

核心优势

大赛介绍

近年来,区块链产业规模不断扩大,正成为数字经济的重要组成部分。本次开源大赛中,区块链赛道特别设置了技术挑战赛题应用创新赛题,技术挑战赛题共5万奖金,由14个任务组成,先认领、先完成开发即可获奖;应用赛题共25万奖金,按照专业评审团评分角逐一二三等奖。

技术挑战赛

基础任务

1. 将 XuperCore 中 go libp2p 相关仓库升级到较新版本

【详细要求】
            1.目前 XuperCore 中使用的libp2p仓库版本有待升级,提升网络性能以及稳定性。因此需要将 go-libp2p* 等仓库进行升级。
            2.保证数据兼容问题,升级后的新版尽量保证与之前版本兼容,如不兼容应说明不兼容点以及不兼容升级方案。
            3.保证系统稳定性,升级后新版应保证系统稳定性,因此需要选择文档版本 go-libp2p* 以及进行相关功能、稳定性等测试。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 go-libp2p 相关技术。
            3.熟悉 XuperCore libp2p 技术实现。
    

2. 实现动态生成测试网络节点及配置

【详细要求】
            在 XuperChain中增加一个工具,支持生成测试网络以及单个或者多个节点的证书、私钥等。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
    

3. 支持secp256k1椭圆曲线

【详细要求】
            支持使用支持secp256k1椭圆曲线完成签名的生成和验证逻辑。同时修改go-sdk库来支持该功能。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
            3.熟悉ecc签名算法。
    

4. 基于 XuperCore 增加 Raft 共识

【详细要求】
            1.详细描述: 在 XuperCore 中增加 Raft 共识。
            2.保证系统性能以及稳定性。
            3.基于 XuperCore 现有共识接口完成新共识的设计、研发。

            【技术要求】
            1.熟练掌握 golang
            2.熟练使用 XuperChain 相关技术。
    

5. 可配置不出空块

【详细要求】
            1.修改TDPoS和PoA共识,支持可配置不出空块,当有交易时才打包区块。
            2.配置要简单,比如出块间隔为0s时则代表不出空块。
            3.保证系统性能以及稳定性。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
    

6. 节点密钥管理

【详细要求】
            1.目前超级链节点密钥以明文形式存储在磁盘中,可配置为加密存储。
            2.向前兼容明文存储方式。
            3.实现方案可参考以太坊节点密钥管理方式。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
    

7. 合约网关

【详细要求】
            1.支持以http的形式调用智能合约。
            2.支持同步和异步两种形式,需要有回调机制来配合异步上链接口。
            3.支持事件监听和回调功能。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
    

8. 分层密钥管理服务

【详细要求】
            1.基于分层确定性密码学技术实现密钥管理服务。
            2.支持生成密钥、查询密钥、加密、解密、授权等功能。

            【技术要求】
            1.熟练掌握 golang。
            2.有密码学基础,熟悉github.com/xuperchain/crypto
    

9. 使用 C++ 和 Golang 实现ERC777/ERC1155代币合约demo

【详细要求】
            参考ERC777协议基于XuperChain实现合约。

            【技术要求】
            1.熟练掌握 golang。
            2.熟悉智能合约。
    

10. 使用 C++ 和 Golang 实现ERC1155代币合约demo

【详细要求】
            参考ERC1155协议基于XuperChain实现合约。

            【技术要求】
            1.熟练掌握 golang。
            2.熟悉合约。
    

进阶任务

1.升级EVM合约虚拟机

【详细要求】
            1.支持使用官方 ethereum/go-ethereum 完成核心 VM 处理逻辑。
            2.支持以动态链接库方式实现EVM。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
    

2.找到一个XuperChain共识算法漏洞并修复

【详细要求】
            寻找一个现有共识算法的代码漏洞,并修复。

            【技术要求】
            1.熟练掌握 golang。
            2.熟练使用 XuperChain 相关技术。
    

3. 参考现有 crypto 库开发 Rust 语言密码学库

【详细要求】
            使用 Rust 开发密码学库,支持基本功能,保证性能以及安全性。

            【技术要求】
            1.熟练掌握 golang、rust。
            2.熟练使用 XuperChain 相关技术。
    

4. 优化国密SM2 lib库的性能

【详细要求】
            优化XuperChain当前使用的SM2曲线库的实现方案,提升签名和验签速度。

            【技术要求】
            1.熟练掌握 golang。
            2.熟悉SM2签名算法。
    

开放任务

如果你对XuperCore相关项目有更好的功能建议,也可以通过在相应仓库下提交 ISSUE 的形式,提交开放性任务,并在Atomgit的大赛页面,按格式回复你的信息以及你提交的开放性任务,XuperCore大赛评审组将在提交后 3 个工作日内反馈该任务是否通过审核以及对应难度。

作品要求

作品需提交:

参赛流程

  1. 活动报名:点击此处填写相关信息,完成活动报名;
  2. 报名成功后,你可以添加百度超级链小助手微信(XuperChain-help01)加入XuperCore开源创新大赛微信群,所有活动相关信息都会在群中及时同步;
  3. 任务认领及开放性任务提交 a. 任务认领:首先 fork 你想要认领的任务 ISSUE 所在 repo,然后在Atomgit Pinned ISSUE按格式相应回复,完成任务认领;鼓励大家在 ISSUE 下自由组队,完成任务。 b. 开放性任务提交:如果你对XuperCore相关项目有更好的功能建议,也可以通过在相应仓库下提交 ISSUE 的形式,提交开放性任务,并在Atomgit Pinned ISSUE,按格式回复你的信息以及你提交的开放性任务,XuperCore大赛评审组将在提交后3个工作日内反馈该任务是否通过审核以及对应难度;
  4. 完成任务认领或开放性任务通过审核后, a. 基础任务:按照任务要求进行开发即可; b. 进阶任务:i. 按照任务要求在认领任务时 fork 的代码仓库(repo)中新建 RFC(Request for Comments),并对任务进行技术方案设计;ii. 将 RFC 以 Pull Request(PR) 形式提交至任务代码仓库(repo),并按模板发送邮件至 ext_xupercore@baidu.com 提交;iii. 大赛评审组将在每个任务提交的所有有效方案中选择一个最佳方案,确认为本任务的 Leading Developer,并在开发方向上进行一定的指导,完善后的技术方案将会共享给所有任务提交小组,推荐大家基于最佳方案进行相应开发; c. 开放性任务:按照任务要求进行开发即可;
  5. 任务提交:完成项目开发后, a. 你需要在相应任务的代码仓库(repo)中提交 Pull Request(需包含任务说明中的提交内容); b. 并在 Atomgit Pinned ISSUE下按格式回复你任务的 Pull Request 地址,依据参考模板发送提交邮件,正式完成任务提交;
  6. 在任务提交后3个工作日内,XuperCore大赛评审组将对作品进行验收并给出相应反馈。如果该作品符合要求,XuperCore大赛评审组将会及时宣布该任务已被完成并更新活动相关信息,该任务后续不再验收其他提交。

评审规则

完成所选任务并通过XuperCore评审组验收,将可获得对应金额现金奖励。

奖金说明

  1. 技术赛题不少于5万奖金,由14个任务组成,原则上先认领、先完成开发可获得奖金。同一天认领的任务按完成时间确定奖金得主,先完成开发获得奖金。
  2. 中阶任务需要提交技术方案设计,请您在规定时间内提交技术方案,我们将在设计方案中选择最佳方案确定开发者。
  3. 开放性任务奖金视开发者认领和提交情况确定,奖金3000元-5000元不等,由百度单独提供。
  4. 若该任务仅有一个作品提交,未 100%完成但完成部分足够优质,经评审组评审后,可根据完成进度按照对应比例进行现金奖励发放。如任务奖金5000元,完成进度80%,则发放4000元奖金。

其他奖励

  1. 活动中表现优秀的开发者,可获得百度招聘绿色通道
  2. 活动中完成作品提交的开发者,均可获得百度开源证书奖励。

特别说明

活动主办、合作项目单位,以及有机会接触任务背景的员工不参与本次活动。

应用创新赛

中国区块链技术落地应用大致分为两大方向。

(1)区块链作为技术底座赋能价值互联网:数字藏品、元宇宙等基于区块链的新模式正加速发展,创造原生于数字经济的数字内容新消费市场。以去中心化为核心,以区块链为底层技术支撑,由用户掌握数据和资产的下一代价值互联网——Web3.0即将到来成为行业共识。

请围绕区块链在价值互联网的落地应用提交解决方案和实现demo。

(2)区块链与多技术融合赋能产业创新发展:区块链技术融合隐私计算、数字身份等多种技术,聚焦数据可信流转、业务可信协作等方向,充分释放数据要素价值。这类应用包括供应链管理、贸易金融、产品溯源、城市治理等方向,充分发挥区块链在服务实体经济、加快政府数字化转型等方向的作用。

请围绕区块链在赋能实体经济创新发展、公共服务协同等方向的落地应用提交解决方案和实现demo。

请在您的方案中描述:

了解更多区块链创新应用案例,可参考百度超级链精选案例集

参赛流程

  1. 活动报名:点击此处填写相关信息,完成活动报名,报名截止日期为2023年10月31日;
  2. 报名成功后,你可以添加百度超级链小助手微信(XuperChain-help01)加入XuperCore开源创新大赛微信群,所有活动相关信息都会在群中及时同步;
  3. 初赛:11月1日至11月30日,提交PPT 项目设计文档(样式不限,针对项目设计做内容展现),请将PPT作品提交至ext_xupercore@baidu.com邮件并上传至大赛指定仓库2023XuperCoreCompetition。初赛向全社会征集作品,其中优选20%-30%做为复赛作品进行进一步评定。
  4. 提交作品前,请通过百度超级链小助手联系管理员将队伍成员添加为2023XuperCoreCompetition开发者,创建私仓存放作品。
  5. 复赛:12月5日-2024年3月15日,提交应用demo和成果运行演示视频至ext_xupercore@baidu.com邮件并上传至大赛指定仓库2023XuperCoreCompetition,视频要求10分钟内,采取录屏操作演示形式;可搭配项目设计文档进行讲解,视频提交需有参赛队员人像出现。
  6. 决赛:2024年3月底,提交代码实现并进行评审答辩(答辩日期后续公布)。

作品要求

奖项设置(奖池25万元)

奖项 奖金 数量
一等奖 10万元 1名
二等奖 2万元 5名
三等奖 5000元 10名

评审规则

要求 说明 占比
功能性 综合评估作品的完成质量、要求软件功能完备、能稳定运行、易用性较强。 60%
创新性 作品需要为原创应用,对区块链行业有启发性,未参加其他区块链比赛。 15%
实用性 作品必须具有明确的适用场景,能解决区块链业务落地过程中实际问题。 15%
开源 代码开源的项目在评审中将获得一定的比分加成。 10%

1.综合评审:本赛题邀请多位行业专家及高校教授组成区块链赛道评审团,为参赛作品评分,按照公平、公正、公开的原则,并对团队作品完成的质量、软件功能性、可靠性、易用性、创新性等指标进行综合评审,选出一二三等奖。满分100分,在评分相同的情况下,功能性>实用性>创新性>开源。一等奖作品要求代码开源。

2.作品特性:作品必须具有明确的适用场景,能解决区块链业务落地过程中实际问题。

3.实测检验:决赛入围作品将在科学软件开源社区进行推广,评审团综合软件的开源许可证、行业认可度、软件活力、社区支持等指标对作品进行评价。

4.综合评定:最终团队成绩,将在总决赛中的作品答辩环节的综合评分后评出各类奖项。

评审团成员(持续公布中)

赛前必读

凡成功提交作品,可获得百度提供的“XuperCore开源纪念徽章2023”一份,徽章联系小助手发放。

说明

依照开放原子开源基金会与联合承办方百度约定,开放原子开源基金会为本次大赛提供奖金,百度负责赛事运营。XuperCore开源区块链创新赛(含技术挑战赛和应用创新赛)正式开始比赛的最低要求为:报名团队数达到60组、且提交作品数量至少30个;若本次赛题未达到报名团队数或提交作品的数量要求(即报名团队数少于60组,或提交作品数不足30个)、则本赛题可能被延期或暂停处理,届时将由本赛题共建方北京百度网讯科技有限公司向您发出书面通知。

欢迎大家积极报名,预祝大家在大赛中取得优秀成绩!