国密算法库_SM2_SM3

材料准备

java算法库
https://github.com/hyfree/SM2_SM3_SM4Encrypt
https://github.com/PopezLotado/SM2Java

国家密码管理局关于发布
《SM2椭圆曲线公钥密码算法》公告
http://www.oscca.gov.cn/sca/xxgk/2010-12/17/content_1002386.shtml

国家密码管理局关于发布《SM3密码杂凑算法》公告
http://www.sca.gov.cn/sca/xwdt/2010-12/17/content_1002389.shtml

说明

上面的两个算法库还是可以使用的,不过还是存在几个问题:

1.BigInteger在直接处理成16进制时会溢出一位,

关于这个问题stackoverflow有说明
https://stackoverflow.com/questions/4407779/biginteger-to-byte

2.国密参数和USERID

项目中使用的国密可能不是推荐的参数,需要改成标准参数
另外USERID需要做转换工作,基于ASCII编码

关注的项目

支持国密SM2/SM3/SM4/SM9/ZUC/SSL的密码工具箱
http://gmssl.org/

猜你喜欢

转载自www.cnblogs.com/hyfree/p/11873147.html