2012-10-04 24 views
8

He estado utilizando SecureRandom con un algoritmo SHA1PRNG para crear aleatoriedad compartida entre dos procesos. Recientemente me enteré de que SHA1 está siendo desaprobado de acuerdo con los estándares del NIST, por lo que estamos haciendo un esfuerzo para cambiar a SHA256. El problema que he descubierto es que SecureRandom SOLO es compatible con SHA1PRNG, al menos según Oracle's documentation. Me preguntaba si hay una forma de usar SecureRandom con SHA256, o probablemente sea mejor, ¿cuál es una alternativa adecuada para usar SecureRandom?Uso de SecureRandom con SHA-256

+0

Tenía la esperanza de que BouncyCastle ser una solución, pero no parecen enviar una implementación de SecureRandom. ¿Puedes explicar el propósito de mayor nivel de tu aleatoriedad compartida, quizás podamos idear un enfoque diferente? –

Respuesta

14

David, como entiendo que usted se refiere a este documento: http://csrc.nist.gov/publications/nistpubs/800-131A/sp800-131A.pdf

puede ser, me estoy perdiendo algo. Sin embargo, lo que dice:

From January 1, 2011 through December 31, 2013, the use of SHA-1 is deprecated 
for digital signature generation. The user must accept risk when SHA-1 is used, 
particularly when approaching the December 31, 2013 upper limit. 

Sin embargo, a continuación se dice

For all other hash function applications, the use of SHA-1 is acceptable. The 
other applications include HMAC, Key Derivation Functions (KDFs), Random Number 
Generation (RNGs and RBGs), and hash-only applications (e.g., hashing passwords 
and using SHA-1 to compute a checksum, such as the approved integrity technique 
specified in Section 4.6.1 of [FIPS 140-2]). 

Así, según entiendo SHA1 es aceptable para la generación de números aleatorios.

+0

¡Gracias! Solo me indicaron que pasara a SHA256 y no había visto el documento yo mismo. ¡Me aseguraré de pasar esto a mi supervisor! –

+0

De nada. –

3

Acepto la declaración de Victor en general. Pero como aclaración adicional, la sección 4 del NIST SP800-131a tiene una tabla que separa los RNG que NO usan RBG como se menciona en NIST SP800-90 o ANSI X9.62-2005 se agotarán en 2015.

Cuestiones relacionadas