【问题标题】:EMV Secure MessagingEMV 安全消息传递
【发布时间】:2023-03-28 09:10:01
【问题描述】:

我正在开展一个项目,该项目需要 EMV 卡的安全消息传递来保护发送到 EMV 卡/从 EMV 卡接收的数据。

根据 EMV Book 3,第 6.3.2 节:

据我了解,我们可以在每个命令/响应对上使用“安全消息传递”。 例如,对于安全消息格式 1,我们可以使用 CLA='8C', INS='CA',对于安全消息格式 2,我们可以使用 CLA='84', INS='CA'

但是,当我尝试使用我的两张卡时,出现错误 6E 00 -- Class not supported。

我对“安全消息”的理解有什么问题?

【问题讨论】:

    标签: security encryption smartcard apdu emv


    【解决方案1】:

    当前的 EMV 协议似乎都不支持安全消息传递。因此,您的卡/EMV 小程序也不支持安全消息传递。

    另外,我不太确定您究竟想要使用安全消息传递什么... Excahnged 信息已经过身份验证(假设您执行交易并且您执行 CDA/SDA/DDA)。因此,您的目标可能是加密终端和卡之间交换的信息(特别是收费金额、静态卡数据等)。但是,根据当前 EMV 基础设施的设计,我怀疑这是否有意义:

    目前不假定终端是可信的(至少在终端和卡之间的 EMV 协议交换方面)。因此,您将无法在终端和卡之间实现任何形式的相互认证。只有终端可以验证卡,卡可以验证从发卡行收到的信息(例如发卡行脚本),但卡永远无法验证终端。结果,尽管加密,终端侧的模拟仍然是可能的。因此,中间的攻击者仍然能够读取和解密消息。


    来自Michal Gluchowski的评论:

    也许扩展迈克尔所说的,下一代 EMV 计划去的地方是引入通道机密性以消除被动窃听。但是,可以模拟终端(仅验证卡证书)。当前的 EMV 仅对发行者脚本使用安全消息传递,因为它需要只有发行者知道的对称密钥。从交易的角度来看,所有的数据终端交换都是明文的(发行者脚本只是简单地通过,没有终端分析或修改它们)。

    关于下一代 EMV 和渠道安全的来源:Next Generation Kernel System Architecture Overview, EMV 2nd Generation, Version 1.0, Sept. 2014

    【讨论】:

    • 也许延伸迈克尔所说的,下一代 EMV 计划去的地方是引入通道机密性以消除被动窃听。但是,可以模拟终端(仅验证卡证书)。当前的 EMV 仅对发行者脚本使用安全消息传递,因为它需要只有发行者知道的对称密钥。从交易的角度来看,所有的数据终端交换都是明文的(发行者脚本只是简单地通过,没有终端分析或修改它们)。
    • @MichalGluchowski 如果您愿意,请随意将其作为附加答案发布,或者将其编辑到我的答案中(因为 cmets 可能会迷路)。另外,关于您对下一代 EMV 的说明,您是否有任何公开可用的资源?
    • 换一种说法,目前卡只会在个性化过程中尝试验证和信任另一端。 +1 信息和文档链接。
    猜你喜欢
    • 2014-05-25
    • 2013-03-22
    • 1970-01-01
    • 1970-01-01
    • 2012-07-15
    • 2011-05-15
    • 2011-01-27
    • 2011-08-03
    • 1970-01-01
    相关资源
    最近更新 更多