1

我正在研究 EMV 技术并尝试解密 ISSUER PUBLIC KEY CERTIFICATE。根据我对 CA 证书的理解,证书中包含颁发者公钥。CA 机构将数据与公钥一起保存,并使用其 PRIVATE KEY 对其进行加密。

EMV BOOK 2 Table 6: Format of Data Recovered from Issuer Public Key Certificate,

定义证书格式。这意味着如果我从 CA 公钥解密证书,我们可以获得表 -6 中指定格式的数据。

在互联网上,我发现 BP-TOOL 进行了这种活动,并且与我想要得到的非常相似。在此分享 BP-Tool 示例:- DDA: Issuer Public Key Recovery


CA PK Modulus:
BE9E1FA5E9A803852999C4AB432DB28600DCD9DAB76DFAAA47355A0FE37B1508AC6BF38860D3C6C2E5B12A3CAAF2A7005A7241EBAA7771112C74CF9A0634652FBCA0E5980C54A64761EA101A114E0F0B5572ADD57D010B7C9C887E104CA4EE1272DA66D997B9A90B5A6D624AB6C57E73C8F919000EB5F684898EF8C3DBEFB330C62660BED88EA78E909AFF05F6DA627B
 Issuer's Public Key Certificate:
7F4C6034C33BF35BAFFF53F51C0F8A2B32C8FDE1D033DDB69DCA85C5B4797BD2F55BE970C026B75B76E9C17E8564111FDEB97B26E350F59F6C63C30B0BD80E33123DF73CF8F87B28D54D28E4D6284F44E6E61AD95826474EBF6C28796B9B222DF14194A539E92DB185D86D8EDDD8AA01ECBE93E0EC3F87383D879534FE0BD397D7D59FC6E37012258B894400EE715338
 ----------------------------------------
 Recovered Data:                6A02457896FF12170314EF01019001E04E4FC478A42241068E2C9CFDEE9D7450F48F812FA66CEFB8ECBE31DD3C26C3B8A3891B77C1AA2A5A7448B869B7213D36C341E9B71302ADF478F67537032C080186C44034B1801D7644B6EEFAEA566D7336A8C83F42B7992F28BF5EA6B9D14C05870AD4DBD8CDAB8771F65F83D800B353B11E1805C7E4529F261C16A38DE756BC
 Data Header:                   6A
 Data Format:                   02
 Issuer Identifier:             457896FF
 Certificate Expiration Date:           1217
 Certificate Serial Number:         0314EF
 Hash Algorithm Indicator:          01
 Issuer Public Key Algorithm Indicator:     01
 Issuer Public Key Length:          90
 Issuer Public Key Exponent Length:     01
 Issuer Public Key:             E04E4FC478A42241068E2C9CFDEE9D7450F48F812FA66CEFB8ECBE31DD3C26C3B8A3891B77C1AA2A5A7448B869B7213D36C341E9B71302ADF478F67537032C080186C44034B1801D7644B6EEFAEA566D7336A8C83F42B7992F28BF5EA6B9D14C05870AD4DBD8CDAB8771F65F
 Hash Result:                   83D800B353B11E1805C7E4529F261C16A38DE756
 Data Trailer:                  BC

我正在寻找此示例中使用的算法。你的任何帮助对我来说都是很大的。

提前致谢...

4

2 回答 2

3

您可以使用 Big Digit 库,如果您计划实现自己的算法,该库将使您能够查看算法的工作原理,或者使用它为您执行解密。我从这里得到了我的,并用它为我的 EMV 程序创建了一个解密函数。我只是将值传递给它,它会给我答案。链接中有一些示例可以帮助您快速掌握。

于 2015-03-04T08:36:00.943 回答
2

查看javaemvreader项目中的 IssuerPublicKeyCertificate 类。它实现了颁发者证书的恢复。

还要考虑到发行者公钥的一部分可能存储在“发行者公钥剩余”标签(0x92)中。

于 2015-07-17T21:10:21.397 回答