数字签名概述
作者:葛运龙
来源:《科教导刊·电子版》2016年第32
        从数字签名技术基于的密码体制来看,数字签名技术由基于证书的密码体制发展到基于身份的密码体制和基于属性的密码体制,有效地提高了数字签名技术中密钥分发和管理的效率。从数字签名的应用环境来看,数字签名技术由单纯地实现对用户身份和信息真实性的验证发展到某些特定环境中具有某种特殊功能的数字签名技术,如代理签名、签名、环签名、盲签名、门限签名、多重签名等等,极大地扩充了数字签名技术的应用领域。本文对数字签名的特点和分类进行了简要概述。
        关键词 数字签名 公钥密码 安全属性
        中图分类号:TP393.08 文献标识码:A
        1 数字签名的定义
        一个标准的数字签名方案是一个两方协议,由签名者(发送者)和验证者(接收者)两方
参与。在一个数字签名方案中,首先,密钥生成算法为签名者产生一个合法的密钥对,即公钥和私钥,其中,签名者对私钥信息进行秘密保存,将公钥信息进行公布。然后,签名者使用自己的私钥对给定的消息(或消息摘要)进行签名,并将该签名和消息(或消息摘要)一起发送给验证者。最后,验证者可以通过公布的签名者的公钥对消息发送者的身份和消息的真实性进行验证。如果当事双方对于某个签名的有效性存在异议,双方可以由一个可信的第三方通过公开的验证算法对签名的有效性进行仲裁。通常情况下,签名者为一个用户,在体性签名体制中签名者也可以是由多个人员组成的一个体;验证者可以是任意的用户,只是在某些具有特殊功能的数字签名中验证者也可以是某些特定的用户;仲裁者一般是一个可信的任意用户。
        2 数字签名的安全属性
        数字签名是在信息时代人们通过数字信息网络所进行的高效的、远距离的签名方式,之所以受到人们如此的信赖,并具有一定的法律意义,是因为数字签名具有以下几个主要的安全属性。
        1签名字符串是什么)完整性(Integrity):签名者将签名和签名的消息(消息摘要)一起发送给接收者,
如果签名的消息在网络传输过程中被攻击者非法篡改或者部分删除,则接收者可以在接收到该消息(消息摘要)后计算消息(消息摘要)的签名,并通过签名验证算法判定该消息是否有效,从而保证了消息的完整性。
        2)不可伪造性(Unforgeability):除签名者外,任何一个攻击者想要冒充签名者生成一组合法的签名在计算上是不可行的,因为签名的私钥是由签名者自己秘密保存的,其他人不知道私钥信息从而无法输出正确的签名数据。
        3)不可否认性(Non-Repudiation):一个签名者想要否认他所产生过的一个有效签名是不可行的,因为一个可信第三方可以利用签名者的公钥信息对签名的有效性进行仲裁。
        3 数字签名的分类
        随着对信息技术研究的深入,数字签名体制由最初单纯地实现对用户身份和数据真实性的验证发展到现代具有多用途、多类型的数字签名体制。数字签名的分类方法有很多种,以下给出几种常见的分类方法。
        1)基于数学难题的分类:一个数字签名方案的安全性一般是基于某个数学难题的困
难性,困难性越大则方案的安全强度越高。根据数字签名方案所基于的数学难题不同,数字签名方案可分为基于素因子分解问题的签名方案 (如RSA签名算法)、基于有限域上的离散对数问题的签名方案(如ElGmal签名算法)、基于椭圆曲线上离散对数问题的签名方案(如ECDSA签名算法)、基于二次剩余问题的签名方案、基于格上困难问题的签名方案等等。
        2)基于密码体制的分类:根据数字签名所基于的密码体制的不同,数字签名分为传统的基于证书的数字签名、基于身份的数字签名、基于属性的数字签名、无证书的数字签名以及基于多变量的数字签名等等。
        3)基于签名用户的个数分类:根据参与签名的用户个数不同,数字签名分为单个用户参与签名的签名方案和多个用户参与签名的签名方案。大多数的数字签名是单个用户参与签名的数字签名方案,而多个用户的参与签名的签名方案又称多重数字签名方案。根据签名具体过程的不同,多重数字签名又可分为有序多重数字签名方案和广播多重数字签名方案。
        4)基于数字签名用途的分类:在某些特殊的环境下,数字签名要求具有某种特殊的功能,以适应实际情况的需要。根据数字签名在某些特定环境具有的功能不同,数字签名分为普遍数字签名、盲签名、环签名、门限签名、签名、广播签名、不可否认签名、故障停
止式签名、代理签名等等。
        5)基于数字签名安全性的分类:根据数字签名方案所满足的安全性等级不同,数字签名分为无条件安全的数字签名和计算上安全的数字签名。
        4 对数字签名的攻击
        对于数字签名技术而言,签名者所签发的消息本身是公开的,消息的机密性对于攻击者来说是完全没有意义的,而攻击者的目标是要在不知道签名者的签名密钥即私钥信息的情况下成功伪造出合法的签名。因此,为了设计一个安全的数字签名方案,必须考虑到数字签名可能受到的攻击方式。而对于一个数字签名方案,攻击者的攻击方法很多,以下给出几种常见的攻击分类:
        根据攻击者对数字签名方案的攻击程度不同,数字签名受到以下三种不同类型的攻击:
        1)完全攻击(Total Break):攻击者能够通过计算得到签名者的签名密钥即私钥,或者能够建立一个等价于有效签名算法的伪造签名算法。也就是说,攻击者能够对给定的任意消息成功伪造出合法的签名。
        2)选择性伪造攻击(Selective Forgery):在无法获得签名者密钥或者建立伪造签名算法的情况下,攻击者能够对事先给定的一则消息或一组消息成功伪造出合法签名。
        3)存在性伪造攻击(Existential Forgery):在无法获得签名者密钥或者建立伪造签名算法的情况下,攻击者能够成功伪造出至少一则消息的合法签名,而无法对任意选择的消息伪造签名。
        根据攻击者对数字签名方案的攻击途径不同,数字签名受到以下两种不同类型的攻击:
        1)唯密钥攻击(Key-Only Attacks):在只知道签名者公钥信息的情况下,攻击者可以对一个数字签名系统进行攻击。
        2)消息攻击(Message Attacks:在获得并分析与已知或者特定消息相对应的签名的情况下,攻击者可以对一个数字签名系统进行攻击。
        参考文献
        [1] 田苗苗.基于格的数字签名方案研究[M].中国科学技术大学,20145.
        [2] 刘明烨,韩益亮,杨晓元.基于低密度生成矩阵码的签密方案[J].计算机应用,20169):2459-2464.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。