Foros del Web » Programación para mayores de 30 ;) » Java »

Crear Key para desencriptar EncryptedPrivateKeyInfo

Estas en el tema de Crear Key para desencriptar EncryptedPrivateKeyInfo en el foro de Java en Foros del Web. Hola, Tengo un archivo .key en formato DER en donde guardo la clave privada para luego firmar documentos digitales. Necesito obtener un PrivateKey desde este ...
  #1 (permalink)  
Antiguo 18/11/2009, 02:08
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 1 mes
Puntos: 9
Crear Key para desencriptar EncryptedPrivateKeyInfo

Hola,

Tengo un archivo .key en formato DER en donde guardo la clave privada para luego firmar documentos digitales. Necesito obtener un PrivateKey desde este archivo. La función que hice es la siguiente:

Código java:
Ver original
  1. public static PrivateKey LoadKey(String keyfilename, String password)
  2.     {
  3.         byte[] keybytes;
  4.         KeyFileReader keyfilereader;
  5.         PrivateKey key = null;
  6.         EncryptedPrivateKeyInfo encryptedkey = null;
  7.  
  8.         try
  9.         {
  10.             keyfilereader = new KeyFileReader(keyfilename);
  11.             keybytes = keyfilereader.GetEncodedBytes();
  12.             if(keybytes != null)
  13.             {
  14.                 encryptedkey = new EncryptedPrivateKeyInfo(keybytes);                
  15.             }
  16.         }
  17.         catch(Exception e)
  18.         {
  19.             System.out.println(e.getMessage());
  20.         }
  21.  
  22.         return key;
  23.     }

KeyFileReader es una clase que me permite obtener los bytes del archivo .key.
encryptedkey tiene un método getKeySpec() que devuelve un PKCS8EncodedKeySpec. Esta clase es la que me sirve para generar el objeto PrivateKey que necesito.
El método getKeySpec() tiene varias sobrecargas, aunque la que me interesa es una que toma un objeto Key como clave para desencriptar. Mi pregunta es como transformar el password (String) en una clase Key para poder pasarsela como argumento a éste método.

Saludos!.
__________________
Add, never Remove
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:12.