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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker下载安装教程_vmware mac版本

    docker下载安装教程_vmware mac版本前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月28日
    12
  • C#代码集

    C#代码集C#入门代码示例记录一、示例静态计算工具类1publicstaticclassCalculator2{3publicstaticdoubleAdd(doublea,doub

    2022年7月1日
    39
  • 网络访问控制列表ACL(读懂这篇就基本够了,后面有配置案例)[通俗易懂]

    网络访问控制列表ACL(读懂这篇就基本够了,后面有配置案例)[通俗易懂]一、访问控制列表是什么?访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。访问控制列表被广泛地应用于路由器和三层交换机,借助于访问

    2022年7月1日
    30
  • 求教一个用jspjavabean求解累加和的问题

    求教一个用jspjavabean求解累加和的问题JSP1      对输入的两个数字之间的数进行累加求和     初值:    末值:                  JSP2                     初值:  末值:  累加结果:   javabean文件package ExBean;pub

    2022年7月27日
    5
  • 测试管理工具列表大全「建议收藏」

    测试管理工具列表大全「建议收藏」测试管理工具列表大全IDNameNotes1TestDirector/QualityCenter业界第一个基于Web的测试管理系统,它可以在您公司组织内进行全球范围内测试的协调。通过在一个整体的应

    2022年8月3日
    6
  • antd pro路由

    antd pro路由antddesignpr 的路由有两种方式一种是前端定义好路由 routes 由后端返回 roles 进行过滤 另一种是后端返回 routes 列表生成 menu 一 先看第一种方式前端定义好路由 routes 由后端返回 roles 进行过滤 1 在 src permission js 路由守卫首先在派发一个 GetInfo 的 action 调取 getinfo 方法调后台的用户接口返回用户信息和 roles 用户权限 在 src store modules user js 中

    2025年9月14日
    5

发表回复

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

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