gpt4 book ai didi

cryptography - 存储在EMV芯片中的Application Transaction Counter用于ARQC生成的目的是什么?

转载 作者:行者123 更新时间:2023-12-04 04:16:04 25 4
gpt4 key购买 nike

EMV book 2: security and key management在第 151 页上说,

"The counter results in uniqueness to the cryptograms (ARQC) and provides tracking values for the host verification services, allowing replayed transactions and cloned cards to be identified."



如果发行方依赖收单方进行 ARQC(终端为 session UN 发送随机数),那么 ATC 的目的是什么,“允许重放交易”是什么意思?谁重播 ARQC?

最佳答案

使用由终端生成的不可预测数字 (UN) 使终端可以控制卡必须生成的密码的新鲜度。因此,对于相同的交易数据(授权金额、交易日期/时间等或 CDOL1 中的任何内容),卡必须生成新的(和不同的)签名(“密码”)。因此,UN是终端向卡发送的挑战。反过来,卡必须签署该挑战(连同交易数据)以证明它收到了该特定挑战。

问题在于,使用 UN,终端(以及稍后验证交易的发卡机构主机)只能确保该卡在其生命周期内签署了特定的挑战 + 交易数据打包一次。无法确定该签名是在卡和终端之间的特定交互过程中创建的。同样的交易也可能在终端和卡之间的早期交互中被窃听攻击者过度服务,或者主动攻击者可以在更早的时间查询卡中的特定输入数据(UN + 交易数据)。

例如,可以访问真卡的攻击者可以为 UN 的所有可能值和一组特定的交易数据(攻击者后来在真正的终端支付时所期望的完全相同的一组)预先生成交易签名。然后攻击者拥有一组 预播放 数据:

联合国交易数据密码
0 XXXXXXXXXXXXXXXX AAAAAAAAAA
1 XXXXXXXXXXXXXXXX
3 XXXXXXXXXXXXXXXX CCCCCCCCCC
4 XXXXXXXXXXXXXXXX DDDDDDDDDD
…………

配备了一些卡模拟器硬件,可以在收到 UN 和预期的交易数据后发送给定的密码,攻击者可以前往商家的真正终端并使用模拟器硬件进行支付。

为了克服这种可能的攻击场景,使用了由卡管理的附加单调递增交易计数器 (ATC)。这也使卡可以控制生成的密码的新鲜度。因此,卡片确保它生成的每个签名/密码都不同于它之前生成的所有签名。甚至对于具有完全相同的联合国和交易数据的两个交易也是如此。

ATC UN 交易数据密码
0 Z XXXXXXXXXXXXXXXX GGGGGGGGGG
1 Z XXXXXXXXXXXXXXXX HHHHHHHHHH
3 Z XXXXXXXXXXXXXXXX IIIIIIIIII
………………

为了防止重复使用旧交易,发卡主机可以拒绝 ATC 值低于它在交易中观察到的最高 ATC 值的交易。

关于cryptography - 存储在EMV芯片中的Application Transaction Counter用于ARQC生成的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36370517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com