APP下载

电子档案加密探讨

2015-12-02

山东电力高等专科学校学报 2015年1期
关键词:演算法签章数位

周 丽

黄冈职业技术学院 湖北 黄冈 438002

0 引言

随着现代科技的高速发展及计算机技术和网络技术在档案管理中的逐步应用。一种新型的档案载体一电子档案应运而生。它不仅使档案信息资源共享、远程查询利用成为了现实.同时也给档案管理工作带来了新的要求。由于电子档案是通过计算机进行操作、传输、存贮等处理方式而形成的档案。与传统纸质档案相比有着许多不同的特性,如:非人工识读性、系统的依赖性、信息的不稳定性、信息的可共享性等等。正是由于这些特性导致了其安全性的问题,同时在电子档案的输入、输出、存贮、传输过程中也不可避免地会产生误操作、丢失、被偷窃、病毒及黑客侵犯等危害。因此.对电子档案的管理要在纸质档案管理的基础上采取加密的安全措施,防患于未然。以确保电子档案的安全性、完整性和准确性。

1 什么是电子档案加密

电子档案加密简单地说即按演算法对原明文的电子档案处理,变成一段不能读的代码即密文。原来的内容要输密钥后才可显示,以此方法使数据保护不被窃取,解密则是逆过程,就是转化编码信息为原数据。

2 加密技术与应用

2.1 对称加密法

对称式金钥加密法又称为密钥加密法或传统密码法。此种加密系统是由演算法与一把金钥所组合而成。金钥是加密过程中会用到的密码字母集,所有的原始信息(或称为明文)中的字母都根据一套特定密码字母集一一的被重组置换。演算法只是加密的规则,必须要选配一把金钥(私密金钥)才可将原始信息转换成加密信息(或称为密文)。若密文在传送过程中被拦截或窃取,在没有金钥的情况是很难破解加密信息。接收者也唯有使用和加密时相同的金钥才有顺利解开信息内容。

此类加密法的加解密的速度极快。不过,由于加解密都需要使用相同的金钥,以致于金钥的保密与金钥如何安全的传送到另一方,一直是决定密码安全性的重要关键。

目前比较著名的对称式加密法有DES、RC2、RC5、Blowfish、Triple DES 及新一代密码演算 法AES(Rijndael)等。

2.1.1 DES加密演算法

DES(Data Encryption Standard)演算法是使用最广的秘密金钥演算法,它的大部份架构是以IBM所做的研究为基础,在1977年被美国国家标准局(National Bureau of Standard)采用为联邦标准(FIPS PUB 46)后,已成为金融界及其他业界最广泛使用的对称金钥密码系统。 DES的加密程序是使用一把56位元的钥匙来对64位元的资料区块进行加密,通过一连串的步骤,可将64位元的输入转为64位元的输出。由于DES的金钥长度只有56位元而已,这使得它在遇到暴力攻击法来搜寻金钥的攻击时,显得有些脆弱。

2.1.2 Triple DES加密演算法

因为DES具有被暴力法破解的潜在危机,所以寻求替代方案的其中一种策略就是利用DES以及多把钥匙来进行多重加密。 Triple DES就是对明文使用相同的DES演算法,并采用两把或三把不同的金钥分别进行三阶段的加密处理程序,如图1。若使用两把不同金钥加密,明文区块的加密过程如下:

从图中可以看到,体系的总能量随着实验的进行时,明显的在后段的波动幅度增大了,但前半段变化幅度比后一段小。

用第一把金钥加密明文区块。

将步骤一的结果用第二把金钥解密。

将步骤二的结果用第一把金钥再加密,产生密文。

图1 Triple DES加密演算法

若使用三把不同的金钥加密,第一、二步骤相同,不同的是第三步骤使用第三把金钥加密来产生密文。使用三把不同金钥加密,等于把金钥长度增加为DES金钥的三倍,使得金钥的长度可以达到168位元。使用两把不同金钥加密,也使得金钥长度可以达到112位元。这两种方式虽然都可以增加其安全性,但使用三把不同金钥的方式似乎是更安全的方法。

2.1.3 AES加密演算法

美国政府有鉴于破解技术的快速演进,对于只有56位元密钥的DES而言,密钥长度实在太短,安全性受到质疑。基于此,美国标准技术局(National Institute of Standard and Technology) 于1997年计划公开征求先进加密标准AES(Advanced Encryption Standard)来取代 DES,经过四年的评选,终于在2000年10月选出Rijndael为下一代美国密码系统标准。 AES采用128位元的明文区块长度,可接受的密钥长度为128位元、192位元及256位元。由于128位元的密钥长度能够提供足够的安全性,而且比更长的密钥需要较少的处理时间,因此128位元密钥长度最常被采用。

2.2 非对称加密法

非对称式加密法又称为公开金钥密码法,它是一种非对称性的结构,使用了一对金钥来进行加密;一把为可以公开的加密金钥(称公开金钥),与一把必须保持秘密的解密金钥(称私密金钥)。利用公开金钥进行信息加密,并通过私密金钥就可以解开信息。私密金钥不可公开,但公开金钥却可以广为传播。当要传递秘密金钥给对方时,只要拿到对方的公开金钥,就可以通过对方的公开金钥加密秘密金钥,并把已加密的秘密金钥传送给对方。当对方收到已加密的「秘密金钥」时,只要利用他自己的私密金钥解密即可得到秘密金钥。因此,这种密码法可以达到让网络上无法面对面的双方,借着不安全的网络通道传递所需要的「秘密金钥」,以进行之后的秘密通讯。

此类加密法的缺点是加解密的速度慢,并不适合对电子档案进行加密。它一般只是用来传送「秘密金钥」,以解决秘密通讯双方共享秘密时,有关秘密金钥传送的困难问题。

目前较著名的非对称加密法RSA加密法、El-Gamal加密法、Diffie-Hellman钥匙交换法等。

RSA加密法是根据一种叫做模函数类型的单向函数,将公开金钥套入此种单向函数可以将原始信息转换成加密信息。这种单向函数只有在某些特殊条件下,才可以逆向求出原值。公开金钥并不存在这种特殊条件,无法将加密信息还原回来,所以在加密端须使用公开金钥来加密原始信息,以确保加密信息无法通过公开金钥还原原始信息。然而,这套密码系统最特别之处在于私密金钥中存有可逆转单向函数的特别信息,解密者可以使用私密金钥来还原加密信息。 RSA加密法的优点在于它解决了传统加密法中的金钥传送问题,利用对方的公开金钥来加密秘密金钥,可让传送者不用担心在传送过程金钥被拦截,而接收者只要利用自己的私密金钥就可以解密,这是非常方便的。

2.3 数位签章

数位签章提供了身份认证及资料完整性两种安全服务,它除了可以确保信息未遭到他人篡改,还可以确认发送端的身份。因此,运用数位签章可以在传播资料的同时又同时具备有杜绝伪造的功能。目前最著名的数位签章演算法有RSA签章系统、DSA签章系统及ElGamal签章系统。其中的DSA签章系统是由NSA所开发,并且被国家标准与技术协会(NIST)当做标准公布。RSA数位签章为非对称式加密法之反相运作,即运用私钥加密,利用公钥来解密。它的重点并不在于资料的保密,因为解密的公钥是公开的,人人都可拿到这把公钥来解开资料。当信息以私钥加密后,只有拥有与该私钥相对应的公钥的人才可解密,但由于私钥是不公开的,所以以此私钥加密的信息就可视为签章,以代替现行的手写签名。

RSA数位签章的运作方式如下,被签章的电子档案会被导入一个摘要函数,以产生一个固定长度的杂凑码。再利用私钥对此杂凑码加密,所得到的就是数位签章。最后,将信息与数位签章一起送出。接收端收到电子档案与签章后,会利用传送者的公开金钥来解开RSA数位签章,并对该电子档案产生一个杂凑码。如果解开的签章与所产生的杂凑码相同的话,即可证明此一签章确实是由发送端所签署;若不相同则表示在传输过程中发生错误或遭到窜改。

明文明文验证杂凑函数RSA演算法数位签章RSA演算法杂凑函数私密金钥公开金钥。

若甲用户想给乙用户寄信,相互都知对方公钥。甲加密邮件时用乙的公钥然后寄出,乙收后可用本人私钥解密甲原文。乙的私钥无人知,甲对那封信也不能解密,保密信件的问题就能解决。再则,因大家都知乙公钥,每人都能发信给乙,乙又怎知是否甲的信呢?这要用到基于加密的数位签章技术。甲用本人私钥加密签名内容,附邮件后,再将整个邮件用乙公钥加密(注意次序,若先加密后签名,别人可以将签名去掉后签上自己的签名,从而篡改了签名)。这样这份密文被乙收到后,乙将邮件用他的私钥解密,可得甲原文与签章,再用甲公钥解密签名,两边的安全就得以确保。

3 加密技术中摘要函数

摘要函数的目的在产生档案、信息或资料区段的「指纹」,它可以将任何长度的信息加以浓缩转换为一固定长度的杂凑值,而仍然具有分辨文件的能力。

为了有效地确认信息,摘要函数必须具备两种特性:单向性(one-way)与碰撞抵抗力(collision resistance)。单向性指的是:给定一个信息,可以很容易算出杂凑码;但是如果给定一个杂凑码,则无法还原先前的信息。当两份不同文件产生相同的杂凑码,这种现象称为碰撞。碰撞抵抗力指的是:任何两份不同文件的杂凑值是不会相同的。

目前常见的摘要函数有 MD5、SHA、SHA-1、RIPEMD-128及RIPEMD-160等。

MD5摘要函数 (RFC 1321)是Ron Rivest在MIT所设计发展的,它可以将任可长度的文件、信息转换为128位元的杂凑值。有研究报告指出MD5中压缩函数的碰撞已被找到,所以RSA公司己发布新闻指出MD5己不再适用于未来的签章使用,代替的方案是采用更长的杂凑码。建议采用SHA-1与REPEMD-160来代替MD5是安全的做法。

SHA(secure hash algorithm)是由国家标准与技术协会(NIST)所发展出来的,并且在1993年公布成为美国联邦信息处理标准(FIPS PUB 180)。在1995年又修订版本发布为FIPS PUB 180-1,此版本通称为SHA-1。 SHA-1的处理流程和MD5相似,但是输出的杂凑码长度为160位元。虽然SHA-1的处理速度比MD5慢,但却具有较高的安全性。

4 密钥管理

既然密钥要保密,管理密钥的问题就要涉及到,密钥管理不好,可能同样被泄露,有了密钥并非就没事了,保密是有时效、相对的。密钥要管理好需注意:

4.1 使用密钥要注意次数与时效

若用户任意次用相同密钥与他人信息交换,密钥和密码一样有安全问题,用户私钥虽不对外公开,但私钥的保密性也无法长期保证不被泄露。某人若在偶然的情况下得知用户密钥,则用户曾与他人交换的信息都无法保密。且使用特定的一个密钥加密越多信息,给窃听者提供越多的材料。 所以,一个对话密钥最好用于一次对话中或一条信息中,或按时更换密钥使暴露密钥的可能性减小。

4.2 多密钥管理

在某机构中假设有99人,他们之间任意两人如能秘密对话,任意两人间若要密钥不同,总共则需密钥4949个,且每人应记密钥98个。机构人数若是999、9999人或更多,此法管理密钥就十分复杂。

解决的方法是建立可信任、安全的分发密钥中心(KDC),只要每个用户知和KDC会话的一个密钥即可,无需知太多的密钥。

若甲用户想和乙用户秘密通信,甲用户可先通信和KDC,用只有KDC和甲用户两人知的密钥加密 ,甲告知KDC要和乙用户通信,KDC会随机为甲和乙间会话选一对话密钥,且生成一标签,此标签由乙和KDC间的密钥加密,甲开始和乙对话时,甲会交给乙此标签。标签的作用是让甲知道和他会话的是用户,而非他人。因为此标签只有KDC和乙知道的密钥加密的,因此就算他人得到甲发出的标签也无法解密,只有乙可解密,则和甲会话的人就确定了是乙。

当KDC生成会话随机密码和标签,就会把它们用只有甲用户和KDC知道的密钥进行加密,然后把标签和会话钥传给甲,可确保加密的结果只有甲能得到,确保只有甲能用此会话密钥和乙通话。同理,KDC把会话密码用只有乙和KDC知的密钥加密,并把会话密钥给乙。

甲启动和乙的会话,用得到的会话密钥对他和乙的会话加密,传KDC给他的标签传给乙来确定是否是乙,这样甲和乙就能用会话密钥安全会话,此会话密钥为了安全是一次性的,黑客想破解就更难了。因为密钥是由系统一次性自动生成的,用户可不用记密钥了,人们的通信就更方便。

[1] EdSkoudis,Lenny Zelter著,陈贵敏,侯晓慧译.决战恶意代码[M].北京 :电子工业出版社 .2009.

[2]韩筱卿,王建峰,钟玮等.计算机病毒分析与防范大全[M].北京:电子工业出版社,2006.

[3]程秉辉,John Hawke.防黑缉毒檎木马之绝命追杀(第三版)[M].北京 :科学出版社,2006.

[4]临时文件夹-软件百科 _360安全中心网址 http://baike.360.cn/wiki/item/%C1%D9%CA%B1%CE%C4%BC%FE%BC%D0.

[5]夏邦国,郭胜.SQL Server数据库开发入门与范例解析[M].北京:机械工业出版社,2004:15~30.

[6] Greg Buczek(美)著,杜伟罗治国译.即学即用 ASP.NET应用开发 [M].北京:清华大学出版社,2002:102-105.

[7]东名吴名月.ASP.NET动态网页设计高手 [M].北京:清华大学出版社,2001:10-30.

[8] Kathleen ,Kalata.Introduction to ASP.NET [M].NewYork:Thomson Press,2005.

[9] Jim Keogh.ASP.NET 2.0 demystified [M].California:Mc-Graw-Hill,2005.

猜你喜欢

演算法签章数位
《四庫全書總目》子部天文演算法、術數類提要獻疑
单多普勒天气雷达非对称VAP风场反演算法
相同数位相加减
分清数位 照“位”读写
你了解“数位”吗
对齐数位 看前顾后
运动平台下X波段雷达海面风向反演算法
电子签章制作系统设计与开发研究
浅谈带有电子签章文件的归档
电涡流扫描测量的边沿位置反演算法研究