Suche…


Syntax

  • SealedObject sealedObject = neues SealedObject (obj, cipher);
  • SignedObject signedObject = new SignedObject (obj, signingKey, signingEngine);

SealedObject (javax.crypto.SealedObject)

Mit dieser Klasse kann ein Programmierer ein Objekt erstellen und seine Vertraulichkeit mit einem kryptographischen Algorithmus schützen.

Bei jedem serialisierbaren Objekt kann ein SealedObject erstellt werden , das das ursprüngliche Objekt in serialisiertem Format (z. B. eine "tiefe Kopie") einkapselt und seinen serialisierten Inhalt unter Verwendung eines kryptographischen Algorithmus wie AES, DES zum Verschließen (verschlüsselt) seine Vertraulichkeit. Der verschlüsselte Inhalt kann später entschlüsselt werden (mit dem entsprechenden Algorithmus unter Verwendung des richtigen Entschlüsselungsschlüssels) und deserialisiert werden, wodurch das ursprüngliche Objekt entsteht.

Geben Sie hier die Bildbeschreibung ein

Serializable obj = new String("John");
// Generate key
KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128);
SecretKey aesKey = kgen.generateKey();
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, aesKey);
SealedObject sealedObject = new SealedObject(obj, cipher);
System.out.println("sealedObject-" + sealedObject);
System.out.println("sealedObject Data-" + sealedObject.getObject(aesKey));

SignedObject (java.security.SignedObject)

SignedObject ist eine Klasse zum Erstellen von authentischen Laufzeitobjekten, deren Integrität nicht beeinträchtigt werden kann, ohne entdeckt zu werden.

Insbesondere enthält ein SignedObject ein anderes serialisierbares Objekt, das (zu) signierte Objekt und seine Signatur.

Geben Sie hier die Bildbeschreibung ein

//Create a key
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("DSA", "SUN");
SecureRandom random = SecureRandom.getInstance("SHA1PRNG", "SUN");
keyGen.initialize(1024, random);
// create a private key
PrivateKey signingKey = keyGen.generateKeyPair().getPrivate();
// create a Signature
Signature signingEngine = Signature.getInstance("DSA");
signingEngine.initSign(signingKey);
// create a simple object 
Serializable obj = new String("John");
// sign our object
SignedObject signedObject = new SignedObject(obj, signingKey, signingEngine);

System.out.println("signedObject-" + signedObject);
System.out.println("signedObject Data-" + signedObject.getObject());


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow