开源之夏-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 |
|
老师叫我放心这个还是不难的,主要是锻炼过程。
我留意老师着重还给我说了一下那个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