在OpenSSL的官网上可以看到三个分支,分别是openssl-、openssl-fips-、openssl-fips-ecp-。这三者的区别如下。
分支 | 内容差异 |
openssl- | 完整版的OpenSSL |
openssl-fips- | 把密码函数库单独抽出来,做成一个满足FIPS 140-2安全一级的密码模块。 |
openssl-fips-ecp- | 基本同openssl-fips-,但是删除了二元域的椭圆曲线,只保留了P元域的,所以是ECP。 |
比如,对比openssl-fips-2.0.16和openssl-fips-ecp-2.0.16,可以发现fips-ecp的版本,即openssl-fips-ecp-2.0.16,少了一堆椭圆曲线二元域实现的C代码文件,具体缺少文件如下。
- crypto\bn\asm\armv4-gf2m.pl
- crypto\bn\asm\c64xplus-gf2m.pl
- crypto\bn\asm\s390x-gf2m.pl
- crypto\bn\asm\x86_64-gf2m.pl
- crypto\bn\asm\x86-gf2m.pl
- crypto\bn\bn_gf2m.c
- crypto\ec\ec2_mult.c
- crypto\ec\ec2_smpl.c
其余文件则完全相同。