security 发表于 2013-1-28 13:21:50

重新实现JCAPI的JCE Provider

The Pheox JCAPI (http://pheox.com/download) 提供一个JCE Provider可以直接操作Microsoft 操作系统本地证书库/私钥的。JCAPI用一个jcapi.dll封装了这些复杂性,这个dll负责调用Windows内置的CSP来完成加密签名哈希等密码运算。
JCAPI.DLL属于轻量级的中间层类库,它让Java开发者免去对待CSP的细节,比如获得一个CSP的Handle。
JCAPI.dll提供了下面的JNI调用:
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee;">00000001    10002AA0    _Java_com_pheox_jcapi_CoreCipherJNI_decrypt@24
00000002    100021A0    _Java_com_pheox_jcapi_CoreCipherJNI_encrypt@20
00000003    100027A0    _Java_com_pheox_jcapi_CoreCipherJNI_encryptWithPrivateKey@20
00000004    10001E10    _Java_com_pheox_jcapi_CoreCipherJNI_getPrivateKeySize@12
00000005    10003610    _Java_com_pheox_jcapi_CoreKeyStoreJNI_aliases@16
00000006    100039D0    _Java_com_pheox_jcapi_CoreKeyStoreJNI_containsAlias@12
00000007    10005E50    _Java_com_pheox_jcapi_CoreKeyStoreJNI_createBase64Hash@12
00000008    10003B30    _Java_com_pheox_jcapi_CoreKeyStoreJNI_deleteEntry@12
00000009    10003DA0    _Java_com_pheox_jcapi_CoreKeyStoreJNI_getCertificate@12
0000000A    10003FE0    _Java_com_pheox_jcapi_CoreKeyStoreJNI_getCertificateChain@20
0000000B    10004530    _Java_com_pheox_jcapi_CoreKeyStoreJNI_getKey@12
0000000C    10004C00    _Java_com_pheox_jcapi_CoreKeyStoreJNI_isKeyEntry@12
0000000D    10004E00    _Java_com_pheox_jcapi_CoreKeyStoreJNI_setCertificateEntry@16
0000000E    10005020    _Java_com_pheox_jcapi_CoreKeyStoreJNI_setKeyEntry@44
0000000F    10005CA0    _Java_com_pheox_jcapi_CoreKeyStoreJNI_size@16
00000010    100062A0    _Java_com_pheox_jcapi_CoreSignatureJNI_hashFinal@12
00000011    10005F80    _Java_com_pheox_jcapi_CoreSignatureJNI_hashInit@12
00000012    10006140    _Java_com_pheox_jcapi_CoreSignatureJNI_hashUpdate@16
00000013    10006430    _Java_com_pheox_jcapi_CoreSignatureJNI_sign@28
00000014    10006F60    _Java_com_pheox_jcapi_CoreSignatureJNI_verify@28
00000015    10007CF0    _Java_com_pheox_jcapi_CoreUtilJNI_addPKCS11CSP@16
00000016    10007880    _Java_com_pheox_jcapi_CoreUtilJNI_createCertEntryStore@8
00000017    10007C20    _Java_com_pheox_jcapi_CoreUtilJNI_getAddedPKCS11CSPs@8
00000018    100078E0    _Java_com_pheox_jcapi_CoreUtilJNI_getCSP@12
00000019    10008F10    _Java_com_pheox_jcapi_CoreUtilJNI_getCertStoreFriendlyName@12
0000001A    100089C0    _Java_com_pheox_jcapi_CoreUtilJNI_getCertificateFriendlyName@12
0000001B    10007500    _Java_com_pheox_jcapi_CoreUtilJNI_getJCAPIDLLVersion@8
0000001C    10007520    _Java_com_pheox_jcapi_CoreUtilJNI_getMSCSPs@8
0000001D    10009010    _Java_com_pheox_jcapi_CoreUtilJNI_getMSCertStoreNames@8
0000001E    10007E20    _Java_com_pheox_jcapi_CoreUtilJNI_getPKCS11DLLName@12
0000001F    100083F0    _Java_com_pheox_jcapi_CoreUtilJNI_getPKCS11TokenInfo@12
00000020    10007B50    _Java_com_pheox_jcapi_CoreUtilJNI_getSupportedPKCS11CSPs@8
00000021    100077A0    _Java_com_pheox_jcapi_CoreUtilJNI_init@12
00000022    10007F40    _Java_com_pheox_jcapi_CoreUtilJNI_isPKCS11PrivateKey@12
00000023    10007D90    _Java_com_pheox_jcapi_CoreUtilJNI_removePKCS11CSP@12
00000024    10008F90    _Java_com_pheox_jcapi_CoreUtilJNI_reportMemStatus@8
00000025    10008360    _Java_com_pheox_jcapi_CoreUtilJNI_setCallbackPinCode@12
00000026    100083B0    _Java_com_pheox_jcapi_CoreUtilJNI_setCertOpenStoreFlags@12
00000027    10008C80    _Java_com_pheox_jcapi_CoreUtilJNI_setCertificateFriendlyName@16
页: [1]
查看完整版本: 重新实现JCAPI的JCE Provider