概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.5.2.1
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.security
クラス HybsCryptography

    java.lang.Object
      org.opengion.fukurou.security.HybsCryptography

    public final class HybsCryptography

extends java.lang.Object

HybsCryptography は、セキュリティ強化の為の Hybs独自の暗号化クラスです。 このクラスは、暗号化キーを受け取り、それに基づいて暗号化/復号化を行います。 ここでの暗号化は、秘密キー方式でバイト文字列に変換されたものを、１６進アスキー文字に 直して、扱っています。よって、暗号化/復号化共に、文字列として扱うことが可能です。

変更履歴:

  4.0.0 (2005/08/31) 新規追加

機能階層
  ライセンス管理
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

コンストラクタの概要
`HybsCryptography()` 内部設定の秘密鍵を使用して，暗号化を行うオブジェクトを構築します。
`HybsCryptography(java.lang.String cryptKey)` 秘密鍵の文字列を受け取って，暗号化を行うオブジェクトを構築します。

メソッドの概要
`static java.lang.String` | `byte2hexa(byte[] input)` バイト配列を１６進数アスキー文字列に変換します。
`java.lang.String` | `decrypt(java.lang.String hex)` セキュリティカラムのDBTyepに対してHybs独自の復号化を行います。
`java.lang.String` | `encrypt(java.lang.String org)` セキュリティカラムのDBTyepに対してHybs独自の暗号化を行います。
`static java.lang.String` | `getMD5(java.lang.String input)` MessageDigestにより、MD5 でハッシュした文字に変換します。
`static byte[]` | `hexa2byte(java.lang.String input)` １６進数アスキー文字列をバイト配列に変換します。
`static void` | `main(java.lang.String[] args)` 暗号化のテストを行う為のメインメソッド java HybsCryptography KEY TEXT で起動します。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

コンストラクタの詳細

### HybsCryptography

    public HybsCryptography()

  内部設定の秘密鍵を使用して，暗号化を行うオブジェクトを構築します。 ここでの暗号化は、Java標準のセキュリティパッケージを使用しています。

### HybsCryptography

    public HybsCryptography(java.lang.String cryptKey)

  秘密鍵の文字列を受け取って，暗号化を行うオブジェクトを構築します。 ここでの暗号化は、Java標準のセキュリティパッケージを使用しています。 秘密鍵のサイズを、8 の倍数 (32 以上 448 以下) にする必要があります。

  パラメータ:
    `cryptKey` - String 暗号化を行う秘密鍵

メソッドの詳細

### encrypt

    public java.lang.String encrypt(java.lang.String org)

  セキュリティカラムのDBTyepに対してHybs独自の暗号化を行います。 暗号化されたデータは、通常 byte 文字ですが、１６進数アスキー文字列に変換 したものを返します。 この暗号化では、引数が null の場合は、ゼロ文字列を返します。

  パラメータ:
    `org` - String 暗号化を行う元の文字列
  戻り値:
    String 暗号化された文字列(HEXADECIMAL化)

### decrypt

    public java.lang.String decrypt(java.lang.String hex)

  セキュリティカラムのDBTyepに対してHybs独自の復号化を行います。 ここでの復号化は、encrypt で暗号化された文字を戻す場合に使用します。 この復号化では、null は復号化できないため、ゼロ文字列を返します。

  パラメータ:
    `hex` - String 復号化を行う暗号化された１６進数アスキー文字列
  戻り値:
    String 復号化された元の文字列

### byte2hexa

    public static java.lang.String byte2hexa(byte[] input)

  バイト配列を１６進数アスキー文字列に変換します。 バイト配列を、２文字の0～9,a～ｆのアスキーに変換されます。 これにより、すべての文字を、アスキー化できます。 アスキー化で、上位が0F以下の場合でも、0 を出すことで、固定長に変換します。 よって、入力バイトの２倍のlength()を持ったStringを作成します。

  パラメータ:
    `input` - バイト配列
  戻り値:
    １６進数アスキー文字列

### hexa2byte

    public static byte[] hexa2byte(java.lang.String input)

  １６進数アスキー文字列をバイト配列に変換します。 ２文字の0～9,a～ｆのアスキー文字列を、バイト配列に変換されます。 よって、入力Stringの１/２倍のlengthを持ったバイト配列を作成します。

  パラメータ:
    `input` - １６進数アスキー文字列
  戻り値:
    バイト配列

### getMD5

    public static java.lang.String getMD5(java.lang.String input)

  MessageDigestにより、MD5 でハッシュした文字に変換します。 MD5で、１６Byteのバイトに変換されますが、ここでは、マイナス時には, 符号を反転させて、１６進数で文字列に変換しています。 よって、このメソッドで変換した文字でのみ突き合わせて正しいかどうかを 判断してください。 変換方法は、各バイトの上位/下位を１６進文字列に変換後、連結しています。 これは、Tomcat等の digest 認証（MD5使用時)と同じ変換方式です。 連結後の文字列長は、３２バイト(固定)になります。

  パラメータ:
    `input` - 変換前の文字列
  戻り値:
    MD5 でハッシュした文字列。３２バイト(固定)
  変更履歴:

    5.2.2.0 (2010/11/01) util.StringUtil から移動

### main

    public static void main(java.lang.String[] args)
                     throws java.lang.Exception

  暗号化のテストを行う為のメインメソッド java HybsCryptography KEY TEXT で起動します。 KEY : 秘密鍵(8 の倍数 (32 以上 448 以下)文字) TEXT : 変換する文字列

  パラメータ:
    `args` - String[] 引数配列
  例外:
    `java.lang.Exception`
  変更履歴:

    5.2.2.0 (2010/11/01) 循環参照の解消(LogWriter 削除)

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.5.2.1
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.