【发布时间】:2025-12-11 12:05:01
【问题描述】:
我正在尝试根据规范 EMV4.3 Book2 实现对 EMV 颁发者公钥的检索。我已经能够解密发行者的公钥证书。
我需要通过颁发者公钥 + 颁发者公钥剩余部分(如果存在)和最后颁发者公钥指数来连接证书格式。
我尝试从应用程序数据中读取颁发者公钥指数,但找不到。在从公钥证书解密的恢复数据中,我可以看到指数 = 1 的长度。
当我查看这个网站时
https://www.eftlab.co.uk/index.php/site-map/knowledge-base/243-ca-public-keys
我可以看到例如VISA 包含发行人的 RID、RID 索引、指数、模数、密钥长度等。
这是否意味着,每个终端都应具有模数、RID、索引以及指数?如果是,它在规范中的什么位置?
谁能告诉我我需要从哪里得到指数。我觉得我在规范中遗漏了一些东西。
谢谢 德里克
【问题讨论】:
-
您能否将您的问题从 SELECT 更新到最终的 READ RECORD 并屏蔽敏感数据?还有您作为 ODA 的一部分尝试的步骤。打开 Issuer PK 证书后是否可以看到 header 6A 和 trailing BC ?
-
AFAIK 发行者 pk 指数应该在标签
0x9F32中。您可能会发现javaemvreader 的来源非常有用。 -
嘿伙计们,我实际上是通过所有命令来制作一个日志给你们看,我实际上发现了我的错误。我有一个 do-while 循环来读取 AFL 中指定的所有记录,但不幸的是我编写了代码并且我的中断条件不允许我始终读取 AFL 中指定的每个记录的结束记录。感谢您的问题@adarsh,我不得不再次检查我的代码。谢谢。所以问题实际上是在我没有阅读的记录中实际发现的公钥剩余和指数。所以现在我有了它们,我的哈希码现在对应了。
标签: emv