1、如何用加密和数字签名技术解决医药审批中电子文档安全问题摘要:如今新药的审批需要在国际间进行原始数据的传输。传统审批方式繁琐且效率低,而利用互联网传输电子文本即可保持数据的安全可靠,又可大大节约人力、物力和财力等。本文介绍了加密和数字签名算法的基本原理,并结合自己的思想,给出了医药审批中电子文本安全传输的解决方案。 关键词:数字签名;加密技术;数字证书;电子文档;安全问题 Abstract: Todays approval of new drugs in the international community needs to carry out the raw data transmissio
2、n. 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 algorith
3、m 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 引言 随着我国医药事业的发展,研制新药,抢占国内市场已越演越烈。以前一些医药
4、都是靠进口,不仅成本高,而且容易形成壁垒。目前,我国的医药研究人员经过不懈的努力,开始研制出同类同效的药物,然而这些药物在走向市场前,必须经过国际权威医疗机构的审批,传统方式是药物分析的原始数据都是采用纸张方式,不仅数量多的吓人,而且一旦有一点差错就需从头做起,浪费大量的人力、物力、财力。随着 INTERNET的发展和普及,人们开始考虑是否能用互联网来解决数据传输问题。他们希望自己的仪器所做的结果能通过网络安全传输、并得到接收方认证。目前国外针对这一情况已 四承砑 欢 捎诩鄹癜汗螅 际醪皇呛艹墒欤 勾 谘橹锥危 媸被嵘 兜脑 颍 诤苌偈褂谩饩透 谝揭蟹乱敌纬闪思际跗烤保 绾慰 鍪视 榈南嘤 砑
5、 创俳 夜 揭笈 鞯姆咕统闪斯 诘那把亓煊颍 胰涨肮 谠谡夥矫娴难芯坎皇呛芏唷?lt;/DIV 本文阐述的思想:基本上是参考国际国内现有的算法和体制及一些相关的应用实例,并结合个人的思想提出了一套基于公钥密码体制和对称加密技术的解决方案,以确保医药审批中电子文本安全传输和防止窜改,不可否认等。 2 算法设计 2.1 AES 算法的介绍1 高级加密标准(AdvancedEncryptionStandard)美国国家技术标准委员会(NIST)在 2000 年 10 月选定了比利时的研究成果“Rijndael“作为 AES 的基础。“Rijndael“是经过三年漫长的过程,最终从进入候选的五种方案中
6、挑选出来的。 AES 内部有更简洁精确的数学算法,而加密数据只需一次通过。AES被设计成高速,坚固的安全性能,而且能够支持各种小型设备。 AES 和 DES 的性能比较: (1) DES 算法的 56 位密钥长度太短; (2) S 盒中可能有不安全的因素; (3) AES 算法设计简单,密钥安装快、需要的内存空间少,在所有平台上运行良好,支持并行处理,还可抵抗所有已知攻击; (4) AES 很可能取代 DES 成为新的国际加密标准。 总之,AES 比 DES 支持更长的密钥,比 DES 具有更强的安全性和更高的效率,比较一下,AES 的 128bit 密钥比 DES 的 56bit 密钥强 1
7、021 倍。随着信息安全技术的发展,已经发现 DES 很多不足之处,对 DES 的破解方法也日趋有效。AES 会代替 DES 成为 21 世纪流行的对称加密算法。 2.2 椭圆曲线算法简介2 2.2.1 椭圆曲线定义及加密原理2 所谓椭圆曲线指的是由韦尔斯特拉斯(Weierstrass)方程 y2+a1xy+a3yx3+a2x2+a4x+a6 (1)所确定的平面曲线。若 F 是一个域,ai F,i=1,2,6。满足式 1 的数偶(x,y)称为 F 域上的椭圆曲线 E 的点。F 域可以式有理数域,还可以式有限域 GF(Pr)。椭圆曲线通常用 E表示。除了曲线 E 的所有点外,尚需加上一个叫做无穷
8、远点的特殊 O。 在椭圆曲线加密(ECC)中,利用了某种特殊形式的椭圆曲线,即定义在有限域上的椭圆曲线。其方程如下: y2=x3+ax+b(mod p) (2) 这里 p 是素数,a 和 b 为两个小于 p 的非负整数,它们满足: 4a3+27b2(mod p)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 则比较困难,至今没有有
9、效的方法来解决这个问题,这就是椭圆曲线加密算法原理之所在。 2.2.2 椭圆曲线算法与 RSA 算法的比较 椭圆曲线公钥系统是代替 RSA 的强有力的竞争者。椭圆曲线加密方法与RSA 方法相比,有以下的优点: (1) 安全性能更高 如 160 位 ECC 与 1024 位 RSA、DSA 有相同的安全强度。 (2) 计算量小,处理速度快 在私钥的处理速度上(解密和签名) ,ECC 远 比 RSA、DSA 快得多。 (3) 存储空间占用小 ECC 的密钥尺寸和系统参数与RSA、DSA 相比要小得多, 所以占用的存储空间小得多。 (4) 带宽要求低 使得 ECC 具有广泛得应用前景。 ECC 的这
10、些特点使它必将取代 RSA,成为通用的公钥加密算法。比如 SET协议的制定者已把它作为下一代 SET 协议中缺省的公钥密码算法。 2.3 安全散列函数(SHA)介绍 安全散列算法 SHA(Secure Hash Algorithm,SHA)1是美国国家标准和技术局发布的国家标准 FIPS PUB 180-1,一般称为 SHA-1。其对长度不超过 264 二进制位的消息产生 160 位的消息摘要输出。 是一种数据加密算法,该算法经过加密专家多年来的发展和改进已日益完善,现在已成为公认的最安全的散列算法之一,并被广泛使用。该算法的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段(通常更小)
11、密文,也可以简单的理解为取一串输入码(称为预映射或信息) ,并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。散列函数值可以说时对明文的一种“指纹”或是“摘要”所以对散列值的数字签名就可以视为对此明文的数字签名。 3 数字签名 “数字签名”用来保证信息传输过程中信息的完整和提供信息发送者的身份认证和不可抵赖性。数字签名技术的实现基础是公开密钥加密技术,是用某人的私钥加密的消息摘要用于确认消息的来源和内容。公钥算法的执行速度一般比较慢,把 Hash 函数和公钥算法结合起来,所以在数字签名时,首先用 hash 函数(消息摘要函数)将消息转变为消息摘要,然后对
12、这个摘 要签名。目前比较流行的消息摘要算法是 MD4,MD5 算法,但是随着计算能力和散列密码分析的发展,这两种算法的安全性及受欢迎程度有所下降。本文采用一种比较新的散列算法SHA 算法。 4 解决方案: 下面是医药审批系统中各个物理组成部分及其相互之间的逻辑关系图: 要签名。目前比较流行的消息摘要算法是 MD4,MD5 算法,但是随着计算能力和散列密码分析的发展,这两种算法的安全性及受欢迎程度有所下降。本文采用一种比较新的散列算法SHA 算法。 4 解决方案: 下面是医药审批系统中各个物理组成部分及其相互之间的逻辑关系图: 图示:电子文本传输加密、签名过程 下面是将医药审批过程中的电子文本安
13、全传输的解决方案: 具体过程如下: (1) 发送方 A 将发送原文用 SHA 函数编码,产生一段固定长度的数字摘要。 (2) 发送方 A 用自己的私钥(key A 私)对摘要加密,形成数字签名,附在发送信息原文后面。 (3) 发送方 A 产生通信密钥(AES 对称密钥) ,用它对带有数字签名的原文进行加密,传送到接收方 B。这里使用对称加密算法 AES 的优势是它的加解密的速度快。 (4) 发送方 A 用接收方 B 的公钥( key B 公)对自己的通信密钥进行加密后,传到接收方 B。这一步利用了数字信封的作用, 。 (5) 接收方 B 收到加密后的通信密钥,用自己的私钥对其解密,得到发送方
14、A 的通信密钥。 (6) 接收方 B 用发送方 A 的通信密钥对收到的经加密的签名原文解密,得数字签名和原文。 (7) 接收方 B 用发送方 A 公钥对数字签名解密,得到摘要;同时将原文用 SHA1 函数编码,产生另一个摘要。 (8) 接收方 B 将两摘要比较,若一致说明信息没有被破坏或篡改。否则丢 弃该文档。 这个过程满足 5 个方面的安全性要求:(1)原文的完整性和签名的快速性:利用单向散列函数 SHA1 先将原文换算成摘要,相当原文的指纹特征,任何对原文的修改都可以被接收方 B 检测出来,从而满足了完整性的要求;再用发送方公钥算法(ECC)的私钥加密摘要形成签名,这样就克服了公钥算法直接
15、加密原文速度慢的缺点。 (2)加解密的快速性:用对称加密算法 AES 加密原文和数字签名,充分利用了它的这一优点。(3)更高的安全性:第四步中利用数字信封的原理,用接收方 B 的公钥加密发送方 A 的对称密钥,这样就解决了对称密钥传输困难的不足。这种技术的安全性相当高。结合对称加密技术(AES)和公开密钥技术(ECC)的优点,使用 两个层次的加密来获得公开密钥技术的灵活性和对称密钥技术的高效性。 (4)保密性:第五步中,发送方 A 的对称密钥是用接收方 B 的公钥加密并传给自己的,由于没有别人知道 B 的私钥,所以只有B 能够对这份加密文件解密,从而又满足保密性要求。 (5)认证性和抗否认性:
16、在最后三步中,接收方 B 用发送方 A 的公钥解密数字签名,同时就认证了该签名的文档是发送 A 传递过来的;由于没有别人拥有发送方A 的私钥,只有发送方 A 能够生成可以用自己的公钥解密的签名,所以发送方 A 不能否认曾经对该文档进进行过签名。 5 方案评价与结论 为了解决传统的新药审批中的繁琐程序及其必有的缺点,本文提出利用基于公钥算法的数字签名对文档进行电子签名,从而大大增强了文档在不安全网络环境下传递的安全性。 本方案在选择加密和数字签名算法上都是经过精心的比较,并且结合现有的相关应用实例情况,提出医药审批过程的解决方案,其优越性是:将对称密钥 AES 算法的快速、低成本和非对称密钥 E
17、CC 算法的有效性以及比较新的算列算法 SHA 完美地结合在一起,从而提供了完整的安全服务,包括身份认证、保密性、完整性检查、抗否认等。 参考文献: 1 李永新.数字签名技术的研究与探讨。绍兴文理学院学报。第 23卷 第 7 期 2003 年 3 月,P4749. 2 康丽军。数字签名技术及应用,太原重型机械学院学报。第 24 卷 第 1 期 2003 年 3 月 P3134. 3 胡炎,董名垂。用数字签名解决电力系统敏感文档签名问题。电力系统自动化。第 26 卷 第 1 期 2002 年 1 月 P5861。 4 Leung K R P H ,Hui L,C K.Handing Signat
18、ure Purposes in Workflow Systems. Journal of Systems.Journal of Systems and Software, 2001,55(3),P245259. 5 Wright M A,A Look at Public Key Certificates. Network Security ,1998(2)P1013. 6.Bruce Schneier.应用密码学-协议、算法与 C 源程序(吴世终,祝世雄,张文政,等).北京:机械工业出版社,2001。 7.贾晶,陈元,王丽娜,信息系统的安全与保密M,北京:清华大学出版社,1999 8陈彦学.信
19、息安全理论与实务【M】 。北京:中国铁道出版社,2000 p167178. 9顾婷婷, AES 和椭圆曲线密码算法的研究 。四川大学硕士学位论文,【 馆藏号 】Y462589 2002。 下面是将医药审批过程中的电子文本安全传输的解决方案: 具体过程如下: (1) 发送方 A 将发送原文用 SHA 函数编码,产生一段固定长度的数字摘要。 (2) 发送方 A 用自己的私钥(key A 私)对摘要加密,形成数字签名,附在发送信息原文后面。 (3) 发送方 A 产生通信密钥(AES 对称密钥) ,用它对带有数字签名的原文进行加密,传送到接收方 B。这里使用对称加密算法 AES 的优势是它的加解密的速
20、度快。 (4) 发送方 A 用接收方 B 的公钥( key B 公)对自己的通信密钥进行加密后,传到接收方 B。这一步利用了数字信封的作用, 。 (5) 接收方 B 收到加密后的通信密钥,用自己的私钥对其解密,得到发送方 A 的通信密钥。 (6) 接收方 B 用发送方 A 的通信密钥对收到的经加密的签名原文解密,得数字签名和原文。 (7) 接收方 B 用发送方 A 公钥对数字签名解密,得到摘要;同时将原文用 SHA1 函数编码,产生另一个摘要。 (8) 接收方 B 将两摘要比较,若一致说明信息没有被破坏或篡改。否则丢 弃该文档。 这个过程满足 5 个方面的安全性要求:(1)原文的完整性和签名的
21、快速性:利用单向散列函数 SHA1 先将原文换算成摘要,相当原文的指纹特征,任何对原文的修改都可以被接收方 B 检测出来,从而满足了完整性的要求;再用发送方公钥算法(ECC)的私钥加密摘要形成签名,这样就克服了公钥算法直接加密原文速度慢的缺点。 (2)加解密的快速性:用对称加密算法 AES 加密原文和数字签名,充分利用了它的这一优点。(3)更高的安全性:第四步中利用数字信封的原理,用接收方 B 的公钥加密发送方 A 的对称密钥,这样就解决了对称密钥传输困难的不足。这种技术的安全性相当高。结合对称加密技术(AES)和公开密钥技术(ECC)的优点,使用 两个层次的加密来获得公开密钥技术的灵活性和对称密钥技术的高效性。 (4)保密性:第五步中,发送方 A 的对称密钥是用接收方 B 的公钥加密并传给自己的,由于没有别人知道 B 的私钥,所以只有B 能够对这份加密文件解密,从而又满足保密性要求。 (5)认证性和抗否认性:在最后三步中,接收方 B 用发送方 A 的公钥解密数字签名,同时