crypto-gmsm国密算法库

一、开发背景

crypto-gmsm国密算法库是国密商密算法(SM2,SM3,SM4)工具类封装,国产密码算法(国密算法)是指国家密码局认定的国产商用密码算法,目前主要使用公开的SM2、SM3、SM4三类算法,分别是非对称算法、哈希算法和对称算法。

二、功能

crypto-gmsm包含以下主要功能

SM2: 国密椭圆曲线算法库

. 支持Generate Key, Sign, Verify基础操作

. 支持加密和不加密的pem文件格式(加密方法参见RFC5958, 具体实现参加代码)

. 支持证书的生成,证书的读写(接口兼容rsa和ecdsa的证书)

. 支持证书链的操作(接口兼容rsa和ecdsa)

. 支持crypto.Signer接口

SM3: 国密hash算法库

. 支持基础的sm3Sum操作

. 支持hash.Hash接口

SM4: 国密分组密码算法库

. 支持Generate Key, Encrypt, Decrypt基础操作

. 提供Cipher.Block接口

. 支持加密和不加密的pem文件格式(加密方法为pem block加密, 具体函数为x509.EncryptPEM

三、具体实现

1 下载链接

https://gitee.com/superch/crypto-gmsm

2 maven配置/maven打包jar包/手动配置jar包

这一部分的操作流程在之前的博客中已经详细说明,配置参考链接如下:

https://www.cnblogs.com/yu15141310373/p/16948725.html

3 测试

sm2加解密,签名验签

sm3加密



sm3正确性检验

sm4加解密

四、实现流程

最新文章

  1. PHP5.6启动失败
  2. Eclipse Building Workspace 解决办法
  3. CCI4.5/LintCode Validate Binary Search Tree
  4. Net重温之路一
  5. Java设计模式之代理模式
  6. 第七篇 Replication:合并复制-订阅
  7. C#_uploadify_mvc_version
  8. 6款好用的Python IDE
  9. 转:使用Mongo Connector和Elasticsearch实现模糊匹配
  10. hadoop+eclipse集群搭建及测试
  11. .NET Core 成都线下面基会拉开序幕
  12. Java定时器应用
  13. C++中输出流的刷新问题和 endl和 \n的区别
  14. 六大设计原则(三)DIP依赖倒置原则
  15. nginx服务器的基本配置
  16. python之路-----MySql操作
  17. 关于 chrome canary X64 在 win7 64bit 下面缺少openvr_api.dll的解决方法
  18. 20个Java练手项目,献给嗜学如狂的人
  19. java中几个happens-before规则
  20. ElasticSearh更新nested字段(Array数组)。怎么根据查询条件(query)复制一个(index)到新的Index how to update by query a nested fields data for elasticsearch

热门文章

  1. IE浏览器卸载
  2. easygui的简单使用——实现猜字谜小游戏
  3. python循环结构之while循环
  4. AcWing342. 道路与航线
  5. 15、MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
  6. [阿里云]I+的一些探索
  7. 基于WebSocket的实时消息传递设计
  8. Keepalived高可用集群部署
  9. 浪 - Java
  10. ORM哪家强?java,c#,php,python,go 逐一对比, 网友直呼:全面客观