2008-10-30 12 views

Respuesta

2

debe producir un valor de 32 bytes (256 bits), de modo binario (32) se debe trabajar.

4

El atributo "Hash" de la clase SHA256Managed es una matriz de bytes, y HashSize es de 256 bits, por lo que creo que un binario (32) sería el más simple.

Probablemente también podría ponerlo en un campo Varchar utilizando el ToBase64Transform. No estoy completamente familiarizado con el Algoritmo Base64, pero parece que necesitaría probablemente al menos 43 caracteres para representar un número de 256 bits en la base 64. IIRC Base64 usa un par de caracteres de relleno, por lo que probablemente lo pondría en varchar (50) solo para estar seguro.

+0

Estoy almacenando como base64 en un campo char (44). No es tan derrochador como una cadena hexagonal y tiene las ventajas que Peter menciona. – AlexDev

1

SHA-256 tiene una salida de 256 bits

256bits = 32 Bytes

Así que trate varbinary (32)

12

prefiero convertir el hash del mismo en una Hex-String, en este caso un varchar (64) hará el truco o un varchar (66) si te gusta un "0x" -prefix. De esta forma, es mucho más fácil comparar manualmente o (re) establecer valores que tiene que copiar/pegar desde otros lugares. por ejemplo, usted perdió su admin-PW y desea restablecerlo a través de SQL ...

Cuestiones relacionadas