一、数据归属:数字签名
比特币的数字签名,就是由比特币转出方才能生成的一段防伪造字符串。通过验证该交易是由转出方本人发起的,另一方面验证信息的完整性。数字签名由数字摘要技术和非对称加密技术组成。
1、数字签名的概念
数字签名是利用密码运算实现“手写签名”效果的一种技术,它通过某种数学变换来实现对数字内容的签名和盖章。在ISO7498-2标准中,定义为:
附加在数据单元上的一些数据,或是对数据单元所做的密码变换,这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性,并保护数据,防止被人伪造。

一个数字签名由签名算法和验证算法组成。那么要实现“手写签名”的效果,数字签名应具有不可伪造、不可抵赖和可验证的特点。
2、对数字签名的攻击类型
对数字签名的攻击主要是对签名进行伪造。从对数字签名的伪造程度可分为下面几种:
1、完全伪造,即攻击者能计算出私钥或者能找到一个能产生合法签名的算法,从而可以对任何消息产生合法的签名;
2、选择性伪造,即攻击者可以实现对某一些特定的消息构造出合法的签名;
3、存在性伪造,即攻击者能够至少伪造出一个消息的签名,但对该消息几乎没有控制力。
3、基本签名算法
RSA算法(R. L. Rivest, A. Shamir, and L. M. Adleman, 1978);
ElGamal签名(T. ElGamal, 1985);
Schnorr签名(C. P. Schnorr, 1989);
DSS签名(NIST, 1991);
4、消息认证
消息认证是指验证者验证所接收到的消息是否确实来自真正的发送方,并且消息在传送中没被修改的过程。
消息认证是抗击伪装、内容篡改、序号篡改、计时篡改和信源抵赖的有效方法。
加密技术和数字签名均可用来实现消息认证,数字签名中,验证者对签名后的数据不仅能确定消息来源,而且可以向第三方证明其真实性,因而还能防止信源抵赖。
消息认证码
消息认证更为简单的实现方法是利用消息认证码。消息认证码(MAC)也称密码校验和,是指消息被一密钥控制的公开单向函数作用后,产生的固定长度的数值,即MAC=CK(M)。
流程如下:

如图所示,假设通信双方A和B共享一密钥K,A欲发送给B的消息是M,A首先计算MAC=CK(M),其中CK()是密钥控制的公开单向函数,然后向B发送M‖MAC,B收到后做与A相同的计算,求得一新MAC,并与收到的MAC做比较,如果B计算得到的MAC与接收到的MAC一致,则。
原理:
1、接收方相信发送方发来的消息未被篡改,这是因为攻击者不知道密钥,所以不能够在篡改消息后相应地篡改MAC,而如果仅篡改消息,则接收方计算的新MAC将与收到的MAC不同。
2、接收方相信发送方不是冒充的,这是因为除收发双方外再无其他人知道密钥,因此其他人不可能对自己发送的消息计算出正确的MAC。
二、数据防篡改:数字摘要
为了保护信息在生成、存储或传输过程中保证不被偶然或蓄意地删除、修改、伪造、乱序、重放、插入等破坏和丢失,数字摘要算法,一种能够提供数据完整性的

最低0.47元/天 解锁文章
64

被折叠的 条评论
为什么被折叠?



