public class JPKICryptAuthJNI
extends java.lang.Object
try { JPKICryptAuthJNI jpkiCryptAuth = new JPKICryptAuthJNI(); jpkiCryptAuth.method(param); } catch (JPKICryptAuthJNIException e) { // 機能特有の例外 switch (e.getErrorCode()) { case JPKICryptAuthJNIException.JPKI_ERR_PARAM : //引数エラー break; case JPKICryptAuthJNIException.JPKI_ERR_WINDOWS : //Windowsエラー switch (e.getWinErrorCode()) { case JPKICryptAuthJNIException.JPKI_WIN_ERR_NO_MEMORY : break; // その他処理するエラーコードを記述 default : // 予期しないWindowsエラー break; } } } catch (Exception e) { // その他の例外 }
修飾子とタイプ | フィールドと説明 |
---|---|
static int |
JPKI_CALG_SHA_256
cryptCreateHashで、ハッシュアルゴリズム「SHA256」を利用する場合に指定します。
|
static int |
JPKI_CALG_SHA1
cryptCreateHashで、ハッシュアルゴリズム「SHA1」を利用する場合に指定します。
|
static int |
JPKI_VERIFYCONTEXT
cryptAcquireContextで、認証を行なわない場合に指定します。
|
コンストラクタと説明 |
---|
JPKICryptAuthJNI()
JPKICryptAuthJNIクラスを生成します。
|
修飾子とタイプ | メソッドと説明 |
---|---|
long |
certCreateCertificateContext(byte[] certValue)
証明書に対する証明書ハンドルを返す。
|
void |
certFreeCertificateContext(long hCert)
証明書ハンドルを解放します。
|
byte[] |
certGetPublicKeyInfo(long hCert)
証明書の公開鍵情報を取得します。
|
long |
cryptAcquireContext(int flag)
プロバイダハンドルを取得します。
|
long |
cryptCreateHash(long hProv)
ハッシュオブジェクトを生成しハッシュハンドルを返します。
|
long |
cryptCreateHash(long hProv,
int algid)
ハッシュオブジェクトを生成しハッシュハンドルを返します。
|
void |
cryptDestroyHash(long hHash)
ハッシュオブジェクトを解放します。
|
void |
cryptDestroyKey(long hKey)
鍵ハンドルを解放します。
|
byte[] |
cryptGetCertificateValue(long hKey)
秘密鍵に対応する利用者証明書を取得します。
|
byte[] |
cryptGetHashValue(long hHash)
ハッシュオブジェクトからハッシュ値を取得します。
|
byte[] |
cryptGetRootCertificateValue(long hProv)
利用者証明用認証局の自己署名証明書を取得します。
|
long |
cryptGetUserKey(long hProv)
プロバイダの秘密鍵ハンドルを取得します。
|
void |
cryptHashData(long hHash,
byte[] data)
ハッシュオブジェクトにデータを与えハッシュ値を計算します。
|
long |
cryptImportPublicKey(long hProv,
byte[] publicKeyInfo)
公開鍵への鍵ハンドルを生成します。
|
void |
cryptReleaseContext(long hProv)
プロバイダハンドルを解放します。
|
void |
cryptSetHashValue(long hHash,
byte[] data)
ハッシュオブジェクトにハッシュ値を設定します。
|
byte[] |
cryptSignHash(long hHash)
ハッシュオブジェクトに署名します。
|
boolean |
cryptVerifySignature(long hHash,
byte[] signature,
long hPubKey)
署名をハッシュオブジェクト、公開鍵を用いて検証します。
|
public static final int JPKI_CALG_SHA_256
public static final int JPKI_CALG_SHA1
public static final int JPKI_VERIFYCONTEXT
public JPKICryptAuthJNI()
java.lang.UnsatisfiedLinkError
- - DLLが存在しない場合public long cryptAcquireContext(int flag) throws JPKICryptAuthJNIException
flag
- 動作に関するフラグJPKICryptAuthJNIException
public void cryptReleaseContext(long hProv) throws JPKICryptAuthJNIException
hProv
- プロバイダハンドルJPKICryptAuthJNIException
public long certCreateCertificateContext(byte[] certValue) throws JPKICryptAuthJNIException
certValue
- 証明書(DER形式)JPKICryptAuthJNIException
public void certFreeCertificateContext(long hCert) throws JPKICryptAuthJNIException
hCert
- 証明書ハンドルJPKICryptAuthJNIException
public byte[] certGetPublicKeyInfo(long hCert) throws JPKICryptAuthJNIException
hCert
- 証明書ハンドルJPKICryptAuthJNIException
public long cryptImportPublicKey(long hProv, byte[] publicKeyInfo) throws JPKICryptAuthJNIException
hProv
- プロバイダハンドルpublicKeyInfo
- 公開鍵情報JPKICryptAuthJNIException
public long cryptGetUserKey(long hProv) throws JPKICryptAuthJNIException
hProv
- プロバイダハンドルJPKICryptAuthJNIException
public void cryptDestroyKey(long hKey) throws JPKICryptAuthJNIException
hKey
- 鍵ハンドルJPKICryptAuthJNIException
public byte[] cryptGetCertificateValue(long hKey) throws JPKICryptAuthJNIException
hKey
- 秘密鍵ハンドルJPKICryptAuthJNIException
public byte[] cryptGetRootCertificateValue(long hProv) throws JPKICryptAuthJNIException
hProv
- プロバイダハンドルJPKICryptAuthJNIException
public long cryptCreateHash(long hProv) throws JPKICryptAuthJNIException
hProv
- プロバイダハンドルJPKICryptAuthJNIException
public long cryptCreateHash(long hProv, int algid) throws JPKICryptAuthJNIException
hProv
- プロバイダハンドルalgid
- 利用するハッシュアルゴリズムJPKICryptAuthJNIException
public void cryptHashData(long hHash, byte[] data) throws JPKICryptAuthJNIException
hHash
- ハッシュハンドルdata
- ハッシュするデータJPKICryptAuthJNIException
public byte[] cryptGetHashValue(long hHash) throws JPKICryptAuthJNIException
hHash
- ハッシュハンドルJPKICryptAuthJNIException
public void cryptSetHashValue(long hHash, byte[] data) throws JPKICryptAuthJNIException
hHash
- ハッシュハンドルdata
- ハッシュ値JPKICryptAuthJNIException
public byte[] cryptSignHash(long hHash) throws JPKICryptAuthJNIException
cryptCreateHash(long)
を使用した場合はcryptCreateHash(long,int)
を使用した場合は、指定した以下のアルゴリズムに対応します。hHash
- ハッシュハンドルJPKICryptAuthJNIException
public void cryptDestroyHash(long hHash) throws JPKICryptAuthJNIException
hHash
- ハッシュハンドルJPKICryptAuthJNIException
public boolean cryptVerifySignature(long hHash, byte[] signature, long hPubKey) throws JPKICryptAuthJNIException
hHash
- ハッシュハンドルsignature
- 署名値hPubKey
- 公開鍵ハンドルJPKICryptAuthJNIException