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
{ byte[] keybytes; KeyFileReader keyfilereader; EncryptedPrivateKeyInfo encryptedkey = null; try { keyfilereader = new KeyFileReader(keyfilename); keybytes = keyfilereader.GetEncodedBytes(); if(keybytes != null) { encryptedkey = new EncryptedPrivateKeyInfo(keybytes); } } { } return key; }
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!.