2010-02-09 10 views
16

cuando corro:¿Cómo hago que OpenSSL escriba el RANDFILE en Windows Vista?

openssl genrsa -out mykey.key 2048 

me sale el siguiente error:

unable to write 'random state' 
    e is 65537 (0x10001) 

Mi google sugiere que esto es una especie de Vista problema de permisos. ¿Cómo puedo permitir que Vista escriba este archivo o cómo puedo configurar openssl para sortearlo?

+0

posible duplicado de [Usando openssl ¿qué significa "no se puede escribir 'estado aleatorio'" significa?] (Http://stackoverflow.com/questions/94445/using-openssl-what-does-unable-to-write- random-state-mean) – jww

Respuesta

4

yo encontramos este que podrían ayudar: Using OpenSSL what does "unable to write 'random state'" mean?

también, aquí: http://adamyoung.net/OpenSSL-unable-to-write-random-state

hay una sugerencia aquí http://www.mail-archive.com/[email protected]/msg51344.html sobre cómo conseguir que funcione en Vista.

encontrar la ubicación de cmd.exe, haga clic derecho y ejecutar como administrador

+0

No me permite cambiar los permisos para cmd.exe – Iain

+0

Ejecuté como administrador - no funcionó. – Iain

+0

¡Me postulé como administrador y funcionó gracias! –

0

Añadir una variable HOME en las variables de entorno.

58

El problema principal es que la variable RANDFILE en el archivo de configuración de OpenSSL se ignora en Windows. Esto ha sido un long-standing problem que continúa existiendo a partir de la versión OpenSSL v1.0a, independientemente de si la plataforma Windows de destino es x86 o x64.

Sin embargo, existe una solución deliciosamente simple. utilizar simplemente un var ambientales regulares para establecer el valor RANDFILE, como

set RANDFILE=.rnd 

Debido a que este valor es efímera, debe ser re-emitida por cada nuevo cuadro de DOS o un guión en un archivo por lotes.

+3

Esto solucionó mi problema en Windows 7 también. –

+1

Gracias Sr. Judoman –

+0

Sí esto funciona, Windows 8.1. – wchoward

2

Tuve el mismo problema pero para Windows 7. Solucionado fácilmente, creé una variable de entorno del sistema llamada HOME y la configuré en el directorio en el que quería mi archivo .rnd. Esto resolvió el problema porque OpenSSL no sabía dónde mi archivo .rnd era (porque no tenía uno) y no sabía dónde ponerlo si era para crearlo. Tan pronto como configuro mi variable de entorno HOME con un directorio (c: \ ¡está bien!) Volví a generar mi clave en OpenSSL y funcionó de inmediato. Para verificar, verifiqué la clave que había creado y tenía el contenido adecuado. También verifiqué el directorio en el que establecí mi variable de entorno HOME, y he aquí un archivo .rnd. Espero que esto ayude a alguien :-)

0

El problema es que al script le faltan algunos derechos de acceso o no se puede encontrar el archivo.

La solución:

crear una variable de sistema con el nombre RANDFILE y el valor % USERPROFILE% .rnd

Aviso la % USERPROFILE%, es una variable de sistema que insertos automáticos la ruta a tu perfil de usuario

Cuestiones relacionadas