对电子现金系统的攻击包含三个概念:攻击者、攻击方式和被攻击者,即攻击者使用何种方式攻击被攻击者。这里根据攻击者对攻击进行分类。
(1)用户
•超额花费(Overspending):超额使用电子现金,包括多次花费(Multiple-spending),多次花费指重复使用相同的电子现金。多次花费通常也称作两次花费(Doublespending)、再次花费(Re-spending)、重复花费(Repeat-spending)。
(2)商家
•超额花费:用户把电子现金支付给商家后,商家多次花费或存储该电子现金。
•洗钱:商家从非法活动中得到电子现金,为隐藏电子现金的来源伪造一个虚假的交易账单。
(3)银行
•追踪用户:追踪电子现金与用户间的关联。
•在托管方协助下追踪用户:银行对托管方声称某电子现金被超额花费,于是在托管方协助下追踪出该电子现金的属主。
•诬陷用户:诬陷用户多次花费。
•诬陷商家:诬陷商家多次存储。
•重复花费后伪造:为了得到更多的补偿,在某个电子现金超额花费后,银行伪造更多的花费抄本。
(4)托管方
•诬陷用户:托管方把一个用户标识成另一个诚实用户,当带有该诚实用户标识的电子现金重复花费时,银行将控告该诚实用户。
(5)外部实体
伪造电子现金,包括三种不同的攻击。
•一般伪造(Universal Forgery):一个实体知道公开参数和一些老的支付抄本,伪造有效的电子现金。
•1-多(One-more)伪造:一个实体参与n次取款协议获得n+1个有效的电子现金。
•多次花费伪造:一个实体知道某电子现金的一些老的支付抄本,生成新的电子现金。常见的攻击方法如下。(www.daowen.com)
①监听:攻击者监听取款、付款、存款过程的通信,获取可花费的电子现金。主动攻击者(如中间人攻击)改变协议的数据,被动攻击者不改变数据。同样的策略可用于注册阶段以得到一个有效的假名。
②偷窃或勒索用户的电子现金:一个攻击者偷窃用户的电子现金,也可能强迫用户从用户账号中支取数字现金然后传送给攻击者,攻击者随后可以花费这些电子现金。
③偷窃或勒索商家的电子现金:一个攻击者偷窃商家的电子现金,也可能强迫商家交出数字现金,攻击者随后可以存储这些电子现金。
④偷窃或勒索私钥:攻击者偷窃或勒索银行、用户、托管方的私钥。
⑤篡改:攻击者强迫银行或托管方执行一个被篡改的协议,以获得电子现金或认证的假名。
为了抵抗上述攻击,电子现金系统应该满足以下安全需求。
(1)不可伪造性
支付系统最显著的风险是伪造。电子现金的不可伪造性是指只有银行才能签署有效的电子现金。伪造就是没有对应的取款过程而创造出新的有效的电子现金。
电子现金的多次花费属于伪造的一种。在线方式可通过查询历史数据库防止多次花费。离线方式可以在用户钱夹中嵌入银行的可信硬件防止多次花费。
(2)隐私性
在商务活动中,用户匿名支付(即对交易的不可追踪)是用户隐私的要求,这意味着银行无法确定在一次特定的交易中是谁的钱被用于支付。
用户使用电子现金进行交易,除非经过授权撤销匿名,银行与商家即使合谋也不能追踪到特定的用户,这被称为无条件(完美)的匿名性(不可追踪性)。与纸币相比,电子现金的匿名性使得洗钱、非法交易、勒索、伪造等问题更加严重。同一个用户花费的不同电子现金还应该是不可关联的,称为不可关联性。
在某些情况下需要撤销匿名。如果用户超额花费电子现金,银行能够揭示出是谁超额花费。如果一个可疑者支取现金,该现金可被撤销匿名并在存款时识别出,这称为现金追踪。如果一个可疑者存款,该现金可被撤销匿名并揭示出属主,这称为属主追踪。
(3)不可否认性
对于一个支付系统来说,支付及接收的互相认可是一项基本的原则。相似的,数字交易一个行之有效的办法就是将所有的交易记录都附加到数字货币中。不可否认性能够有效地抵抗诬陷。
(4)可传递性
在现实生活中,纸币的可传递性方便了纸币的流通,但在电子现金中还没有应用。为了能跟踪重复花费的用户,在电子现金中加入了盲化的用户身份信息,在电子现金流动的过程中将加入使用过该电子现金的所有用户身份信息,电子现金的每次传递必须包含是谁花费了这个现金的信息,这个信息使得银行有能力追踪谁是多次花费者。现金信息的增加使得现金的传递次数必须有一定的限制。电子现金的长度不断增长,每次交易都将造成大通信量问题,不利于实际应用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。