一、什么是国密加密

二、国密实现
本系统实现了国密SM2和SM4加解密,可以在SimpleAdmin.Core下的Utils->Cryptogram文件夹下找到。

2.1 SM2
Sm2加解密需要配置公钥和私钥,在配置文件中配置即可

前端通过公钥加密数据,详情可看utils下的smCrypto.js,具体实现在用户登录功能中。

后端直接通过 CryptogramUtil.Sm2Decrypt方法解密前端传过来的加密字符串
var password = CryptogramUtil.Sm2Decrypt(input.Password);//SM2解密
2.2 SM4
Sm4也有key和value但是我没有存在配置文件,而知直接写死在了构造函数中。

本系统用户手机号是采用SM4加解密存储的,通过CryptogramUtil.Sm4Encrypt方法加密手机号
sysUser.Phone = CryptogramUtil.Sm4Encrypt(sysUser.Phone);
通过sqlsugar的aop配置可以实现自动解密
