开源贡献
- 清华大学/北京外国语大学开源软件镜像站 2020 年 10 月至 2023 年 7 月
- 运维 mirrors.tuna.tsinghua.edu.cn
- 校园网联合镜像站 2022 年 1 月至 2023 年 7 月
- 创始人 mirrors.cernet.edu.cn
- OpenSSL linux-riscv 平台 于 2022 年 5 月首次提交,从 2024 年 4 月开始维护
- 提名社区成员
- Linux USB OVER IP DRIVER 于 2021 年 3 月首次提交,从 2023 年 3 月开始维护
- 子系统代码评审
- Rocket Chip 2023 年 2 月至 7 月
- 维护者 chipsalliance/rocket-chip
- QEMU CanoKey 2022 年 5 月至今
- 子系统维护者
- CanoKey 2020 年 12 月至 2023 年 7 月
- 开发者 canokeys.org
- 核心功能:NDEF,OpenPGP 触摸认证策略,FIDO2 Ed25519 支持(ssh ed25519-sk 使用该部分)
- 密码部分:硬件加速的 RSA3072
- 虚拟卡: QEMU, USB/IP, FunctionFS
- OpenRigil:RISC-V 密码学硬件密钥 2022 年 1 月至 2022 年 8 月
- 作者 openrigil.org
- 硬件密码学加速器:可配置的蒙哥马利模乘加速器 RTL
- 特化的密码学库:使用以上加速器的 RSA2048/RSA4096/Ed25519 软件库,RSA4096 使用特别的方法实现
- USB 1.1 外设:USB 1.1 的物理层,控制器与驱动,熟悉嵌入式 USB 栈
- OpenSSH, mtr, chisel, archriscv-packages, nixpkgs, riscv-isa-manual, etc.
- 贡献者
项目经历
- 基于 Chisel 实现 RISC-V 指令集标量密码学扩展 2022 年 1 月至 2022 年 6 月
- 本科毕业论文
- RTL 设计:为 Rocket-Chip 设计的 Zk/Zb 扩展的功能单元,已上游化
- 密码学库:为 OpenSSL 设计的 AES/SM4/SM3 的汇编,已上游化
- 在 AES 上可达到十倍加速比
- Chisel 及相关技术 2021 年 11 月至 2023 年 4 月
- 中科院软件所 PLCT 实验室高级实习生,由刘玖阳(@sequencer)指导
- Rocket-Chip:参见上文的本科毕业论文;同时做了一些 RTL 错误修复和 DevOps 类工作例如客服,修复/优化持续集成(CI)和构建工具。之后辅助设计了标量核与向量核两者的交互界面。再之后为 Google 编程之夏(GSoC)中「Zc 扩展的 RTL 实现」项目的导师
- OpenRigil:参见「开源贡献」一节
- Linux:向 linux-riscv 发送了 Zk/Zb 支持的补丁
- OpenSSL:参见上文的本科毕业论文;也实现了一个使用 RISC-V 向量扩展汇编实现蒙哥马利模乘算法的库和展示了基于该库实现 RSA4096
- FPGA:为 Sipeed/TangPrimer-20K 移植了 Rocket-Chip
- 软件模拟 Hypervisor 扩展:为 SOPHON SG2042 移植了 OpenSBI-H,可能发现了一个 linux-riscv 的 KVM 故障
- 其他贡献过:chisel, riscv-isa-manual, riscv-bitmanip, riscv-plic-spec, riscv-tests, riscv-opcodes, riscv-pk, qemu/target/riscv, NixOS/nixpkgs/mill, riscv-boom, berkeley-hardfloat
- Arch Linux RISC-V 2021 年 9 月至 2022 年 1 月
- 中科院软件所 PLCT 实验室实习生,由肥猫(@felixonmars)指导
课程助教
- 实验物理的大数据方法 2020 夏季学期
- 清华大学工物系课程,主讲教师续本达
- 设计了每日作业,关于 Bash 脚本,常用命令(pastebin 使用,sed,oneliner 构造),Makefile,Python(Numpy,HDF5,Matplotlib),R,SQL,在出题时选择了一些有趣的内容例如 Grover 搜索算法与黑洞吸积盘