Recomendación para Almacenar clave privada

18/02/2008 - 18:58 por jcpc91 | Informe spam
Hola grupo
Alguien que me pudierá dar una recomendación sobre las llaves públicas
y privadas y en particular sobre su almacenaminento lo que sucede es
que estoy desarrollando una aplicación que utiliza el algoritmo RSA y
está se encargade crear la llave pública y privada y toda va bien ya
obtengo la llave pública y privada pero ahora la duda que tengo es
donde almacenar las llaves para cada usuario e estado pensando
almacenarlo en un archivo de texto, en el registro de windows, darcelo
al usuario, almacenarlo como una variable en la aplicación pero como
no soy experto en seguridad me suena que todas estás formas no son
seguras por más que utilices algoritmos a prueba de hackers alguna
recomendación de los que ya hayan enfrentado este dilema
 

Leer las respuestas

#1 Jesús López
18/02/2008 - 20:52 | Informe spam
Almacenar secretos siempre es muy problemático, la única manera de asegurar
un sercreto es no almacenarlo en absoluto. Pero en tu caso, ya que no te
queda otra que almacenalo y ya que las claves están asociadas a un usuario
en cuestión, yo lo almacenaría en el registro de Windows en la clave
CURRENT_USER\SOFTWARE\. y además lo almacenaría crifrado por medio de
DPAPI a nivel de usuario utilizando ProtectedData.Protect( userData,
optionalEntropy, DataProctectionScope.CurrentUser ). De esta manera sólo el
usuario en cuestión puede obtener la clave almacenada, sin embargo,
cualquier proceso que se ejecute con las credenciales del usuario podría
obtener la clave si conoce optionalEntropy. Así que si de verdad quieres
protección, tendrías que cifrar la clave basándote en una contraseña que
sólo supiera el usuario y que proporcionara cuando tu programa necesitara
acceder a la clave RSA.



Saludos:

Jesús López
www.solidq.com



escribió en el mensaje
news:
Hola grupo
Alguien que me pudierá dar una recomendación sobre las llaves públicas
y privadas y en particular sobre su almacenaminento lo que sucede es
que estoy desarrollando una aplicación que utiliza el algoritmo RSA y
está se encargade crear la llave pública y privada y toda va bien ya
obtengo la llave pública y privada pero ahora la duda que tengo es
donde almacenar las llaves para cada usuario e estado pensando
almacenarlo en un archivo de texto, en el registro de windows, darcelo
al usuario, almacenarlo como una variable en la aplicación pero como
no soy experto en seguridad me suena que todas estás formas no son
seguras por más que utilices algoritmos a prueba de hackers alguna
recomendación de los que ya hayan enfrentado este dilema

Preguntas similares