расшифровать файл p7m в C # или .NET с privateKey из файла - PullRequest
0 голосов
/ 09 декабря 2011

Надеюсь, кто-то может помочь мне с кодом, потому что я работаю над ним 3 месяца без какого-либо успеха.Я пробовал почти все из Интернета, но ничего не работает.

Проблема: Я зашифровал файл p7m (размер 158 КБ) (это зашифрованный текст).У меня есть сертификат в файле pfx, под паролем "а".В этом сертификате есть открытый ключ, необходимый для дешифрования файла p7m.

Мне нужно что-то, что прочитает файл xyyv.p7m, расшифрует его с открытым ключом и сохранит как XYZ.xyz

* 1006.* Я не ставлю здесь ни одного своего кода, чтобы не смущать вас.спасибо

1 Ответ

0 голосов
/ 09 декабря 2011

Структура PKCS # 7 может быть очень грязной (и это действительно так для большинства структур ASN.1). Нет особого совета, который можно дать, если мы не знаем, что использовалось для создания этого файла.

Обычно есть код для чтения их в System.Security.Cryptography.Pkcs, но легко создавать файлы (действительные или недействительные), которые не будут обрабатываться правильно. Даже больше, если они были созданы с использованием различных инструментов.

Mono предоставляет классы внутри Mono.Security для их чтения. Это очень низкоуровневый API (с некоторыми помощниками), поэтому теоретически они должны иметь возможность читать что угодно ... до тех пор, пока вы не возражаете против написания кода для обработки самого формата.

Другие библиотеки, на ум приходит BouncyCastle , предлагающие аналогичный (низкий или высокий) API для обработки файлов PKCS # 7.

...