电子商务系统所需的安全服务-2 - INTERNET与新经济环境下的企业管理 - 无线局域网

(这条文章已经被阅读了 79 次) 时间:2001-02-08 00:37:34 来源:无线局域网 (pem) 原创-IT

http://www.happyfruit.com
电子商务研究咨询部

为了满足电子商务的安全要求,电子商务系统必须利用安全技术为电子商务活动参与者提供可靠的安全服务,主要的安全服务包括:

鉴别服务:对人或实体的身份进行鉴别,为身份的真实性提供保证。这意味着当某人或是提升成具有某个特定的身份时,鉴别服务将提供一种方法来验证其声明的正确性。
访问控制服务;访问控制服务通过授权来对使用资源的方式进行控制,防止非授权使用或控制资源。它有助于达到机密性、王正兴、可控性和建立责任机制。
机密性服务:机密性服务的目标视为电子商务参与者的信息在存储、处理、传输过程中提供机密性保证,防止信息被泄漏给非授权的人或实体。
不可否认服务:于其他服务不同,不可否认服务针对的是来自合法用户的威胁,而不是未知攻击者的威胁。否认是指电子商务活动者否认所进行的操作,如否认交易已发生,否认在交易过程中的行为或对某消息的接收和发送。不可否认服务就是为交易的双方提供不可否认的证据来为解决因否认而产生的争议提供支持。它实际上建立了交易双方的责任机制。

电子商务中使用的核心安全技术
各种安全服务是通过安全技术来实现的。电子商务中使用的核心安全技术包括:加密、电子签名、电子信封、电子证书、防火墙。
加密
机密技术是最基本的安全技术,其主要功能是提供机密性服务。但在实现其他安全服务事业会使用机密技术。加密技术包括:共享密钥加密(Secret-Key Cryptography)和公开密钥加密(Public-Key Cryptography)。
A. 共享密钥加密
共享密钥加密又称对称密钥加密,既同用一个密钥去加密和解密数据。常用的算法包括DES、IDEA等。银行经常采用这种加密算法来加密持卡人的个人识别号码(PIN)。
共享加密技术要求通信双方事先交换密钥,在购物支付的环境中,商户需要与成千上万的购物者进行交易,若采用简单的共享密钥加密技术,商户需要管理成千上万的密钥于不同的对象通信,除了存储开销以外,密钥管理是一个几乎不可能解决的问题。另外,双方如何交换密钥?通过传统手段?通过因特网?无论何者都会遇到密钥传送的安全性问题。第三,在现实环境中,密钥通常会经常更换,更为极端的是,每次传送都是用不同的密钥,共享密钥技术的密钥管理和发布多时远远无法满足使用要求的。
B. 公开密钥加密
与共享密钥加密技术不同,公开密钥加密(又称不对称密钥加密),需要使用一对密钥,一个公开发布,一个由收信者保存,发信任用公开密钥(Public-Key)去加密,而收信人则用私有密钥(Private-Key)曲解密。通过数学的手段保证加密过程是一个不可逆过程,即只有用私有密钥才能解密。常用的算法有RSA、E1Gamal等。
公开密钥技术解决了密钥的发布和管理问题,商户可以公开其公开密钥,而保留私有密钥。购物者可以用人人皆知的公开密钥对发送的信息进行加密,安全的传送给该商户,然后该商户用自己的私有密钥进行解密。

电子数字签名

日常生活中时常会有报文与签名同时发送,以作为日后查证的保证。在因特网环境中,这可以用电子数字签名作为模拟。具体做法是:
a. 将报文按双方约定的HASH算法计算得到一个固定位数的报文摘要(Message Digest)值。在数学上保证:只要改动报文的任何一位,重新计算出的报文摘要就会与原先值不符。这样就保证了报文的不可更改。
b. 该报文的摘要值用发送者的私人密钥加密,然后该密文同原报文一起发送该接收者,所产生的报文即称数字签名。
c. 接收方收到数字签名后,用同样的HASH算法对报文计算摘要值,然后与用发送者的公开密钥进行解密解开的报文摘要值相比较。如相等则说明报文确实来自发送者。

3).电子信封
为解决每次传送更换密钥的问题,结合对称加密技术和公开密钥加密技术的优点,提出电子信封的概念:发送者自动生成对称密钥,用他加密原文,将生成的密文连同密钥本身一起,再用公开密钥手段传送出去。收信者在解密以后同时得到对称密钥和用它加密的密文。这样保证每次传送都可由发送方选定不同密钥进行。

4)。电子证书
上述加密体制仍然存在一个漏洞:身份的验证。举例来说,当A发送信息给B时,B如何可以仅仅通过其报文核实报文确实出自A之手?通过上文的叙述,B可以确信所受到报文没有其他人可以阅读,也没有任何人可以修改,但B无法断定是否有人假冒A给自己发信。当信件内容是一条支付请求的时候,若无其他有效手段,B很有可能承担相当大的风险。
常用的解决方案是采用可信的第三方认证。在因特网上存在一个部门叫认证机构(CA),她核实了用户A的真实身份以后(可以通过任何传统的方式进行),CA会签名一份报文给A,其中含有A的名字和A的公开密钥。该报文称为“电子证书”。以后A发出的任何报文中都带有这份电子证书,以便收信方核实。。同样,CA也可以给商户、银行等任何参与网上购物的个人或集团发电子证书。电子证书结构如下:

5)防火墙技术
网络防火墙技术是一种用来加强网络之间访问控制,防止外部网络用户以非法手段通过外部网络及入内部网络,访问内部网络资源,保护内部网络操作环境的特殊网络互连设备。他对两个或多个网络之间传输的数据包如链接方式按照一定的安全策略来实施检查,以决定网络之间的通信是否被允许,并监视网络运行状态。

4. 安全电子商务系统的体系结构
将安全技术融入电子商务系统来提供安全服务,就形成了一个安全电子商务系统,抽象地看,安全电子商务系统的功能体系结构如图。
1)支持服务层 包括密码服务、通信、归档、用户接口和访问控制等模块,他提供了实现安全服务的安全通信服务。
密码服务:提供保证数据安全的密码服务。例如,消息的加解密、消息认证码、杂凑函数数字签名、密钥生成等。
通信服务:支持不同实体间的通信。
归档服务:提供长期存在的数据的本地存储和归档,例如,数字签名后的消息、证书、密钥、不可否认证据等。
用户接口:支持用户服务之间的交互作用。用户可通过该接口与管理钱包,访问归档中的安全信息等。
访问控制服务:提供实现体系结构中各模块的访问控制方法。
2)传输层
传输层发送、接受、自治商业活动所需的封装数据跳,实现客户和服务器之间根据规定的安全叫色来传递信息。这种数据条的基本类型为:
签名文本: 证书、收据、已签名的陈述
信息: 数字化的商品、访问某种服务所需的信息(如:地址、口令、密钥等)、获得物理商品所需的信息
电子钱包
传输层包括付款模块、文档服务模块和证书服务模块。
3)交换层
交换层提供封装数据的公平交换服务。所谓公平是指,A和B同意进行交换,则A收到B的封装数据条的充分条件是B收到A的封装数据条。
4)商务层
商务层提供了商业方案(如“邮购零售”、“在线销售信息”等)。

三、电子支付系统的安全性
1. 电子支付系统模型
在电子支付系统中,至少有三类参与者,他们是销售商、消费者和银行。进行电子商务活动是消费者用前来交换销售商的商品或服务,银行进行实际的钱的转账,抽象地看,正是银行建立了“比特”与“钱”的联系。在目前的电子支付系统中,银行的角色被分成两部分,一部分称为钞票发布者,即消费者的银行,一部分称为钞票持有者,即销售者的银行。所谓电子支付,就是消费者利用钞票发行者和钞票持有者来将钱转移给销售者。
电子付款系统可分为现金型系统和支票型系统。在现金型系统中,消费者的银行账户在消费者实施任何消费前就被减少,因此他是一种预付系统。象基于信用卡的电子钱包、电子现金就属于这种类型,现金型付款系统的典型支付过程如下:

支票型系统可分为现付系统和后付系统。在现付系统中,付款时立即从消费者的账户中取款,如基于ATM卡的支付系统就属于这种类型。在后付系统中,销售者的银行账户被增加是在从消费者的银行账户中取款之前。信用卡系统就属于这种类型。由于在现付和后付系统中,付款的实施都是由消费者向销售者传送某类“表格”,如支票,信用卡凭证,因此我们将其同称为支票系统。支票型系统的典型支付流程如下:

根据银行是否参与销售者与消费者之间的交易,电子支付系统又可分为在线(on-line)电子支付系统和离线(off-line)电子支付系统。在在线电子支付系统中,银行参与交易过程,对付款进行认证和授权。在离线电子支付系统中,银行不参与交易过程。通常,在线系统的安全性比离线系统高,但运营开销比离线系统高,且银行容易成为通信瓶颈。

2. 电子支付系统的安全要求
电子支付系统最直观的安全要求就是付款构成中任何一方(消费者、销售者、银行)都不会丢失钱,同时消费者还希望他的支付行为在一定程度上不会被监视。电子支付系统主要的任务是如何授权付款,如何在防止不诚实的消费者进行非授权付款的同时,使诚实消费者能让销售者相信他将收到合法的付款。尽管由于付款系统的安全要求会随着它的特性和信任假设而不同,但通常一个电子付款系统的安全要求包括如下几个方面:
1) 完整性与认证
授权从消费者的账户中取款的消息必须由消费者的数字签名,以避免非授权的实体(包括银行)在没有经消费者授权证明时仍能从消费者的账户中取款。参加电子支付的消费者和银行都希望签名的支付授权证书是唯一的,且一份支付授权证书不能被消费者进行多次投递。
消费者希望能得到销售者的一个签名证据来承认将提供消费者购买的商品或服务。
消费者和商人都希望有一个可信的第三方来保证支付授权与服务授权证据的公平交换。
销售者希望在提供商品或服务钱,他的银行能保证他将收到应有的付款。
2) 机密性
参加电子支付的各方或部分参与者能保证外部人员不能获悉支付细节,如:付款人和收款人的身份、账户号、付款量、日期、付款项目等。
3) 匿名性
在现金型支付系统中,消费者或许会要求保护其隐私,因而提出匿名性要求,他有如下三种形式:
消费者匿名性:销售者只能知道消费者的一个假名,而不知道消费者的真实身份。
消费者不可连接性:销售者不能在同一个消费者的两次付款间建立联系。
消费者不可追踪性:支付系统不能从支付信息追踪到消费者。
4) 可用性和可靠性
保证消费者在需要时能付款,销售者在需要时能收款。
支付过程必须是原子的,即付款过程要么完整结束,要么已进行的步骤均无效,以保证消费者不会因为网络故障或销售者服务器的故障而丢失钱。
达到可用性的先决条件是网络服务和所有软、硬件单元完全可靠。从故障恢复要求各方都能保证稳定存储和特色的再同步协议。

特别地,对于基于信用卡的电子支付系统(如Set),其安全性可具体表述为如下三个方面:
能提供对持卡人、商人和钞票持有人的认证。
能提供付款数据的机密性。
能保证付款数据的完整性。

四、电子交换的安全性
1. 电子交换的形式
在商务活动中,人们长城会进行各种交换,如交换合同文本,前与物的交换等,在电子商务中,常见的交换包括以下几种形式:
在购物过程中,付款与收据的交换。
在合同签订过程中,每一方都药用自己对一份合同的不可否认承诺来交换另一方对同一份合同的不可否认承诺。
在可证实邮件中,消息与收据的交换。
在物物交易过程中,一种商品与另一种商品的交换。从电子的角度看,这里的商品是所谓的“比特商品”。

2. 电子交换的基本模型
以上所属的各种交换可以抽象位如下的一般模型如下图,图中p、q是进行交换的双方,ip、iq是要进行交换的东西,dp、dq分别是关于ip和iq的描述,desc()是一个描述函数,当输入一个交换条件后,它的输出是对该条的详细描述。

3. 一个例子
假设A希望订购一张飞机票,在因特网上有几家公司正在销售他所希望的机票。经过浏览后,A发现航空公司B正在十一月五号前进行打折销售,因此A决定定购B的机票。机票的购买过程为:A向B发送预定请求,B为A保留一张机票,并向A发送一个认可消息:A到售票窗口付款,并得到机票。这就是A用预定请求交换B的认可的交换过程。
认为A和B相互之间并不是互相信任的是合理的,正是由于这一点,可能发生如下纠纷。A预定机票后并没有去购买机票,这样B就因为不能售出该机票而造成损失,另一方面,在认可向A预留机票后,B可能会将机票卖给另一个愿意出全价购买机票的购买者,这样A将买不到机票。由此可见,尽管A和B完全正确的完成了交换过程,但上面两种情形都可能发生,因此我们说这个交换过程是不公平的。
我们可以使用数字签名技术来保证A的预定请求和B的认可均是不可否认的。这就是说,当A发送了预定请求后,他不能否认做出了这个请求,当B发送了认可消息后,他不能否认做出了这个请求。但这并不能完全解决问题,假如A发出预定请求后,并没有收到B的认可消息,这时A就处于一种进退两难的状况。A没有收到认可消息由三种可能:
a. B发出了认可消息,但由于网络错误导致A未收到该消息。
b. B收到A预定请求后,故意不发出认可消息。
c. B未收到A的预定消息,因而不可能发出认可消息。
对于A来说,他无法确定是那种情况发生了。对此他可以采取两种行动,一是到其他航空公司去购票,这时若是情况a或b发生,他就将承担为两张机票付款的风险,二是仍到B处购票,这时若是情况c发生,他就可能面临着买不到票的风险。从这个例子我们可以看到,在电子交换过程中,交换双方不仅面临着外部攻击者的威胁,而且可能受到对方的威胁。

4. 电子交换的安全要求
在电子交换中,为了抵抗外部攻击者的威胁,可能会有如下安全要求:
真实性:能对交换双方的身份进行认证。
机密性:能保证交换的内容不被非法授权的人知道。
完整性:能保证交换的数据不被非授权修改。
为了抵抗交换对方的攻击,电子交换必须满足如下安全要求:
有效性:当交换过程正确完成时交换双方都能收到他们所希望的东西。从抽象模型看,这就是说,当交换过程被正确完成后,p能收到iq,且desc(iq)=dq,q能收到ip,且desc(ip)=dp。
公平性:公平性划分成如下两种水平
a. 强公平性:当交换过程结束后,要么交换双方都收到自己所希望的东西,要么双方都未收到自己所希望的东西。从抽象模型来看,就是说,当交换过程结束后,当p收到iq,且desc(iq)=dq的充分必要条件为q收到ip,且desc(ip)=dp。
b. 弱公平性:当交换过程结束后,要么满足强公平性,要么未收到对方东西的一方能得到对方已收到他所希望的证据,以便未收到东西的一方能向仲裁人出示该证据来证明对方已收到他所希望的东西,从而解决争议。
不可否认性:
发方不可否认:他所收到的东西是对方所发出的。
收方不可否认:对方已收到了他发出的东西。

遗留问题
安全电子商务的一些方面目前尚未被任何方案或系统所涉及,或者说对它们研究和实现是不充分的。它们包括:
没有一个项目是一种电子商务的完整解决方案,尚没建立起安全电子商务的一个完整模型和体系结构。
尽管一些系统正逐渐成为标准,但仅有几个标准的API。从开放市场的角度来看,协议间的通用API和网关是绝对需要的。
大多数电子商务系统都是封闭式的:这是指他们使用独有的技术,仅支持一些特定的协议和机制。他们常常需要一个中央服务器来作为所有参与者的可信的三方。有时他们还要求使用特定的服务器或浏览器。
尽管大多数方案都使用了公钥密码,但多方安全受到的关注远远不够。没有一种解决争议的决策程序被建立。
客户的匿名性和隐私尚未得到充分的考虑,一些付款系统(如ecash)提供了一定的匿名性,但没有匿名通信的匿名付款是毫无意义的。
大多数系统都将销售商的服务器和消费者的浏览器间的关系假设为主从关系,这种非对称关系限制了在这些系统中执行复杂的协议,而且不允许用户间进行直接交易。
大多数系统都将限制为两方,例如,SSL支持浏览器和服务器间的安全会话。要集成一个安全连接到第三方(如支付系统中的银行)是困难的。
所有方案和产品开发都仅考虑了在线销售,多方交易问题(如拍卖),公开交换问题(如签合同,可证实了电子邮件)很少被考虑。