¿Por qué hay varios proveedores de algoritmos de hash diferentes en System.Security.Cryptography?
-
03-07-2019 - |
Pregunta
Según lo documentado en MSDN , hay varios proveedores para muchos de los diferentes algoritmos de hash (por ejemplo, MD5, SHA, RIPE). Para cada uno de los algoritmos, cualquier implementación disponible parece caer en 1 de 3 categorías:
- [Algo?Cng
- [Algo?CryptoServiceProvider
- [Algo?Managed
¿Por qué hay varias implementaciones de cualquiera de estos algoritmos de hash?
¿Cuáles son las diferencias entre las implementaciones?
¿Cuáles son las diferencias prácticas al elegir qué implementación utilizar en una aplicación?
Referencias:
http://msdn.microsoft.com/en -us / library / system.security.cryptography.aspx
Solución
-
[Algo] Managed
es una implementación de IL puro del algoritmo. -
[Algo] CryptoServiceProvider
se delega a CAPI, lo que le permite usar cosas como dispositivos criptográficos de hardware. -
[Algo] Cng
utiliza la API de criptografía: Next Generation (CNG), que está diseñada para ser un reemplazo de CAPI pero solo es compatible con Vista y Server 2008.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow