¿Por qué hay varios proveedores de algoritmos de hash diferentes en System.Security.Cryptography?

StackOverflow https://stackoverflow.com/questions/224272

  •  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

¿Fue útil?

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
scroll top