パッケージ jp.co.osstech.libjeid

クラス JPKISignature


  • public class JPKISignature
    extends java.lang.Object
    公的個人認証APの署名操作オブジェクトです。 インターフェースはjava.security.Signatureに似せてあります。

    このオブジェクトは、署名を生成することができます。データの署名に使用する場合、2つの段階があります。

    1. 更新

      署名の対象となるバイトを更新します。updateメソッドを参照してください。

    2. 署名

      すべての更新済みバイトに対して署名を行います。signメソッドを参照してください。

    • コンストラクタの概要

      コンストラクタ 
      コンストラクタ 説明
      JPKISignature​(JPKIAP ap, int type, java.lang.String signAlgo)
      コンストラクタ
    • メソッドの概要

      すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      byte[] getDigest()
      メッセージダイジェストを返します。
      byte[] getDigestInfo()
      DigestInfoを返します。
      static byte[] makeDigestInfo​(byte[] hash, java.lang.String algo)
      DigestInfoを作成します。
      byte[] sign​(java.lang.String pin)
      署名を行います。
      void update​(byte[] data)
      指定されたバイト配列を使用して、署名対象のデータを更新します。
      • クラスから継承されたメソッド java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • コンストラクタの詳細

      • JPKISignature

        public JPKISignature​(JPKIAP ap,
                             int type,
                             java.lang.String signAlgo)
                      throws java.security.NoSuchAlgorithmException
        コンストラクタ
        パラメータ:
        ap - JPKIAPオブジェクト
        type - 署名タイプ(詳細についてはJPKIAPのJavadocをご参照ください)
        signAlgo - 署名アルゴリズム
        例外:
        java.security.NoSuchAlgorithmException - 非対応のダイジェストアルゴリズム
    • メソッドの詳細

      • update

        public void update​(byte[] data)
        指定されたバイト配列を使用して、署名対象のデータを更新します。
        パラメータ:
        data - 更新に使用するバイト配列
      • sign

        public byte[] sign​(java.lang.String pin)
                    throws java.io.IOException,
                           java.security.NoSuchAlgorithmException,
                           InvalidPinException
        署名を行います。
        パラメータ:
        pin - 暗証番号
        戻り値:
        署名データ
        例外:
        java.io.IOException - IOエラー
        InvalidPinException - PINの誤り
        java.security.NoSuchAlgorithmException - 非対応のダイジェストアルゴリズム
      • getDigest

        public byte[] getDigest()
        メッセージダイジェストを返します。
        戻り値:
        メッセージダイジェスト
      • getDigestInfo

        public byte[] getDigestInfo()
        DigestInfoを返します。
        戻り値:
        DigestInfo
      • makeDigestInfo

        public static byte[] makeDigestInfo​(byte[] hash,
                                            java.lang.String algo)
                                     throws java.io.IOException,
                                            java.security.NoSuchAlgorithmException
        DigestInfoを作成します。
        パラメータ:
        hash - ハッシュ値
        algo - ダイジェストアルゴリズム
        戻り値:
        DigestInfoオブジェクトのデフォルトのBERまたはDERエンコーディング
        例外:
        java.io.IOException - エンコードエラー
        java.security.NoSuchAlgorithmException - 非対応のダイジェストアルゴリズム