开源之夏-week1

在第一周的工作中,我主要完成了开发环境的搭建,包括Windows 11和Ubuntu 22.04 WSL的配置。我尝试编译了SDF相关代码,但因缺少sdfe_api.h头文件导致编译失败。同时,我成功运行了sm_test示例程序,并分析了SDF目录下的文件结构和功能,发现其接口框架完整,但实际算法实现和硬件支持尚未完成。目前,我遇到了外部SDF库缺失和文档不足的问题,下一步计划寻找外部库的来源并进一步熟悉代码。

之后就是在7月11日和k1老师打腾讯会议了解情况:
老师说这个safe_api.h头文件缺少是正常的,因为没有硬件
眼下还是要确定硬件才能开展,可以看到相关接口以及搭好,等待填充。
之后,老师带我总览了项目结构,源码分析……同时老师也给我介绍了铜锁开源库目前在做的工作,以及未来的发展方向。
铜锁作为一个从OpenSSL fork出来的库,其结构还是很相像的,这也就使得我还能顺带了解gmssl和openssl,在这三个库直接相互参照着来。
确定了最终交付目标:

1
2
3
4
5
- 铜锁/Openssl命令行的应用SDF,
- SKF的命令行应用
- SDFAPI的适配
- SKFAPI的适配(真实硬件编译、所有功能测试)
- (待定)软件模拟的SDF/SKF引擎

老师叫我放心这个还是不难的,主要是锻炼过程。
我留意老师着重还给我说了一下那个engine文件夹
(后来学OpenSSL的时候明白了老师用意——”如果你在研究 “怎么让 OpenSSL 跑在国产密码卡上” 或者 “如何用 Intel QAT 把 TLS 握手加速 5 倍”,八成都会先摸进 engines/ 找灵感或直接改代码。“)
这部分后边还是得看看的。
还有就是关于整个大项目怎么构建出来的学习,听老师一讲收获真不少。

一是终于明白了什么叫”Building System” (zj学长曾经跟我提过这个)
二是我找到了如何入手的钥匙,从哪里开始加代码,怎么加,加上了什么调用逻辑……

开心!

另外就是我还需要写文档和测试用例(cool!),相关细节后边会说。
(老师一口纯正东北普通话,好亲切😊)
k1老师好像是开源社区的chef leader吧?看起来好厉害,老师的签名也很霸气:

只有那些疯狂到以为自己才能改变世界的人,才能真正改变世界。

这是我和k1导师的第一次交流。

新增的接口num+1

make update

问号改成具体数字


crypto里边的build.info

每个测试程序都有一个测试入口

基于Master下创建一个新的分支

提交然后pull request


开源之夏-week1
https://43.242.201.154/2025/07/23/开源之夏-1/
Author
Dong
Posted on
July 23, 2025
Licensed under