Javaオブジェクトの一部を暗号化してシリアル化して送信することを望んでいました。Javaオブジェクトの部分的な暗号化とシリアライズ
さらに明確に言えば、私は、各段階でブランチデータが吐き出されるワークフローを持っています。私はそれの一部(いくつかのクラス変数)を暗号化し、その一部を公開したい。私はシリアル化する前にこの暗号化部分を含むようにオーバーライドできる基本的なシリアライザを持っています。どのようにそれを行うにはどのような提案?
私はこれらの変数に@encyptのような注釈を付けて、それをシリアル化して暗号化することを考えています。しかし、私はこの注釈を実装する方法がわかりません。すべてのポインタ?
class Foo{
private String username;
@encrypt
private String password;
}
class customSerializer{
writeExternal(Foo object){
encrypt(object);
serialize(encryptedObject);
}
}
encrypt(Foo object){
// Identify variables with @encrypt and encypt them.
}
暗号化機能でこの「識別変数」の部分をどのように実装するべきかわかりません。
感謝ショーンこの記事では、 "Java暗号化拡張" を参照してください!そんなこと知ってる。私の質問は、シリアライゼーションに関するものではなく、どのように@encryptアノテーションで変数を識別し、それを暗号化してからシリアル化するかについてです。 – Satish
externalizableを実装することによってオブジェクト自体でそれを行う必要があることを考えれば、私は気にしません。オブジェクトは、どのフィールドを暗号化する必要があるかを知っているので、それを仕事にするだけです。 –