Vue使用国密SM4加密
1 npm install gm-crypt
1 const SM4 = require("gm-crypt").sm4; 2 let sm4Config = { 3 //配置sm4参数 4 key: "gDg4g8CQyIrs^bv2", //这里这个key值是跟后端要的 5 mode: "ecb", // 加密的方式有两种,ecb和cbc两种,也是看后端如何定义的,不过要是cbc的话下面还要加一个iv的参数,ecb不用 6 cipherType: "base64" 7 }; 8 let sm4 = new SM4(sm4Config);
1 // 开始加密 2 let username = sm4.encrypt(tmpObj.username); 3 let password = sm4.encrypt(tmpObj.password);
1 概述 2 sm4加密有两种模式:ecb和cbc。两种模式的区别如下(下面文字来自百度): 3 4 一、优bai点不同: 5 6 ECB模式:1、简单;2、有利于并行计算;3、误差不会bai被传送; 7 8 CBC模式:1、不容易主动攻击,安全性好于baiECB,适合传输长度长的报文,是SSL、IPSec的标准。 9 10 二、缺点不同: 11 12 ECB模式:1、不能隐藏明文的模式;2、可能对明文进行主动攻击; 13 14 CBC模式:1、不利于并行计算;2、误差传递;3、需要初始化向量IV 15 16 三、概念不同 17 18 1、ECB模式又称电子密码本模式:Electronic codebook,是最简单的块密码加密模式,加密前根据加密块大小(如AES为128位)分成若干块,之后将每块使用相同的密钥单独加密,解密同理。 19 20 2、密码分组链接(CBC,Cipher-block chaining)模式,由IBM于1976年发明,每个明文块先与前一个密文块进行异或后,再进行加密。在这种方法中,每个密文块都依赖于它前面的所有明文块。同时,为了保证每条消息的唯一性,在第一个块中需要使用初始化向量IV。
分类:
vue
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类