メッセージエンコード
機能概要
鍵共有用の鍵導出関数 (補助メソッド 参照),および公開鍵暗号スキームで用いられる暗号化のためのメッセージエンコーディング (Message-Encoding Methods for Encryption) を行う Javaプログラムです ( メッセージエンコーディング 参照)
MessageEncode クラス
メッセージのエンコードを行う抽象クラス (Blanclux.crypto.MessageEncode) です.ソースプログラムは,MessageEncode.java です.
MessageEncode クラスは,以下のメソッドを持ちます.
- MessageEncode(String alg)
コンストラクタ.
alg はエンコードのアルゴリズム名である.
- String getAlgorithm()
アルゴリズム名を返す.
- void setParameter(Object parameter)
アルゴリズムに固有なパラメータを設定する.
- Object getParameter()
アルゴリズム固有のパラメータを返す.
- void init(int length)
エンコード長 (ビット長) を設定する.
- void init(MessageDigest digest)
エンコードに使うダイジェスト関数を指定する.
- MessageDigest getMessageDigest()
エンコードに使うダイジェスト関数を返す.
- int getEncodeLen()
エンコード長 (ビット長) を返す.
- abstract byte[] encode(byte[] src)
入力バイト列 src をエンコードした結果を返す.
- abstract byte[] decode(byte[] enc)
エンコード入力バイト列 enc のデコード結果を返す.
- static MessageEncode getInstance(String algorithm)
指定されたアルゴリズム名の MessageEncode クラスを返す.
エンコードクラス
MessageEncode クラスを継承したクラスであり,個々のエンコードアルゴリズムを実装したクラスです(Blanclux.crypto.encode パッケージ).
- MGF1 クラス
鍵導出関数 MGF1 (KDF1) を実現するクラスです.ソースプログラムは,MGF1.java です.アルゴリズム名は,"MGF1" です.
入力バイト列から,
init メソッドで指定された長さのバイト列を生成します.
- MGF1()
コンストラクタ.ダイジェスト関数として SHA-1 が使われます.
- decode メソッドは無効です.
- KDF3 クラス
鍵導出関数 KDF3 を実現するクラスです.ソースプログラムは,KDF3.java です.アルゴリズム名は,"KDF3" です.
入力バイト列から,
init メソッドで指定された長さのバイト列を生成します.
- KDF3()
コンストラクタ.ダイジェスト関数として SHA-1 が使われます.
- decode メソッドは無効です.
- EME1 クラス
メッセージエンコード関数 EME1 を実現するクラスです.ソースプログラムは,EME1.java です.アルゴリズム名は,"EME1" です.
入力バイト列をエンコードし,
init メソッドで指定された長さのバイト列を生成します.また,入力エンコードバイト列をデコードします.
- EME1()
コンストラクタ.ダイジェスト関数として SHA-1 が使われます.
- EME2 クラス
メッセージエンコード関数 EME2 を実現するクラスです.ソースプログラムは,EME2.java です.アルゴリズム名は,"EME2" です.
入力バイト列をエンコードし,
init メソッドで指定された長さのバイト列を生成します.また,入力エンコードバイト列をデコードします.
- EME2()
コンストラクタ.ダイジェスト関数として SHA-1 が使われます.
- EME3 クラス
メッセージエンコード関数 EME3 を実現するクラスです.ソースプログラムは,EME3.java です.アルゴリズム名は,"EME3" です.
入力バイト列をエンコードし,
init メソッドで指定された長さのバイト列を生成します.また,入力エンコードバイト列をデコードします.
- EME3()
コンストラクタ.ダイジェスト関数として SHA-1 が使われます.