什么是sm3,是一种类似于sha256的哈希算法,是咱们国家的哈希标准算法: 最近在使用sm3算法时,同样的一份数据,调用同样的sm3接口,发现得到的结果是不一样的: 那么在应用过的过程中,如果同样的算法出的结果不一样,那验证签名业务就会不过,出问题: 最后发现是sm3算法在内部使用了unsigned long, 这里要注意 long, 在 windows64平台下占用4个字节 : 而long, 在linux64平台下占用8个字节: 这种差异直接导致了windows和linux结果的差异: 原s…
国密商用算法是指国密SM系列算法,包括基于椭圆曲线的非对称公钥密码SM2算法.密码杂凑SM3算法.分组密码SM4算法,还有只以IP核形式提供的非公开算法流程的对称密码SM1算法等. 第1节 SM2非对称密码算法原理 国密SM2算法是商用的ECC椭圆曲线公钥密码算法,其具有公钥加密.密钥交换以及数字签名的功能.椭圆曲线参数并没有给出推荐的曲线,曲线参数的产生需要利用一定的算法产生.但在实际使用中,国密局推荐使用素数域256 位椭圆曲线,其曲线方程为y^2= x^3+ax+b.参数如下: 其中p是大…
国密即国家密码局认定的国产密码算法.主要有SM1,SM2,SM3,SM4.密钥长度和分组长度均为128位. SM1 为对称加密.其加密强度与AES相当.该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用. SM2为非对称加密,基于ECC.该算法已公开.由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA.ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA. SM3 消息摘要.可以用MD5作为对比理解.该算法已公开.校验结…
转:https://blog.csdn.net/xuq09/article/details/91815366 The GmSSL Project网址:http://gmssl.org/docs/quickstart.html 在网上闲逛时发现一个工具.SSL支持国密算法.看着比较高大上.还没有用呢.记下来.备用. 快速上手指南介绍GmSSL的编译.安装和gmssl命令行工具的基本指令. 下载源代码(zip),解压缩至当前工作目录 $ unzip GmSSL-master.zip 编译与安装 Li…
转载请注明出处 http://blog.csdn.net/pony_maggie/article/details/39780825 作者:小马 一 知识准备 SM2是国密局推出的一种他们自己说具有自主知识产权的非对称商用password算法.本身是基于ECC椭圆曲线算法的.所以要讲sm2, 先要弄懂ECC. 全然理解ECC算法须要一定的数学功底.由于涉及到射影平面坐标系,齐次方程求解, 曲线的运算规则等概念. 这里不做过多的数学分析(主要是我自己也没有全然整明确). 想要深入了解ECC的我推荐网…
Fabric国密改造是个什么概念?我们来思考以下4个问题: 为什么偏偏是密码算法?(WHY?) 什么是国密算法?(WHAT?) 改造切入点什么?(WHERE?) 如何实现国密支持?(HOW?) 1.为什么偏偏是密码算法? 问: 为什么改造Fabric要从密码算法改造入手? 答: 密码是解决网络与信息安全最有效.最可靠.最经济的方式,是维护网络与信息安全的核心技术和基础支撑.而密码算法在区块链系统中起着举足轻重的作用,说是没有密码没有BlockChain也不足为过.密码算法大体分为非对称,对称和哈…
一个关于国密SM4的故事 https://www.cnblogs.com/ouyida3/p/10053862.html SM1 硬件SM2 非对称加密SM3 hash算法SM4 对称加密 一个关于国密SM4的故事我的名字叫SM4,我还有三位兄长,分别是大哥SM1, 二哥SM2, 和三哥SM3.说起我的名字,故事要回到2006年的时候,我出生的时候并不是叫SM4的,而是叫做SMS4.只是2012年的时候我父亲给我改名了.虽然我起了一个洋气的名字,但我必须郑重地说,我是一个中国人.名字可能只是为了…
crypto-gmsm国密算法库 一.开发背景 crypto-gmsm国密算法库是国密商密算法(SM2,SM3,SM4)工具类封装,国产密码算法(国密算法)是指国家密码局认定的国产商用密码算法,目前主要使用公开的SM2.SM3.SM4三类算法,分别是非对称算法.哈希算法和对称算法. 二.功能 crypto-gmsm包含以下主要功能 SM2: 国密椭圆曲线算法库 . 支持Generate Key, Sign, Verify基础操作 . 支持加密和不加密的pem文件格式(加密方法参见RFC5958,…
通常我们遇到过的X509证书都是基于RSA-SHA1算法的,目前国家在大力推行国密算法,未来银行发行的IC卡也都是基于PBOC3.0支持国密算法的,因此我们来学习一下如何验证SM2国密证书的合法性.至于SM2与SM3的算法实现不在本文讨论范围之内,可以用openssl.BouncyCastle.Crypto.dll等第三方库来实现. SM2国密证书与RSA证书一样,一般内容都是以BASE64格式编码的,以网上下载的一个自签名证书为例: MIIB5jCCAZECAQAwVDELMAkGA1UEBh…
比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom 国密算法是指国家密码管理局制定的自主可控的国产算法,包括一系列密码学算法:SM1.SM2.SM3.SM4.SM7.SM9.以及祖冲之算法.最常用的三种商用密码算法是 SM2椭圆曲线公钥密码算法.SM3密码杂凑算法以及 SM4分组密码算法. 其中,SM2 算法属于椭圆曲线公钥密码系统,相较于 RSA 公钥密码…