Алгоритм расшифровки сертификата EMV

Я работаю над технологией EMV и пытаюсь расшифровать СЕРТИФИКАТ ОТКРЫТОГО КЛЮЧА ИЗДАТЕЛЯ. Насколько я понимаю сертификат CA, сертификат содержит открытый ключ эмитента внутри него. Центр сертификации хранит данные вместе с открытым ключом и шифрует все это с помощью своего ЧАСТНОГО КЛЮЧА.

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

Определить формат сертификата. это означает, что если я расшифрую сертификат с открытого ключа CA, мы могли бы получить данные в формате, указанном в таблице -6.

В Интернете я нашел BP-TOOL, который занимается этим видом деятельности и очень похож на то, что я хочу получить. поделиться здесь пример BP-Tool: - DDA: восстановление открытого ключа эмитента


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

Я ищу алгоритм, используемый в этом примере. ваша любая помощь будет много для меня.

Заранее спасибо...


person Arjun    schedule 02.03.2015    source источник


Ответы (2)


Вы можете использовать библиотеку Big Digit, которая позволит вам увидеть, как работает алгоритм, если вы планируете реализовать свой собственный, или использовать его для выполнения расшифровки для вас. Я получил свой от здесь и использовал его для создания функции расшифровки для моей программы EMV. . Я просто передаю ему значения, и он возвращает мне ответ. В ссылке есть примеры, которые помогут вам освоиться.

person Peter    schedule 04.03.2015
comment
Есть ли какой-нибудь онлайн-инструмент для этой цели, на самом деле мы сталкиваемся с проблемой при импорте сертификата в HSM. С помощью инструмента я могу определить, правильный сертификат или нет, а затем создать свой собственный инструмент. - person Arjun; 04.03.2015
comment
Если вы хотите специально расшифровать сертификаты EMV, вам могут не понадобиться никакие внешние инструменты для проверки правильности сертификата. Стандарт EMV определяет, как должен выглядеть правильно расшифрованный сертификат, и независимо от того, как вы это сделаете, будет только один правильный способ сделать это. Это самый надежный источник проверки, который вы можете получить. Что вы можете сделать, так это опробовать образцы и применить их к вашему сценарию, пока они не смогут дать вам результаты, указанные в стандарте EMV. - person Peter; 04.03.2015
comment
Что касается инструментов, то это BP- Программное обеспечение SIM от лаборатории EFT, которое имитирует операции с картами и дает вам словесный ответ. Это может быть полезно, поскольку вы можете сравнить свои результаты с их результатами. - person Peter; 04.03.2015

Взгляните на класс IssuerPublicKeyCertificate из проекта javaemvreader. Он реализует восстановление сертификата эмитента.

Также примите во внимание, что часть открытого ключа эмитента может храниться внутри тега «Остаток открытого ключа эмитента» (0x92).

person vlp    schedule 17.07.2015