来源:中国一卡通网 作者:张向军 ,陈克非 发布时间:2009-12-01 10:19:30 字体:[大 中 小]
关键字:匿名性 可分电子货币 离线交易 PBOC2. 0 智能卡
摘 要:利用PBOC2. 0金融IC卡的物理安全特性,提出了一个改良的匿名可分电子货币协议,以支持离线支付应用。该协议同其他基于半盲签名或基于知识证明的树状节点的可分电子货币协议相比,具有更高的效率。协议中还给出了完整的货币购买、使用、挂失、退还管理机制,以消除多个货币间的关联,最大限度地保证合法用户的隐私。最后,从密码学安全角度和金融安全规范两个角度分析了协议的安全性,保证协议在金融IC卡上移植的可行性和兼容性。此协议适用于网络交易、离线交易和P2P交易,其设计目的是作为PBOC IC卡应用的有益补充。
再把它返回给银行。此时银行以此为依据,在有效货币列表中查找用户的真实身份。
货币追踪: 当一个用户被怀疑进行了违法交易或发生了绑票案件时,执法部门可以要求银行进行货币追踪。银行向TTP提供授权和用户身份证明, TTP计算:
通过以上数据,银行可以标注出以该用户名义申请的货币。对于非法交易,可以搜索相应的货币的交易记录,进而找出其购买的商品是否合法。对于绑票案件,可以标记该货币为非法,从而在犯罪分子使用此货币时进行跟踪抓捕。
2. 9 公平交易
这里借用电子钱包应用中的交易记录机制, 在记录中加入交易信息inftrade , 就能够利用IC卡保存记录的公正不可篡改性来实现简单实用的公平性判定机制。此交易信息可以根据不同收单系统的惯例而调整,但须保留必要的信息以进行公平性鉴别,这部分的信息选择可以参照PBOC2. 0电子钱包和电子存折规范,此处不再详述。
3 性能分析
3. 1 运行效率
以防篡改金融IC卡的电子钱包应用为基础平台,采用以上协议,可以实现常数代价的可分匿名电子货币支付系统。用户可以执行一次取款协议,取得与待兑现货币钱数相等的货币,同二叉树表示方法的协议相比, 效率从lg n提高到常数C。
在提款协议中,同改进前的协议相比我们的协议由于取消了对重复花费的检测,比原协议计算量降低近一半。在支付过程中,用户只需进行固定的两次指数运算, 而商家可以不必进行r2 的验证, 计算量降低约25%。另外,从3. 4节支付协议中可以看到, 如果利用读卡设备帮助进行预计算Ap和B,那么每次支付的计算只有一次加法运算和一个乘法运算。
3. 2 安全性证明
结论1 用户无法修改受限公共信息T来伪造货币。证明 用户想伪造货币就必须要得到一组合法的T和T′,使得:
由于哈希函数是防碰撞的,所以用户不能通过第一个途径伪造货币。如果用户能够得到式(2) , 则利用已知的c′, T,r′, r″,用户可以构建一个算法,破解形如r = cx + w mod q的签名,而以目前的技术而言是不可能实现的。所以, 用户无法伪造货币,结论成立。
结论2 一个正确执行的流程能够提供可撤销的匿名性,即用户破坏匿名性跟踪和银行或商户非法揭示用户身份的可能性可以忽略。
证明 如果没有可信第三方TTP的配合, 非授权恢复用户U的ID的唯一方法是解离散对数问题。可以认为,任何参与方都不能和TTP合谋破坏用户匿名性。
另一方面,在取款阶段, 用户U 可能试图改变在A, b, z中的s值,但用户计算出一个有效的b的概率为
也就是说, 对s做的任何改变都会在货币验证时被发现。用户无法向TTP提供伪造的ID。
这样,在保证匿名性控制信息只能保存在TTP处后,在需要时, TTP可以进行如下操作:
通过式(1)和(2) , TTP可以给出相应A和A ′的联系, 供银行找出有问题的交易者或交易内容。此部分的协议证明详见文献[ 3 ]。
我们认为,当可信第三方TTP 保密时,匿名性的有效撤销管理是可以得到保证的。结论成立。
结论3 如果不知道w和XB , 不存在伪造一个合法货币的可能性。
证明 商家M 和其他参与者伪造一个货币的成功概率为:
由此可知, M 也不能伪造货币。因为M 所拥有的有关B的知识不会比用户U多,唯一可能伪造出用户U 的货币的方法就是从该用户的公钥计算出其私钥, 这等于破解离散对数问题。
结论4 如果正确执行赎回协议,且没有可信第三方TTP的协作, 银行B 不能跟踪用户U的ID。
证明 因为TTP的私钥在任何条件下都是保密的,除了TTP以外没有人能把支付信息和用户的账户链接起来。在赎回阶段,通过新生成的临时货币,用户可以执行一次取款协议,取得与待兑现货币钱数相等的货币。
在文献[ 14 ]中我们得出, 当n 》m,且p ij, p k j不可忽略时( c的值域有限时) :
也就是说银行发现用户身份信息的几率趋向于零,不能从众多的相似用户群中跟踪某一个银行感兴趣的用户的交易活动,保证了用户的隐私权。
由于商户能够获得的信息知识是银行能获得的信息的子集,所以商户也不能得到用户的私人信息。
结论5 引入的受限公共信息RCD能够保证有效信息的安全引入。
证明 在文献[ 14 ]中分析了RCD限制货币列表增长问题的可行性, 由于我们给出的T值是在一组有限的数值中选择的, 添加过程中不必再进行零知识证明。利用结论1的证明,由于发币行在签名中加入了此数值,用户无法伪造。因此RCD的引入具有足够的安全性并保证货币的匿名性,结论成立。
结论6 此协议的实现方式符合金融行业的应用规定。证明 金融行业对金融IC卡应用的安全性和使用规则制定了详尽的规范限制[ 2, 18 - 19 ]。这里我们需要加密算法不低于128 bits的3DES加密强度,以使其能够符合PBOC规范的要求。
协议参照电子钱包应用流程,使用同样的IC卡硬件平台,可以方便地移植。软件实现采用公钥算法和签名认证协议,前面已经证明协议流程的安全性,可以认为此协议的安全性是符合金融行业的要求的。
3. 3 其他性能
防止超额花费: 方案阻止超额花费的责任在于可信第三方TTP和银行,银行的任务是找出是否有货币已经被超额花费,银行维护有每一个货币剩余值的计数。当发现一个货币的使用记录之和已经超过了它本身的数量,则是超额花费,这时可信第三方TTP的责任就是撤销货币所有者的匿名性,不诚实的用户会受到惩罚。我们的系统采用防篡改硬件,可以提供给予硬件的事前预防机制。
阻止完美犯罪: 完美犯罪是因为电子货币系统的无条件匿名性引起的。在我们的方案中,匿名性是可以撤销的,所以如果出现勒索或者非法交易,通过撤销匿名性可以帮助相关机构追查违法者。
离线交易和网络交易:由于协议中使用公钥算法,不必依赖专用的支付设备(ATM,金融POS终端, PSAM卡等)就可以进行支付,交易的安全性不依赖于交易设备的安全性,可以方便地实现离线交易和网络交易。
兼容性:协议是利用PBOC规范中给出的IC卡操作指令集扩展的,可以在任何支持PBOC规范的IC卡上移植,具有良好的兼容性。
由上述证明可以得知,本文提出的协议具有足够的安全性、效率和实用性,能够保证支付的安全可靠执行。
4 结语
本文通过在Frankel的基于TTP的匿名性控制电子货币协议,在文献[ 14 ]中协议的基础上引入了可重复花费的性能。改进后的协议利用金融IC卡防篡改平台实现了一个匿名性可控的可分电子货币支付协议,具有比同类协议更高的效率,在支付过程中通过预计算可以将计算量降低到一次模乘及一次模加,非常适于在IC卡平台上的应用。同时,通过受限盲签名RCD的直接引入,可以保证协议在不降低的安全性的前提下大大减少了提款过程的计算量,可以有效消除发币行的系统瓶颈。协议是在PBOC电子钱包应用基础上修改的,通过满足必要的密钥实用规则,可以保证协议既满足计算安全要求也满足金融行业的安全规定,可以在PBOC规范的开放性构架中作为拓展应用而得到应用,具有较好的实用性和可行性。
协议主要用于中小额离线支付应用,支持离线交易和网络交易。可以有效填补金融IC卡应用现有规范的不足,为用户提供更丰富更安全的选择。
(文>上海交通大学计算机科学与技术系, 张向军,陈克非)
推荐文章
论坛热帖