将
库
文件解压到本地文件后进行配置:
a、config配置:
进入解压后的目录,执行 ./config shared --prefix=/usr/local/
openssl
--
openssl
dir=/usr/local/
shared 为生成动态连...
公司原计划是年后让我直接去公安一所过35114的认证,但是突发疫情,导致上班时间一推再推,最后也只能远程用升级包的方式给检测员进行认证。
前几次的尝试,服务器一直回复401,让我百思不得其解,甚至开始让我产生对
算法
的怀疑。现在回过头来看,其实SM2签名格式不理解是导致一直验签失败的主要原因。
按照国密的规范,SM2签名结果r||s长度应该是(r:32字节)+(s:32字节)64字节,就算加个0...
数字签名就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。一般是非对称密钥加密技术与数字摘要技术的结合应用,目前主流的三种非对称
算法
有:
1. RSA,这个巨NB
算法
的实现方式,使其既可以用于签名也可以用于加密(密钥交换)。除了将公钥与密钥的地位交换一下之外,其它步骤几乎是完全一样的。发送方用自己的私钥对消息的摘要值进行“加密”
因为在签名之前,有些对象需要进行DER编码,所以接下来简要介绍一下DER编码和ASN.1。
ASN.1全称为Ab
st
ract Syntax Notation One,是一种描述数字对象的方法和标准,分为数据描述语言(ISO8824)和数据编码规则(ISO8825)。ASN.1的数据描述语言允许用户自定义基本数据类型,并可以通过简单的数据类型组成更复杂的数据类型。ASN.1的编码规则,规定怎么将描...
最近自己在写一个小测试程序时,一不留神gcc编译的时候,就报了错误“error:invalid use of undefined type '
st
ruct xxxx'”
下面是测试程序片段:
#define MAX_NUM 256
#define OPD_MAX_LEN 10
typedef
st
ruct _opt
St
ack
char opt[MAX_NUM];
既然我们已经可以产生椭圆曲线密钥对,我们接下来就用使用它来进行消息的签名和验证。我所指的消息是任何形式,无论是文本还是二进制形式,只要它们有被验证合法性的需要。特别的是,bitcoin客户端通过签名来证明交易的有效性,反之,矿工则是通过验证这样的签名,来批准并广播合法的交易。
ECDSA
签名
椭圆曲线签名
算法
就是
ECDSA
(Ellipt...
椭圆曲线数字签名部分涉及到几个新的
结构体
:描述签名的
ECDSA
_
SIG
,描述椭圆曲线数字签名信息的
ECDSA
_DATA还有描述相关函数调用信息的
ECDSA
_METHOD。
6.2
.1
ECDSA
_
SIG
结构体
6.2
.2
ECDSA
_DATA
结构体
6.2
.3
ECDSA
_METHOD
6.2
.4 签名数据结构图
6.2
.5 基本函数说明
椭圆曲线(ECC)
算法
一种公钥
算法
,他比流行的RSA
算法
很多优点:
a.安全性能更高,如果160位ECC与1024位RSA、DSA有相同的安全强度
b.计算量小,处理速度快,在私钥的处理速度上(解密和签名),ECC比RSA、DSA快得多
c.存储空间占用小、ECC的密钥尺寸和系统参数与RSA、DSA相比要小得多,
d.带宽要求低。
20.2
openssl
的EC...