API Java
HSM Dinamo
Cargando...
Buscando...
No se han encontrado entradas
ExportImportTR31.java

Ejemplo de exportación e importación en formato TR-31.

Véase la nota sobre ejemplos.
paquete doxy.examples;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import com.dinamonetworks.Dinamo;
import br.com.trueaccess.TacException;
import br.com.trueaccess.TacNDJavaLib;
public class ExportImportTR31 {
public static void main(String[] args) throws TacException {
Dinamo api = new Dinamo();
api.openSession("127.0.0.1", "master", "12345678", false);
String kbpk = "kbpk"; //Nombre de la clave utilizada para derivar las claves de cifrado y autenticación.
String key = "key"; //Nombre de la clave a exportar
api.createKey(key, TacNDJavaLib.ALG_AES_128, true);
api.createKey(kbpk, TacNDJavaLib.ALG_AES_256, true);
/*
* Exporta una clave en formato TR-31.
*/
byte[] keyBlock = api.exportTR31(kbpk, key, TacNDJavaLib.EFT_ME_TR31_EXP_USAGE_AUTO,
TacNDJavaLib.EFT_ME_TR31_EXP_MODE_AUTO,
TacNDJavaLib.EFT_ME_TR31_EXP_AUTO);
System.out.println("Clave exportada correctamente");
/*
* Importar una llave en formato TR-31.
*/
String impKey = "impKey"; //Nombre de la clave importada
api.importTR31(kbpk, impKey, TacNDJavaLib.EXPORTABLE_KEY, keyBlock);
System.out.println("Clave importada con éxito");
/*
* Retire las llaves de prueba.
*/
api.deleteKey(clave);
api.deleteKey(kbpk);
api.deleteKey(impKey);
api.closeSession();
}
}