SealedObject(javax.crypto.SealedObject)

該類使程式設計師能夠使用加密演算法建立物件並保護其機密性。

給定任何 Serializable 物件,可以建立一個封裝原始物件的 SealedObject ,以序列化格式(即深拷貝),並使用 AES,DES 等加密演算法密封(加密)其序列化內容。它的機密性。稍後可以解密加密的內容(使用相應的演算法使用正確的解密金鑰)並反序列化,從而產生原始物件。

StackOverflow 文件

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));