2008-11-03 8 views

Respuesta

0

Estoy algo parcial a SHA-512. Si 512 es un poco excesivo, los otros miembros de la familia SHA-2 podrían ser útiles: SHA-256 y SHA-384 están ambos en la familia SHA-2. Pero la sugerencia de AviewAnew de AES 256 también es buena.

+0

los ejemplos msdn no parecen estar utilizando una clave para generar el hash? –

+0

Porque no usa una tecla para generar el hash. Un hash SHA siempre será el mismo para una entrada determinada. –

+0

Dado que la etiqueta es cifrada, creo que queríamos un algoritmo de cifrado, en lugar de una función Hash. ASDF: una función Hash está deshabilitada. Un MAC (a veces llamado función hash con clave) usa una clave y tiene un propósito diferente de SHA o AES. –

20

No se pueden comparar directamente todos los tipos de algoritmos criptográficos. Eso sería como comparar un algoritmo de clasificación con un algoritmo de multiplicación: tienen diferentes propósitos. Dicho esto, yo respondería:

  • cifrado simétrico: AES-256
  • cifrado asimétrico: RSA con llave bits 4096 (creo que es el máximo en .NET) o ECDSA con la clave 571 bits (pero eso sólo se admite en .NET 3.5)
  • Hash: SHA-512
  • mensaje Código de autenticación: HMAC with SHA-512

Una vez dicho esto, son excesivos para la mayoría de las aplicaciones, y debería hacerlo bien usando AES-128, RSA con clave de 2048 bits, SHA-256 y HMAC con SHA-256.

+0

Rasmus, ¿cuál sería el ideal para una clave de licencia? –

+1

Mi respuesta aquí: http://stackoverflow.com/questions/258994/net-cryptography-for-licence-keys#259458 –

+0

FYI - Hice una referencia a esta respuesta en el nuevo sitio Security SE: http: // security .stackexchange.com/questions/1751/what-are-the-realistic-and-most-secure-crypto-for-simétrico-asimétrico-hash-m – LamonteCristo

Cuestiones relacionadas