PKCS № 7 не включає приватну (ключову) частину пари сертифіката / приватного ключа, вона зазвичай використовується для розповсюдження сертифікатів (наприклад, як відповідь на запит сертифікату PKCS # 10, як засіб розподілу символів S / MIME використовується для шифрування повідомлень або для перевірки підписаних повідомлень тощо). Важливо пам’ятати, що це стосується лише сертифікатів, які за визначенням є загальнодоступними предметами.
PKCS №12 є універсальнішим контейнером - він призначений для зберігання як приватного ключа, так і публічних сертифікатних частин разом, щоб їх можна було переміщувати. Він може захищатися паролем, щоб забезпечити деякий захист ключів.
PFX був попередником ПККС №12.
Ви не можете (як вказує Анітак) конвертувати з PKCS # 7 в PKCS №12 без додаткових даних (частина приватного ключа), оскільки PKCS # 7 не має всіх даних.
Марк Саттон зазначив, чому ви не можете експортувати як PFX - у відповідного сертифікату його приватний ключ позначений як неекспортируемый. Постачальник криптографічних послуг (CSP) не дозволить перемістити цей ключ, це навмисно. Єдиний * спосіб отримати пару сертифікатів cert \ key - це, якщо оригінальний сертифікат був виданий із встановленим прапором для експорту. Можливо також, що немає приватного ключа, пов'язаного з cert, але я припускаю, що це не так.
Існує гарне резюме різних типів PKCS в Вікіпедії .
- Принаймні єдиний законний спосіб. Залежно від обладнання CSP \ Crypto Hardware, можливо, існують механізми, особливо для програмного забезпечення, що стосується лише CSP, але це сфера для дослідження вразливості безпеки лише, що стосується мене, а не системного адміністратора.