Sök…


Syntax

  • SealedObject sealedObject = new SealedObject (obj, chiffer);
  • SignedObject signObject = new SignedObject (obj, signingKey, signingEngine);

SealedObject (javax.crypto.SealedObject)

Denna klass gör det möjligt för en programmerare att skapa ett objekt och skydda det konfidentiella med en kryptografisk algoritm.

Med tanke på vilket seriellt objekt som helst, kan man skapa ett SealedObject som kapslar in det ursprungliga objektet, i seriellt format (dvs en "djup kopia") och förseglar (krypterar) dess serialiserade innehåll med hjälp av en kryptografisk algoritm som AES, DES, för att skydda dess konfidentialitet. Det krypterade innehållet kan senare dekrypteras (med motsvarande algoritm med rätt dekrypteringsnyckel) och avserialiseras, vilket ger det ursprungliga objektet.

ange bildbeskrivning här

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 är en klass för att skapa autentiska runtime-objekt vars integritet inte kan äventyras utan att upptäckas.

Mer specifikt innehåller ett SignedObject ett annat serielliserbart objekt, det (att vara) signerade objektet och dess signatur.

ange bildbeskrivning här

//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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow