?? psijni.java
字號:
/*
* @(#)PSIJni.java 2003/05/06
*
* Copyright(c) 2003 Wellhope Inc. All rights reserved.
*/
package psic;
/**
* @Title PSIJni Class
* @Description PSIJni類定義PSI的主要函數接口
* @Version 1.0.0
* @Author Zhuchengmin
*/
public class PSIJni {
static {
//System.load("C:\\Inetpub\\wwwroot\\myApp\\bin\\jspApi.dll");
System.loadLibrary("jspApi");
// libjspApi.so Windows
// jspApi.dll Linux
}
public PSIJni()
{
//System.load("/usr/local/WHlib/psijni.so");
}
/********************
pkiReadLabel pkiWriteLabel
********************/
//讀寫標簽
//public native int pkiReadLabel(String label, int type,PKI_DATA o_outData);
//public native int pkiWriteLabel(String label,int type,int mode,PKI_DATA i_inData);
/********************
( base 5 )
pkiInit pkiEnd pkiSetHardWare
pkiBase64Encode pkiBase64Decode
********************/
public native int pkiInit() ; public native int pkiEnd() ; public native int setHardWare(int i) ;
public native int pkiBase64Encode(PKI_DATA iData,PKI_DATA oData) ;
public native int pkiBase64Decode(PKI_DATA iData,PKI_DATA oData) ;
/********************
(hash2) pkiHashData pkiHashDataEx
********************/
public native int pkiHashData(int i_hashAlgo,PKI_DATA i_inData,PKI_DATA o_outData) ;
public native int pkiHashDataEx(int i_hashAlgo, PKI_DATA i_inData, int dwFlag, PKI_DATA o_outData);
/********************
(對稱加密 算法 3)
pkiGenerateRandom
pkiSymmCrypData
pkiRWKCryptData
********************/
public native int pkiGenerateRandom(int i_length,PKI_DATA o_outData) ;
public native int pkiSymmCryptData(int i_isEncryption,int i_symmAlgo,
PKI_DATA i_symmKey,
PKI_DATA i_inData,
PKI_DATA o_outData) ;
public native int pkiRWKCryptData(int i_isEncryption, int i_symmAlgo,
PKI_DATA i_symmKey,
PKI_DATA i_inData,
PKI_DATA o_outData) ;
public native int pkiPBKCryptData(int i_isEncryption, int i_symmAlgo,
String i_passwd,
PKI_DATA i_inData,
PKI_DATA o_outData) ;
/********************
(非對稱算法8)
pkiCheckPrivKey
pkiChangePrivKeyPasswd
pkiGetRsaKeyPairDer
pkiPubKeyEncrypt
pkiPrivKeyDecrypt
pkiGetPublicKey
pkiGetPrivateKey
********************/
public native int pkiGetRsaKeyPairDer(int i_keySize,PKI_DATA o_pubKey, PKI_DATA o_privKey) ;
public native int pkiUpdatePrivKey( int i_isDual,String i_keyLabel, String i_passwd, PKI_DATA i_encPrivKey );
public native int pkiCheckPrivKey(String i_keyLabel, String i_passwd) ;
public native int pkiChangePrivKeyPasswd(String i_privKeyLabel,String i_oldpPasswd,String i_newPasswd) ;
//public native int pkiSecureSplitData(PKI_DATA i_inData,String i_passwd1,String i_passwd2,String i_passwd3,PKI_DATA o_outData1,PKI_DATA o_outData2,PKI_DATA o_outData3 );
//public native int pkiSecureUniteData(PKI_DATA i_inData1, PKI_DATA i_inData2, PKI_DATA i_inData3, String i_passwd1, String i_passwd2, String i_passwd3, PKI_DATA o_outData );
//public native int pkiGetPublicKey(String i_keyLabel, PKI_DATA o_pubKey) ;
//public native int pkiGetPrivateKey(String i_keyLabel,String i_passwd, PKI_DATA o_prvKey) ;
public native int pkiPubKeyEncrypt(PKI_DATA i_pubKey, PKI_DATA i_inData,PKI_DATA o_outData) ;
public native int pkiPrivKeyDecrypt(String i_keyLabel, String i_passwd, PKI_DATA i_inData, PKI_DATA o_outData) ;
/********************
(Cert6)
pkiExportCert pkiImportCert
pkiCheckCert
證書解析 pkiGetCertInfo pkiGetXMLCertInfo pkiGetCRLInfo
********************/
//生成證書請求。生成證書請求前必須保證用于簽名請求的私鑰可用,
//public native int pkiGenCertRequest(CERTREQ_INFO i_certReqInfo, String i_passwd, int i_symmAlgo, String i_keyLabel, PKI_DATA o_certReq );
//根據證書請求自簽CA根證書
//public native int pkiSignRootCert(PKI_DATA i_certReq, String i_caKeyLabel, String i_passwd, CERT_POLICY i_certPolicy, PKI_DATA o_cert );
//CA根據證書請求簽發雙證書
//public native int pkiSignDualCert(PKI_DATA i_certReq, PKI_DATA i_encPubKey, String i_caKeyLabel, String i_passwd, CERT_POLICY i_certPolicy, PKI_DATA o_encCert, PKI_DATA o_signCert );
//CA根據證書生成信息簽發單證書(基于請求結構信息)
//public native int pkiSignSingleCert(CERTREQ_INFO i_certReqInfo, PKI_DATA i_signPubKey, String i_caKeyLabel, String i_passwd, CERT_POLICY i_certPolicy, PKI_DATA o_cert );
//CA根據證書生成信息簽發單證書(基于請求信息)
//public native int pkiSignSingleCertEx(PKI_DATA i_certReqInfo, String i_caKeyLabel, String i_passwd, CERT_POLICY i_certPolicy, PKI_DATA o_cert );
//public native int pkiSignCRL(CRL_LIST i_crlList,String i_caLabel,String i_passwd,int i_crlValidDays, PKI_DATA o_outData );
public native int pkiCheckCert(PKI_DATA i_inCert, PKI_DATA i_trustCert, PKI_DATA i_certsChain, PKI_DATA i_crl) ;
public native int pkiImportCert(String i_certLabel, int i_storeType, int i_certType, PKI_DATA i_cert) ;
public native int pkiExportCert(String i_certLabel, int i_storeType, int i_certType, PKI_DATA o_cert) ;
//public native int pkiGetCertInfo ( PKI_DATA i_inData, PKI_DATA o_certInfo ) ;
public native int pkiGetXMLCertInfo( PKI_DATA i_inData, PKI_DATA o_certInfo ) ;
public native int pkiGetCRLInfo ( PKI_DATA i_inCRL, PKI_CRLINFO o_crlInfo ) ;
/********************
(簽名) 5
簽名 pkiSignData pkiVerifyData
純簽名 pkiGetSignature pkiVerifySignature
公鑰驗簽 pkiVerifySignatureEx
********************/
public native int pkiSignData(String i_keyLabel,String i_keyPasswd, int i_algoType,
PKI_DATA i_inData,
PKI_DATA o_outData) ;
public native int pkiVerifyData(PKI_DATA i_checkCert, PKI_DATA i_signature) ;
public native int pkiGetSignature(String i_keyLabel, String i_keyPasswd, int i_algoType,
PKI_DATA i_inData,
PKI_DATA o_outData) ;
public native int pkiVerifySignature(int i_algoType,
PKI_DATA i_checkCert,
PKI_DATA i_clearText,
PKI_DATA i_signature) ;
public native int pkiVerifySignatureEx(int i_algoType,
PKI_DATA i_pubKey,
PKI_DATA i_clearText,
PKI_DATA i_signature) ;
/********************
(envelope3)
pkiSealEnvelope
pkiSealEnvelopeEx
pkiOpenEnvelope
********************/
public native int pkiSealEnvelope(PKI_DATA i_encCert, int i_symmAlgo,
PKI_DATA i_inData, PKI_DATA o_outData) ;
public native int pkiOpenEnvelope(String i_decKeyLabel,String i_passwd,
PKI_DATA i_inData, PKI_DATA o_outData) ;
public native int pkiSealEnvelopeEx(PKI_DATA[] i_encCerts, int i_encCertscount, int i_symmAlgo,
PKI_DATA i_inData, PKI_DATA o_outData) ;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -