モジュール java.base
パッケージ javax.crypto

クラスSealedObject

java.lang.Object
javax.crypto.SealedObject
すべての実装されたインタフェース:
Serializable

public class SealedObject extends Object implements Serializable
プログラマは、このクラスを使用してオブジェクトを生成し、暗号化アルゴリズムを利用してその機密性を保護することができます。

Serializableオブジェクトがある場合、元のオブジェクトを直列化形式(例: "deep copy")でカプセル化するSealedObjectを作成し、AESなどの暗号化アルゴリズムを使用して、その機密性を保護するために、その直列化されたコンテンツを(encrypts)にシールできます。 そのあと、暗号化された内容の暗号解読(適正な暗号解読キーを使用)、および直列化解除を行うことにより、元のオブジェクトを復元できます。

SealedObjectに適用する前に、Cipherオブジェクトを正しいアルゴリズム、キー、パディング・スキームなどで完全に初期化する必要があります。

シールされた元のオブジェクトは、次の異なる2つの方法で復元可能です。

  • CipherオブジェクトをとるgetObjectメソッドを使用する。

    このメソッドは、オブジェクトをシールするのに使用したのとまったく同じアルゴリズム、キー、パディング方式などで完全に初期化されたCipherオブジェクトを必要とします。

    この方法には、復号化キーに関する知識がなくても、シールされたオブジェクトのアンシールを実行できるという利点があります。 たとえば、あるパーティが暗号オブジェクトを必須の復号化キーを使って初期化したあとで、別のパーティに渡すと、そのパーティはシールされたオブジェクトをアンシールできます。

  • KeyオブジェクトをとるgetObjectメソッドの1つを使用する。

    この方法では、getObjectメソッドは、適切な復号化アルゴリズム用の暗号オブジェクトを作成し、シール済みのオブジェクトに格納された特定の復号化キーおよびアルゴリズム・パラメータ(存在する場合)を使用してそれを初期化します。

    この方式には、オブジェクトをシール解除する当事者はオブジェクトをシールするのに使用されたパラメータ(たとえば、IV)を追跡する必要がないという利点があります。

導入されたバージョン:
1.4
関連項目: