sm4加密和sm3加密

sm4加密和sm3加密sm4加密有32位key值加密和16位key值加密加粗样式sm4中32位加密:可以参考:https://www.npmjs.com/package/@haici/gmsm4sm4中16位加密:可以参考:https://blog.csdn.net/qq_34574204/article/details/107961807?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162501640416780366595087%2522%252C%

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

sm4加密有32位key值加密和16位key值加密

加粗样式sm4中32位加密:可以参考:

安装

npm install @haici/gmsm4 --save

使用方法

一、通过 baseKey 获取加密秘钥 key约定 baseKey 为字符串(长度不限)

import { genKey } from '@haici/gmsm4';

const key = genKey('123456789');

二、使用 ECB 模式加密key 要求为 32 位十六进制字符串

import sm4,{ genKey } from '@haici/gmsm4';

let text = 'This is 一段明文内容!';
let key = genKey('123456789');

let enData = sm4.encryptWithECB(key,text); //加密
let deData = sm4.encryptWithECB(key,enData); //解密

三、使用 CBC 模式加密iv 和 key 要求为 32 位十六进制字符串

import sm4, { genKey } from '@haici/gmsm4';

let text = 'This is 一段明文内容!';
let iv = '00000000000000000000000000000000';
let key = genKey('123456789');

let enData = sm4.encryptWithCBC(key,iv,text); //加密
let deData = sm4.decryptWithCBC(key,iv,enData); //解密

sm4中16位加密:可以参考:

安装依赖:

npm install gm-crypt

使用

  // 引用sm4包进行加密
  const SM4 = require("gm-crypt").sm4;
  let sm4Config = {
    //配置sm4参数
    key: "HENG1AN2WEN3YIN4",//这里这个key值是跟后端要的
    mode: "ecb", // 加密的方式有两种,ecb和cbc两种,也是看后端如何定义的,不过要是cbc的话下面还要加一个iv的参数,ecb不用
     cipherType: "base64" 
      };
      let sm4 = new SM4(sm4Config);//这里new一个函数,将上面的sm4Config作为参数传递进去。然后就可以开心的加密了
      let Account = sm4.encrypt(this.Account); //账号加密

sm3加密:可以参考

引入

npm install sm3
const sm3 = require('sm3');
const hash = sm3('值');
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185581.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Opencv笔记(一):图像的基本操作

    Opencv笔记(一):图像的基本操作

    2021年6月8日
    92
  • 按位异或的深入理解[通俗易懂]

    按位异或的深入理解[通俗易懂]异或运算:首先异或表示当两个数的二进制表示,进行异或运算时,当前位的两个二进制表示不同则为1相同则为0.该方法被广泛推广用来统计一个数的1的位数!参与运算的两个值,如果两个相应bit位相同,则结果为0,否则为1。即:  0^0=0,   1^0=1,   0^1=1,   1^1=0按位异或的3个特点:(1)0^0=0,0^1=1 0

    2022年6月6日
    43
  • js查询手机号码归属地[通俗易懂]

    js查询手机号码归属地[通俗易懂]js查询手机号码归属地

    2022年7月22日
    10
  • LED灯上的ASEMI整流桥MB10F怎么检测是否正常

    LED灯上的ASEMI整流桥MB10F怎么检测是否正常编辑-Z我的LED灯盘上有一个桥式整流桥,它的型号是:MB10F,那么什么是整流,整流是做什么的?LED灯上的ASEMI整流桥MB10F怎么检测是否正常?整流电路就是将交流电转换成直流电。为什么要将交流电转换为直流电?说白了就是负载需要直流电才能工作,比如我们常见的直流电机、电解电源、手机等。型号:MB10F封装:MBF-4(SOP-4)特性:小方桥、贴片桥堆、超薄体电性参数:1A1000V芯片材质:GPP正向电流(Io):1A芯片个数:4正向电压(VF)

    2022年8月24日
    4
  • 常用数据库排名及分类介绍[通俗易懂]

    常用数据库排名及分类介绍[通俗易懂]DB-Engines:2019年6月全球数据库排行DB-Engines数据库流行度排行榜6月更新已发布,排名前二十如下:总体排名和上个月相比基本一致,其中排名前三的Oracle、MySQL和MicrosoftSQLServer也是分数增加最多的三个数据库,增加的分数分别为13.67、4.67和15.57,三者的总分也均已超过一千。一、数据库的分类…

    2022年5月7日
    45
  • pycharm如何同时选中多个相同内容_jsonobject.parsearray

    pycharm如何同时选中多个相同内容_jsonobject.parsearrayPycharm使用技巧:ShowasJSON(以友好的方式显示输出框的json字符串)

    2022年8月26日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号