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

クラス JPKISignature

java.lang.Object
jp.co.osstech.libjeid.JPKISignature

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

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

  1. 更新

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

  2. 署名

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

  • コンストラクタの概要

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

    修飾子とタイプ
    メソッド
    説明
    byte[]
    メッセージダイジェストを返します。
    byte[]
    DigestInfoを返します。
    static byte[]
    makeDigestInfo(byte[] hash, String algo)
    DigestInfoを作成します。
    byte[]
    sign(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, String signAlgo) throws NoSuchAlgorithmException
      コンストラクタ
      パラメータ:
      ap - JPKIAPオブジェクト
      type - 署名タイプ(詳細についてはJPKIAPのJavadocをご参照ください)
      signAlgo - 署名アルゴリズム
      例外:
      NoSuchAlgorithmException - 非対応のダイジェストアルゴリズム
  • メソッドの詳細

    • update

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

      署名を行います。
      パラメータ:
      pin - 暗証番号
      戻り値:
      署名データ
      例外:
      IOException - IOエラー
      InvalidPinException - PINの誤り
      NoSuchAlgorithmException - 非対応のダイジェストアルゴリズム
    • getDigest

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

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

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