Quiero calcular sal para la membresía aspnet.

  private static string CreateSalt(int size){

Pero, ¿cuál es el tamaño predeterminado para el proveedor? (¿32 o 64?) Quiero que coincida con el servidor SQL en mi máquina. ¿También podrías complacer algunos algoritmos?

<add name="AspNetSqlMembershipProvider"
     requiresQuestionAndAnswer="true"
     enablePasswordRetrieval="false"
     enablePasswordReset="true"
     connectionStringName="Membershiptest"
     minRequiredPasswordLength="8"
     minRequiredNonalphanumericCharacters="1"
     applicationName="test"
     type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

Yo uso SQL SERVER 2008 R2. Copio algunas sales aquí, entonces, ¿podemos decir que su tamaño es 24?

2Qjf2TYkDcp/wYKY1px7yg==

Ob+cmhSBCE4DFXKyF7ylAw==

65wVLQ1m+An6a9WGSv6SXA==

Tf0fdXoPw8FMr+KuhitvtQ==

Gracias.

0
user1108948 24 abr. 2012 a las 23:24

1 respuesta

La mejor respuesta

Eso es base64, por lo que en realidad son 16 bytes, no 24 bytes. El tamaño es de 16 o 128 dependiendo de si desea bytes o bits respectivamente.

2
jbtule 24 abr. 2012 a las 23:48
Entonces, para esta sal de 24 bits que publiqué, ¿cuál es el tamaño?
 – 
user1108948
24 abr. 2012 a las 23:50
Publicó 24 cadenas de caracteres que representan sales de 16 bytes (128 bits).
 – 
jbtule
24 abr. 2012 a las 23:51
Base64 le permite representar una fecha binaria sin procesar con 64 caracteres ascii, y esto agrega aproximadamente un 33% de sobrecarga , si usa un decodificador base64 Convert.FomBase64String() obtendrá los valores reales de la matriz de bytes y encontrará que la longitud es 16.
 – 
jbtule
25 abr. 2012 a las 00:12