提醒:本文最后更新于 2026-05-24 05:56,文中所关联的信息可能已发生改变,请知悉!
电子现金是一种用电子形式模拟现金的技术。电子现金系统企图在多方面为在线交易复制现金的特性: 方便、费用低,不记名以及其他性质。多数电子现金系统都能为小额在线交易提供快捷与方便。
编辑
一、电子现金含义
电子现金是一种新的支付方式,用户可以像用纸币一样用电子现金进行日常买卖。电子现金可以保证买卖双方的自由不受干涉,电子现金有种类、特点和支付流程等内容。
二、电子现金的种类
1、”软件基“类电子现金也叫数字现金,用于网上分类。
2、”卡基”类也叫电子钱包,提供网上支付功能。
三、电子现金的特点
1、协议性
2、对软件依赖性
3、灵活性
4、可鉴别性
5、匿名性
四、电子现金的支付流程
1、客户用现金或银行存款向发行机构申请兑换电子货币。
2、客户持电子现金进行网上购物,转移货款金额到商户的电子钱包中。
3、商户验证电子现金的数量及真伪,验证为智能卡型电子现金,则由电子钱包验证,可完全脱离银行的介入,向客户组织发货。
4、商户将一定量的电子现金向银行发行机构申请兑换成存款账户。
5、发行机构验证并回收电子现金,同时将等额的货币由自己的银行账户转移到商家的银行账户中。
五、性质
电子现金在经济领域起着与普通现金同样的作用,对正常的经济运行至关重要。电子现金应具备以下性质 :
1. 独立性: 电子现金的安全性不能只靠物理上的安全来保证,必须通过电子现金自身使用的各项密码技术来保证电子现金的安全;
2. 不可重复花费: 电子现金只能使用一次,重复花费能被容易地检查出来;
3. 匿名性: 银行和商家相互勾结也不能跟踪电子现金的使用,就是无法将电子现金的用户的购买行为联系到一起,从而隐蔽电子现金用户的购买历史;
4. 不可伪造性: 用户不能造假币,包括两种情况: 一是用户不能凭空制造有效的电子现金; 二是用户从银行提取 N 个有效的电子现金后,也不能根据提取和支付这 N 个电子现金的信息制造出有效的电子现金;
5. 可传递性: 用户能将电子现金像普通现金一样,在用户之间任意转让,且不能被跟踪;
6. 可分性: 电子现金不仅能作为整体使用,还应能被分为更小的部分多次使用,只要各部分的面额之和与原电子现金面额相等,就可以进行任意金额的支付;
六、密码技术
电子现金的安全性和可靠性等主要是依靠密码技术来实现的,主要有:
折叠分割选择技术
1. 分割选择技术: 用户在提取电子现金时,不能让银行知道电子现金中用户的身份信息,但银行需要知道提取的电子现金是正确构造的。分割选择技术是用户正确构造 N 个电子现金传给银行,银行随机抽取其中的 N - 1 个让用户给出它们的构造,如果构造是正确的,银行就认为另一个的构造也是正确的,并对它进行签名。
折叠零知识证明
2. 零知识证明: 证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。以上两种技术用于将用户的身份信息嵌入到电子现金中。
折叠认证
3. 认证: 认证一方面是鉴别通信中信息发送者是真实的而不是假冒的; 另一方面是验证被传送信息是正确和完整的,没有被篡改、重放或延迟。
折叠盲数字签名
4. 盲数字签名: 签名申请者将待签名的消息经 ” 盲变换 ” 后发送给签名者, 签名者并不知道所签发消息的具体内容, 该技术用于实现用户的匿名性。
七、未来发展
电子现金的传递性的可用性研究
传递性是物理现金一个基本的特征,但在电子现金中还没有应用,最主要的原因是: 电子现金中为了能跟踪重复花费的用户,在电子现金中加入了盲化的用户身份信息,在电子现金流动的过程中将加入使用过该电子现金的所有用户身份信息,因此根据信息论的理论,电子现金的长度是不断地增长的,每次交易都将造成大通信量问题,无法有利于实际应用; 另外电子现金无论是在构造还是存款过程中,相对于物理现金都是相当容易而有效的。因此公平的离线电子现金的研究并不关注电子现金的传递性。
多银行电子现金的研究
现有的公平电子现金方案都是由一个银行发行的,但在现实生活中由多个电子银行系统发行的电子现金较之单个银行发行的电子现金是更适合的,因为在一个国家或地区具有电子现金发行能力的银行可能不止一家。这多个银行形成一个群体,它们受国家的中央银行管理,每个银行都可以发行电子现金。所以由多个银行发行的公平电子现金模型是电子现金系统研究的重要方向,在这方面的研究主要是利用改进的群签名方案和群盲签名方案设计的多银行公平电子现金方案。但存在两个公开问题: 第一是设计一个实用的多银行公平电子现金方案当然不一定是只是利用群签名技术,利用其它的技术可能更好地解决; 第二是设计一个可废除群成员的群签名方案,这也是群签名研究中的一个公开问题。
八、研究
可分电子现金系统能够让用户进行多次合法的精确支付,减少提款次数,从而可以降低网络通信量,提高系统效率,因此可分的电子现金系统是研究的重点。Okamoto 和 Ohta 于 1991 年首次提出了一个可分电子现金系统,该系统允许用户将电子现金分成任意金额进行多次支付,直到与该电子现金的总额相等为止。为使银行能够有效地检测用户的重复支付,他们采用了二叉树技术对电子现金进行表示,但这种技术导致电子现金的支付协议通信量大、计算复杂度高、效率低,尽管许多学者对该方案从不同的角度提出了改进[6~10],但都由于使用二叉树表示使得支付协议的执行效率仍然很低。因此,到目前为止,可分电子现金系统依然是不实用的。关于这方面研究,还可以引入可信第三方来实现对超额支付者的识别,使电子现金的支付协议中没必要包含进行重复支付检查的信息,这样就可以放弃可分电子现金的二叉树表示技术,从而构造更简单的可分电子现金系统。
九、系统方案
电子现金设计的基本流程如下:
取款协议
1. 取款协议(Withdrawal Protocol):用户从自己的银行帐户上提取电子现金。为了保证用户匿名的前提下获得带有银行签名的合法电子现金,用户将与银行交互执行盲签
电子现金
电子现金
名协议,同时银行必须确信电子现金上包含必要的用户身份。一般取款协议分为如下两步子协议:
* 开户协议。这一步通常计算量较大,用于向用户提供包含其身份信息的电子执照。
* 取款协议。这一步只是单纯的盲签名过程,用户能够从其帐户中提取电子现金。
支付协议
2. 支付协议(Payment Protocal):用户使用电子现金从商店中购买货物。通常也分为两个子协议:
* 验证电子现金的签名,用于确认电子现金是否合法。
* 知识泄露协议。买方将向卖方泄露部分有关自己的身份的信息,用于防止买方滥用电子现金。
存款协议
3. 存款协议(Deposit Protocal):用户及商家将电子现金存入到自己的银行账户上。在这一步中银行将检查存入的电子现金是否被合法使用,如果发现有非法使用的情况发生,银行将使用重用检测协议跟踪非法用户的身份,对其进行惩罚。
十、具体方案
离线电子现金具体方案:
初始化协议
(只执行一次)
银行 B 基于离散对数问题选择参数:选择两个大素数 p、q 且 q |(p-1)。定义乘法群 ZP 上的阶为素数 q 的子群 Gq 以及 Gq 的一个生成元组(g,g 1,g 2),银行 B 的签名私钥 x∈Zq,无碰撞单向散列函数 H0、H1,银行 B 公开其公钥 y =g x,以及 p、q、g、g 1、g 2、H0、
H1(为了简单起见,只考虑单一面额和单一有效期,不同签名私钥
对应电子现金的不同面额。)
用户 U 设置 (开户协议):选取 u1∈RZq,计算 I U=(g 1)u1 作为用户的银行账号,并将知识证明的签名 SPK{a|I U=g 1 a}(m) 传给银行,这里 m 表示用户的身份识别信息,银行验证此知识证明的签名,若验证成功,存储 I U 与用户的身份识别信息。
取款协议
(银行和用户之间的认证及盲签名协议)
1. 用户→银行:用户先通过身份识别协议 (如 schnorr 协议),向银行证明自己是其账号的持有者,然后将取款需求(电子现金的面值,数量等) 传送给银行;
2. 银行→用户:银行先验证用户提交的身份识别信息,然后选取 w∈RZq,计算 a 0=gw,b0=(I Ug 2)w,z0 = (I Ug 2)x,传送 a 0,b0,z0 给用户。
3. 用户→银行:选取 x 1, x 2,s,u,v∈RZq,计算 B =g 1 x1g 2 x2,A=(I Ug 2) s,z= (z0) s , a= (a 0)ugv , b=(b0)suAv ,c=H0(A‖B‖z‖a‖b) ,c 0=c/umod q, 传送 c 0 给银行。
电子现金
电子现金
4. 银行→用户:计算 r 0= w+c 0x mod q, 传送 r 0 给用户,同时借记用户的账号。
5. 用户:检查 gr 0 yc0a 0 和 (I Ug 2)r0 (z0)c0b0 , 若验证通过, 则计算 r =v+r 0u1 mod q。取款协议实际上是一个盲签名协议,一个签名 Sign(A, B)=(z,a,b,r)有效,当且仅当 gr = yH0 (A‖B‖z‖a‖b)a 和 A r=zH0 (A‖B‖z‖a‖b)b 成立。用户得到的电子现金为 Coin = {A,B,Sign(A,B)}
支付协议
(在匿名信道上的用户 U 和商家 S 的协议)
1. 用户→商家:用户将电子现金 Coin 发送给商家。
2. 商家→用户:验证电子现金 Coin 上银行的签名,若验证通过,则计算质询串 d =H1(A‖B‖Is),然后将质询串 d 传送给用户 U。其中 Is 表示商家在银行的账户。
3. 用户→商家:用户计算出应答 r1 =d(u1s) +x 1mod q,r2=ds+x 2modq,将 (r1,r2) 发送给商家。
4. 商家:检验 g 1 r1g 2 r2AdB,若检验通过,则接受用户的支付,否则拒绝。
存款协议
商家传送支付协议的一个副本给银行,(如商家一样地)检验电子现金上银行的盲签名 Sign(A,B) = (z,a,b,r)是否有效,若检验通过,银行在此数据库中存储(A,r 1,r 2,I s), 并且在商家的账户中存入电子现金相应的金额。
方案的安全性分析
该电子现金系统方案的安全性是建立在计算离散对数问题困难
电子现金
电子现金
性的基础上的。
无法伪造合法的电子现金
不法用户即使以合法用户的身份在银行提取 k 个合法的电子现金,他仍然不能根据已经得到的信息伪造出第 k + 1 个合法的电子现金,因为他无法得到银行的秘密私钥 x
合法用户的匿名性得到保证
在电子现金中嵌入有用户的识别信息 (即账号 IU),商家和银行在支付协议和存款协议中,获得的数据有 A,B,Sign(A,B),r1,r2,其中 B,r2 不含用户的识别信息 IU,而 A,r1,Sign(A,B) 都是 IU 盲化后的结果,商家和银行若想从接收到的数据中得到用户的识别信息(即 IU),必须知道盲因子 s,而 s 是用户随机选取并保密的,这就保证了电子现金的匿名性。
商家无法伪造有效的支付信息
在支付协议中,尽管商家知道 A,B,Sign(A,B),他可以计算 d, 但由于他不知道用户的秘密钥 u1、s,因而他自己不能随意构造 r ’1,r’2,使得满足 gr’1gr’2 AdB,所以在没有合法用户的参与下,商家无法伪造有效的支付信息。