PKI作为安全基础设施,主要提供的服务有保密、身份认证服务、验证信息完整以及电子商务中的不可抵赖。
1.保密
所谓保密就是提供信息的保密,包括存储文件和传输信息的保密性,所有需要保密的信息都加密,这样即使被攻击者获取到也只是密文形式,攻击者没有解密密钥,无法得到信息的真实内容,从而实现了对信息的保护。PKI提供了保密,并且这个服务对于所有用户都是透明的。
2.身份认证服务
PKI的认证服务在ITU-TX.509标准中定义为强鉴别服务,即采用公开密钥技术、数字签名技术和安全的认证协议进行强鉴别的服务。
3.完整
完整就是保证数据在保存或传输过程中没有被非法篡改,PKI体系中采用对信息的信息摘要进行数字签名的方式验证信息的完整性。
4.不可抵赖
不可抵赖是对参与者对做过某件事提供一个不可抵赖的证据。在PKI体系中,发送方的数字签名就是不可抵赖的证据。
三、基于PKI的数字签名的实现
基于PKI的数字签名,用户首先向PKI的RA中心注册自己的信息,RA审核用户信息,审核通过则向CA中心发起证书申请请求,CA中心为用户生成秘钥对,私钥私密保存好,公钥和用户信息打包并用CA私钥进行数字签名,形成数字证书并在CA服务器的证书列表,用户到证书列表查看并下载证书。
假设用户A要向用户B发送信息M,用户A首先对信息进行哈希函数h运算得到M的信息摘要hA,再用自己的私钥DA对hA进行加密得到数字签名Sig(hA)。将明文M、数字签名Sig(hA)以及A的证书CertA组成信息包,用B的公钥EB加密得到密文C并传送给B。其中数字签名与信息原文一起保存,私钥DA只有用户A拥有,因此别人不可能伪造A的数字签名;又由于B的私钥只有B拥有,所以只有B可以解密该信息包,这样就保证了信息的保密性。
四、基于PKI体系结构的数字签名安全性分析
从基于PKI数字签名的实现过程和验证过程中我们知道,数字签名的安全性取决于以下几点:
1.CA服务器确实安全可靠,用户的证书不会被篡改。CA服务器的安全性主要包括物理安全和系统安全。所谓物理安全是指CA服务器放置在物理环境安全的地方,不会有水、火、虫害、灰尘等的危害;系统安全是指服务器系统的安全,可以由计算机安全技术与防火墙技术实现。
2.用户私钥确实被妥善管理,没有被篡改或泄露。现在采用的技术是USBKey或智能卡存储用户私钥,并由用户用口令方式保护私钥,而且实现了私钥不出卡,要用私钥必须插卡,从技术实现了私钥不会被篡改和泄露。
3.数字签名方案的安全性好。基于PKI公钥加密技术的数字签名是建立在一些难解的数学难题的基础上,其中基于RSA算法的签名方案应用最多。RSA算法是基于大数分解的困难性,目前当模数达到1024位时,分解其因子几乎是不可能的,未来十年内也是安全的。但是由于RSA算法保存了指数运算的特性,RSA不能抵御假冒攻击,就算攻击者不能破解密钥,也可进行假冒攻击实现消息破译和骗取用户签名。
六、总结
参考文献
[3]陈昕.基于一次性口令的身份认证系统研究及实现[D].南京信息工程大学硕士学位论文,2009,5.
[4]潘恒.电子商务环境下基于PKI的信任问题研究[D].信息工程大学博士学位论文,2006,10.
[5]张宁.电子商务安全性分析[D].北京邮电大学硕士研究生学位论文,2007,3.
论文关键词:数字签名:电子政务;信息安全
1概述
1.1概念与功能
数字签名技术可以解决数据的否认、伪造、篡改及冒充等问题,满足上述要求的数字签名技术有如下主要功能:(1)发送者事后不能否认自己发送的签名;(2)接收者能够核实发送者发送的签名;(3)接收者不能伪造发送者的签名;(4)接收者不能对发送者的原文进行篡改;(5)数据交换中的某一用户不能冒充另一用户作为发送者或接收者
1.2数字签名与传统手写签名差别
(1)签署文件方面:一个手写签名是所签文件的物理部分,而数字签名不是,所以要使用其他的办法将数字签名与所签文件“绑定”。
(2)验证方面:一个手写签名是通过和一个真实的手写签名相比较来验证的而数字签名是通过一个公开的验证算法来验证:
(3)签名的复制:一个手写签名不容易被复制,因为复制品通常比较容易被鉴别来:而数字签名很容易被复制,因为一个文件的数字签名的复制品和原文件是一样的:所以要使用数字时问戳等特殊的技术避免数字签名的重复使用。
(4)手书签名是模拟的,且因人而异。数字签名是0和1的数字串,因人和消息而异。
一个安全有效的签名方案必须满足以下要求:1)任何人都可以验证签名的有效性;2)除了合法的签名者外,其他人伪造签名是困难的;3)对一个消息的签名不可复制为另一个消息的签名;4)签名的消息不可被篡改,一旦被篡改,则任何人都可以发现消息与签名的不一致;5)签名者事后不能否认自己的签名。
安全的数字签名实现的条件:发方必须向收方提供足够的非保密信息,以便使其能验证消息的签名,但又不能泄露用于产生签名的机密信息,以防止他人伪造签名。此外,还有赖于仔细设计的通信协议:
2原理
数字签名有两种:一种是对整体消息的签名,一种是对压缩消息的签名。每一种又可分为两个子类:一类是确定性(Deterministi)数字签名,其明文与密文是一一对应的,它对特定消息的签名不变化;一类是随机化的(Randomized)或概率式数字签名。
目前的数字签名技术大多是建立在公共密钥体制的基础上,其工作原理是:
(1)签名:发方将原文用哈希算法求得数字摘要,用签名私钥对数字摘要加密得数字签名,将原文与数字签名一起发送给接受方。
签名体制=(M,S,K,v),其中M:明文空间,S:签名的集合,K:密钥空间,V:证实函数的值域,由真、伪组成。
签名算法:对每一m∈M和每一k∈K,易于计算对m的签名s=Sigk(M)∈S
签名算法或签名密钥是秘密的,只有签名人掌握。
(2)验证:收方验证签名时,用发方公钥解密数字签名,得出数字摘要;收方将原文采用同样哈希算法又得一新的数字摘要,将两个数字摘要进行比较,如果二者匹配,说明经签名的电子文件传输成功。
验证算法:
Verk(S,M)∈{真,伪}={0,l1
3基于身份的数字签名
3.1优势
1984年Shamir提出基于身份的加密、签名、认证的设想,其中身份可以是用户的姓名、身份证号码、地址、电子邮件地址等。系统中每个用户都有一个身份,用户的公钥就是用户的身份,或者是可以通过一个公开的算法根据用户的身份可以容易地计算出来,而私钥则是由可信中心统一生成。在基于身份的密码系统中,任意两个用户都可以安全通信,不需要交换公钥证书,不必保存公钥证书列表,也不必使用在线的第三方,只需一个可信的密钥发行中心为每个第一次接入系统的用户分配一个对应其公钥的私钥就可以了。基于身份的密码系统不存在传统CA颁发证书所带来的存储和管理开销问题。
3.2形式化定义
基于身份的数字签名由以下4个算法组成,
Setup(系统初始化):输入一个安全参数k,输出系统参数param、和系统私钥mk,该算法由密钥产生机构PKG运行,最后PKG公开params,保存mk。Extract(用户密钥生成):输入params、mk和用户的身份ID,输出用户的私钥diD,该算法由PKG完成,PKG用安全的信道将diD返回给用户。Sign(签名):输入一个安全参数r、params、diD以及消息M,输出对}肖息M的签名盯,该算法由用户实现。Verify(验证):输入params、签名人身份ID、消息m和签名,输出签名验证结果1或0,代表真和伪,该算法由签名的验证者完成。其中,签名算法和验证算法与一般签名方案形式相同。
4数字签名在电子政务中的应用
4.1意义
数字签名的过程和政务公文的加密/解密过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也各不相同。数字签名使用的是发送方的密钥对,发送方用自己的私钥进行加密,接收方用发送方的公钥进行解密。这是一个一对多的关系,即任何拥有发送方公钥的人都可以验证数字签名的正确性。政务公文的加密/解密则使用接收方的密钥对,这是多对一的关系,即任何知道接收方公钥的人都可以向接收方发送加密公文,只有唯一拥有接收方私钥的人才能对公文解密。在实际应用过程中,通常一个用户拥有两个密钥对,一个密钥对用来对数字签名进行加密,解密;另一个密钥对用来对公文进行加密懈密,这种方式提供了更高的安全性。
4.2形式
4.2.1个人单独签名
由于政务公文的文件相对来说都比较大,所以一般需要先对所要传输的原文进行加密压缩后形成一个文件摘要,然后对这个文件摘要进行数字签名。一般由两个阶段组成:对原文的数字签名和对数字签名的验证。
(1)对原文的数字签名
先采用单向散列哈希算法对所要传输的政务公文x进行加密计算和压缩,推算出一个文件摘要z。然后,公文的发送方用自己的私钥SKA对其加密后形成数字签名Y,并将该数字签名附在所要传送的政务公文后形成一个完整的信息包(X+Y)。再用接收方的公钥PKB对该信息包进行加密后,通过网络传输给接收方。
(2)对数字签名的验证
基于身份的数字签名由以下4个算法组成,如图1所示。
abstract:today’sapprovalofnewdrugsintheinternationalcommunityneedstocarryouttherawdatatransmission.thetraditionalwayofexaminationandapprovalredtapeandinefficiency,andtheuseoftheinternettotransmitelectronictextcankeepdatasafeandreliable,butalsogreatlysavemanpower,materialandfinancialresources,andsoon.inthispaper,encryptionanddigitalsignaturealgorithmofthebasicprinciples,combinedwithhisownideas,givenmedicalapprovalintheelectronictransmissionofthetextofthesecuritysolution.
keywords:digitalsignature;encryptiontechnology;digitalcertificate;electronicdocuments;securityissues
1引言
随着我国医药事业的发展,研制新药,抢占国内市场已越演越烈。以前一些医药都是靠进口,不仅成本高,而且容易形成壁垒。目前,我国的医药研究人员经过不懈的努力,开始研制出同类同效的药物,然而这些药物在走向市场前,必须经过国际权威医疗机构的审批,传统方式是药物分析的原始数据都是采用纸张方式,不仅数量多的吓人,而且一旦有一点差错就需从头做起,浪费大量的人力、物力、财力。随着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数字签名
要签名。目前比较流行的消息摘要算法是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.李永新.数字签名技术的研究与探讨。绍兴文理学院学报。第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。
所谓电子商务(ElectronicCommerce)是利用计算机技术、网络技术和远程通信技术,实现整个商务(买卖)过程中的电子化、数字化和网络化。目前,因特网上影响交易最大的阻力就是交易安全问题,据最新的中国互联网发展统计报告显示,在被调查的人群中只有2.8%的人对网络的安全性是感到很满意的,因此,电子商务的发展必须重视安全问题。
一、电子商务安全的要求
1、信息的保密性:指信息在存储、传输和处理过程中,不被他人窃取。
2、信息的完整性:指确保收到的信息就是对方发送的信息,信息在存储中不被篡改和破坏,保持与原发送信息的一致性。
3、信息的不可否认性:指信息的发送方不可否认已经发送的信息,接收方也不可否认已经收到的信息。
4、交易者身份的真实性:指交易双方的身份是真实的,不是假冒的。
5、系统的可靠性:指计算机及网络系统的硬件和软件工作的可靠性。
在电子商务所需的几种安全性要求中,以保密性、完整性和不可否认性最为关键。电子商务安全性要求的实现涉及到以下多种安全技术的应用。
二、数据加密技术
将明文数据进行某种变换,使其成为不可理解的形式,这个过程就是加密,这种不可理解的形式称为密文。解密是加密的逆过程,即将密文还原成明文。
(一)对称密钥加密与DES算法
对称加密算法是指文件加密和解密使用一个相同秘密密钥,也叫会话密钥。目前世界上较为通用的对称加密算法有RC4和DES。这种加密算法的计算速度非常快,因此被广泛应用于对大量数据的加密过程。
最具代表的对称密钥加密算法是美国国家标准局于1977年公布的由IBM公司提出DES(DataEncrypuonStandard)加密算法。
(二)非对称密钥加密与RSA算法
为了克服对称加密技术存在的密钥管理和分发上的问题,1976年产生了密钥管理更为简化的非对称密钥密码体系,也称公钥密码体系(PublicKeyCrypt-system),用的最多是RSA算法,它是以三位发明者(Rivest、Shamir、Adleman)姓名的第一个字母组合而成的。
在实践中,为了保证电子商务系统的安全、可靠以及使用效率,一般可以采用由RSA和DES相结合实现的综合保密系统。
三、认证技术
认证技术是保证电子商务交易安全的一项重要技术。主要包括身份认证和信息认证。前者用于鉴别用户身份,后者用于保证通信双方的不可抵赖性以及信息的完整性
(一)身份认证
用户身份认证三种常用基本方式
1、口令方式
这种身份认证方法操作十分简单,但最不安全,因为其安全性仅仅基于用户口令的保密性,而用户口令一般较短且容易猜测,不能抵御口令猜测攻击,整个系统的安全容易受到威胁。
2、标记方式
访问系统资源时,用户必须持有合法的随身携带的物理介质(如存储有用户个性化数据的智能卡等)用于身份识别,访问系统资源。
3、人体生物学特征方式
某些人体生物学特征,如指纹、声音、DNA图案、视网膜扫描图案等等,这种方案一般造价较高,适用于保密程度很高的场合。
加密技术解决信息的保密性问题,对于信息的完整性则可以用信息认证方面的技术加以解决。在某些情况下,信息认证显得比信息保密更为重要。
(二)数字摘要
数字摘要,也称为安全Hash编码法,简称SHA或MD5,是用来保证信息完整性的一项技术。它是由RonRivest发明的一种单向加密算法,其加密结果是不能解密的。类似于人类的“指纹”,因此我们把这一串摘要而成的密文称之为数字指纹,可以通过数字指纹鉴别其明文的真伪。
(三)数字签名
数字签名建立在公钥加密体制基础上,是公钥加密技术的另一类应用。它把公钥加密技术和数字摘要结合起来,形成了实用的数字签名技术。
它的作用:确认当事人的身份,起到了签名或盖章的作用;能够鉴别信息自签发后到收到为止是否被篡改。
(五)认证中心
认证中心:(CertificateAuthority,简称CA),也称之为电子商务认证中心,是承担网上安全电子交易认证服务,能签发数字证书,确认用户身份的、与具体交易行为无关的第三方权威机构。认证中心通常是企业性的服务机构,主要任务是受理证书的申请、签发和管理数字证书。其核心是公共密钥基础设(PKI)。
我国现有的安全认证体系(CA)在金融CA方面,根证书由中国人民银行管理,根认证管理一般是脱机管理;品牌认证中心采用“统一品牌、联合建设”的方针进行。在非金融CA方面,最初主要由中国电信负责建设。
(六)数字证书
数字证书就是标志网络用户身份信息的一系列数据,用于证明某一主体(如个人用户、服务器等)的身份以及其公钥的合法性的一种权威性的电子文档,由权威公正的第三方机构,即CA中心签发。
以数字证书为核心的加密技术可以对网络上传输的信息进行加密和解密、数字签名和签名验证,确保网上传递信息的机密性、完整性,以及交易实体身份的真实性,签名信息的不可否认性,从而保障网络应用的安全性。
四、电子商务的安全交易标准
(一)安全套接层协议
SSL(securesocketslayer)是由NetscapeCommunication公司是由设计开发的,其目的是通过在收发双方建立安全通道来提高应用程序间交换数据的安全性,从而实现浏览器和服务器(通常是Web服务器)之间的安全通信。
目前Microsoft和Netscape的浏览器都支持SSL,很多Web服务器也支持SSL。SSL是一种利用公共密钥技术的工业标准,已经广泛用于Internet。
(二)安全电子交易协议
SET(SecureElectronicTransaction)它是由VISA和MasterCard两大信用卡公司发起,会同IBM、Microsoft等信息产业巨头于1997年6月正式制定的用于因特网事务处理的一种标准。采用DES、RC4等对称加密体制加密要传输的信息,并用数字摘要和数字签名技术来鉴别信息的真伪及其完整性,目前已经被广为认可而成了事实上的国际通用的网上支付标准,其交易形态将成为未来电子商务的规范。
五、总结
ASecureLoginResolutionScheme
LONGYong1,CAIChang-xu2,CAIChang-shu3
(1.YunnanEnergySchool,Qujing650001,China;puterandInformationDepartmentofQujingNormalUniversity,Qujing650011,China;3.YunnanE-governmentNetworkManagementCenter,Kunming650031,China)
Abstract:Thecommoninformationsystemloginmethodadoptsonlyusernameandpasswordtoauthenticatetheusers.Inordertoavoidthedrawbacksofconventionalmethodswhichisvulnerabletotheattacksofrecordkeyboard,dictionaryguess,SQLinjectionandsoforth,thethesisdesignanovelschemeadoptingHashalgorithmandConicCurveDigitalSignaturetechnology.Itcanmeetthesecurityrequirementofauthentication,informationintegrity,non-repudiation.
Keywords:informationsecurity;coniccurvedigitalsignature;systemloginsecurity
1前言
2解决方案
3结束语
引言
配电终端是典型的嵌入式设备,多基于linux系统,是配电自动化建设的重要组成部分。国家电网公司物资采购标准的专用技术规范中提出,配电终端应配备符合国调〔2011〕168号文件技术功能要求的非对称密钥技术单向认证模块,终端侧应能够鉴别配电主站(open3200)的数字签名。
配电主站与配电终端建立tcp连接后,以104规约通信,主站发往终端的重要104规约报文会单向加密并数字签名。本文hook模块设计的报文预处理功能正是用于终端侧,在通信报文到达终端前定位tcp数据包中的data区报文内容,对报文进行数字签名鉴别等预处理。
filter处理报文的流程
1.1netfilter的框架
Netfilter是Linux2.4版本引入的一个子系统,它作为一个通用的、抽象的框架,提供一整套的hook函数管理机制,使得诸如数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪成为可能[1]。同时netfilter也支持用户自定义hook函数扩充以上功能。
Netfilter把数据包处理的更流程化,并且实现了扩展过滤策略而不必修改内核的功能[2]。该框架为每种网络协议(IPv4、IPv6等)定义了数据包处理过程,并定义一些钩子点(Hook),在内核中建立了一个函数指针链表,函数指针所指的函数称为钩子函数,其返回值告诉协议栈如何处理数据包[3]。
1.2报文处理的实现原理
Tcp包经过netfilter时的处理流程以及各“钩点”如图1所示。
图1数据包在netfilter中的处理流程
对于收到的每个数据包,都从“PRE_ROUTING”点进来,经过路由判决,如果是发送给本机的就经过“LOCAL_IN”点,然后往协议栈的上层继续传递;否则,如果该数据包的目的地不是本机,那么就经过“RORWARD”点,由“POST_ROUTING”点将该包转发出去。对于上层协议栈发送的每个数据包,首先也有一个路由判决,以确定该包是从哪个接口出去,然后经过“LOCAL_OUT”点,最后也是顺着“POST_ROUTING”点将该包发送出去[4]。
filter下报文预处理功能设计与实现
2.1报文预处理的功能设计
本文设计的报文预处理功能是在Linux内核Netfilter框架上开发的一个内核模块,具有tcp包勾取、识别、数据修改(加密或加数字签名)等基本功能,通过动态加载到
Linux内核中实现预处理功能。本文用到的钩子点是POST_ROUTING,在该点编写了相应的钩子函数,并进行注册和挂接,将tcp数据包钩出来进行处理再放回去。
通信tcp包在通过linux网关转发时由预处理hook程序进行处理,程序流程设计如图2所示:
图2程序设计流程图
2.2报文预处理的hook函数实现
下文按图2流程介绍报文处理的hook函数部分源代码。
(1)hook函数定义如图3所示:
图3hook函数定义
(2)获取存放当前tcp包数据的skb_buff:
图4读取skb_buff
(3)判断数据包是否来自目标进程的端口号:
if(likely(ntohs(sport)=5381)){
returnNF_ACCEPT;
}//判断主站进程端口号是否为538
(4)判断数据包是否需要处理
payload=(void*)skb->data+40;
//+40是从data区偏移出ip包头与tcp包头
if(*payload==0x68){
//判断是否为104规约报文
if(*(payload+6)==0x2E){
//判断是否为遥控报文
.......}
}
(5)取出tcp数据包中的应用层数据(data区)也就是实际的规约报文,存入replace字符串:
replace=payload;
(6)如图5处理报文,以0x00替换16L1L216型数字签名,若想做其他处理都可以借助对指针字符串replace编程实现:
图5替换尾端报文16L1L216
(7)重新封装tcp包,放入传输序列:
if(skb!=NULL){
nf_nat_mangle_tcp_packet(skb,ct,ctinfo,0,strlen(replace),(char*)replace,strlen(replace));//重新封装tcp包returnNF_ACCEPT;
这里的mangle函数调用是整个hook功能实现的核心。
用于修复seq的hook函数如图6所示:
图6修复seq
3.测试运行
本文实验环境是在windows系统下,用Linux虚拟机作为数据进出内网和外网的网关,报文预处理程序运行在该Linux虚拟机上,同时在该windows下用两个网络调试助手分别模拟外网主站与内网终端。内网终端与外网主站通过网关虚拟机交换数据,示意图见图7所示:
图7模拟通信示意图
将104规约下的遥控报文680E060046002E01060001000160008216777416从模拟主站(Tcpserver)发往终端(Tcpclient),报文尾端16777416为简单数字签名。如图8所示:
图8主站侧发出遥控报文
终端接受到报文如图9所示,可见报文的数字签名已被解除,由00000000替代,如果要对报其他处理,可以在程序中对指针字符串replace做相应的处理。
4.结论
本文基于netfilter防火墙提出了一种报文预处理方法,用于配电终端侧鉴别并处理配电主站(open3200)的遥控报文数字签名。本方法能够在传输网关准确定位到tcp包中的原始报文数据,可按用户需求对通信报文进行预处理,无需再在终端应用层进行报文处理,减轻了终端的处理压力、提高终端的响应速度。
图9终端侧收到的遥控报文
本文设计亦可用于其他的tcp通信场合,提供了一种修改tcp包应用层data区数据的实现方法。
[1]陈慧春.Linux操作系统网络协议栈的设计与实现研究.成都:电子科技大学硕士论文,2004:44-47.
一、电子商务中的信息安全技术
电子商务的信息安全在很大程度上依赖于技术的完善,包括密码、鉴别、访问控制、信息流控制、数据保护、软件保护、病毒检测及清除、内容分类识别和过滤、网络隐患扫描、系统安全监测报警与审计等技术。
1.防火墙技术。防火墙主要是加强网络之间的访问控制,防止外部网络用户以非法手段通过外部网络进入内部网络。
2.加密技术。数据加密就是按照确定的密码算法将敏感的明文数据变换成难以识别的密文数据,当需要时可使用不同的密钥将密文数据还原成明文数据。
3.数字签名技术。数字签名技术是将摘要用发送者的私钥加密,与原文一起传送给接收者,接收者只有用发送者的公钥才能解密被加密的摘要。
二、电子商务安全防范措施
网络安全是电子商务的基础。网络安全防范技术可以从数据的加密(解密)算法、安全的网络协议、网络防火墙、完善的安全管理制度、硬件的加密和物理保护、安全监听系统和防病毒软件等领域来进行考虑和完善。
1.防火墙技术
2.vpn技术
3.数字签名技术
为了保证数据和交易的安全、防止欺骗,确认交易双方的真实身份,电子商务必须采用加密技术。数字签名就是基于加密技术的,它的作用就是用来确定用户是否是真实的。数字签名就是通过一个单向哈希函数对要传送的报文进行处理而得到的用以认证报文是否发生改变的一个字母数字串。发送者用自己的私钥把数据加密后传送给接收者,接收者用发送者的公钥解开数据后,就可确认消息来自于谁,同时也是对发送者发送的信息真实性的一个证明,发送者对所发信息不可抵赖,从而实现信息的有效性和不可否认性。
三、电子商务的安全认证体系
随着计算机的发展和社会的进步,通过网络进行的电子商务活动当今社会越来越频繁,身份认证是一个不得不解决的重要问题,它将直接关系到电子商务活动能否高效而有序地进行。认证体系在电子商务中至关重要,它是用户获得访问权限的关键步骤。现代密码的两个最重要的分支就是加密和认证。加密目的就是防止敌方获得机密信息。认证则是为了防止敌方的主动攻击,包括验证信息真伪及防止信息在通信过程被篡改删除、插入、伪造及重放等。认证主要包括三个方面:消息认证、身份认证和数字签名。
身份认证一般是通过对被认证对象(人或事)的一个或多个参数进行验证。从而确定被认证对象是否名实相符或有效。这要求要验证的参数与被认证对象之间应存在严格的对应关系,最好是惟一对应的。身份认证是安全系统中的第一道关卡。
四、结束语
安全实际上就是一种风险管理。任何技术手段都不能保证100%的安全。但是,安全技术可以降低系统遭到破坏、攻击的风险。因此,为进一步促进电子商务体系的完善和行业的健康快速发展,必须在实际运用中解决电子商务中出现的各类问题,使电子商务系统相对更安全。电子商务的安全运行必须从多方面入手,仅在技术角度防范是远远不够的,还必须完善电子商务立法,以规范飞速发展的电子商务现实中存在的各类问题,从而引导和促进我国电子商务快速健康发展。
[1]劳帼龄.电子商务的安全技术[m].北京:中国水利水电出版社,2005.
电子商务所具有的广阔发展前景,越来越为世人所瞩目。但在Inter给人们带来巨大便利的同时,也把人们引进了安全陷阱。目前,阻碍电子商务广泛应用的首要也是最大的问题就是安全问题。电子商务中的安全问题如得不到妥善解决,电子商务应用就只能是纸上谈兵。从事电子商务活动的主体都已普遍认识到电子商务的交易安全是电子商务成功实施的基础,是企业制订电子商务策略时必须首先要考虑的问题。对于实施电子商务战略的企业来说,保证电子商务的安全已成为当务之急。二、电子商务过程中面临的主要安全问题
从交易角度出发,电子商务面临的安全问题综合起来包括以下几个方面:
1.有效性
电子商务以电子形式取代了纸张,那么保证信息的有效性就成为开展电子商务的前提。因此,要对网络故障、操作错误、应用程序错误、硬件故障、系统软件错误及计算机病毒所产生的潜在威胁加以控制和预防,以保证贸易数据在确定的时刻、确定的地点是有效的。
2.真实性
由于在电子商务过程中,买卖双方的所有交易活动都通过网络联系,交易双方可能素昧平生,相隔万里。要使交易成功,首先要确认对方的身份。对于商家而言,要考虑客户端不能是骗子,而客户端也会担心网上商店是否是一个玩弄欺诈的黑店,因此,电子商务的开展要求能够对交易主体的真实身份进行鉴别。
3.机密性
电子商务作为贸易的一种手段,其信息直接代表着个人、企业或国家的商业机密。如信用卡的账号和用户名被人知悉,就可能被盗用而蒙受经济损失;订货和付款信息被竞争对手获悉,就可能丧失商机。因此建立在开放的网络环境电子商务活动,必须预防非法的信息存取和信息在传输过程中被非法窃取。三、电子商务安全中的几种技术手段
由于电子商务系统把服务商、客户和银行三方通过互联网连接起来,并实现了具体的业务操作。因此,电子商务安全系统可以由三个安全服务器及CA认证系统构成,它们遵循共同的协议,协调工作,实现电子商务交易信息的完整性、保密性和不可抵赖性等要求。其中采用的安全技术主要有以下几种:
1.防火墙(FireWall)技术
防火墙是一种隔离控制技术,在某个机构的网络和不安全的网络(如Inter)之间设置屏障,阻止对信息资源的非法访问,也可以使用防火墙阻止专利信息从企业的网络上被非法输出。
2.加密技术
数据加密技术是电子商务中采取的主要安全措施,贸易方可根据需要在信息交换的阶段使用。在网络应用中一般采取两种加密形式:对称加密和非对称加密,采用何种加密算法则要结合具体应用环境和系统,而不能简单地根据其加密强度来做出判断。
(1)对称加密
在对称加密方法中,对信息的加密和解密都使用相同的密钥。也就是说,一把钥匙开一把锁。这种加密算法可简化加密处理过程,贸易双方都不必彼此研究和交换专用的加密算法,如果进行通信的贸易方能够确保私有密钥在交换阶段未曾泄露,那么机密性和报文完整性就可以得到保证。不过,对称加密技术也存在一些不足,如果某一贸易方有n个贸易关系,那么他就要维护n个私有密钥。对称加密方式存在的另一个问题是无法鉴别贸易发起方或贸易最终方。因为贸易双方共享一把私有密钥。目前广泛采用的对称加密方式是数据加密标准(DES),它主要应用于银行业中的电子资金转账(EFT)领域。DES对64位二进制数据加密,产生64位密文数据。使用的密钥为64位,实际密钥长度为56位(8位用于奇偶校验)。解密时的过程和加密时相似,但密钥的顺序正好相反。
(2)非对称加密/公开密钥加密
在Inter中使用更多的是公钥系统,即公开密钥加密。在该体系中,密钥被分解为一对:公开密钥PK和私有密钥SK。这对密钥中的任何一把都可作为公开密钥(加密密钥)向他人公开,而另一把则作为私有密钥(解密密钥)加以保存。公开密钥用于加密,私有密钥用于解密,私有密钥只能由生成密钥对的贸易方掌握,公开密钥可广泛,但它只对应于生成该密钥的贸易方。在公开密钥体系中,加密算法E和解密算法D也都是公开的。虽然SK与PK成对出现,但却不能根据PK计算出SK。公开密钥算法的特点如下:
用加密密钥PK对明文X加密后,再用解密密钥SK解密,即可恢复出明文,或写为:DSK(EPK(X))=X。
加密密钥不能用来解密,即DPK(EPK(X))≠X
在计算机上可以容易地产生成对的PK和SK。
从已知的PK实际上不可能推导出SK。加密和解密的运算可以对调,即:EPK(DSK(X))=X
3.数字签名
数字签名技术是实现交易安全核心技术之一,它实现的基础就是加密技术。以往的书信或文件是根据亲笔签名或印章来证明其真实性的。但在计算机网络中传送的报文又如何盖章呢?这就是数字签名所要解决的问题。数字签名必须保证以下几点:接收者能够核实发送者对报文的签名;送者事后不能抵赖对报文的签名;接收者不能伪造对报文的签名。现在己有多种实现数字签名的方法,采用较多的就是公开密钥算法。
4.数字证书
(1)认证中心
在电子交易中,数字证书的发放不是靠交易双方来完成的,而是由具有权威性和公正性的第三方来完成的。认证中心就是承担网上安全电子交易认证服务、签发数字证书并确认用户身份的服务机构。
(2)数字证书
数字证书是用电子手段来证实一个用户的身份及他对网络资源的访问权限。在网上的电子交易中,如双方出示了各自的数字证书,并用它来进行交易操作,那么交易双方都可不必为对方身份的真伪担心。
5.消息摘要(MessageDigest)
消息摘要方法也称为Hash编码法或MDS编码法。它是由RonRivest所发明的。消息摘要是一个惟一对应一个消息的值。它由单向Hash加密算法对所需加密的明文直接作
这篇论文.用,生成一串128bit的密文,这一串密文又被称为“数字指纹”(FingerPrint)。所谓单向是指不能被解密,不同的明文摘要成密文,其结果是绝不会相同的,而同样的明文其摘要必定是一致的,因此,这串摘要成为了验证明文是否是“真身”的数字“指纹”了。四、小结
(二)网络科技论文与传统科技论文著作权比较
2.保护作品完整权。传统纸质期刊发表的论文,科技论文的完整性有时会被忽视,比如对于论文稿件,经专家审稿后,认为论文的内容很好,但由于版面限制等因素,就会对论文进行大量的修改和删除,此种做法就侵犯了作者的保护作品完整权。然而相对于网络科技论文,由于作其发表的载体为网页没有任何篇幅和尺寸上的限制,科技时完全可以从其内容本身的完整性编排内容。