layout | title | permalink | redirect_from | |
---|---|---|---|---|
page |
关于我 |
/about/ |
|
- Email: [email protected]
- GitHub: https://github.com/keroro520
- Blog: https://keroro520.github.io
- 岗位偏好: 公链基础设施开发、ZK 基础设施开发、ZK 应用开发
- 工作方式: 远程工作
- 技术栈: Rust, Golang, Nervos CKB, Optimism, RISC Zero, StarkNet
在这段休息期间,我探索了 dApp 全栈开发和零知识证明(Zero-knowledge)。
Zero-knowledge 理论方面,研习 PLONK 和 STARK,以安比实验室的两门课程 PLONK course 和 STARK & FRI course 为线索,广泛学习理论知识。
Zero-knowledge 实践方面,研习 StarkNet 和 Risc Zero 的基础设施和 ZK 应用开发。
dApp 应用方面,开发了几个玩具项目,只有 CKB Video Spore Protocol 是成型的项目。
Public Project | Description |
---|---|
zk-Puzzle Chain | A Simple Chain, Integrating RISC-Zero's zkVM for PoW |
LC3 zkVM | LC3 Zero-Knowledge Virtual Machine |
CKB Video Spore Protocol | An Extension of CKB Spore Protocol |
CKB Time Oracle | A Time Oracle on CKB |
opBNB 是一个 Optimistic Rollup L2,以 BSC 为 L1,基于 OP Stack 开发。
对于 opBNB 而言,我的主要工作是基于 OP Stack 做区块链的定制开发,并维护 opBNB 的测试网和主网。此外,我也参与了 opBNB 的相关基础设施的开发,包括但不限于:opBNB bridge, high-available sequencers。
我还发掘到一个 Optimism 的智能合约的重要的 bug,参见 bnb-chain/opbnb#114 。
Public Project | Description |
---|---|
opBNB | opBNB node implementation |
opBNB Coordinator | opBNB Coordinator ensures that there will be one and only one instance of Optimism sequencer is producing blocks at any given time |
2022.04 ~ 2022.12 | 秘猿科技 | Nervos Godwoken
Godwoken 是一个 Optimistic Rollup L2,以 Nervos CKB 为 L1,兼容以太坊生态。
作为 Godwoken 核心开发,我的主要工作是开发 Godwoken Core,这是一个兼容以太坊接口的节点客户端。除了节点客户端,我也参与了 Godwoken 的合约 和以太坊兼容层 godwoken-web3 的开发。
使用 Rust 开发节点、用 C 开发合约、用 TypeScript 开发对外兼容层和工具链,这次的“全栈”经历让我对“全栈”有了浓厚的兴趣。
Public Project | Description |
---|---|
Godwoken | Godwoken node implementation |
Godwoken OS | Godwoken Contracts |
Godwoken Web3 | Godwoken Gateway, Compatible Ethereum API |
Godwoken Kicker | One line command to start a local network of Godwoken |
2019.03 ~ 2022.03 | 秘猿科技 | Nervos CKB
CKB 是一条无需许可公链,采用 NC-MAX 共识、UTXO-based 编程模型、自研 CKB-VM 虚拟机、支持智能合约。更多信息请参考 nervosnetwork rfcs。
这是我主要的任职经历。作为 CKB 核心开发,虚拟机和存储引擎,CKB 的各个模块我都有深度参与,包括交易池、p2p 网络等。除了常规开发工作,也主要负责了 CKB 的自动化测试和运维,这使得我的技能树更全面,也得以从多个视角去观察 CKB。加入这么一个技术氛围浓厚的团队,我感到非常幸运。在这里,我们从头构建一条独特的公链,这是非常难得的机会。
还想再补充一句,从头构建一条公链,除了在协议层要仔细设计,在工程上也要考虑仔细斟酌性能和安全,比如 p2p 网络的安全敞口、交易池的性能等。因此,高效的自动化测试非常重要,能帮助发掘潜在的安全风险。
Public Project | Description |
---|---|
CKB | CKB node implementation |
CKB Integration Test | CKB integration test suite |
CKB Test Suite | CKB test suite |
CKB Bench | CKB benchmark tool |
CKB Analyzer | CKB network crawler and data visualization |
CKB CLI | CKB command line interface in Rust |
2018.09 ~ 2019.03 | 秘猿科技 | CITA Team
CITA 是一条联盟链,采用 BFT 共识、EVM 虚拟机、微服务架构。我的主要产出是重写了 executor 的调度、实现了部署链的脚本 cita.sh,以及在此期间学习了 Rust 和区块链,研究了 Plasma。
NEFS 是一个可扩展、高性能的 KV 文件系统,以 Golang 为主要编程语言,采用 PacificA 共识框架。
我的职责是开发分布式对象存储系统 NEFS。
2015.03 ~ 2018.01 | 又拍云 | 分布式存储(网关)
以 Elixir 和 Erlang 为主要编程语言。整个系统的难点是保障数据一致性,即虽然各类信息分别存储在不同的系统,但用户观测到的文件元数据、块数据、索引信息要求是一致的。
又拍云推崇 DevOps,所以我除了日常开发、规划项目外,还重度参与了监控、部署、故障处理等运维工作。
Project | Description |
---|---|
文件元数据存储系统 | Kafka 分发、PostgreSQL 存储、Consul 服务发现 |
文件块数据存储系统 | 基于 Riak 改造 |
文件索引数据存储系统 | 基于 Riak 改造 |
文件服务网关 | 使用 Elixir 实现的 HTTP 服务器 |
- 本科: 南京邮电大学,信息安全专业
- [算法] 高中获 “全国青少年信息学奥林匹克联赛 NOIP” 一等奖
- [算法] 2014 年 ACM 亚洲区域赛陕西邀请赛银牌
- [算法] 本科一年级时获 “2012南京邮电 ACM 程序设计竞赛” 第一名
- [社团] 本科二年级在校科协开设 Linux 课程
- [社团] 本科二年级在校科协开设 Functional Programming 课程
- [兴趣] 对语言设计和编译原理感兴趣,用 C 语言实现了 Scheme 语言 的解释器 Froe