C # - Как рассчитать кодировку DER ASN.1 для конкретного алгоритма хеширования?

Учитывая алгоритм хеширования, такой как SHA1 или SHA256, как я могу получить для него кодировку DER ASN.1, как определено в RFC3447? (см. стр. 42 - ссылка ) Ниже приведен желаемый результат.

MD5        30 20 30 0c 06 08 2a 86 48 86 f7 0d 02 05 05 00 04 10
SHA-1      30 21 30 09 06 05 2b 0e 03 02 1a 05 00 04 14
SHA-256    30 31 30 0d 06 09 60 86 48 01 65 03 04 02 01 05 00 04 20
SHA-384    30 41 30 0d 06 09 60 86 48 01 65 03 04 02 02 05 00 04 30
SHA-512    30 51 30 0d 06 09 60 86 48 01 65 03 04 02 03 05 00 04 40

Я надеюсь, что есть какой-то разумный способ сделать это на C #, который не требует от меня записи Oid в ASN.1 Процедура преобразования DER (или их жестко запрограммировать). Есть идеи?

8
задан Taylor Leese 15 September 2010 в 00:04
поделиться