Java API
HSM Dinamo
Loading...
Looking for...
No entries found
BchainGetKeyInfo.java

Example of restoring the properties of an XPrv BIP32 key using the blockchain module.

See Note on examples.
package doxy.examples;
import com.dinamonetworks.BchainKeyInfo;
import com.dinamonetworks.Dinamo;
import br.com.trueaccess.TacException;
import br.com.trueaccess.TacNDJavaLib;
public class BchainGetKeyInfo {
public static void main(String[] args) throws TacException {
String ip = "127.0.0.1";
String user = "master";
String password = "12345678";
Dinamo api = new Dinamo();
api.openSession(ip, user, password);
String xprvId = "xprv_keyinfo_example";
// Cria uma chave XPrv BIP32 (mainnet)
api.bchainCreateXPrv(TacNDJavaLib.DN_BCHAIN_BIP32_XPRV,
TacNDJavaLib.DN_BCHAIN_VER_BIP32_MAINNET,
0,
xprvId);
System.out.println("Chave XPrv criada: " + xprvId);
// Recupera as informações da chave
BchainKeyInfo info = api.bchainGetKeyInfo(xprvId);
System.out.println("Tipo de armazenamento: " + info.getStorageType()
+ (info.getStorageType() == TacNDJavaLib.DN_BCHAIN_KEY_INFO_ST_BLKC
? " (blockchain)" : " (comum)"));
System.out.println("Tipo da chave: " + info.getType());
System.out.println("Profundidade BIP32: " + info.getBip32Depth());
byte[] bip32Ver = info.getBip32Ver();
System.out.printf("Versão BIP32: %02X %02X %02X %02X%n",
bip32Ver[0], bip32Ver[1], bip32Ver[2], bip32Ver[3]);
byte[] parentFp = info.getParentFingerprint();
System.out.printf("Fingerprint do pai: %02X %02X %02X %02X%n",
parentFp[0], parentFp[1], parentFp[2], parentFp[3]);
byte[] childNum = info.getChildNumber();
System.out.printf("Número do filho: %02X %02X %02X %02X%n",
childNum[0], childNum[1], childNum[2], childNum[3]);
// Remove a chave criada
api.deleteKeyIfExists(xprvId);
System.out.println("Chave XPrv removida: " + xprvId);
api.closeSession();
}
}