草庐IT

国密SM2

全部标签

SM4加密

SM4加密方法,可以通过传递需要加密的明文和密钥来进行调用:importorg.bouncycastle.crypto.engines.SM4Engine;importorg.bouncycastle.crypto.modes.CBCBlockCipher;importorg.bouncycastle.crypto.params.KeyParameter;importorg.bouncycastle.crypto.params.ParametersWithIV;importorg.bouncycastle.util.encoders.Hex;importjava.nio.charset.Sta

SM2数字签名结果的分析,本应64字节,为啥有工具显示70字节、71字节、72个字节三种结果

SM2数字签名结果的分析,本应64字节,为啥有工具显示70字节、71字节、72个字节三种结果由于编写了《商用密码与安全性评估》书籍,最近收到不少朋友的来信,询问为啥BC库的签名结果是三种字节长度?另一个问题就是密码测评师需要了解编程和代码么?我先回答第二个问题,密码测评师是需要了解代码的,精通程序的测评师才能有利的分析密码算法实现的正确性和有效性,才能明白是不是真正实现了相应的算法而不是欺骗。关于第一个问题,我们来分析下原因: 用工具和BC库为啥签名结果长度有70,71,72三个结果呢?把其中的一个结果拷贝下来分析:3045022053158C29EA739622E0109971E6BBC89

SM2工具类SM2Utils(java)

SM2工具类SM2Utils(java)话不多说直接上代码。SM2密钥在线生成工具使用方法 //测试生产密钥对publicvoidtestCreateKeyPair()throwsException{KeyPairkeyPair=SM2Utils.geneSM2KeyPair();System.out.println("priKeyString:"+SM2Utils.getPriKeyHexString(keyPair.getPrivate()));System.out.println("pukKeyString:"+SM2Utils.getPubKeyHexString(keyPair.ge

国密普密商密有什么区别?一文给你讲清楚

国密、普密、商密都是指完整的的密码系统,都是对信息等进行加密保护、安全认证的一整套技术、产品和服务。根据《中华人民共和国密码法》规定,这三套密码系统现在的全称分别为“核心密码”、“普通密码”和“商用密码”。三者的区别是服务对象和使用环境的不同。其中核心密码、普通密码都属于国家秘密,都用于保护国家秘密信息,核心密码保护信息的最高密级为绝密级,普通密码保护信息的最高密级为机密级,两种密码都由密码管理部门依法实行严格统一管理。在有线、无线通信中传递的国家秘密信息,以及存储、处理国家秘密信息的信息系统,应当依照法律、行政法规和国家有关规定使用核心密码、普通密码进行加密保护、安全认证。而商用密码用于保护

SM2椭圆曲线公钥密码算法--密钥对与数字签名

1.SM2国密算法介绍SM2算法全称是SM2椭圆曲线公钥密码算法(SM是商用密码的拼音缩写),是一种基于“椭圆曲线”的密码ECC(EllipticCurveCryptography)。2016年,SM2成为中国国家密码标准。在商用密码体系中,SM2主要用于替换RSA加密算法。SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC256位(SM2采用的就是ECC256位的一种)安全强度比RSA2048位高,但运算速度快于RSA。旧标准的加密排序C1C2C3新标准C1C3C2,C1为65字节第1字节为压缩标识,这里固定为0x04,后面64

python实现rsa\aes\sm2\sm4加解密

相关依赖:gmssl==3.2.2pycryptodome==3.9.7基类:importabcimportbase64importrandomfromenumimportEnumfromCrypto.CipherimportPKCS1_OAEP,AESfromCrypto.HashimportSHA256,SHA1fromCrypto.PublicKeyimportRSAfromCrypto.Signatureimportpssfromgmsslimportsm2,sm4#str不是16的倍数那就补足为16的倍数#key='1234567890123456'#密钥长度必须为16、24或32位

基于openssl国密算法SM2搭建CA及颁发证书

一、环境说明:1.操作系统:CentOS7.92.openssl: OpenSSL1.1.1q 5Jul2022二、搭建私有CA1.创建CA目录,在目录下创建相关目录如下:mkdirCA/{certs,crl,newcerts,private}treeCA/CA/├──certs├──crl├──newcerts└──private4directories,0files在CA下生成证书索引库文件:touchindex.txt指定颁发第一个证书的序列号:echo01>seriallltotal4drwxrwxr-x.2johnjohn68月1709:59certsdrwxrwxr-x.2john

关于SM2算法工具的一点儿说明

晚上有网友说,下载购买了软件后发现计算的加密后内容跟网上其他工具算出来的不一样。于是怀疑工具是不是算的不对。这里统一回复下,软件算的没问题的。由于加密的随机数不一样,每次加密的密文内容也是不一样的。不要去比对密文内容是否一致,随机数不一样每次加密的内容都会不一样。而要看能否解密出来。若果还有其他疑问,欢迎留言或者加我QQ联系。推荐几个网上测试sm2的网站:SM2加解密SM2在线加密工具可以这样测试下:用我的工具加密,使用同样的密钥,用网上的工具解密,看解密出来的明文是否正确。以下是我的验证:网上工具算的如下,使用相同的秘钥,把工具生成的密文在网站上输入进去解密以下。解密结果如图所示:再来测下验

国密算法SM2实现基于hutool工具类

使用hutool工具类国密算法SM2实现首先引入mavendependency>groupId>org.bouncycastle/groupId>artifactId>bcprov-jdk15to18/artifactId>version>1.69/version>/dependency>dependency>groupId>cn.hutool/groupId>artifactId>hutool-all/artifactId>version>5.4.1/version>/dependency>dependency>groupId>org.projectlombok/groupId>artifa

DIY SM2262EN+海力士 3DV6 4贴512G 经验分享+开卡工具

今天又吃饱了撑着了。闲来无事,贴了个2262EN+海力士3DV6的固态,单颗128G,颗粒是全新的,但是是自封片,出处不明。焊接过程略。。。。。。焊的不错吧,这压根看不出来是手工作品。 重点说一下开卡的注意事项,也是自己摸索出来的。现在已经有公开固件了,在量产部落下载,不多赘述,国内都在用这个网站,懂的都懂。贴东芝的BICS、三星的SSV4都是正常程序开卡,最多也就改个颗粒电压,这次贴海力士,又遇到新问题了。正常贴上颗粒之后,开卡软件里是不识别颗粒ID的。当时确实有点懵,先改颗粒电压再说,改了1.8V,依然不认ID。检查各路供电也无异常。难道主控GG了?拆了一个颗粒上另一块板子,依然不认。恼火