草庐IT

SM2Utils

全部标签

国密算法(SM3)在C#里面的简单封装

前言接上一篇SM2,现奉上SM3的简单封装一、SM3是什么?SM3是一款国产哈希算法,中华人民共和国政府采用的一种密码散列函数标准,由国家密码管理局于2010年12月17日发布。相关标准为“GM/T0004-2012《SM3密码杂凑算法》”。在商用密码体系中,SM3主要用于数字签名及验证、消息认证码生成及验证、随机数生成等,其算法公开。据国家密码管理局表示,其安全性及效率与SHA-256相当。二、C#具体代码1.引入库usingOrg.BouncyCastle.Crypto;2.具体工具代码//////SM3工具类///publicclassSM3Util{publicstringsecret

Java基于BC包的实现SM2签名验签方案,以及SM2签名中bc包冲突的部分解决方法

信创改造也有一段时间了,这里记录和总结一些关于SM2算法的知识点。1.pom.xmldependency>groupId>org.bouncycastlegroupId>artifactId>bcprov-jdk15onartifactId>version>1.57version>dependency>或dependency>groupId>org.bouncycastlegroupId>artifactId>bcprov-jdk15onartifactId>version>1.70version>dependency>由于BC包版本多种多样,且实现SM2算法的过程和结果并不相同。因此在引入b

国密SM4算法加密解密实现以及与Spring Security集成实现

目录简介项目集成引入依赖测试编写PasswordEncoder定义SM4PasswordEncoder配置文件定义properties类注册为Bean密码加密简介项目中要求密码加密算法使用国家的密码标准SM4.0,下面来介绍下。SM4算法是我国发布的商用密码算法中的分组密码算法,是一种迭代分组密码算法,由加解密算法和密钥扩展算法组成。其分组长度和密钥长度均为128比特,加密算法和密钥扩展算法迭代轮数均为32轮。SM4加解密过程的算法相同但是轮密钥的使用顺序相反。SM4算法具有安全高效的功能特点,在设计和实现方面具有一定的优势。项目集成在项目中登录以及鉴权使用的是SpringSecurity,与

Java代码实现SM2算法以及注意点总结(踩坑记录)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、SM2是什么?二、Java实现1.实现1.1引入依赖1.2生成密钥1.3将各种字符串保存的公钥转为公钥对象1.4将各种字符串保存的私钥转为私钥对象1.5加密、解密、签名、验签2.坑2.1加密中的坑2.1.1加密方式2.1.2与其他语言的密钥传输编码问题2.1.2.1导出2.1.2.2导入2.1.3公钥压缩2.2签名验签中的坑2.2.1签名2.2.2签名验签RS总结前言最近公司的一些项目的安全认证算法在逐渐转为使用国密实现,所以最近学习了一些比如SM2、SM4算法的相关知识,以及代码实现。因为工作之后忘了很多,而且本

javascript实现SM2加密解密

前提JavaWeb环境前端代码window.sm2=function(t){functioni(e){if(r[e])returnr[e].exports;varn=r[e]={i:e,l:!1,exports:{}};returnt[e].call(n.exports,n,n.exports,i),n.l=!0,n.exports}varr={};returni.m=t,i.c=r,i.d=function(t,r,e){i.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:e})},i.n=functi

云主机无yum源或云主机弹性ip不可用时安装nfs-utils客户端的方法

1.保证宿主机上有nfs-utils 1.1若宿主机yum源不可以用  (1)本地下载nfs-utils安装包下载链接:​​​​​​https://mp.csdn.net/mp_download/manage/download/UpDetailed?spm=3001.5299  (2)登录宿主机,创建文件夹存放nfs-utils:mkdir/root/lhx  (3)进入目录/root/lhx:cd/root/lhx  (4)宿主机上安装rz,用于nfs-utils安装包传输到宿主机:yuminstalllrzsz  (5)nfs-utils安装包传输到宿主机:rz-be  (6)宿主机上安装

html - Bootstrap hidden-sm-down 不工作

我正在使用Boostrap3。为什么与hidden-sm-down当我在笔记本电脑上调整页面大小时仍然可见?我想在小型设备上隐藏这两个图像,以便有不同的菜单。TextTextTextTextTextTextText 最佳答案 实际上,hidden-sm-down不适用于Bootstrap4及更高版本(那里使用d-none而不是hidden-sm-down,并使用d-sm-none而不是hidden-sm-向上,另见understanding-details).在BS4中,显示实用程序类完全改变了。请改用此格式;.d-{breakpo

html - Bootstrap hidden-sm-down 不工作

我正在使用Boostrap3。为什么与hidden-sm-down当我在笔记本电脑上调整页面大小时仍然可见?我想在小型设备上隐藏这两个图像,以便有不同的菜单。TextTextTextTextTextTextText 最佳答案 实际上,hidden-sm-down不适用于Bootstrap4及更高版本(那里使用d-none而不是hidden-sm-down,并使用d-sm-none而不是hidden-sm-向上,另见understanding-details).在BS4中,显示实用程序类完全改变了。请改用此格式;.d-{breakpo

python -m spacy download en_core_web_sm 连接被拒绝

spacy1.7之后,支持将model以python模块的方式进行安装。既然spacydownload失败,那么采用 "下载离线包->安装离线包"的方法。(方法参考spacyGitHub官网 https://github.com/explosion/spacy-models 得出) 1.找出与spacy对应的en_core_web_sm版本命令行运行如下代码,找到spacy版本。(比如spacy2.1.9)piplist 在 https://github.com/explosion/spacy-models/blob/master/compatibility.json 中找到与spacy对应的

python -m spacy download en_core_web_sm 连接被拒绝

spacy1.7之后,支持将model以python模块的方式进行安装。既然spacydownload失败,那么采用 "下载离线包->安装离线包"的方法。(方法参考spacyGitHub官网 https://github.com/explosion/spacy-models 得出) 1.找出与spacy对应的en_core_web_sm版本命令行运行如下代码,找到spacy版本。(比如spacy2.1.9)piplist 在 https://github.com/explosion/spacy-models/blob/master/compatibility.json 中找到与spacy对应的