首页 > 文章中心 > 数字签名技术论文

数字签名技术论文

数字签名技术论文

数字签名技术论文范文第1篇

论文摘要:密码技术是信息安全的核心技术公钥密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。本文介绍了数字签名技术的基本功能、原理和实现条件,并实现了基于RSA的数字签名算法

0.引言

随着计算机网络的发展,网络的资源共享渗透到人们的日常生活中,在众多领域上实现了网上信息传输、无纸化办公。因此,信息在网络中传输的安全性、可靠性日趋受到网络设计者和网络用户的重视数字签名技术是实现交易安全的核心技术之一,在保障电子数据交换((EDI)的安全性上是一个突破性的进展,可以解决否认、伪造、篡改及冒充等问题

1.数字签名

1.1数字签名技术的功能

数字签名必须满足三个性质

(1)接受者能够核实并确认发送者对信息的签名,但不能伪造签名

(2)发送者事后不能否认和抵赖对信息的签名。

(3)当双方关于签名的真伪发生争执时,能找到一个公证方做出仲裁,但公证方不能伪造这一过程

常用的数字签名技术有RSA签名体制、Robin签名体制、E1Gamal签名体制及在其基础之上产生的数字签名规范DSS签名体制。

1.2数字签名技术的原理

为了提高安全性,可以对签名后的文件再进行加密。假如发送方A要给接收方B发送消息M,那么我们可以把发送和接收M的过程简单描述如下:

(1)发送方A先要将传送的消息M使用自己的私有密钥加密算法E(al)进行签名,得V=E(al(M))其中,A的私有加密密钥为al;

(2)发送方A用自己的私有密钥对消息加密以后,再用接收方B的公开密钥算法Ebl对签名后的消息V进行加密,得C=E(b l (V))。其中,B的公开加密密钥为6l.

(3)最后,发送方A将加密后的签名消息C传送给接收方B

(4)接收方B收到加密的消息C后,先用自己的私有密钥算法D(62)对C进行解密,得V=D(h2挥))其中,B的私有解密密钥为62(5)然后接收方再用发送方A的公开密钥算法D(a2)对解密后的消息V再进行解密,得M=D(a2(V))。其中,,A的公开解密密钥为a2=这就是数字签名技术的基本原理。如果第三方想冒充A向B发送消息,因为他不知道.a的密钥,就无法做出A对消息的签名如果A想否认曾经发送消息给B.因为只有A的公钥才能解开A对消息的签名,.a也无法否认其对消息的签名数字签名的过程图l如下:

2. RSA算法

2.1 RSA算法的原理

RSA算法是第一个成熟的、迄今为止理论上最成功的公开密钥密码体制,该算法由美国的Rivest,Shamir,Adle~三人于1978年提出。它的安全性基于数论中的Enle:定理和计算复杂性理论中的下述论断:求两个大素数的乘积是容易计算的,但要分解两个大素数的乘积,求出它们的素因子则是非常困难的.它属于NP一完全类

2.2 RSA算法

密钥的产生

①计算n用户秘密地选择两个大素数F和9,计算出n=p*q, n称为RSA算法的模数明文必须能够用小于n的数来表示实际上n是几百比特长的数

②计算 (n)用户再计算出n的欧拉函数(n)二(P-1)*(q-1),(n)定义为不超过n并与n互素的数的个数③选择。。用户从[(0, (n)一1〕中选择一个与}(n)互素的数B做为公开的加密指数

4计算d。用户计算出满足下式的d : ed = 1 mal (n)(a与h模n同余.记为a二h mnd n)做为解密指数。

⑤得出所需要的公开密钥和秘密密钥:公开密钥(加密密钥):PK={e,n} ;

秘密密钥(解密密钥);SK=(d,n}

加密和解密过程如下:

设消息为数M(M<n)

设C=(Md)mod n,就得到了加密后的消息C;

设M=(Ce)mod n,就得到了解密后的消息M。其中,上面的d和e可以互换

由于RSA算法具有以下特点:加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥))SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。它们满足条件:①加密密钥PK对明文M加密后,再用解密密钥SK解密,即可恢复出明文,或写为:Dsk(Esk(M))= M②加密密钥不能用来解密,即((D娜e,c}M)) } M③在计算机上可以容易地产生成对的PK和SK}④从已知的PK实际上不可能推导出SK⑤加密和解密的运算可以对调,即:E}(M)(Es}(M)(M))=M所以能够防止身份的伪造、冒充,以及对信息的篡改。

3. RSA用于数字签名系统的实现

RSA竿名讨程如下图2所示:

数字签名技术论文范文第2篇

【关键词】数字签名;密钥;时间标记

     一、数字签名的相关定义

所谓“数字签名”,就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名,来代替手写签名或印章,对于这种电子式的签名还可进行技术验证。数字签名在iso7498-2标准中定义为:“附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造”。数字签名实现的功能与我们“有纸办公”的手写签名类同,具有准确性、实用性、完整性、可鉴别性、不可抵赖性等特性,同时解决否认、伪造、篡改及冒充等问题。

二、数字签名技术

数字签名技术实际使用了信息发送者的私有密钥变换所需传输的信息,对于不同的文档信息,发送者的数字签名并不相同。目前主要是基于公钥密码体制的数字签名,包括普通数字签名和特殊数字签名。普通数字签名算法有sha、rsa、schnorr数字签名算法等。特殊数字签名有签名、门限签名等。

(一)rsa算法体制

1978年,美国三位学者rivest、shamir和adleman,提出了rsa公钥密码体制,它是第一个成熟的、迄今为止上最成功的公钥密码体制。

rsa算法是建立在大数分解和素数检测的理论基础上的,是一种分组密码体制。它的思路是:两个大素数相乘在计算上是容易实现的,但将它们的乘积分解为两个大素数的因子的计算时却相当巨大,甚至在计算机上也是不可实现的。所谓素数检测,是指判断给定的一个整数是否为素数。rsa的安全性基于数论中大整数的素因子分解的困难性。

(二)使用公开密钥密码技术对文件签名的过程

公开密钥或者私人密钥都可用作加密。用你的私人密钥加密文件,你就拥有安全的数字签名。

1.数字签名的协议举例:假设有a公司的老板名叫john,b公司的老板名叫marry,现john想传输一个文件给marry,这个文件是有关于一个合作项目标书,属公司机密,不能让其它人知道,而恰好有一个c公司的老板david对a和b公司的那项合作标书非常关注,总想取得a公司的标书。于是他时刻监视他们的网络通信,想在john通过网络传输这份标书时,从网络上截取它。为了防止david截取标书,实现安全传输,我们可以采用以下步骤:

    (1)marry用她的私人密钥对文件加密,从而对文件签名。

    (2)marry将签名的文件传给john。。

    (3)john用marry的公开密钥解密文件,从而验证签名。

      这个协议比以前的算法更好。不需要trent去签名和验证。从中需要证明marry的公开密钥确实是她的。甚至协议的双方不需要trent来解决争端;如果john不能完成第3步,那么他知道签名是无效的。

这个协议也满足我们期待的要求:

(1)签名是可信的,当john用marry的公开密钥时,他知道是由marry的签名。

(2)签名不可伪造的,只有marry知道她的私人密钥解密。

(3)签名是不可重用的。签名是文件的函数,并且不可能转换成另外的文件。

(4)被签名的文件是不可改变的。如果文件有任何的改变,文件就不可能用marry的公开密钥验证。

(5)签名是不可抵赖的。john不需要marry的帮助就能验证marry的签名。

2.文件签名和时间标记。实际上,john在某种情况下可以欺骗marry。他可能把签名和文件一起重用。如果marry在合同上签名,这种重用不会有什么问题,但如果marry在一张数字支票上签名,那样做就令人兴奋了。假若marry交给john一张¥100000的签名数字支票,john把支票拿到银行去验证签名,然后把钱从marry的账户上转到自己的账户上。john是一个无耻之徒,他保存了数字支票的副本。过了一星期,他又把数字支票拿到银行(或可能是另一个银行),并把钱转到他的账户上。只要marry不去对支票本清账,john就可以一直干下去。

因此,数字签名经常包括时间标记。对日期和时间和签名附在消息中,并跟消息中的其他部分一起签名。银行将时间标记存储在数据库中。现在,当john第二次想支取marry的支票时,银行就要检查时间标记是否和数据库中的一样。由于银行已经从marry的支票上支付了这一时间标记的支票,于是就报警。

三、我国数字签名存在的问题及分析

数字签名的保密性很大程度上依赖于公开密钥。数字认证是基于安全标准、协议和密码技术的电子证书,用以确立一个人或服务器的身份,它把一对用于信息加密和签名的电子密钥捆绑在一起,保证了这对密钥真正属于指定的个人和机构。

由于互联网自身的开放性和全球性,在电子交易过程中也产生了诸多安全和诚信的法律问题。

(一)数字签名存在的问题

网络信息系统的技术性和管理性安全成为数字签名应用的最大威胁。同时在我们广泛接受数字签名的过程中还存在着诸多法律问题。争论最激烈的是关于数字签名能否与手写签名一样具有可靠性,是否能具备“认可”的条件。为了更好地努力分析数字鉴定的可靠性, 全世界的国家都起草了数字签名的提议, 联合国甚至也在试图建立一个国际标准。美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(dss)。一些国家如法国和德国已经制定一套法律、规则及实际操作方法,用于规范某个机构如何来管理、保护和分配资源以达到安全策略的既定目标。由于我国电子商务起步相对较晚,技术相对落后,缺乏具有自主知识产权的安全产品,因此在安全问题方面还存在着更多的风险与危机。

(二)解决我国数字签名存在问题的策略

目前我国电子签名法对可靠的数字签名判断的不易掌握性与执法者对这一崭新领域的陌生感之间的反差,使我们很是忧虑。下面提出解决我国数字签名存在问题的若干建议:

1.大力发展先进的、具有自主知识产权的信息技术,建立一个完整的信息网络安全体系。我国信息安全研究起步较晚,在网络信息系统中使用的计算机、路由器等软、硬件系统大部分由国外引进,而且信息技术相对落后,由此加大了我国数字签名发展的安全风险和技术选择风险。因此要加快完善我国信息网络安全的技术安全、管理安全和政策法律安全体制的步伐。只有信息网络体系健全,那么通过网络传输的信息的安全才能得到保证,数字签名技术才能发挥真正的作用。

2.数字签名技术仍需进一步完善,大力改进数字签名内在的安全技术措施,如生成和验证数字签名的工具需要完善,只有用ssl(安全套接层)建立安全链接的web浏览器,才会频繁使用数字签名。

3.和数字签名有关的复杂认证能力程序化、简易化并易于掌握、便于操作;就像现在操作、应用环境中的口令密码一样直接做进操作系统环境、应用、远程访问产品、信息传递系统及in?鄄ternet防火墙中,方便用户的操作和使用。另一方面,还要不断教育我们的广大用户,使其具备自行约定可靠数字签名的常识和能力,以便及时维护自身的合法权益。

4.及时修改、完善《电子签名法》和《电子认证服务管理办法》等相关法律法规。法律为数字签名的安全和诚信提供必要的保障。科技和社会的发展要比法律变化快,我们的法律不能一成不变,要让法律的变化与科技、社会的发展同步而行。

5.确定ca认证权的归属问题尤为关键。数字签名的第三方认证由依法设立的电子认证服务提供者提供认证服务。需要第三方认证的数字签名应由依法设立的电子认证服务提供者提供认证服务。由于公共密钥的存储需要,所以需要建立一个鉴定中心(ca),来完成个人信息及其密钥的确定工作。鉴定中心是一个政府参与管理的具有可信赖性的第三方成员,以便保证信息的安全和集中管理。数字签名决定着技术商业信誉的建立,数字签名技术的发展决定着电子商务中的诚信问题。

在电子签名法及电子支付的指引下,大力发展数字签名在我国网上支付、电子税收、电子海关、网上采购等领域的应用,让我国更安全的新一代电子认证与世界接轨。当数字签名技术越来越普遍的时候, 并不是每个人都觉得满意。数字签名是未来信息安全发展的潮流,不断完善数字签名的基础设施环境和法律、技术问题,自然成了我国目前发展数字签名的当务之急。 【参考文献】

      [1]谢希仁.计算机网络[m].电子工业出版社,2003.

      [2]rivest,shamir, adleman.a method for obtaining digital signature and public key cryptosystems.commun.acm[j].1978,(2).

      [3]管有庆,王晓军.电子商务安全技术[m].电子工业出版社,2005.

      [4]吴汉平.信息站与信息安全[m].电子工业出版社,2003.

      [5]彭钦,郭晶.电子商务教程[m].人民邮电出版社,2005,.

数字签名技术论文范文第3篇

论文摘要:密码技术是信息安全的核心技术公钥密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。本文介绍了数字签名技术的基本功能、原理和实现条件,并实现了基于rsa的数字签名算法

0.引言

    随着计算机网络的发展,网络的资源共享渗透到人们的日常生活中,在众多领域上实现了网上信息传输、无纸化办公。因此,信息在网络中传输的安全性、可靠性日趋受到网络设计者和网络用户的重视数字签名技术是实现交易安全的核心技术之一,在保障电子数据交换((edi)的安全性上是一个突破性的进展,可以解决否认、伪造、篡改及冒充等问题

    1.数字签名

    1.1数字签名技术的功能

    数字签名必须满足三个性质

    (1)接受者能够核实并确认发送者对信息的签名,但不能伪造签名

    (2)发送者事后不能否认和抵赖对信息的签名。

    (3)当双方关于签名的真伪发生争执时,能找到一个公证方做出仲裁,但公证方不能伪造这一过程

    常用的数字签名技术有rsa签名体制、robin签名体制、e1gamal签名体制及在其基础之上产生的数字签名规范dss签名体制。

    1.2数字签名技术的原理

    为了提高安全性,可以对签名后的文件再进行加密。假如发送方a要给接收方b发送消息m,那么我们可以把发送和接收m的过程简单描述如下:

    (1)发送方a先要将传送的消息m使用自己的私有密钥加密算法e(al)进行签名,得v=e(al(m))其中,a的私有加密密钥为al;

    (2)发送方a用自己的私有密钥对消息加密以后,再用接收方b的公开密钥算法ebl对签名后的消息v进行加密,得c=e(b l (v))。其中,b的公开加密密钥为6l.

    (3)最后,发送方a将加密后的签名消息c传送给接收方b

    (4)接收方b收到加密的消息c后,先用自己的私有密钥算法d(62)对c进行解密,得v=d(h2挥))其中,b的私有解密密钥为62(5)然后接收方再用发送方a的公开密钥算法d(a2)对解密后的消息v再进行解密,得m=d(a2(v))。其中,,a的公开解密密钥为a2=这就是数字签名技术的基本原理。如果第三方想冒充a向b发送消息,因为他不知道.a的密钥,就无法做出a对消息的签名如果a想否认曾经发送消息给b.因为只有a的公钥才能解开a对消息的签名,.a也无法否认其对消息的签名数字签名的过程图l如下:

2. rsa算法

    2.1 rsa算法的原理

    rsa算法是第一个成熟的、迄今为止理论上最成功的公开密钥密码体制,该算法由美国的rivest,shamir,adle~三人于1978年提出。它的安全性基于数论中的enle:定理和计算复杂性理论中的下述论断:求两个大素数的乘积是容易计算的,但要分解两个大素数的乘积,求出它们的素因子则是非常困难的.它属于np一完全类

    2.2 rsa算法

    密钥的产生

    ①计算n用户秘密地选择两个大素数f和9,计算出n=p*q, n称为rsa算法的模数明文必须能够用小于n的数来表示实际上n是几百比特长的数

    ②计算 (n)用户再计算出n的欧拉函数(n)二(p-1)*(q-1),(n)定义为不超过n并与n互素的数的个数③选择。。用户从[(0, (n)一1〕中选择一个与}(n)互素的数b做为公开的加密指数

    4计算d。用户计算出满足下式的d : ed = 1 mal  (n)(a与h模n同余.记为a二h mnd n)做为解密指数。

    ⑤得出所需要的公开密钥和秘密密钥:公开密钥(加密密钥):pk={e,n} ;

    秘密密钥(解密密钥);sk=(d,n}

    加密和解密过程如下:

    设消息为数m(m<n)

    设c=(md)mod n,就得到了加密后的消息c;

    设m=(ce)mod n,就得到了解密后的消息m。其中,上面的d和e可以互换

    由于rsa算法具有以下特点:加密密钥(即公开密钥)pk是公开信息,而解密密钥(即秘密密钥))sk是需要保密的。加密算法e和解密算法d也都是公开的。虽然秘密密钥sk是由公开密钥pk决定的,但却不能根据pk计算出sk。它们满足条件:①加密密钥pk对明文m加密后,再用解密密钥sk解密,即可恢复出明文,或写为:dsk(esk(m))= m②加密密钥不能用来解密,即((d娜e,c}m)) } m③在计算机上可以容易地产生成对的pk和sk}④从已知的pk实际上不可能推导出sk⑤加密和解密的运算可以对调,即:e}(m)(es}(m)(m))=m所以能够防止身份的伪造、冒充,以及对信息的篡改。

    3. rsa用于数字签名系统的实现

    rsa竿名讨程如下图2所示:

数字签名技术论文范文第4篇

1.1危害网络安全因素

外部因素与内部因素共同构成了危害网络安全的因素,具体的,外部因素主要包含一些内外非法人员的非法入侵以及计算机病毒的攻击;而内部因素主要是指在管理上的缺失,既包含没有完善、统一的管理策略,又包含无专门的网络维护管理人员以及广大用户本身对于安全保密知识的缺乏。

1.2确保网络信息安全措施

计算机网络安全涉及到内容较广,如果要完成真正意义上的防护,需要有针对性对危害网络安全的因素做多重的防护。主要采用措施有:加密技术、防火墙技术、身份认证技术、病毒防护技术等。网络加密技术是实现网络安全防护最为有效的措施之一,通过网络加密可以预防那些非授权用户窃取重要的资料,也可以应对一些恶意软件的攻击。采用数字签名来实现非对称加密技术是当前应用在网络信息安全最为重要的手段。非对称加密,即为应用不同密钥实现解密和加密。

2数字签名概述

2.1数字签名概念与理解

所谓电子签名指的是在数据电文当中用于识别签名人身份同时表示签名人认可内容的电子形式的数据,而数字签名是电子签名中的一种,它是一种运用密码技术实现对电子文档的电子形式签名,但绝不是简单的数字图像化的书面签名。它可以称为是电子印章,相当于手写的签名或者印章,其原理是运用公开密钥算法,在利用自己的私钥对信息的数字摘要进行签名,在将其发送给对方时,若对方能运用发送者的公钥进行信息验证,那么他就知道信息是从发送方发来。签名对于一些重要文件来说是确定其有效性的关键步骤,但是对于传统文件来说,想要伪造签名十分简单,但是对于数字签名而言想要伪造就没有那么简单了,它必须要有产生签名的私钥。而否认一个传统文件签名是简单的,但是对于数字签名的否认就没那么简单了,除非证明在签名生成前的私钥的安全性就受到了危害。

2.2数字签名的优点

通过对数字签名的理解与运用,不难发现数字签名具有诸多优点,这也是数字签名能够在网络信息安全中成为关键性技术的原因,主要优点包含以下六点:第一,数据完整性的保障。一旦数据在传输过程中被修改或伪造,那么接受方的数字签名验证将无法通过。第二,身份识别。数字签名能够容易的确认发送方以及接收方身份,这点对于网上商务十分关键。第三,由于其采用加密技术,使得信息机密性得到有效提升。第四,不可抵赖性。只有发送方私钥被窃取的情况下才能够伪造其数字签名,因此,发送方一般无法抵赖其发送了该信息。第五,对于多页的传统文件,传统签名没法有效的保障其签名的有效范围,同时也较难判断文件签名后是否被添加或删改过内容,但数字签名就完全解决了这样的问题。第六,对于网上交易而言,数字签名具有较高速度和准确性,还能够生成时间戳。

3数字签名技术主要应用

3.1在电子邮件方面的应用

传统电子邮件系统交易被黑客冒名发送以及更改邮件信息,这是由于其没有采用身份认证功能,而采用过数字签名技术后的电子邮件在完整性、合法性以及防抵赖性等方面都得到了证实,有效的保障了电子邮件的安全性。其具体实现流程包括以下两个步骤:第一步,申请包含数字签名在内的安全电子邮件证书;第二步,应用数字签名来进行加密。

3.2在电子商务中的应用

SE(T安全电子交易)是目前使用最为广泛也是公认的一种安全电子商务标准,数字签名、数字证书等内容都是其中的核心技术,它的存在为商家、银行以及消费者间都提供了认证,从而大大的保障了交易数据的安全、完整与不可抵赖性,同时也有效的保障了消费者的隐私。

3.3在远程控制中的应用

远程控制中最主要的安全问题已经不再是数据的机密性,而是数据的完整性与不可抵赖性。在远程控制中需要解决两个方面的问题:第一,仅仅允许合法用户进行系统的管理;第二,能够有效的保障相关管理配置信息不被篡改。而数字签名技术就能够很好的解决这两方面的问题。

4结论

数字签名技术论文范文第5篇

[关键词] 数字签名数字水印离散余弦变换多媒体论证

随着因特网的迅速发展和普及,多媒体信息得到了空前广泛的交流与应用,给人们的生产和生活带来了许多便利。但是,多媒体信息的安全问题也随之而来,比如盗用别人的电子产品并在网上传播;在电子商务中伪造或篡改票据;对数字图像等多媒体信息进行修改、替换以达到损害别人的目的等。因此,对多媒体信息的有效论证是保证信息安全的重要手段。

电子交易的可实施性是电子商务要解决的最主要和最基本的问题。电子签名可以实现两个重要目标:排除电子商务的障碍;通过帮助建立参与者在网上从事商业活动所需要的信任和可预见性,实现并推动电子商务的适当的公共政策目标。

电子签名目前具备三个主要功能:数据来源认证:这可以用于认证信息来自于可疑的发送者;信息的完整性:有助于信息的接收者确定,在发送过程中,没有被有意或者随意地更改;不可否认性:发送者不能被否认信息的发送。

目前,存在几个方法可以有效完成上述功能。然而,基于公共公共密钥的密码系统的数字签名技术是目前被认为最普通、最可靠的技术。

数字签名是一种对多媒体信息进行论证的有效手段,它是由信息发送者对要传送的信息进行某种处理的,任何人都无法知道的,用以论证信息的来源并核实信息是否发生了变化的一段字符串。数字签名的基础是密码学。

数字水印技术近年来逐渐成为知识产权保护的主要手段,它是信息隐藏的一个重要分支,是通过在原始资料中嵌入一些有特殊意义的信息,如文字,序列号,公司标志,声音等,用以识别多媒体信息的作者,版权所有者、发行者,合法使用人对数字产品的拥有权等,并携带有版权保护信息和论证信息。

信息隐藏技术与传统密码学有本质的区别,传统密码学是将明文加密成密文,使信息不可理解,是隐藏了信息的内容;而信息隐藏技术着重隐藏了信息的存在。数字水印技术和数字签名各有优势和不足。数字签名容易受到攻击,而数字水印的安全度不高。如果将数字水印和数字签名有机结合起来,以之为基础构成一种新的水印方案,其安全性、可性度、论证精度都将会大大地提高,这无疑将是多媒体技术研究发展的一个很有前途的方向。

一、结合数字签名与数字水印的方案

把数字签名作为水印隐藏在图像中,数字签名方法用DSA(Date Signature Algorithm),数字水印方法用DCT(discrete cosine transform即离散余弦变换)。DSA签名是基于离散对数问题的数字签名标准,虽说它仅提供数字签名,不提供数据加密功能,但它具有算法简便实用,易实现等优点。而考虑用DCT是由于离散余弦变换是实变换,它具有良好的能量压缩能力,而且可以利用人的视觉系统(HVS)在DCT域内的特性。

在应用DSA之前先对其做一个简要说明:

如果要对一个消息x进行签名,可选取一个随机值k,且p, q,а和β公开,α保密(其中p是512比特的素数,q是一个整除p-1的160比特的素数,а是模p的q次单位根。α作为私钥,β作为公钥)。定义k={(p, q ,а, α, β):β=aα(modp)},对于Κ和一个秘密随机数k,1≤k≤q-1,对信息x的签名结果如下:

sigK(x,k)=(γ,δ)(1)

γ和δ即是对信息x的签名。

γ=(аkmodp)modq(2)

δ=(x+αγ)k-1modq(3)

签名是否为真通过下式来验证,e1=xδ-1modq(4)

e2=γδ-1modq(5)

verK(x,γ,δ)真(ae1βe2modp)modq=γ(6)

举例说明如下:

如p=83,q=41,а=2,β=4。另给出α=2(可以由信息发送者的身份信息构造而成),取k=20,应用上面的方法,对一个信息x (可以是一幅图像作品的版权序列号等,如取为39)进行签名得签名信息为:sigK(x,k)=(37,20), 将之代入(6)式,可以验证签名为真。

将签名的一些信息写入一个64×64的二值图像中,将之作为水印图像嵌入到一个名为Peppersr的512×512标准真彩图像中。具体方法如下:

(1)将数字签名的一些已知参数p,q,а,β及对信息x的签名(γ,δ)写入到一个64×64的二值黑白图像中,私钥α及随机数k可以由信息发送者身份识别的信息构成,信息x可以是一幅版权图像的序列编号构成。

(2)读取原始图像和黑白水印图像到二维数组I与J。

(3)将原始图像I分割为互不覆盖的图像块blockL(x,y),1≤x,y≤8,L=1,2…,M*M/64,对blockL(x,y)进行DCT变换,得到dct-blockL(u,v)。

(4)取黑白水印图像中的一个元素J(p,q)嵌入到原始公开图像块的DCT的低频系数中。

(5)对嵌入了水印信息后的图像块dct-blockL(u’,v’)进行反DCT变换,得到blockL(x’,y’)。

(6)合并图像块,得到嵌入了黑白水印后的图像。

水印提取算法与水印嵌入算法类似,不再赘述。

接收方收到含水印的图像后,从中提取水印得到签名信息,用发信方给的私钥α和秘密数k验证签名的真实性,从而可辨别作品的真伪(假设原始图像Peppers为一版权作品)。

二、实验结果

下图为水印的嵌入与提取图,程序的实验环境为MATLAB6.1。

从上图可得知:嵌入了水印后载体图像跟原始图像基本上无明显差异,即该水印图像的透明性良好,且在嵌入水印后的图像未受攻击的前提下,从中提取出的水印图像非常清晰。信息接收者应用我的水印提取算法可方便地得到签名信息,然后再用我给他的密钥可以验证此真彩图的真伪。

三、结论