开源实习是欧拉开源社区针对高校学生推出的线上实习,让学生在真正的开源环境中提升实践能力,深度参与开源社区贡献。访问实习官网了解详情:https://www.openeuler.org/zh/internship

毕昇JDK基于OpenJDK开发,是一款高性能、可用于生产环境的OpenJDK发行版。BGMProvider是为毕昇JDK生态提供国密TLS协议Java实现,它包括 jca、jsse、tomcat-adaptor等模块。目前BGMProvider jca模块实现的国密相关算法依赖于bouncycastle。为了将来更好地扩展,需要将BGMProvider和bouncycastle解耦,并且在BGMProvider上实现国密相关算法。基于上述背景,毕昇JDK发布了4个实习任务,欢迎在校学生积极申请参与(可以选择申请国密算法实习任务中的一个或多个)。

实习任务


任务1

在BGMProvider中使用Java实现SM4分组密码算法

【需求描述】

使用Java语言实现SM4分组密码算法;

实现SM4算法的功能测试用例;

【产出标准】

实现SM4算法功能测试用例,确保测试用例覆盖场景完全;

保证原本BGMProvider提供的测试用例通过;

符合Java语言的代码规范;

【任务链接】

https://gitee.com/src-openeuler/openjdk-1.8.0/issues/I5NCD2?from=project-issue

任务2

在BGMProvider中使用Java实现SM3withSM2数字签名算法

【需求描述】

使用Java语言实现SM3withSM2数字签名算法;

实现SM3withSM2算法的功能测试用例;

【产出标准】

实现的SM3withSM2算法功能测试用例,确保测试用例覆盖场景完全;

保证原本BGMProvider提供的测试用例通过;

符合Java语言的代码规范;

【任务链接】

https://gitee.com/src-openeuler/openjdk-1.8.0/issues/I5NCBF?from=project-issue

任务3

在BGMProvider中使用Java实现SM3/HmacSM3国密算法

【需求描述】

使用Java语言实现SM3密码杂凑算法,并且编写功能测试用例;

使用Java语言实现HmacSM3算法,并且编写功能测试用例;

【产出标准】

实现SM3功能测试用例,确保测试用例覆盖场景完全;

实现HmacSM3功能测试用例,确保测试用例覆盖场景完全;

保证原本BGMProvider提供的测试用例通过;

符合Java语言的代码规范;

【任务链接】

https://gitee.com/src-openeuler/openjdk-1.8.0/issues/I5NC9I?from=project-issue

任务4

在BGMProvider中使用Java实现SM2公钥加密算法

【需求描述】

使用Java语言实现SM2公钥加密算法;

实现SM2算法的功能测试用例;

【产出标准】

实现SM2算法功能测试用例,确保测试用例覆盖场景完全;

保证原本BGMProvider提供的测试用例通过;

符合Java语言的代码规范;

【任务链接】

https://gitee.com/src-openeuler/openjdk-1.8.0/issues/I5NC6J?from=project-issue

单击此处查看Compiler SIG 7月份发布的实习任务


实习时间

开源实习将在社区长期进行,实习申请通过后即可开始实习,实习协议期为6个月,期间时间可自由分配,满60个实习积分并获得导师认可后即可获得实习证明。

报名资格

年满18周岁高校学生,无专业年级限制。

平均每周能投入10小时以上的时间。

请移步实习官网查看报名步骤。

Compiler SIG 介绍

Compiler SIG 专注于编译器领域技术交流探讨和分享,包括 GCC/LLVM/OpenJDK 以及其他的程序优化技术,聚集编译技术领域的学者、专家、学术等同行,共同推进编译相关技术的发展。

相关链接:

Compiler SIG实习任务合集

Compiler SIG 详情:https://www.openeuler.org/zh/sig/sig-detail/?name=Compiler

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐