Почему в System.Security.Cryptography есть несколько различных поставщиков алгоритмов хеширования? - PullRequest
7 голосов
/ 22 октября 2008

Как задокументировано MSDN , существует несколько провайдеров для множества различных алгоритмов хеширования (например, MD5, SHA, RIPE). Кажется, что для каждого из алгоритмов любая доступная реализация подразделяется на 1 из 3 категорий:

  • [Algo] Cng
  • [Algo] CryptoServiceProvider
  • [Algo] Управляется

Почему существует несколько реализаций любого из этих алгоритмов хеширования?

В чем различия между реализациями?

Каковы практические различия при выборе того, какую реализацию использовать в приложении?

Ссылки:

http://msdn.microsoft.com/en-us/library/system.security.cryptography.aspx

1 Ответ

11 голосов
/ 22 октября 2008
  • [Algo]Managed является реализацией алгоритма с использованием чистого IL.
  • [Algo]CryptoServiceProvider делегатов в CAPI, что позволяет использовать такие вещи, как аппаратные крипто-устройства.
  • [Algo]Cng использует Cryptography API: Next Generation (CNG), который предназначен для замены CAPI, но поддерживается только в Vista и Server 2008.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...