Recherche…


Syntaxe

  • SealedObject sealedObject = new SealedObject (obj, cipher);
  • SignedObject signedObject = new SignedObject (obj, signedKey, signedEngine);

SealedObject (javax.crypto.SealedObject)

Cette classe permet à un programmeur de créer un objet et de protéger sa confidentialité avec un algorithme cryptographique.

Étant donné tout objet Serializable, on peut créer un objet SealedObject qui encapsule l'objet d'origine, au format sérialisé (c.-à-d. Une copie profonde), et scelle (crypte) son contenu sérialisé en utilisant un algorithme cryptographique tel que AES, DES. sa confidentialité. Le contenu chiffré peut ensuite être déchiffré (avec l'algorithme correspondant à l'aide de la clé de déchiffrement correcte) et désérialisé, ce qui permet d'obtenir l'objet d'origine.

entrer la description de l'image ici

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 est une classe destinée à créer des objets d'exécution authentiques dont l'intégrité ne peut être compromise sans être détectée.

Plus précisément, un objet SignedObject contient un autre objet Serializable, l’objet (à signer) et sa signature.

entrer la description de l'image ici

//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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow