sql-server - que - encryptbypassphrase
Sql Server 2005: ¿qué tipo de datos usar para almacenar contraseñas hash por algoritmo SHA-256? (5)
En Sql Server 2005, ¿qué tipo de datos se debe usar para almacenar las contraseñas codificadas por el algoritmo SHA-256 ?
La aplicación transfiere los datos y los pasa a la base de datos.
Debe producir un valor de 32 bytes (256 bits), por lo que el binario (32) debería funcionar.
SHA-256 tiene una salida de 256 bits
256 bits = 32 bytes
Entonces prueba varbinary (32)
varbinary (32) o binario (32).
Prefiero convertir el código hash a un Hex-String, en este caso un varchar (64) hará el truco o un varchar (66) si prefieres 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, perdiste tu administrador-PW y quieres restablecerlo a través de SQL ...
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 usando 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, así que probablemente lo pondría en varchar (50) solo para estar seguro.