您的位置: 网站首页 > 电子商务 > 电子商务原理与技术 > 第4章 电子商务安全技术 > 【4.3 认证技术】

4.3 认证技术

 

4.3 

4.3.1  身份认证技术

1.身份认证的目标

身份认证是判明和确认贸易双方真实身份的重要环节,也是电子商务交易过程中最薄弱的环节。身份认证包含识别和鉴别两个过程。身份标识(Identification)是指定用户向系统出示自己的身份证明过程。身份鉴别(Authentication)是系统查核用户身份证明的过程。身份认证的主要目标包括:

1)确保交易者是交易者本人,而不是其他人。通过身份认证解决交易者是否存在的问题,避免与虚假的交易者进行交易。

2)避免与超过权限的交易者进行交易。有的交易者真实存在,但违反商业道德,恶意透支,或提供假冒伪劣商品。利用身份认证,结合银行、工商管理部门和税务部门有关查处的信息,可以有效保证交易的安全性。

3)访问控制。拒绝非法用户访问系统资源,限定合法用户只能访问系统授权和指定的资源。

2.用户身份认证的基本方式

一般来说,用户身份认证可通过三种基本方式或其组合方式来实现。

1)用户通过某个秘密信息,例如用户通过自己的口令访问系统资源。

2)用户知道某个秘密信息,并且利用包含这一秘密信息的载体访问系统资源。包含这一秘密信息的载体应当是合法持有并能够随身携带的物理介质。例如智能卡中存储用户的个人化参数,访问系统资源时必须持有智能卡,并知道个人化参数。

3)用户利用自身所具有的某些生物学特征,如指纹、声音、DNA图案、视网膜扫描等,但这种方案一般造价较高,适用于保密程度很高的场合。

根据在身份认证中采用因素的多少,可以分为单因素认证、双因素认证、多因素认证等方法。利用口令和某些生物学特征进行身份认证属于单因素法,利用智能卡进行认证属于双因素法,将上述几种方法组合起来使用属于多因素法。

3.身份认证的单因素法

用户身份认证的最简单方法就是口令。系统事先保存每个用户的二元组信息,进入系统时用户输入二元组信息,系统将保存的用户信息和用户输入的信息相比较,从而判断用户身份的合法性。很明显,这种身份认证方法操作十分简单,但同时又最不安全,因为其安全性仅仅基于用户口令的保密性,而用户口令一般较短且容易猜测,因此这种方案不能抵御口令猜测攻击。另外,口令的明文传输使得系统攻击者很容易通过接线窃听方法获取用户口令。由于系统保存的是口令的明文形式,一方面需要系统管理员是可信赖的;另一方面,一旦攻击者能够访问口令表,整个系统的安全性就受到了威胁。

对口令进行加密传输是一种改进的方法。由于传输的是用户口令的密文形式,系统仅保存用户口令的密文,因而窃听者不易获得用户的真实口令,但是这种方案仍然受到口令猜测的攻击,另外系统入侵者还可以采用离线方式对口令密文实施字典攻击。

4.基于智能卡的用户身份认证

基于智能卡的用户身份认证机制属于双因素法,它结合了基本认证方式中的第一种和第二种方法。用户的二元组信息预先存于智能卡中,然后在认证服务器中存入某个事先由用户选择的某个随机数。用户访问系统资源时,用户输入二元组信息。系统首先判断智能卡的合法性,然后由智能卡鉴别用户身份。若用户身份合法,再将智能卡中的随机数送给认证服务器作进一步认证。这种方案基于智能卡的物理安全性,即不易伪造和不能直接读取其中数据。没有管理中心发放的智能卡,则不能访问系统资源,即使智能卡丢失,入侵者仍然需要猜测用户口令。

5.一次口令机制

最安全的身份认证机制是采用一次口令机制,即每次用户登录系统时口令互不相同。一次口令机制主要有两种实现方式:第一种采用“请求响应”方式,用户登录时系统随机提示一条信息,用户根据这一信息连同其个人化数据共同产生一个口令字,用户输入这个口令字,完成一次登录过程,或者用户对这一条信息实施电子签字并发送给认证服务器进行鉴别;第二种方法采用“时钟同步”机制,即根据这个同步时钟信息连同其个人化数据共同产生一个口令字。这两种方案均需要认证服务器端也产生与用户端相同的口令字(或检验签字)用于验证用户身份。

4.3.2  数字签名与安全认证技术

安全认证的主要作用是进行信息认证。信息认证的目的为:一是确认信息发送者的身份;二是验证信息的完整性,即确认信息在传送或存储过程中未被篡改过。下面从安全认证技术和安全认证机构两个方面进行介绍。

1.安全认证技术

安全认证技术主要有数字指纹、数字签名、数字信封、数字时间戳、数字证书等。

1)数字指纹。

数字指纹技术并不是一种加密机制,但却能产生信息的数字“指纹”,在密码学上又被称为“信息摘要”(Message Digest)。它是采用单向Hash函数对文件中若干重要元素进行某种变换运算得到固定长度的摘要码,并在传输信息时将之加入文件一同送给接收方,接收方收到文件后,用相同的方法进行变换运算,若得到的结果与发送来的摘要码相同,则可断定文件未被篡改,反之亦然。

常用的信息摘要算法有MD2MD5SHA-1等。单向散列函数有三个主要特点。

它能处理任意大小的信息,并将其按信息摘要方法生成固定大小的数据块,对同一个源数据反复执行Secure Hash函数将总是得到同样的结果。

它是不可预见的。产生数据块的大小与原始信息的大小没有任何联系,同时源数据和产生的数据块看起来也没有明显关系,源数据的一个微小变化都会对小数据块产生很大的影响。

它是完全不可逆的,没有办法通过生成的数据块直接恢复源数据。

2)数字签名。

数字签名是用来保证信息传输过程中信息的完整性和提供信息发送者的身份认证和不可抵赖性的一种安全技术。首先,接收者能够验证发送者对报文的签名,以确保数据的完整性。同时,由于第三方公证机构可以通过数字签名进行公证,因此发送者事后不能抵赖对报文的签名。另外,数据签名还具有不可伪造性,同现实世界中手工签名具有相同的效果。

公开密钥算法是实现数字签名的主要技术。使用公开密钥算法实现数字签名技术,类似于公开密钥加密技术。它有两个密钥:一个是签名密钥,它是对外保密的,因此称为私有密钥或秘密密钥,简称私钥;另一个是验证密钥,它是对外公开的,因此称为公开密钥,简称公钥。

由于公开密钥算法的运算速度比较慢,因此可使用安全的单向散列函数对要签名的信息进行摘要处理,减小使用公开密钥算法的运算量。实现数字签名的过程如图4-6所示。

4-6  数字签名示意图

4-6的具体工作原理如下所示。

信息发送者使用一单向散列函数对信息生成信息摘要。

信息发送者使用自己的私钥签名信息摘要(用私钥对摘要加密)。

信息发送者把信息本身和已签名的信息摘要一起发送出去。

任何接收者通过使用与信息发送者使用的同一个单向散列函数对接收的信息生成新的信息摘要,再使用信息发送者的公钥对数字签名解密,并与新生成的信息摘要比较,以确认信息发送者的身份和信息是否被修改过。

在数字签名的基础上,还可以实现双重签名技术。双重签名技术是为了保证在事务处理过程中三方安全地传输信息的一种技术,实现了三方通信时的身份认证和信息完整性、防抵赖的保护。例如在网上购物的业务中,客户和商家之间要完成在线付款,那么客户、商家和银行之间将面临以下问题:客户(甲)需要给商家(乙)发送购买信息和客户的付款账户信息;乙作为商家,接受购买信息后,还要同银行(丙)交互,以实现资金转账。但甲不愿让乙看到自己的付款账户信息,也不愿让处理甲付款信息的丙看到订购信息。此时甲使用双重签名技术对两种信息作数字签名,来完成以上功能。

双重数字签名的实现步骤如下:

甲对发给乙的信息1生成信息摘要1

甲对发给丙的信息2生成信息摘要2

甲把信息摘要1和信息摘要2合在一起,对其生成信息摘要3,并使用自己的私钥签名信息摘要3

甲把信息1、信息摘要2和信息摘要3的签名发给乙。

甲把信息2、信息摘要1和信息摘要3的签名发给丙。

乙接收信息后,对信息1生成信息摘要,把这信息摘要和收到的信息摘要2合在一起,并对其生成新的信息摘要,同时使用甲的公钥对信息摘要3的签名进行验证,以确认信息发送者的身份和信息是否被修改过。

丙接收信息后,对信息2生成信息摘要,把此信息摘要和收到的信息摘要1合在一起,并对其生成新的信息摘要,同时使用甲的公钥对信息摘要3的签名进行验证,以确认信息发送者的身份和信息是否被修改过。

3)数字信封。

数字信封技术结合了秘密密钥加密技术和公开密钥加密技术的优点。克服了秘密密钥加密中秘密密钥分发困难和公开密钥加密中加密时间长的问题,使用两个层次的加密来获得公开密钥技术的灵活性和秘密密钥技术的高效性,保证信息的安全性。由于数字信封技术是把要发送的报文用收信方的公钥进行加密,只有收信方的私钥才能解开被加密的报文,而其他人不能解开被加密的报文,这样就确保了只有收信方才能准确地接收到报文,该技术也因此被形象地称为“数字信封”。

数字信封的具体实现步骤如图4-7所示。

4-7  数字信封示意图

4-7的具体工作原理如下所示。

发送方首先生成一个对称密钥,用该对称密钥加密要发送的报文。

发送方用接收方的公钥加密上述对称密钥。

发送方将第一步和第二步的结果(即数字信封)传给接收方。

接收方使用自己的私钥解密被加密的对称密钥。

接收方用得到的对称密钥解密被发信方加密的报文,得到真正的报文。

数字信封技术在外层使用公开密钥加密技术,因此可以获得公开密钥技术的灵活性。由于内层的对称密钥长度通常较短,从而使得公开密钥加密的相对低效率被限制在最低限度,而且由于可以在每次传送中使用不同的对称密钥,系统具有了额外的安全保证。

4)数字时间戳。

在书面合同中,文件签署的日期和签名一样均是防止文件被伪造和篡改的关键性内容。而在电子交易中,同样需对交易文件的日期和时间信息采取安全措施,而数字时间戳服务就能提供电子文件发表时间的安全保护。数字时间戳服务(Digital Time StampDTS)是网络安全服务项目,由专门的机构提供。时间戳是一个经加密后形成的凭证文档,它包括三个部分:需加时间戳的文件的摘要、DTS收到文件的日期和时间、DTS的数字签名。

5)数字证书。

在交易支付过程中,参与各方必须利用认证中心签发的数字证书来证明各自的身份。所谓数字证书,就是用电子手段来证实一个用户的身份及用户对网络资源的访问权限。

数字证书是用来唯一确认安全电子商务交易双方身份的工具。由于它由证书管理中心做了数字签名,因此任何第三方都无法修改证书的内容。任何信用卡持有人只有申请到相应的数字证书,才能参加安全电子商务的网上交易。

数字证书也叫数字标识、数字凭证等。数字证书包含有证书持有者的有关信息,以标识他们的身份,包括的信息有:版本号、序列号、拥有者姓名、公钥、有效期、签名算法、颁发单位签名等。

数字证书一般分为客户证书、商家证书、网关证书及CA系统证书。

2.安全认证机构

电子商务授权机构(CA)也称为电子商务认证中心(Certificate Authority)。在电子交易中,无论是数字时间戳服务还是数字证书的发放,它都不是靠交易双方自己能完成的,而需要有一个具有权威性和公正性的第三方来完成。

认证中心(CA)就是承担网上安全交易认证服务,它能签发数字证书,并能确认用户身份的服务机构。认证中心通常是企业性的服务机构,主要任务是受理数字证书的申请、签发及对数字证书的管理。

认证中心的结构如图4-8所示。

4-8  认证中心的结构

4.3.3  安全认证协议

1S-HTTP协议

S-HTTPSecure-Hyper Text Transfer Protocol,安全超文本传输协议)是用密钥对来加密,属Internet应用层协议,以保障Web站点信息的安全,如主页URLhttps://开始,说明该页遵循安全超文本传输协议,这就表示该站点的Web页面是安全的,能够保证申请人的个人信息、信用卡信息在Web站点上是安全的。

2S/MIME协议

S/MIMESecure/Multimedia Internet Mail Extensions,安全多媒体Internet邮件扩展协议)依靠密钥对保证E-mail的安全传输。

3SSL协议

SSL(安全套接层)是由Netscape公司1994年设计开发的安全协议,主要用于提高应用程序之间的数据的安全系数。SSL协议的概念可以被概括为:它是一个保证任何安装了安全套接层的客户和服务器间事务安全的协议,该协议向基于TCP/IP的客户/服务器应用程序提供了客户端和服务器的鉴别、数据完整性及信息机密性等安全措施。目的是为用户提供Internet和企业内联网的安全通信服务。

SSL采用了公开密钥和专有密钥两种加密,即在建立连接过程中采用公开密钥;在会话过程中使用专有密钥。加密的类型和强度则在两端之间建立连接的过程中判断决定。它保证了客户和服务器间事务的安全性。

4SET协议

SET(安全电子交易)是一个通过开放网络进行安全资金支付的技术标准,由VISAMasterCard组织共同制定,于1997年联合推出。由于它得到了IBMHPMicrosoft等很多大公司的支持,已成为事实上的工业标准,目前已获得IETF标准的认可。这是一个为Internet上进行电子交易而设立的一个开放的、以电子货币为基础的电子付款规范。

SET在保留对客户信用卡认证的前提下,又增加了对商家身份的认证,这对于需要支付货币的交易来讲是至关重要的。SET将建立一种能在Internet上安全使用银行卡购物的标准。安全电子交易规范是一种为基于信用卡的电子交易提供的安全措施规则,是一种能广泛应用于Internet上的安全电子付款协议,它能够将普遍应用的信用卡的使用场所从目前的商店扩展到消费者家里,甚至扩展到消费者个人计算机中。

目前电子商务中已经广泛使用SSLSET安全认证协议,本书第5章将进行更详细的介绍。