OpenSSL项目1.1.1添加了许多新特性

转:https://www.jianshu.com/p/a1c3ee349345

OpenSSL项目最近6个月添加了许多新特性, 包括对中国SM2/SM3/SM4算法的支持:

SM2椭圆曲线:https://github.com/openssl/openssl/pull/4793

SM3哈希摘要:https://github.com/openssl/openssl/pull/4616

SM4对称加密:https://github.com/openssl/openssl/pull/4552

参考: 中国国家密码管理局制定的商业密码算法标准

《GM/T 0006-2012 密码应用标识规范》定义国密算法OID标识

《GB/T 32907-2016 SM4分组密码算法》(原GM/T 0002-2012)

《GB/T 329??-2016 SM2椭圆曲线公钥密码算法》(原GM/T 0003-2012)

《GB/T 32905-2016 SM3密码杂凑算法》(原GM/T 0004-2012)

下载源码, 编译, 以及验证步骤

下载源码

https://www.openssl.org/source/openssl-1.1.1-pre4.tar.gz

https://www.openssl.org/source/openssl-1.1.1-pre5.tar.gz

解压缩

tar xzvf openssl-1.1.1-pre4.tar.gz

tar xzvf openssl-1.1.1-pre5.tar.gz

编译步骤

cd openssl-1.1.1-pre5

./config

make

本地安装(可选步骤)

sudo make install

配置LD_LIBRARY_PATH并检查openssl可执行程序版本号

$ export LD_LIBRARY_PATH=`pwd`

$ ./apps/openssl version

OpenSSL 1.1.1-pre5 (beta) 17 Apr 2018

检查 SM3 哈希校验和

$ echo -n "abc" | ./apps/openssl dgst -SM3

(stdin)= 66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0

检查椭圆曲线是否包含SM2

$ ./apps/openssl ecparam -list_curves | grep SM2

  SM2      : SM2 curve over a 256 bit prime field

检查对称算法

./apps/openssl enc -ciphers

-sm4

-sm4-cbc

-sm4-cfb

-sm4-ctr

-sm4-ecb

-sm4-ofb

查找SM4对称加密API接口文档

???

SM4-自测试数据

测试SM4-ECB电子密码本模式, 选取AES-128-ECB作为参考

https://github.com/liuqun/openssl-sm4-demo/

你可能感兴趣的:(OpenSSL项目1.1.1添加了许多新特性)