Параметры сертификата подписи кода

Мне поручили купить цифровой сертификат для моей компании, чтобы подписать наш код. Мы разрабатываем приложения в среде Microsoft - в основном WPF или веб-приложения.

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

  1. CSP

    • Microsoft Base Cryptographic Provider
    • Поставщик криптографии для смарт-карт Microsoft Base
    • Поставщик улучшенных криптографических служб Майкрософт v1.0
    • Поставщик криптографического программного обеспечения Microsoft
  2. Размер ключа

    • 1024
    • 2048
    • 4096
  3. Экспортируемый?

    • Yes / No
  4. Пользователь защищен?

    • Yes / No

Просто интересно, что все это означает, и какие варианты лучше всего подходят для наших требований? Любые советы / предложения будут оценены

огромное спасибо Грег


person Jeeby    schedule 30.10.2008    source источник


Ответы (3)


«Для большинства целей» рекомендуются следующие варианты:

  • Поставщик криптографии Microsoft Base
  • Размер ключа: 2048
  • Возможность экспорта: Да
  • Защищено пользователем: Да

Честно говоря, я не знаком с различными CSP, но Base каждый раз выполняет эту работу за меня.

  • Размер ключа затрудняет взлом ключей, но более 2048 битов для краткосрочного и среднесрочного ключа (3-5 лет) вполне достаточно (ИМХО).

  • Exportable позволяет экспортировать пару закрытый ключ / сертификат - это необходимо для его резервного копирования!

  • Защита пользователя означает, что вы должны вводить пароль каждый раз, когда хотите использовать сертификат - настоятельно рекомендуется для предотвращения случайной или злонамеренной подписи кода вашим сертификатом.

person Froosh    schedule 31.10.2008

Исторически сложилось так, что у «базового» провайдера криптографии было искусственное ограничение длины ключа, а у «расширенного» провайдера ограничение было снято. Это позволило Microsoft соблюдать экспортные законы США, удалив расширенный поставщик в некоторых версиях.

По-видимому, с изменениями в законодательстве об экспорте Microsoft сняла ограничение с базового поставщика, разрешив также более длинные ключи (но сохранила название для совместимости).

person Martin v. Löwis    schedule 31.10.2008

Что касается «Microsoft Software Cryptographic Provider» - я считаю, что он должен быть «сильным» (а не «программным»).

На практике, где я работаю, base дает длину ключа 512 бит (которая больше не поддерживается и не работает на серверах MS после недавнего патча - читайте в KB2661254). Вам нужно как минимум 1024, но 2048 - лучший выбор.

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

Дважды проверьте: вам, скорее всего, понадобится установленный сертификат доверенного корневого ЦС (ЦС, выдавший сертификат подписи кода), а также сам сертификат в «Доверенных издателях», чтобы запустить подписанные сценарии PowerShell.

person static    schedule 30.04.2013