当前位置:   article > 正文

SpringBoot中_JAVA利用国密算法_实现内容的加密_解密--SpringCloud工作笔记180_springboot restful api 使用sm2 公钥和私钥

springboot restful api 使用sm2 公钥和私钥

首先来看一下什么是国密算法:

国密即国家密码局认定的国产密码算法,即商用密码。

国密主要有SM1,SM2,SM3,SM4。密钥长度和分组长度均为128位。

1、SM1 为对称加密。其加密强度与AES(高级加密标准,Advanced Encryption Standard)相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。

2、SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA。

3、SM3为消息摘要。可以用MD5作为对比理解。该算法已公开。校验结果为256位。

4、SM4为无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位。

由于SM1、SM4加解密的分组大小为128bit,故对消息进行加解密时,若消息长度过长,需要进行分组,要消息长度不足,则要进行填充。

在很多地方还是会用到的,这里说一下这个:SM2

1.在pom.xml中引入依赖jar包:

这里,有的环境高一点版本的需要用高版本的,比如1.69 2023-06-09 15:26:51补充 

  1. <dependency>
  2. <groupId>org.bouncycastle</groupId>
  3. <artifactId>bcprov-jdk15on</artifactId>
  4. <version>1.58</version>
  5. </dependency>

2.然后来写一个工具类,用来生成国密的,公钥和私钥 这个密

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/787078
推荐阅读
相关标签
  

闽ICP备14008679号