草庐IT

国密SM2

全部标签

SM2——适用于前后端(java+vue)公用的SM2国密加解密传输

目录一、SM2国密加解密算法1.1、pom文件引入依赖包1.2、SM2加解密工具类1.3、测试类一、SM2国密加解密算法1.1、pom文件引入依赖包dependency>groupId>org.bouncycastle/groupId>artifactId>bcprov-jdk18on/artifactId>version>1.72/version>/dependency>1.2、SM2加解密工具类SM2加解密工具类packagecom.xz.utils;importorg.bouncycastle.asn1.gm.GMNamedCurves;importorg.bouncycastle.as

解决python -m spacy download en_core_web_sm连接不上服务器的方案

解决python-mspacydownloaden_core_web_sm连接不上服务器的方案最近复原一个实验时遇到了spacy,然后用python-mspacydownloaden_core_web_sm这个命令时出现了连接不上服务器,经过搜索,解决了问题,现将解决方案记录一下首先去Github去寻找你需要的en_core_web_sm,网址是https://github.com/explosion/spacy-models/releases/tag/en_core_web_sm-3.1.0。这里要注意对应自己本地的spacy版本网页往下拉,下载如下红框中所示资源使用命令pipinstall

Java - OpenSSL与国密OpenSSL

文章目录一、定义OpenSSL:OpenSSL是一个开放源代码的SSL/TLS协议实现,也是一个功能丰富的加密库,提供了各种主要的加密算法、常用的密钥和证书封装管理功能以及SSL协议。它被广泛应用于Web服务器、电子邮件服务器、VPN等网络应用中,为数据传输提供安全保障。国密OpenSSL:国密OpenSSL是基于OpenSSL的一个扩展版本,它增加了对中国国家密码管理局所规定的一系列国产密码算法(简称国密算法,如SM2、SM3、SM4等)的支持。国密OpenSSL保持了OpenSSL的原有功能和接口,同时增加了对国密算法的支持,使得用户可以在不改变原有应用代码的情况下,使用国密算法进行加密通

国密商用密码SM3杂凑算法原理分析与Java实现

目录一、简介二、算法原理1.填充2.迭代压缩2.1迭代过程2.2消息扩展2.3压缩函数3.得到杂凑值三、代码实现1.常量定义1.1初始化的IV1.2常量T1.3布尔函数1.4置换函数1.5其它常量2.初始化3.update方法4.压缩函数方法5.final方法四、测试一、简介国密SM3算法是我国自研设计的商用密码杂凑算法,是在SHA-256的基础上进行改造的,其安全性与SHA-256相当。《SM3密码杂凑算法》于2010年12月份由国家密码管理局首次发布。后于2012年发布为密码行业标准《GM/T0004-2012SM3密码杂凑算法》,2016年发布为国家密码杂凑算法标准《GB/T32905-

基于GMSSL实现的sm2加解密在vscode实现(C++)(自用)

基于GMSSL实现的sm2加解密在vscode实现(C++)(自用)GMSSL库安装编写项目过程SM2公私钥对的生成JSON文件配置运行结果SM2在线密解工具用法原文地址:https://blog.csdn.net/hacker_lpy/article/details/124211114原文改进方案地址:https://blog.csdn.net/canlynetsky/article/details/131212028本人最近刚刚开始学习Linux下的C++开发,不太习惯命令行编译程序,听说vscode挺好用,于是开始尝试使用vscode来编写程序,以下记录自己在跑通原文案例时遇到的一些问题

C++调用openssl实现国标sm2签名算法的使用

背景SM2算法基于ECC椭圆曲线算法,广泛用于区块链、HTTPS等需要非对称加密的场景。是基于椭圆曲线数学理论实现的一种非对称加密算法。相比RSA,ECC优势是可以使用更短的密钥,来实现与RSA相当或更高的安全。下面链接可以了解一些关于SM2的基础知识。椭圆曲线加密算法(ECC)信息安全技术SM2密码算法使用规范深入浅出讲解国密算法可以看下知乎上这张图,一眼就可以看出SM1SM2SM3等和我们常见的国际加密算法的对应关系。因为国产化原因,项目中需要使用国标sm2签名算法对文件进行签名和验签。OpenSSL1.1.1版本提供了对国密SM2算法的支持,在之前的版本openssl不支持。目前关于使用

保护国家机密:Java国密加解密算法在信息安全中的应用与挑战

目录1、简介1.1信息安全的重要性1.2Java国密加解密算法的概述2、Java国密加解密算法的应用2.1数据加密与解密2.2网络通信加密2.3数字签名与验证2.4安全存储与传输3、Java国密加解密算法的特点3.1安全性强3.2效率高3.3弹性可调4、Java国密加解密算法的挑战4.1资源消耗4.2安全性漏洞4.3算法标准的更新5、对Java国密加解密算法的改进与发展5.1算法优化5.2异常处理5.3安全性增强6、结语1、简介1.1信息安全的重要性        Java中的信息安全非常重要,开发者需要关注数据的保密性、完整性和可用性,通过使用各种安全技术和API,可以有效提高Java应用程

使用SM.MS做MarkDown图床(Python脚本)

缘起曾经写过一篇使用博客园做MarkDown图床的文章,好像也帮助到了很多小伙伴;从那时起,我也是一直把博客园当图床来用的,挺惭愧。一方面,白嫖博客园,而博客园的现状也不太好;另一方面,免费总是有风险的,以前有些文章里的图片链接是语雀或者Gitee的,但是现在这些图片都挂掉了。我想,是时候换个图床继续白嫖了(SM.MS:你不要过来啊)。环境准备本文使用方法,需要以下环境支撑:SM.MS账户关于注册SM.MS的碎碎念:SM.MS官网说了,由于网络原因,国内要使用的SM.MS的网址为:https://smms.app/;注册的时候,它的密码要求很奇怪,反正我按照它的要求尝试了很多次,一直不给过,说

react+vue 前端国密算法sm2、sm3 、sm4的js ts实现

1.简单介绍下SM2和SM3SM2算法:是一种公钥加密算法,它的密钥长度为256位,安全性较高。可用于数字签名、密钥协商等场景。SM3算法:是一种对称加密算法,用于消息摘要和数字签名等场景。它的密钥长度为256位,安全性较高。SM3算法与SM2算法相互配合,提高了整体安全性能。2.接下来讲前端如何实现安装npminstallsm-cryptoyarnaddsm-cryptosm2、sm3引入写法require('sm-crypto').sm2require('sm-crypto').sm3SM2非对称加密写法str是需要加密的字符串cipherMode//1-C1C3C2,0-C1C2C3,默

Vue+Springboot前后端完整使用国密算法SM2双公私钥对数据加密传输交互完整解决方案

Vue+Springboot前后端完整使⽤国密算法SM2双公私钥对数据加密传输交互完整解决⽅案项⽬,特别是企事业单位的项⽬,第三方测试公司做安全测试时,常常要求使用国密算法,因涉及服务端和客户端的交互,传递关键数据时要求使用SM2非对称加密。引入相关依赖这里我使用的是jdk1.8的maven项目,需要在pom.xml里引入以下依赖:cn.hutoolhutool-all5.8.22org.bouncycastlebcprov-jdk15on1.70commons-codeccommons-codec1.14 可复用代码importcn.hutool.core.util.HexUtil;impo