开放动态库支持中国商用密码算法:SM2、SM3、SM4,同时也支持AES对称加密算法。
下载地址:
当前提供的语言版本:
C#语言版本,其开发环境为:Visual Studio V2013、.NET Framework 4.5
Java语言版本,其开发环境为:NetBeans 8.0.2、JDK 8u45
C/C++语言版本:暂不开放
Qt版本:暂不开放
算法说明
SM2:
- 支持P-256、P-384、P-521椭圆曲线
- 实现公钥加密算法、数字签名算法、密钥交换协议
- 实现基于椭圆曲线加密算法的软件授权码生成及校验
// 使用中国国家密码管理局推荐P256椭圆曲线
SM2 sm2 = new SM2();
SM2 sm2A = new SM2(SM2.EC256[0], SM2.EC256[1], SM2.EC256[2], SM2.EC256[3], SM2.EC256[4], SM2.EC256[5]);
// 使用美国国家标准与技术研究院推荐P256椭圆曲线
SM2 NISTECP256 = SM2.CreateInstance(256);
SM2 NISTECP256A = new SM2(SM2.NISTEC256[0], SM2.NISTEC256[1], SM2.NISTEC256[2], SM2.NISTEC256[3], SM2.NISTEC256[4], SM2.NISTEC256[5]);
// 使用美国国家标准与技术研究院推荐P384椭圆曲线
SM2 NISTECP384 = SM2.CreateInstance(384);
SM2 NISTECP384A = new SM2(SM2.NISTEC384[0], SM2.NISTEC384[1], SM2.NISTEC384[2], SM2.NISTEC384[3], SM2.NISTEC384[4], SM2.NISTEC384[5]);
// 使用美国国家标准与技术研究院推荐P521椭圆曲线
SM2 NISTECP521 = SM2.CreateInstance(521);
SM2 NISTECP521A = new SM2(SM2.NISTEC521[0], SM2.NISTEC521[1], SM2.NISTEC521[2], SM2.NISTEC521[3], SM2.NISTEC521[4], SM2.NISTEC521[5]);
SM3:
- 实现SM3密码杂凑算法
- 实现HMACSM3消息验证代码
SM4:
- 运算模式支持:ECB、CBC、CFB、OFB、PCBC、CTR、ECBCTS、CBCCTS
- 填充类型支持:PKCS7、ANSIX923、ISO10126、ISO7816、Zeros、None
版权声明:本文为jhqin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。