节点文献

密钥哈希消息认证码椭圆曲线数字签名

Elliptic Curve Digital Signature Algorithm with Keyed-Hash Message Authentication Code

【作者】 贾宁

【导师】 彭新光;

【作者基本信息】 太原理工大学 , 计算机应用技术, 2007, 硕士

【摘要】 随着信息数字化的快速发展以及计算机的广泛应用,人们越来越重视网络传输信息的安全问题。黑客利用主机系统的漏洞进入系统有多种目的,无论是获得系统控制权限、实施攻击活动,还是隐藏行踪、开辟后门等,改变目标主机上的文件是最便捷也是最有效的方法,如:放置自己的监听程序、替代某些关键文件、修改编辑可信文件等。文件完整性检查是保护目标主机上的文件安全的最有效方法之一。文件完整性检查最常用的方法是比较利用哈希算法计算出的哈希值,判断出文件的内容或属性是否被改动。目前采用的哈希算法主要有MD5、SHA-1等。但随着MD5、SHA-1等算法相继被破解,迫切需要寻找一种新的更为安全的算法来进行文件完整性检查。椭圆曲线数字签名算法常用于身份认证,但可以利用其进行文件完整性的检查。该算法中用于计算消息哈希值的是SHA-1算法,但是SHA-1算法已经被破解,其安全强度已受到质疑。密钥哈希算法HMAC相对于SHA-1算法增加了密钥,由于篡改者无法知道密钥,所以一定程度上HMAC算法较SHA-1算法要安全。本文用HMAC算法替代SHA-1算法,作为椭圆曲线数字签名算法中的计算消息哈希值的算法,并将改进后的算法称为密钥哈希消息认证码椭圆曲线数字签名算法(HMAC-ECDSA),然后将其应用到文件的完整性检查中。主要完成了以下几个工作:1)对椭圆曲线密码体制的研究现状及发展趋势进行了研究和分析。在对椭圆曲线密码体制和椭圆曲线离散对数问题的安全性分析基础上,重点研究了椭圆曲线数字签名算法的安全性。2)提出了HMAC-ECDSA算法,并对该算法的实现流程进行了详细阐述。然后,本文利用有较强数学功能、可设计友好界面且有很好兼容性的VC++6.0作为该算法的开发工具,设计密钥对的生成、签名文件、验证文件签名和计算HMAC等功能模块,来实现一个对文件签名并验证签名的软件。该软件不仅可以通过验证文件的签名来验证文件的完整性,而且还可以通过HMAC算法来验证文件的完整性。3)分别从密码学理论、程序设计和对攻击高抵抗性的分析证明三个方面,验证了HMAC-ECDSA算法比椭圆曲线数字签名算法的安全强度更高。从密码学理论分析,HMAC可以使用密钥且HMAC算法的验证只在当时有效;在程序设计中实现HMAC时,可以将嵌入的哈希算法作为一个独立的模块,根据安全强度的需求替换哈希算法模块;在对攻击高抵抗性的证明中,利用模运算对HMAC-ECDSA算法的安全强度进行了验证。总之,本文采用的HMAC-ECDSA算法具有更高的安全性,可以抵抗否认、伪造和生日攻击等。本文设计的功能模块的实现采用了VC++6.0,这使得功能模块有很好的可扩展性、可重用性、独立性等特点。所设计的基于HMC-ECDSA算法的文件签名和验证软件具有安全性高、操作简单等特点。

【Abstract】 With the rapid development of digital information and extensive application of computer, people pay more attention to the security of the information in networks. Hackers intrude a computer system by exploiting some security vulnerability. They can do some activities without authorization such as acquiring the control authority of the system, attacking the system, hiding their tracks, opening back door. The most efficient method is tampering with files such as putting their monitoring program into the system, replacing the key file, compiling trusted file.File integrity checking is one of the most efficient means of protecting the files of the objective computer. The common method of file integrity checking is comparing the later hash value of the file with the original of the file by using a hash function, which make sure whether the contents or attributes of a file has changed. At present, there are some hash algorithms such as MD5, SHA-1. It becomes urgent to produce a new securer algorithm because of the explanation ofMD5 and SHA-1.Although ECDSA has been used to implement identity authentication, this thesis adopts it as a kind of resolution to check file integrity. SHA-1 is the hash function of ECDSA. For SHA-1 has been explained, the security of SHA-1 isn’t trusted. Because guessing the key is very difficult, HMAC is securer than SHA-1 to a certain extent.The improved ECDSA which is called HMAC-ECDSA adopts HMAC to compute the hash value rather than SHA-1. Then it is applied to file integrity checking. The contents of the thesis are as follows:1) The current situations and the development trend of the elliptic curve cryptography are introduced. The security of ECDSA is analyzed in detail based on ECC and the security of ECDLP.2) HMAC-ECDSA is put forward and the implementation of the algorithm is described in detail. The thesis uses VC++6.0 to implement HMAC-ECDSA, since VC++6.0 has several advantages such as performing an important computing function, designing a better interface and compatibility. A file signature-verification system which based on HMAC-ECDSA is designed and realized. The file signature-verification system has four function blocks such as the production of key pairs, signing a file, verifying the signature and HMAC. The file integrity is not only checked by verifying the signature but also by computing the HMAC value of the file.3) HMAC-ECDSA is proved to be effective in implementing file’s security by the theory of cryptography, program design and the high resistibility prove to attacks. HMAC compute the hash value of a file using a given key and the usability of this verification is instantaneous. Because the implanted hash function of HMAC is implemented as an individual function block, this block could be replaced easily according to the security request. The high capability of withstanding attacks of HMAC-ECDSA algorithm is proved by using modular arithmetic.In a word, HMAC-ECDSA in this thesis has high security, it is capable to withstand several attacks such as negational attack, forgery attack and birthday attack. The function blocks adopt VC++6.0 in the thesis so that function blocks have some characteristics such as expandability, reusability, independence. The file signature-verification system is characterized by high security and easy operation.

  • 【分类号】TN918.2
  • 【被引频次】3
  • 【下载频次】280
节点文献中: 

本文链接的文献网络图示:

本文的引文网络