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

Ejemplo de exportación e importación mediante KEK.

Ejemplo de exportación e importación mediante KEK.

Véase la nota sobre ejemplos.
paquete doxy.examples;
import com.dinamonetworks.Dinamo;
import br.com.trueaccess.TacException;
import br.com.trueaccess.TacNDJavaLib;
public class ExportImportKeyWithKek {
public static void main(String[] args) throws TacException {
Cadena keyId = "aes256";
String importedKeyId = "aes256_imp";
Cadena kekId = "rsa2048";
Cadena ip = "127.0.0.1";
String usuario = "maestro";
String password = "12345678";
Dinamo api = new Dinamo();
// Abre sessão
api.openSession(ip, usuario, contraseña, false);
// Cria a chave que será exportada
api.createKey(keyId, TacNDJavaLib.ALG_AES_256, true);
// Cria chave KEK
api.createKey(kekId, TacNDJavaLib.ALG_RSA_2048, true);
// Recupera handle da chave KEK
byte[] kek = api.getUserKey(kekId);
// Define os parâmetros de exportação da chave KEK
api.setPadding(kek, TacNDJavaLib.D_OAEP_SHA2_256_PADDING);
// Exporta a chave aes256
byte[] exportedKey = api.exportKey(keyId, kek, TacNDJavaLib.WRAPPED_KEY_BLOB);
// Importa a chave aes256
byte[] importedKey = null;
api.importKey(importedKeyId, kek, TacNDJavaLib.WRAPPED_KEY_BLOB,
TacNDJavaLib.ALG_AES_256, TacNDJavaLib.EXPORTABLE_KEY,
exportedKey, null);
// Remove chaves de teste
api.deleteKey(keyId);
api.deleteKey(importedKeyId);
api.deleteKey(kekId);
// Fecha sessão
api.closeSession();
}
}