Как вычислить дайджест для сертификата подписи подписи XAdES? - PullRequest
0 голосов
/ 11 июля 2019

У меня есть следующий сертификат X509:

MIIIHTCCBwWgAwIBAgIIF947UueTr/4wDQYJKoZIhvcNAQELBQAwgcExCzAJBgNV BAYTAlBUMTMwMQYDVQQKDCpJbnN0aXR1dG8gZG9zIFJlZ2lzdG9zIGUgZG8gTm90 YXJpYWRvIEkuUC4xHDAaBgNVBAsME0NhcnTDo28gZGUgQ2lkYWTDo28xFDASBgNV
      BAsMC3N1YkVDRXN0YWRvMUkwRwYDVQQDDEBFQyBkZSBBc3NpbmF0dXJhIERpZ2l0 YWwgUXVhbGlmaWNhZGEgZG8gQ2FydMOjbyBkZSBDaWRhZMOjbyAwMDE0MB4XDTE4 MDcwOTExNDc1OVoXDTIzMDcwOTIxNTkwMFowggEEMQswCQYDVQQGEwJQVDEcMBoG
      A1UECgwTQ2FydMOjbyBkZSBDaWRhZMOjbzErMCkGA1UECwwiQXNzaW5hdHVyYSBR dWFsaWZpY2FkYSBkbyBDaWRhZMOjbzEcMBoGA1UECwwTQ2lkYWTDo28gUG9ydHVn dcOqczEuMCwGA1UEBAwlRklMSVBFIENBUlZBTEhBSVMgRE9TIFNBTlRPUyBERSBN
      QVRPUzEPMA0GA1UEKgwGTUlHVUVMMRQwEgYDVQQFEwtCSTE1MTYxMTUxMzE1MDMG A1UEAwwsTUlHVUVMIEZJTElQRSBDQVJWQUxIQUlTIERPUyBTQU5UT1MgREUgTUFU T1MwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDBT/YzBGxbpKoufSiJ
      q6YSZ8w8HQurfMTLNz/eFf7F2lAVHhhZZLAnbXHAq4jsKcfc29J1Milq1vImHS/Z W0mxeyFu+FM0PI4VRdrjX/XqewX6e7dGIgBfkCT3EbtozS+m5ABwo6EZE0ZddPty 6Frzv65EI9DkhlKqy0qSUkOLe13su9PhoTLcFaB0dtgYkFgpIXLG6uc4Nxx2Sd44
      DilgHlyYb8nO3o1PzwkCS3DiaV1BJ8vxHusrNHMJq5uhNqkGzLLk1x3/QjgPSlF5 LvkarcU3jZEgS4YeZ9iEtlQXia1N46TU0SopM2Y26ekHJ3gfhBrr2azXMFlKmlM9 60VzAgMBAAGjggPRMIIDzTAMBgNVHRMBAf8EAjAAMB8GA1UdIwQYMBaAFEsL/oKF
      NBfyc48f91De1Vgu6h+6MEsGCCsGAQUFBwEBBD8wPTA7BggrBgEFBQcwAYYvaHR0 cDovL29jc3AuYXNjLmNhcnRhb2RlY2lkYWRhby5wdC9wdWJsaWNvL29jc3AwbwYD VR0uBGgwZjBkoGKgYIZeaHR0cDovL3BraS5jYXJ0YW9kZWNpZGFkYW8ucHQvcHVi
      bGljby9scmMvY2Nfc3ViLWVjX2NpZGFkYW9fYXNzaW5hdHVyYV9jcmwwMDE0X2Rl bHRhX3AwMDAxLmNybDCCAUkGA1UdIASCAUAwggE8MDYGCGCEbAEBAQIKMCowKAYI KwYBBQUHAgEWHGh0dHA6Ly93d3cuc2NlZS5nb3YucHQvcGNlcnQwCQYHBACL7EAB
      AjB1BgxghGwBAQECBAEAAQEwZTBjBggrBgEFBQcCARZXaHR0cDovL3BraS5jYXJ0 YW9kZWNpZGFkYW8ucHQvcHVibGljby9wb2xpdGljYXMvcGMvY2Nfc3ViLWVjX2Np ZGFkYW9fYXNzaW5hdHVyYV9wYy5odG1sMAgGBgQAj3oBAjB2BgtghGwBAQECBAEA
      BzBnMGUGCCsGAQUFBwIBFllodHRwOi8vcGtpLmNhcnRhb2RlY2lkYWRhby5wdC9w dWJsaWNvL3BvbGl0aWNhcy9kcGMvY2Nfc3ViLWVjX2NpZGFkYW9fYXNzaW5hdHVy YV9kcGMuaHRtbDAoBgNVHQkEITAfMB0GCCsGAQUFBwkBMREYDzE5OTYwOTA2MTIw
      MDAwWjCBzAYIKwYBBQUHAQMEgb8wgbwwCAYGBACORgEBMAgGBgQAjkYBBDBaBgcE AI5GAQYBDE9DZXJ0aWZpY2F0ZSBmb3IgZWxlY3Ryb25pYyBzaWduYXR1cmVzIGFz IGRlZmluZWQgaW4gUmVndWxhdGlvbiAoRVUpIE5vIDkxMC8yMDE0MEoGBgQAjkYB
      BTBAMD4WOGh0dHA6Ly9wa2kuY2FydGFvZGVjaWRhZGFvLnB0L3B1YmxpY28vcG9s aXRpY2FzL2Nwcy5odG1sEwJQVDBpBgNVHR8EYjBgMF6gXKBahlhodHRwOi8vcGtp LmNhcnRhb2RlY2lkYWRhby5wdC9wdWJsaWNvL2xyYy9jY19zdWItZWNfY2lkYWRh
      b19hc3NpbmF0dXJhX2NybDAwMTRfcDAwMDEuY3JsMB0GA1UdDgQWBBQqKpc5DNgY d1GW3eqB4W1D0TCl6jAOBgNVHQ8BAf8EBAMCBkAwDQYJKoZIhvcNAQELBQADggEB ADN1vTH/jAbMrSmXyvd8EtpdMglJYcWf+n1qhZxM4+p+x31vWY75ZhAgSsqH9bK8
      Ll6oE05X3wFMVZKBRI8BkBPWleyvbgK7q9bXGcgS9lmfmlPMuWdfFDmXAd9WOEzb Hu5Tr3rqhlt8sN5vgOl1jzZg7jnPfU/9RQtNqKJm6E/Vwbi5r9KVVFQijULzt92J dTGHzrD3WoCoZfKfZzMsevJW2sSHQAWkJiogckUu5nTv3eARvU8Sfoy5GlNYeYYe
      IbbODsWiD1M5FRqJEsThKEeVgH+ejDQMls897+fYNE/ZAmIiGzjJM4WPR7huGkjH sBBolgg/Rz0cyMmHeejEHzs=

, и я знаю, что дайджест

2ZXt/8T161gL9mW1UlORjjXBvp/v1gaHausPzeQJiWw=

, но я не могу найти способ вычислить дайджест.

Редактировать

Я просто не знаю, к каким данным применить хеш.

Цель состоит в том, чтобы поместить дайджест в сигнатуру XAdES и сделать это с python.

1 Ответ

0 голосов
/ 13 июля 2019

Дайджест - это просто хэш некоторых данных. В вашем случае я бы предположил, что это SHA2 на основе длины 32 байта.

Процесс предусматривает, что подписываемый контент хэшируется в так называемый дайджест (сообщения), а затем создается подпись для дайджеста с сертификатом (в вашем случае RSA).

Чтобы ответить на ваш вопрос (но я не могу найти способ вычислить дайджест.): Используйте SHA2 поверх данных контента.

Если вы предоставите более подробную информацию - например, какой язык программирования вы бы хотели использовать, мы, безусловно, сможем вам помочь.

EDIT

Я просто не знаю, к каким данным применить хеш.

Хотите создать подпись или проверить одну? Звучит так, как будто вы хотите проверить подпись. Итак, у вас есть сертификат, некоторые данные и подпись - или оба вместе? Откуда у вас дайджест? Если вы расскажете нам больше, мы поможем вам в дальнейшем ...

...