如何用加密和数字签名技术解决医药审批中电子文档安全问题
摘要:如今新药的审批需要在国际间进行原始数据的传输。传统审批方式繁琐且效率低,而利用互联网传输电子文本即可保持数据的安全可靠,又可大大节约人力、物力和财力等。本文介绍了加密和数字签名算法的基本原理,并结合自己的思想,给出了医药审批中电子文本安全传输的解决方案。
关键词:数字签名;加密技术;数字证书;电子文档;安全问题
abstract: today’s approval of new drugs in the international community needs to carry out the raw data transmission. the traditional way of examination and approval red tape and inefficiency, and the use of the internet to transmit electronic text can keep data safe and reliable, but also greatly save manpower, material and financial resources, and so on. in this paper, encryption and digital signature algorithm of the basic principles, combined with his own ideas, given medical approval in the electronic transmission of the text of the security solution.
key words: digital signature; encryption technology; digital certificate; electronic documents; security issues
1引言
随着我国医药事业的发展,研制新药,抢占国内市场已越演越烈。WWw.11665.cOM以前一些医药都是靠进口,不仅成本高,而且容易形成壁垒。目前,我国的医药研究人员经过不懈的努力,开始研制出同类同效的药物,然而这些药物在走向市场前,必须经过国际权威医疗机构的审批,传统方式是药物分析的原始数据都是采用纸张方式,不仅数量多的吓人,而且一旦有一点差错就需从头做起,浪费大量的人力、物力、财力。随着internet的发展和普及,人们开始考虑是否能用互联网来解决数据传输问题。他们希望自己的仪器所做的结果能通过网络安全传输、并得到接收方认证。目前国外针对这一情况已⒘四承┤砑欢捎诩鄹癜汗螅际醪皇呛艹墒欤勾τ谘橹そ锥危媸被嵘兜脑颍诤苌偈褂谩u饩透谝揭┭蟹⑹乱敌纬闪思际跗烤保绾慰⒊鍪视榈南嘤θ砑创俳夜揭┥笈ぷ鞯姆⒄咕统闪斯诘那把亓煊颍胰涨肮谠谡夥矫娴难芯坎皇呛芏唷?lt;/div>
本文阐述的思想:基本上是参考国际国内现有的算法和*及一些相关的应用实例,并结合个人的思想提出了一套基于公钥密码*和对称加密技术的解决方案,以确保医药审批中电子文本安全传输和防止窜改,不可否认等。
2算法设计
2.1aes算法的介绍[1]
高级加密标准(advancedencryptionstandard)美国国家技术标准委员会(nist)在2000年10月选定了比利时的研究成果"rijndael"作为aes的基础。"rijndael"是经过三年漫长的过程,最终从进入候选的五种方案中挑选出来的。
aes内部有更简洁精确的数学算法,而加密数据只需一次通过。aes被设计成高速,坚固的安全性能,而且能够支持各种小型设备。
aes和des的性能比较:
(1)des算法的56位密钥长度太短;
(2)s盒中可能有不安全的因素;
(3)aes算法设计简单,密钥安装快、需要的内存空间少,在所有平台上运行良好,支持并行处理,还可抵抗所有已知攻击;
(4)aes很可能取代des成为新的国际加密标准。
总之,aes比des支持更长的密钥,比des具有更强的安全性和更高的效率,比较一下,aes的128bit密钥比des的56bit密钥强1021倍。随着信息安全技术的发展,已经发现des很多不足之处,对des的破解方法也日趋有效。aes会代替des成为21世纪流行的对称加密算法。
2.2椭圆曲线算法简介[2]
2.2.1椭圆曲线定义及加密原理[2]
所谓椭圆曲线指的是由韦尔斯特拉斯(weierstrass)方程y2+a1xy+a3y=x3+a2x2+a4x+a6(1)所确定的平面曲线。若f是一个域,ai∈f,i=1,2,…,6。满足式1的数偶(x,y)称为f域上的椭圆曲线e的点。f域可以式有理数域,还可以式有限域gf(pr)。椭圆曲线通常用e表示。除了曲线e的所有点外,尚需加上一个叫做无穷远点的特殊o。
在椭圆曲线加密(ecc)中,利用了某种特殊形式的椭圆曲线,即定义在有限域上的椭圆曲线。其方程如下:
y2=x3+ax+b(modp)(2)
这里p是素数,a和b为两个小于p的非负整数,它们满足:
4a3+27b2(modp)≠0其中,x,y,a,b∈fp,则满足式(2)的点(x,y)和一个无穷点o就组成了椭圆曲线e。
椭圆曲线离散对数问题ecdlp定义如下:给定素数p和椭圆曲线e,对q=kp,在已知p,q的情况下求出小于p的正整数k。可以证明,已知k和p计算q比较容易,而由q和p计算k则比较困难,至今没有有效的方法来解决这个问题,这就是椭圆曲线加密算法原理之所在。
2.2.2椭圆曲线算法与rsa算法的比较
椭圆曲线公钥系统是代替rsa的强有力的竞争者。椭圆曲线加密方法与rsa方法相比,有以下的优点:
(1)安全性能更高如160位ecc与1024位rsa、dsa有相同的安全强度。
(2)计算量小,处理速度快在私钥的处理速度上(解密和签名),ecc远比rsa、dsa快得多。
(3)存储空间占用小ecc的密钥尺寸和系统参数与rsa、dsa相比要小得多,所以占用的存储空间小得多。
(4)带宽要求低使得ecc具有广泛得应用前景。
ecc的这些特点使它必将取代rsa,成为通用的公钥加密算法。比如set协议的制定者已把它作为下一代set协议中缺省的公钥密码算法。
2.3安全散列函数(sha)介绍
安全散列算法sha(securehashalgorithm,sha)[1]是美国国家标准和技术局发布的国家标准fipspub180-1,一般称为sha-1。其对长度不超过264二进制位的消息产生160位的消息摘要输出。
sha是一种数据加密算法,该算法经过加密专家多年来的发展和改进已日益完善,现在已成为公认的最安全的散列算法之一,并被广泛使用。该算法的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段(通常更小)密文,也可以简单的理解为取一串输入码(称为预映射或信息),并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。散列函数值可以说时对明文的一种“指纹”或是“摘要”所以对散列值的数字签名就可以视为对此明文的数字签名。
3数字签名
“数字签名”用来保证信息传输过程中信息的完整和提供信息发送者的身份认证和不可抵赖性。数字签名技术的实现基础是公开密钥加密技术,是用某人的私钥加密的消息摘要用于确认消息的来源和内容。公钥算法的执行速度一般比较慢,把hash函数和公钥算法结合起来,所以在数字签名时,首先用hash函数(消息摘要函数)将消息转变为消息摘要,然后对这个摘
要签名。目前比较流行的消息摘要算法是md4,md5算法,但是随着计算能力和散列密码分析的发展,这两种算法的安全性及受欢迎程度有所下降。本文采用一种比较新的散列算法――sha算法。
4解决方案:
下面是医药审批系统中各个物理组成部分及其相互之间的逻辑关系图:
要签名。目前比较流行的消息摘要算法是md4,md5算法,但是随着计算能力和散列密码分析的发展,这两种算法的安全性及受欢迎程度有所下降。本文采用一种比较新的散列算法――sha算法。
4解决方案:
下面是医药审批系统中各个物理组成部分及其相互之间的逻辑关系图:
图示:电子文本传输加密、签名过程
下面是将医药审批过程中的电子文本安全传输的解决方案:
具体过程如下:
(1)发送方a将发送原文用sha函数编码,产生一段固定长度的数字摘要。
(2)发送方a用自己的私钥(keya私)对摘要加密,形成数字签名,附在发送信息原文后面。
(3)发送方a产生通信密钥(aes对称密钥),用它对带有数字签名的原文进行加密,传送到接收方b。这里使用对称加密算法aes的优势是它的加解密的速度快。
(4)发送方a用接收方b的公钥(keyb公)对自己的通信密钥进行加密后,传到接收方b。这一步利用了数字信封的作用,。
(5)接收方b收到加密后的通信密钥,用自己的私钥对其解密,得到发送方a的通信密钥。
(6)接收方b用发送方a的通信密钥对收到的经加密的签名原文解密,得数字签名和原文。
(7)接收方b用发送方a公钥对数字签名解密,得到摘要;同时将原文用sha-1函数编码,产生另一个摘要。
(8)接收方b将两摘要比较,若一致说明信息没有被破坏或篡改。否则丢弃该文档。
这个过程满足5个方面的安全性要求:(1)原文的完整性和签名的快速性:利用单向散列函数sha-1先将原文换算成摘要,相当原文的指纹特征,任何对原文的修改都可以被接收方b检测出来,从而满足了完整性的要求;再用发送方公钥算法(ecc)的私钥加密摘要形成签名,这样就克服了公钥算法直接加密原文速度慢的缺点。(2)加解密的快速性:用对称加密算法aes加密原文和数字签名,充分利用了它的这一优点。(3)更高的安全性:第四步中利用数字信封的原理,用接收方b的公钥加密发送方a的对称密钥,这样就解决了对称密钥传输困难的不足。这种技术的安全性相当高。结合对称加密技术(aes)和公开密钥技术(ecc)的优点,使用两个层次的加密来获得公开密钥技术的灵活性和对称密钥技术的高效性。(4)保密性:第五步中,发送方a的对称密钥是用接收方b的公钥加密并传给自己的,由于没有别人知道b的私钥,所以只有b能够对这份加密文件解密,从而又满足保密性要求。(5)认证性和抗否认性:在最后三步中,接收方b用发送方a的公钥解密数字签名,同时就认证了该签名的文档是发送a传递过来的;由于没有别人拥有发送方a的私钥,只有发送方a能够生成可以用自己的公钥解密的签名,所以发送方a不能否认曾经对该文档进进行过签名。
5方案评价与结论
为了解决传统的新药审批中的繁琐程序及其必有的缺点,本文提出利用基于公钥算法的数字签名对文档进行电子签名,从而大大增强了文档在不安全网络环境下传递的安全性。
本方案在选择加密和数字签名算法上都是经过精心的比较,并且结合现有的相关应用实例情况,提出医药审批过程的解决方案,其优越性是:将对称密钥aes算法的快速、低成本和非对称密钥ecc算法的有效性以及比较新的算列算法sha完美地结合在一起,从而提供了完整的安全服务,包括身份认证、保密性、完整性检查、抗否认等。
参考文献:
1.李永新.数字签名技术的研究与探讨。绍兴文理学院学报。第23卷第7期2003年3月,p47~49.
2.康丽军。数字签名技术及应用,太原重型机械学院学报。第24卷第1期2003年3月p31~34.
3.胡炎,董名垂。用数字签名解决电力系统敏感文档签名问题。电力系统自动化。第26卷第1期2002年1月p58~61。
4.leungkrph,huil,ck.handingsignaturepurposesinworkflowsystems.journalofsystems.journalofsystemsandsoftware,2001,55(3),p245~259.
5.wrightma,alookatpublickeycertificates.networksecurity,1998(2)p10~13.
6.bruceschneier.应用密码学---协议、算法与c源程序(吴世终,祝世雄,张文政,等).北京:机械工业出版社,2001。
7.贾晶,陈元,王丽娜,信息系统的安全与保密[m],北京:清华大学出版社,1999
8.陈彦学.信息安全理论与实务【m】。北京:中国铁道出版社,2000p167~178.
9.顾婷婷,《aes和椭圆曲线密码算法的研究》。四川大学硕士学位论文,【馆藏号】y4625892002。
下面是将医药审批过程中的电子文本安全传输的解决方案:
具体过程如下:
(1)发送方a将发送原文用sha函数编码,产生一段固定长度的数字摘要。
(2)发送方a用自己的私钥(keya私)对摘要加密,形成数字签名,附在发送信息原文后面。
(3)发送方a产生通信密钥(aes对称密钥),用它对带有数字签名的原文进行加密,传送到接收方b。这里使用对称加密算法aes的优势是它的加解密的速度快。
(4)发送方a用接收方b的公钥(keyb公)对自己的通信密钥进行加密后,传到接收方b。这一步利用了数字信封的作用,。
(5)接收方b收到加密后的通信密钥,用自己的私钥对其解密,得到发送方a的通信密钥。
(6)接收方b用发送方a的通信密钥对收到的经加密的签名原文解密,得数字签名和原文。
(7)接收方b用发送方a公钥对数字签名解密,得到摘要;同时将原文用sha-1函数编码,产生另一个摘要。
(8)接收方b将两摘要比较,若一致说明信息没有被破坏或篡改。否则丢弃该文档。
这个过程满足5个方面的安全性要求:(1)原文的完整性和签名的快速性:利用单向散列函数sha-1先将原文换算成摘要,相当原文的指纹特征,任何对原文的修改都可以被接收方b检测出来,从而满足了完整性的要求;再用发送方公钥算法(ecc)的私钥加密摘要形成签名,这样就克服了公钥算法直接加密原文速度慢的缺点。(2)加解密的快速性:用对称加密算法aes加密原文和数字签名,充分利用了它的这一优点。(3)更高的安全性:第四步中利用数字信封的原理,用接收方b的公钥加密发送方a的对称密钥,这样就解决了对称密钥传输困难的不足。这种技术的安全性相当高。结合对称加密技术(aes)和公开密钥技术(ecc)的优点,使用两个层次的加密来获得公开密钥技术的灵活性和对称密钥技术的高效性。(4)保密性:第五步中,发送方a的对称密钥是用接收方b的公钥加密并传给自己的,由于没有别人知道b的私钥,所以只有b能够对这份加密文件解密,从而又满足保密性要求。(5)认证性和抗否认性:在最后三步中,接收方b用发送方a的公钥解密数字签名,同时就认证了该签名的文档是发送a传递过来的;由于没有别人拥有发送方a的私钥,只有发送方a能够生成可以用自己的公钥解密的签名,所以发送方a不能否认曾经对该文档进进行过签名。
5方案评价与结论
为了解决传统的新药审批中的繁琐程序及其必有的缺点,本文提出利用基于公钥算法的数字签名对文档进行电子签名,从而大大增强了文档在不安全网络环境下传递的安全性。
本方案在选择加密和数字签名算法上都是经过精心的比较,并且结合现有的相关应用实例情况,提出医药审批过程的解决方案,其优越性是:将对称密钥aes算法的快速、低成本和非对称密钥ecc算法的有效性以及比较新的算列算法sha完美地结合在一起,从而提供了完整的安全服务,包括身份认证、保密性、完整性检查、抗否认等。
参考文献:
1.李永新.数字签名技术的研究与探讨。绍兴文理学院学报。第23卷第7期2003年3月,p47~49.
2.康丽军。数字签名技术及应用,太原重型机械学院学报。第24卷第1期2003年3月p31~34.
3.胡炎,董名垂。用数字签名解决电力系统敏感文档签名问题。电力系统自动化。第26卷第1期2002年1月p58~61。
4.leungkrph,huil,ck.handingsignaturepurposesinworkflowsystems.journalofsystems.journalofsystemsandsoftware,2001,55(3),p245~259.
5.wrightma,alookatpublickeycertificates.networksecurity,1998(2)p10~13.
6.bruceschneier.应用密码学---协议、算法与c源程序(吴世终,祝世雄,张文政,等).北京:机械工业出版社,2001。
7.贾晶,陈元,王丽娜,信息系统的安全与保密[m],北京:清华大学出版社,1999
8.陈彦学.信息安全理论与实务【m】。北京:中国铁道出版社,2000p167~178.
9.顾婷婷,《aes和椭圆曲线密码算法的研究》。四川大学硕士学位论文,【馆藏号】y4625892002。