030
基于二元一次不定方程的多重签名及其代理多重签名方案样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
本设计包含内容:源代码+毕业论文
论文大概:
摘 要
几乎已有的数字签名方案都是基于因子分解和离散对数两大困难问题而设计的,寻找新的数学难题并设计出基于新的数学难题的签名体制有重要意义,考虑到二元一次不定方程有无数的解,安全性很高。我们分析研究了基于Schnorr方案和吴挺等数字签名方案,提出了基于离散对数问题并以二元一次不定方程为基础的一个多重数字签名方案。
代理签名方案是指代理签名人可以代表原始签名人生成签名。它可以分为代理签名、代理多重签名和多重代理多重签名。本文基于二元一次不定方程的多重签名体制给出了一个代理多重签名方案,一个代理签名人可以同时代表多个原始签名人在文件上签名.
关键词: 数字签名、多重签名、代理签名、代理多重签名、二元一次方程
Abstract
Almost all existing digital signature schemes were based on the
difficulties of the discrete logarithm problem and the factoring
problem. Therefore, searching for the difficult mathematic problem
and designing a new signature scheme based on this is significance.
Considering the key to the bivariate simple equation is
innumerability and the high security, we use Schnorr’s signature
scheme and Wu et al.'s signature scheme, present a new
multi-signature scheme based on the bivariate simple
equation.
The proxy signature schemes allow proxy signer to sign
message on behalf of an original signer. It can be divided into
three types: proxy signature, proxy multi-signature and multi-proxy
multi-signature. This paper gives out a new proxy multi-signature
scheme based on our new multi-signature which is based on the
bivariate simple equation. In this new scheme, a proxy signer signs
message on behalf of many original signers.
Key word: digital signature、 multi-signature、 proxy
signature、 proxy multi-signature、 bivariate simple equation
第一章 引言
在这千年更迭,世纪交替的历史时刻,我们满怀激情迎接新世纪的挑战。21世纪将是信息(资讯)高速公路的时代,人类之间的距离将会大大缩短。通过电脑网络,人们彼此之间的信息交流呈现国际化、智能化和宽带化的趋势。在这新的世纪里,人们都期盼着生活在一个和平、安定的环境中,信息安全技术为实现这一理想提供了一种技术手段;密码学的理论与方法为保障信息系统的安全性提供了一个重要的科学途径。
我们可以看到随着信息技术的蓬勃发展,促使信息的流通与存取更为快速与便捷。计算机网络的广泛应用,缩短了人与人之间的距离,淡化了国与国之间的界限。但相随地却也激起了人们的某种危机意识,那就是当人们可以很方便地透过计算机网络,到处获取连接在网络上各种计算机的信息时,存贮在计算机内部的机密信息该如何加工?再者,一些重要的机密信息在众目睽睽的计算机网络上流通时,我们应该怎么做才不至于让这些信息轻易地暴光,而让信息的拥有者免于蒙受无法弥补之重大损失。近年来,计算机密码学越来越受到世界各国重视,而密码技术的发展更如雨后春笋一般,其应用已跨越了国防军事与商业,在可以预见的将来,信息高速公路的时代即将来临,密码技术必然与个人的信息保密息息相关。而数字签名是对电子文档做出承诺或保证电子文档合法性、不可抵赖性的有效手段,在电子商务及办公信息化的建设中,其作用日益重要,数字签名的研究因而受到广泛的关注。
1.1 数字签名的背景
数据通讯的完整性是指数据在输入和传输的过程中,要求能保证数据的一致性,防止数据被非授权建立、修改和破坏。电子商务等领域的确简化了通讯过程,减少了认为的干预,但同时也带来了需要维护信息的完整、统一问题。由于数据输入时的意外差错或欺诈行为,可能导致通讯各方信息的差异。此外,数据传输过程中信息的丢失、信息重复或信息传送的次序差异也会导致通讯各方信息不同。信息的完整性将影响到通讯各方的利益与可信度,保持这种完整性是数据通信应用的基础。因此,要预防对信息的随意生成、修改和删除,同时要防止数据传输过程中丢失和重复信息,并保证信息传送次序的统一。
对信息进行加密只解决了保障数据机密性的问题,而要防止他人破坏传输的数据,要确定发送信息人的身份,还需要采用另外一种手段,即数字签名。
与电子认证一样,数字签名也是电子通讯中的安全保障机制。但两者的具体功能是不同的。数字签名侧重于解决身份辨别与文件归属问题,使数据信息不被否认或者篡改,主要是技术手段上的保证;而电子认证,则侧重解决的是通讯人的可信度问题,主要应用于交易关系的信用安全方面,是一种组织制度上的保证。
从一定意义上讲,签名本身就是证明签名者的身份与文件内容被认可的一种信息,它可以是用不同的形式来表示。在传统的以书面文件为基础的事务处理中,采用书面签名形式,如手签、印章、指印等。在以计算机网络为工具的商业交易中,信息的载体已变得无纸化,采用传统书面签名已不再可能,于是就出现了能执行传统签名功能的电子形式的签名(Electronic
Signature)。从广义上讲,凡是能在电子计算通讯中,起到证明当事人的身份、证明当事人对文件内容的认可的电子技术手段,都可被称为电子签名。目前主要有口令、密钥、数字加密、生物特征认证等等。狭义的电子签名,是以一定的电子签名技术为特定手段的签名,通常指数字签名(Digigal
Signature),它是以非对称加密方法产生的数字签名。
数字签名的原理在传统贸易中就曾采用过。在传统商务中,大多数国家都要求合同的当事人在书面上签名或者盖章。例如,交易双方对于巨额或大宗的交易文件,为了确保盖章的真实性,用印一方需在盖章之前将印章提交公证机关登记,并申请印章证明,再将印章证明与盖过章的文件一起送交对方,收到的一方将印章证明与文件印章相对比,在认定两者一致的情况下,方确认文件的真实性。按照“功能等价法”,这种签名或盖章主要有以下三个作用:一为表明文件的来源;二为表明签字者已确认文件所载之内容;三为构成证明签字者对文件内容之正确性和完整性而负责任的证据。在传统商务中,由于这种手写签名的独特性,所以我国和大多数国家都把它作为使书面合同有效的一个必要条件。
电子提单运作的平台是网络系统,传统的签名已经无法实现其作用。尽管有些国家的立法如我国《合同法》第三十三条规定了一个补救的方法——“当事人采用信件、数据电文等形式订立合同的,可以在合同成立之前要求签署确认书”,但实际上,这种做法将大大降低电子商务的效率,因而不足取。真正把传统签名的作用与网络平台结合起来的,是数字签名。以采用公共密钥技术的数字签名为例,在使用数字签名之前,签名一方须将其公共密钥交由一个可信赖的第三方(即安全认证机构)登记,并由该机构签发电子凭证。签名一方在用私人密钥在文件上签名之后和电子凭证一起交给接收文件的对方。对方通过电子凭证用公共密钥验证数字签名的正确性。
由于数字签名具有技术特征,因此有关数字签名的法律文件是否要把数字签名技术特定化就成为了两难的问题。一方面,如果确定了一种数字签名技术(一般来说是最普遍的公开密钥技术),安全认证等所有制度都必须围绕着这种技术设置,虽然使数字签名制度清楚和简明,但是忽略了技术不断发展、日趋多样化的事实。虽然公开密钥技术现在还被普遍适用,但是已经有了生物测量法、动态数字签名等新技术问世。如果法律只承认公共密钥技术的效力,那么就可能与商务实践相脱节,被技术发展所淘汰。另一方面,法律完全不涉及数字签名技术也是不可能的,因为数字签名的问题不是法律简单地规定“数字签名与手书签名具有相同的法律效力”就能解决得了的,承认数字签名的效力就必须建立相应的认证机制,而一定机制总是与特定技术联系在一起的。
在解决上述立法模式上的“两难问题”方面,新加坡的“电子商务法”的经验值得我国借鉴。新加坡“电子商务法”采取了折衷的办法,一方面规定了数字签名的一般效力,保持技术中立性,适用于以任何技术为基础的数字签名;另一方面,又对所谓“安全数字签名”(即以公开密钥技术为基础的数字签名)做出了特别规定,并建立了配套认证机制。新加坡“电子商务法”这样做的结果是,既保持了法律规范的技术中立性,不拘泥于公开密钥技术,使法律规定具有开放性和前瞻性,又不失现实性,以公开密钥技术为基础做出了具体的规定。这一立法模式受到美国、欧盟等发达国家和地区的关注和充分肯定。
另外还有一个完整性的推定的问题。1999年9月UNCITRAL电子商务工作组会议讨论的《电子签字统一规则草案》中,首次提出,如对于一份数据电文使用了一种电子签名,它能提供当事方或权威机构认可的可靠手段确保自最初生成信息的最后形式,作为一项数据电讯或其他用途之时起始终保持该信息的完整无损,则推定该数据电讯为原件。1999年10月13日美国众议院司法委员会通过一项法案,承认合同的数字签名与手写签名同样有效。这项法案旨在建立数字签名的国家标准,增加网上交易的安全性,以进一步推进电子商务发展。此前众院商务委员会曾通过一条类似法案。
1.2
数字签名研究的意义
随着信息技术的发展与应用,信息安全的内涵在不断的延伸,从最初的信息保密性发展到信息的完整性、可用性、可控性和不可否认性,进而又发展为"攻(攻击)、防(防范)、测(检测)、控(控制)、管(管理)、评(评估)"等多方面的基础理论和实施技术。信息安全是一个综合、交叉学科领域,它要综合利用数学、物理、通信和计算机诸多学科的长期知识积累和最新发展成果,进行自主创新研究,加强顶层设计,提出系统的、完整的,协同的解决方案。与其他学科相比,信息安全的研究更强调自主性和创新性,自主性可以避免陷门",体现国家主权;而创新性可以抵抗各种攻击,适应技术发展的需求。
就理论研究而言,一些关键的基础理论需要保密,因为从基础理论研究到实际应用的距离很短。现代信息系统中的信息安全其核心问题是密码理论及其应用,其基础是可信信息系统的构作与评估。总的来说,目前在信息安全领域人们所关注的焦点主要有以下几方面:
1)
密码理论与技术;
2) 安全协议理论与技术;
3) 安全体系结构理论与技术;
4) 信息对抗理论与技术;
5)
网络安全与安全产品。
密码理论与技术主要包括两部分,即基于数学的密码理论与技术(包括公钥密码、分组密码、序列密码、认证码、数字签名、Hash函数、身份识别、密钥管理、PKI技术等)和非数学的密码理论与技术(包括信息隐形,量子密码,基于生物特征的识别理论与技术)。
自从1976年公钥密码的思想提出以来,国际上已经提出了许多种公钥密码体制,但比较流行的主要有两类:一类是基于大整数因子分解问题的,其中最典型的代表是RSA;另一类是基于离散对数问题的,比如ElGamal公钥密码和影响比较大的椭圆曲线公钥密码。由于分解大整数的能力日益增强,所以对RSA的安全带来了一定的威胁。目前768比特模长的RSA已不安全。一般建议使用1024比特模长,预计要保证20年的安全就要选择1280比特的模长,增大模长带来了实现上的难度。而基于离散对数问题的公钥密码在目前技术下512比特模长就能够保证其安全性。特别是椭圆曲线上的离散对数的计算要比有限域上的离散对数的计算更困难,目前技术下只需要160比特模长即可,适合于智能卡的实现,因而受到国内外学者的广泛关注。国际上制定了椭圆曲线公钥密码标准IEEEP1363,RSA等一些公司声称他们已开发出了符合该标准的椭圆曲线公钥密码。我国学者也提出了一些公钥密码,另外在公钥密码的快速实现方面也做了一定的工作,比如在RSA的快速实现和椭圆曲线公钥密码的快速实现方面都有所突破。公钥密码的快速实现是当前公钥密码研究中的一个热点,包括算法优化和程序优化。另一个人们所关注的问题是椭圆曲线公钥密码的安全性论证问题。
公钥密码主要用于数字签名和密钥分配。当然,数字签名和密钥分配都有自己的研究体系,形成了各自的理论框架。目前数字签名的研究内容非常丰富,包括普通签名和特殊签名。特殊签名有盲签名,代理签名,群签名,不可否认签名,公平盲签名,门限签名,具有消息恢复功能的签名等,它与具体应用环境密切相关。显然,数字签名的应用涉及到法律问题,美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(DSS),部分州已制定了数字签名法。法国是第一个制定数字签名法的国家,其他国家也正在实施之中。在密钥管理方面,国际上都有一些大的举动,比如1993年美国提出的密钥托管理论和技术、国际标准化组织制定的X.509标准(已经发展到第3版本)以及麻省里工学院开发的Kerboros协议(已经发展到第5版本)等,这些工作影响很大。密钥管理中还有一种很重要的技术就是秘密共享技术,它是一种分割秘密的技术,目的是阻止秘密过于集中,自从1979年Shamir提出这种思想以来,秘密共享理论和技术达到了空前的发展和应用,特别是其应用至今人们仍十分关注。我国学者在这些方面也做了一些跟踪研究,发表了很多论文,按照X.509标准实现了一些CA。但没有听说过哪个部门有制定数字签名法的意向。目前人们关注的是数字签名和密钥分配的具体应用以及潜信道的深入研究。
Hash函数主要用于完整性校验和提高数字签名的有效性,目前已经提出了很多方案,各有千秋。美国已经制定了Hash标准-SHA-1,与其数字签名标准匹配使用。由于技术的原因,美国目前正准备更新其Hash标准,另外,欧洲也正在制定Hash标准,这必然导致Hash函数的研究特别是实用技术的研究将成为热点。
美国早在1977年就制定了自己的数据加密标准(一种分组密码),但除了公布具体的算法之外,从来不公布详细的设计规则和方法。随着美国的数据加密标准的出现,人们对分组密码展开了深入的研究和讨论,设计了大量的分组密码,给出了一系列的评测准则,其他国家,如日本和苏联也纷纷提出了自己的数据加密标准。但在这些分组密码中能被人们普遍接受和认可的算法却寥寥无几。何况一些好的算法已经被攻破或已经不适用于技术的发展要求。比如美国的数据加密标准已经于1997年6月17日被攻破。美国从1997年1月起,正在征集、制定和评估新一代数据加密标准(称作AES),大约于2001年出台,目前正处于讨论和评估之中。AES活动使得国际上又掀起了一次研究分组密码的新高潮。继美国征集AES活动之后,欧洲和日本也不甘落后启动了相关标准的征集和制定工作,看起来比美国更宏伟。同时国外比如美国为适应技术发展的需求也加快了其他密码标准的更新,比如SHA-1和FIPS140-1。我国目前的做法是针对每个或每一类安全产品需要开发所用的算法,而且算法和源代码都不公开,这样一来,算法的需求量相对就比较大,继而带来了兼容性、互操作性等问题。
国外目前不仅在密码基础理论方面的研究做的很好,而且在实际应用方面也做的非常好。制定了一系列的密码标准,特别规范。算法的征集和讨论都已经公开化,但密码技术作为一种关键技术,各国都不会放弃自主权和控制权,都在争夺霸权地位。美国这次征集AES的活动就充分体现了这一点,欧洲和日本就不愿意袖手旁观,他们也采取了相应的措施,其计划比美国更宏大,投资力度更大。我国在密码基础理论的某些方面的研究做的很好,但在实际应用方面与国外的差距较大,没有自己的标准,也不规范。
第二章 常见的数字签名方案介绍
2.1
基于二元一次方程的数字签名方案
取两个素数p,q,满足 且在 中离散对数问题是难解的,g是 中阶为q的任一元素,取素数 ,计算
,H是单向Hash函数。公开p, q, g,
H作为公钥,而把k作为密钥加以秘密保存。当签名人要对消息m进行签名时,签名按如下方式产生:
⑴任取 :,计算 ;若
,则重新选取r。
⑵利用欧基里德算法求出a,b满足: ,则消息m对应的签名为
。
签名验证者对所给的消息、签名对
进行验证,验证方程为
。如果上式成立,则认为签名有效,否则认为是无效的。
2.2
Schnorr数字签名
①系统参数
⑴大素数p及q满足 及 。
⑵ 且满足
。
⑶h为单向散列函数。
②密钥
B的密钥为 。
③公开密钥
B的公开密钥为y,满足
。
④签名
⑴B任选一整数 ,并求出 。
⑵B求出 。
⑶B求出 ,
为B对m的签名。
⑤验证
⑴验证者A求出 。
⑵A检查 是否正确?若是,则 为m的合法签名文。
(注:若
为合法签名,则 )