无忧支付网首页
站内搜索
您当前的位置:主页 > 相关文档 >

电子现金网络支付系统及其应用实例

添加时间:2022-07-26

  1、电子现金网络支付系统

  在整个电子现金支付系统中,电子现金发行机构的参与十分重要。为控制电子货币的发行量发行机构在央行的严密监控下进行电子现金的发行发行机构本身也有十分严格的资格审批过程。发行机构根据客户所存款项向客户发放等值的电子现金,并保证电子现金的防伪性。客户则可以持电子现金进行日常支付、网上购物以及网上个人之间的其他支付等活动。

  目前,针对电子现金,国际上已开发出了多种应用系统,如DigiCash、Mondex、Net-Cash等。下面以荷兰的DigiCash公司E-Cash(钱包软件)和数字设备公司(DEC)的Millicent电子现金系统为例来分析电子现金交易的详细过程。

  客户和商家在电子现金银行开立账户,客户可以从其银行账户中提取电子现金,并存到自己的电子钱包里客户有了电子现金就可以随时到商家消费。当客户拿电子现金消费时,商家首先将电子现金送到银行,银行验证电子现金的真伪并确认该电子现金是否消费过然后将电子现金存入商家的账户并通知商家,此时商家就可以寄商品或发货到客户。具体支付流程如图1所示。

电子现金支付流程

图1 电子现金支付流程

  1.电子现金存放

  客户使用电子现金之前,先用自己的网际钱包软件(E-Cash钱包软件称为网际钱包(cyber wallet),主要存储和管理客户电子现金,保存所有交易记录,使协议尽可能对客户透明,但银行看不到客户的硬盘号)产生一个序列号,并送到银行签字生效。序列号是随机产生的,它既不能与以后产生的序列号重复也不能与别人网际钱包里的序列号重复。

  目前采用随机数技术已完全能做到这一点。这个序列号送到银行签字时不能让银行看到。这就是所谓盲签协议(blind signature, BS),即由客户网际钱包软件再选一个随机数,称作盲因子(blinding factor,BF),并与序列号相乘。将序列号变盲送到银行签字后送回客户,客户再以盲序号除以BF即恢复原序号。因为电子现金已由银行签字所以可以进入流通。

  2.客户从银行提取电子现金

  客户想得到不同面值的电子现金时,需要送一个提款要求到银行,这个要求要用客户密钥签字,并由银行公钥加密。银行签字时看不到客户的序列号,但又要为客户要求的面值签字,这可用不同的电子现金面值用不同的签字密钥来实现。客户只要告诉银行所需面值银行就用表示此面值的密钥签字,然后借记客户账户相应的金额。

  提款时每个电子现金都要由银行私钥加密序列号(加盖数字印章),银行盲签电子现金之后要借记客户账户,之后银行签署回应信息并返回客户,这个信息无须加密,因为只有客户才知道BF,复原后就可以用这些电子现金去消费。

  3.客户用电子现金去消费

  客户有了电子现金,可将其存入网际钱包,并可随时拿去消费,客户消费时都得与商家Web站点打交道。购买和订货协议不属于电子现金协议范围,但要真正做商务就得实现二者的衔接和集成。商家接到客户订单后,要将支付要求送到客户网际钱包。

  这些信息包括订货数量、所用货币、当前日期、商家银行、商家银行账户、货物叙述等。如果客户同意支付,其须精确算出应付多少电子现金给商家。为了匿名,商家只记录序号。这些均由客户网际钱包完成,如果电子现金不够则钱包软件还可向银行提取。

  4.支付和证实支付

  将电子现金传送到商家时要用银行公钥加密,以防传送时被人偷看,同时也可防止商家篡改。商家将加密的电子现金和支付信息送入银行并存入其账户。信息中包括订单叙述的hash函数。因已知客户订单银行可以与其副本对照比较,以检验客户同意的购买量。由于订单被加密,银行并不知道购买细节。如果支付信息自离开客户到存入银行期间被篡改,则hash函数值就会改变,因此支付信息的hash值和电子现金(coins)均要加密。

  当银行接到支付信息后再产生自己的支付hash值如果二者匹配就说明信息未被算改。在此过程中付款者(客户)仍然是匿名的,除非其决定以后要证实这笔支付。收款者(商家)不需若名,因商家必须将电子现金送到银行联机确认后才能存入其账户,所以银行会根据客户构造的支付信息识别商家。

  5.消费之后电子现金存款

  商家收到支付信息后将存款要求送到银行,这笔存款要由商家签字并由银行公钥加密。银行检验这个电子现金是真的并且不是重复消费就贷记账户,完成之后送一个通知给商家。

  2、电子现金网络支付应用实例

  1.E-Cash

  E-Cash电子货币最早由数字现金公司DigiCash推出,而后被数字现金技术公司收购。瑞士的网络支付AG银行、德国的德意志银行、澳大利亚的圣乔治银行以及奥地利的奥地利银行,均曾开展E-Cash的相关业务。E-Cash曾是一个十分成功的电子现金解决方案。

  E-Cash采用公用密钥以及数字签名技术,保证了电子货币在传输过程中的安全性与购物时的匿名性。由于其使用过程几乎与用现金付款一样简单,所以很受用户的欢迎。为了使用E-Cash,顾客必须在一家参与银行开一个账户。然后,顾客还必须在该账户存储一定数量的钱,顾客会得到以电子现金形式存在的钱,这些钱可以存储在顾客的硬盘上。

  这些钱是以代币(token)的形式存储的,顾客从银行所获得的电子现金也可以转到一个特设的银行账户然后用这个账户来支付与贸易商之间的交易。顾客可以用存储在硬盘上的文件进行付款。想接受E-Cash货币的贸易商也需要在一家支持DigiCash的银行设立一个账户,以便兑换已接受的货币。对E-Cash模型来说,交易费用为零。

  用E-Cash作为典型的电子现金来进行网上支付,其流程大致如下。

  (1)客户需要先在其电子钱包软件中储存E-Cash电子现金,即一定数量的电子现金。

  (2)客户浏览商户的站点,确定欲购物品的品类、数量及价格等。

  (3)客户通过商户的站点递交一份购物订单。

  (4)商家收到订单后,即向客户电子钱包发送支付请求,请求内容包括订单金额、可用币种、当前时间、商户银行、商户的银行账户ID及订单描述等。

  (5)客户电子钱包将上述信息呈现给客户,请求是否付款。

  (6)客户同意付款则将从电子钱包中采集与请求金额相等的电子现金。

  (7)在将所要支付给商户的电子现金送给商户之前,须用银行的公用密钥加密。

  (8)商户将接收的电子现金送给银行存入自己的账户。在先送往商户、后送给银行的支付信息中包含有关支付和加密的电子现金的信息。

  (9)在商户存款期间,支付信息与加密电子现金一起被送往银行。

  (10)在收到支付信息后,作为存入请求的一部分,商户将其送往银行。客户可以用类似的存入信息格式向银行返回专用电子现金。

  (11)在收到有效支付后,商户给用户发送所购商品和收据。

  使用E-Cash电子现金的消费者可以放心地购买所需要的任何商品,因为E-Cash是一种无条件匿名系统。当消费者使用电子现金时,商家所能看到的只是银行的签字,而不是消费者本人的签名。

  E-Cash系统是一个单向代币系统,它只允许货币使用一次。在顾客和贸易商之间只能执行一个交易,贸易商不能用它来支付其他东西。这些货币必须送回银行进行兑换。顾客之间的对等交易是可行的,但是在过程中需要一家银行来兑换代币,每个代币都包含它所代表的金额、用作序列号的随机数以及发行银行的数字签名。

  银行能够在不知道使用者的情况下对电子现金进行验证,而且还允许电子货币保持匿名性。这是通过使用一个叫作“隐蔽签名”(blind signature)的系统来实现的。隐蔽签名是一个由DigiCash的创始人大卫·考恩发明的具有专利权的算法。

  为了使其更加简单,由获取电子现金的顾客创建原始代币。将一个序列号加到代币上,并将其发送到顾客的银行。通过将该序列号与另一个随机数相乘,使银行不可以看见该序列号。银行给代币增加一个数字签名,并将其送回给顾客。顾客可以用隐蔽系数分解序列号,并取回原始的序列号。

电子货币与网络支付

  2.NetCash

  NetCash是可记录的匿名电子现金支付系统。它是由南加利福尼亚大学在1995年开发的,现在已经不再使用。虽然NetCash是一个非常好的方案,但是由于它出现的时间太早,难以取得成功。它要求有一个复杂的付款基础设施。在早期,这对许多互联网用户来说是很难实现和使用的。其主要特点是设置分级货币服务器来验证和管理电子现金其电子交易的安全性得到保证。

  NetCash系统运作的中心是一个货币服务器。货币服务器是一个经政府许可的发行电子现金的机构,该机构存有资金,以保证支付,并且在许多方面和银行的作用相同。政府机构还需建立一个中心认证机构,用于向货币服务器发放公钥和数字签名密钥。

  NetCash系统产生的电子现金有以下字段:第一,货币服务器名称,负责产生这个现金的银行名称及IP地址;第二截止日期,电子现金停止使用的日期;第三,顺序号,银行需记录尚未兑现的有效账单的顺序号;第四,币值,电子现金的数额及货币类型。

  电子现金可通过任意次数的不同协议实现交换,但以下两步是必需的。

  (1)客户能在某些电子现金或数字支票中结合一些指令,这些指令用于指示货币服务器用这些电子现金或数字支票去交换由其他人开出的新的现金或支票。客户还可以在以上电子现金或数字支票中随机选取密钥,并且用货币服务器的公钥进行加密。

  (2)货币服务器解密收到的消息,并按用户的指令产生新的电子现金或支票同时检查是否有欺诈。

  NetCash系统的安全性依赖于单向认证。另外,客户的身份能保密,因为业务过程中不需要出示客户的公钥或其证书上的身份。货币服务器负责清理支票。客户服务器应在发出新支票或新电子现金前,向货币服务器呈递客户的钱,以实现支付。货币服务器应经常清账。客户能够通过在若干个不同的货币服务器之间交换电子现金而隐藏身份信息。

  3.Micropayments

  Micropayments是由IBM公司研制开发的一个专门用于互联网处理任意小额的交易,适合在互联网上购买一页书、一首歌、一段文字、一个笑话等的微小支付。由于这种支付的特殊性,以至在传统的支付形式下较难实现,在互联网上通过微支付传输协议(micro payment transportprotocol,MPTP。该协议是由IETF制定的工作草案),解决了每个商品交易的发送速度与低成本问题。

  3、电子现金网络支付存在的问题

  电子现金以其方便、灵活的特点可以用于互联网上的小额消费结算,其在带来许多方便的同时,也带来很多问题。除了安全问题,还在税收、法律、货币供应等方面存在一些潜在的问题。

  以下列举几项电子现金支付还存在较突出的问题。

  (1)成本较高。电子现金对于硬件和软件的技术要求都较高,需要一个大型的数据库存储用户完成的交易和电子现金序列号以防止重复消费,因此尚需开发出硬件、软件成本都较低廉的电子现金。

  (2)存在货币兑换问题。由于电子现金仍以传统的货币体系为基础,因此从事跨国贸易就必须要使用特殊的兑换软件。

  (3)风险较大。如果某个用户的硬盘损坏,电子现金丢失,钱就无法恢复,这个风险许多消费者都不愿承担。更令人担心的是电子伪钞的出现,一旦电子伪钞获得成功,那么,发行人及其客户所要付出的代价就可能是毁灭性的。

  (4)找零问题。电子现金通常有很多不同的面值支付时,用户先进行精确计算再将与需要支付的金额相一致的电子现金传给商家。但由于用户将电子现金存在本地,如果某次支付时本地现金的面值无法与需要支付的金额刚好相等而此时向银行购买又不现实,这时就遇到“找零”问题了。解决该问题的方案有许多种,它们的主体思想基本一样,最大不同之处在于“零钱”如何返回到用户手中。

  其中一种解决方案是:银行用不同的公钥对不同面值的现金签字;商家将用户签字的账单和加密现金送到银行;银行计算出用户的实际消费金额;如果用户送来的货币需要找零,则银行将找的零钱存起来,这时的零钱不能用于用户的下次支付,即不能及时返回给用户,由银行保管起来,并累积:以后用户通过某种验证银行能确定其的确是零钱的拥有者,再将零钱返回给用户。

关闭

1.点击下面按钮复制微信号

***********

2.打开微信→查找微信号

加为好友 开始支付接入