|
From: FADY F. <fad...@ya...> - 2010-10-17 09:24:57
|
Dear Trusted Java Team
I use the public part of AIK Key to encrypt a data and it works, I just ask how
can I do it but by the private part of AIK.
This is my code
***************************************************************************
// Context Object
context = new TcTssContextFactory().newContextObject();
context.connect();
// get SRK and Set SRK Secret
TcIRsaKey srk =
context.loadKeyByUuidFromSystem(TcUuidFactory.getInstance().getUuidSRK());
TcIPolicy srkUsgPolicy =
context.createPolicyObject(TcTssConstants.TSS_POLICY_USAGE);
TcBlobData srkSecret =
TcBlobData.newByteArray(TcTssConstants.TSS_WELL_KNOWN_SECRET);
srkUsgPolicy.setSecret(TcTssConstants.TSS_SECRET_MODE_SHA1, srkSecret);
srkUsgPolicy.assignToObject(srk);
// Load AIK
TcIRsaKey aikKey = context.loadKeyByBlob(srk, keyblob_);
//Set Usage and Migration Policy
TcIPolicy aikUsgPolicy =
context.createPolicyObject(TcTssConstants.TSS_POLICY_USAGE);
aikUsgPolicy.setSecret(TcTssConstants.TSS_SECRET_MODE_PLAIN,TcBlobData.newString(keysecret));
aikUsgPolicy.assignToObject(aikKey);
TcIPolicy aikMigPolicy =
context.createPolicyObject(TcTssConstants.TSS_POLICY_MIGRATION);
aikMigPolicy.setSecret(TcTssConstants.TSS_SECRET_MODE_PLAIN,TcBlobData.newString(keysecret));
aikMigPolicy.assignToObject(aikKey);
//Encrypt by the public Part of AIK
TcTpmPubkey pubKey = new TcTpmPubkey (aikKey.getAttribData (
TcTssConstants.TSS_TSPATTRIB_KEY_BLOB,
TcTssConstants.TSS_TSPATTRIB_KEYBLOB_PUBLIC_KEY));
String plaintext = "Daten";
try {
TcBlobData data;
data = TcBlobData.newByteArray(plaintext.getBytes("UTF_16LE"));
System.out.println(data.toString());
TcBlobData DataEncrypted =
TcCrypto.pubEncryptRsaOaepSha1Mgf1(pubKey, data);
//TcBlobData DataEncrypted=
TcCrypto.pubEncryptRsaEcbPkcs1Padding(pubKey, Data);
System.out.println(DataEncrypted.toString());
} catch (UnsupportedEncodingException ex) {
Logger.getLogger(APKIC1.class.getName()).log(Level.SEVERE, null,
ex);
}
***************************************************************************
Thank You Very Much
I Really appreciate your help.
Thanks
|