Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| IAIK PKCS#11 Wrapper version 1.2.18
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package iaik.pkcs.pkcs11.wrapper

This package contains the first (lowest) Java layer of the PKCS#11 wrapper.

See:
Description

Interface Summary
CK_CREATEMUTEX | interface CK_CREATEMUTEX.
CK_DESTROYMUTEX | interface CK_DESTROYMUTEX.
CK_LOCKMUTEX | interface CK_LOCKMUTEX
CK_NOTIFY | interface CK_NOTIFY.
CK_UNLOCKMUTEX | interface CK_UNLOCKMUTEX
PKCS11 | If the underlaying PKCS#11 function retuns CK_OK, the method returns normally.
PKCS11Constants | This interface holds constants of the PKCS#11 v2.11 standard.

Class Summary
CK_AES_CBC_ENCRYPT_DATA_PARAMS | The class CK_AES_CBC_ENCRYPT_DATA_PARAMS provides the parameters to the CKM_AES_CBC_ENCRYPT_DATA mechanism.
CK_ATTRIBUTE | class CK_ATTRIBUTE includes the type, value and length of an attribute.
CK_C_INITIALIZE_ARGS | class CK_C_INITIALIZE_ARGS contains the optional arguments for the C_Initialize function.
CK_DATE | class .
CK_DES_CBC_ENCRYPT_DATA_PARAMS | The class CK_DES_CBC_ENCRYPT_DATA_PARAMS provides the parameters to the CKM_DES_CBC_ENCRYPT_DATA and CKM_DES3_CBC_ENCRYPT_DATA mechanisms.
CK_ECDH1_DERIVE_PARAMS | class CK_ECDH1_DERIVE_PARAMS provides the parameters to the CKM_ECDH1_DERIVE and CKM_ECDH1_COFACTOR_DERIVE mechanisms.
CK_ECDH2_DERIVE_PARAMS | class CK_ECDH2_DERIVE_PARAMS provides the parameters to the CKM_ECMQV_DERIVE mechanism.
CK_ECMQV_DERIVE_PARAMS | class CK_ECMQV_DERIVE_PARAMS provides the parameters to the CKM_ECMQV_DERIVE mechanism.
CK_INFO | class CK_INFO provides general information about Cryptoki.
CK_KEA_DERIVE_PARAMS | class CK_KEA_DERIVE_PARAMS provides the parameters to the CKM_KEA_DERIVE mechanism.
CK_KEY_DERIVATION_STRING_DATA | class CK_KEY_DERIVATION_STRING_DATA holds a byte string and the byte string's length.
CK_KEY_WRAP_SET_OAEP_PARAMS | class CK_KEY_WRAP_SET_OAEP_PARAMS provides the parameters to the CKM_KEY_WRAP_SET_OAEP mechanism.
CK_MECHANISM | class CK_MECHANISM specifies a particular mechanism and any parameters it requires.
CK_MECHANISM_INFO | class CK_MECHANISM_INFO provides information about a particular mechanism.
CK_PBE_PARAMS | class CK_PBE_PARAMS provides all of the necessary information required byte the CKM_PBE mechanisms and the CKM_PBA_SHA1_WITH_SHA1_HMAC mechanism.
CK_PKCS5_PBKD2_PARAMS | class CK_PKCS5_PBKD2_PARAMS provides the parameters to the CKM_PKCS5_PBKD2 mechanism.
CK_RC2_CBC_PARAMS | class CK_RC2_CBC_PARAMS provides the parameters to the CKM_RC2_CBC and CKM_RC2_CBC_PAD mechanisms.
CK_RC2_MAC_GENERAL_PARAMS | class CK_RC2_MAC_GENERAL_PARAMS provides the parameters to the CKM_RC2_MAC_GENERAL mechanism.
CK_RC5_CBC_PARAMS | class CK_RC5_CBC_PARAMS is a structure that provides the parameters to the CKM_RC5_CBC and CKM_RC5_CBC_PAD mechanisms.
CK_RC5_MAC_GENERAL_PARAMS | class CK_RC5_MAC_GENERAL_PARAMS provides the parameters to the CKM_RC5_MAC_GENERAL mechanism.
CK_RC5_PARAMS | class CK_RC5_PARAMS provides the parameters to the CKM_RC5_ECB and CKM_RC5_MAC mechanisms.
CK_RSA_PKCS_OAEP_PARAMS | class CK_RSA_PKCS_OAEP_PARAMS provides the parameters to the CKM_RSA_PKCS_OAEP mechanism.
CK_RSA_PKCS_PSS_PARAMS | class CK_RSA_PKCS_PSS_PARAMS provides the parameters to the CKM_RSA_PKCS_OAEP mechanism.
CK_SESSION_INFO | class CK_SESSION_INFO provides information about a session.
CK_SKIPJACK_PRIVATE_WRAP_PARAMS | class CK_SKIPJACK_PRIVATE_WRAP_PARAMS provides the parameters to the CKM_SKIPJACK_PRIVATE_WRAP mechanism.
CK_SKIPJACK_RELAYX_PARAMS | class CK_SKIPJACK_RELAYX_PARAMS provides the parameters to the CKM_SKIPJACK_RELAYX mechanism.
CK_SLOT_INFO | class CK_SLOT_INFO provides information about a slot.
CK_SSL3_KEY_MAT_OUT | class CK_SSL3_KEY_MAT_OUT contains the resulting key handles and initialization vectors after performing a C_DeriveKey function with the CKM_SSL3_KEY_AND_MAC_DERIVE mechanism.
CK_SSL3_KEY_MAT_PARAMS | class CK_SSL3_KEY_MAT_PARAMS provides the parameters to the CKM_SSL3_KEY_AND_MAC_DERIVE mechanism.
CK_SSL3_MASTER_KEY_DERIVE_PARAMS | class CK_SSL3_MASTER_KEY_DERIVE_PARAMS provides the parameters to the CKM_SSL3_MASTER_KEY_DERIVE mechanism.
CK_SSL3_RANDOM_DATA | class CK_SSL3_RANDOM_DATA provides information about the random data of a client and a server in an SSL context.
CK_TOKEN_INFO | class CK_TOKEN_INFO provides information about a token.
CK_VERSION | class CK_VERSION describes the version of a Cryptoki interface, a Cryptoki library, or an SSL implementation, or the hardware or firmware version of a slot or token.
CK_X9_42_DH1_DERIVE_PARAMS | class CK_X9_42_DH1_DERIVE_PARAMS provides the parameters to the CKM_X9_42_DH_DERIVE mechanism.
CK_X9_42_DH2_DERIVE_PARAMS | class CK_X9_42_DH2_DERIVE_PARAMS provides the parameters to the CKM_X9_42_DH_HYBRID_DERIVE and CKM_X9_42_MQV_DERIVE mechanisms.
CK_X9_42_DHMQV_DERIVE_PARAMS | class CK_X9_42_DH2_DERIVE_PARAMS provides the parameters to the CKM_X9_42_DH_HYBRID_DERIVE and CKM_X9_42_MQV_DERIVE mechanisms.
Constants | This class holds only final static member variables that are constants in this package.
Functions | This class contains onyl static methods.
PKCS11Connector | This class is a sort of factory to get a implementation of the PKCS11 interface.
PKCS11Implementation | This is the default implementation of the PKCS11 interface.

Exception Summary
PKCS11Exception | This is the superclass of all checked exceptions used by this package.
PKCS11RuntimeException | This is the superclass of all runtime exception used by this library.

## Package iaik.pkcs.pkcs11.wrapper Description

This package contains the first (lowest) Java layer of the PKCS#11 wrapper. It is a straight-forward mapping of the PKCS#11 API from the C programming language to the Java programming language. As a result, it is not really object oriented in its style and handling as know from Java. Anyone familiar with PKCS#11 in C, will find this layer easy to use. All methods of the `PKCS11` interface have the same name as the corresponding functions of PKCS#11, and all classes have the same name as the corresponding data structures of PKCS#11. The developer can use this layer directly or may use the next higher level layer that is located in the `iaik.pkcs.pkcs11` package and in the `iaik.pkcs.pkcs11.objects` package. If the application uses this layer directly, it calls `PKCS11Connector.connectToPKCS11Module(String)` (passing the PKCS#11 module as parameter; e.g. "C:\Program Files\Drivers\mypkcs11driver.dll") to get an implementation of the `PKCS11` interface. Through this object, the application accesses all the functionality of the underlaying PKCS#11 module.
The main differeces between this API to the original PKCS#11 API are:
* The functions in this package do not return return-values as know from PKCS#11. If the underlying PKCS#11 module returns a value other than CKR_OK, the wrapper throws an `PKCS11Exception` which holds the return value for information.
* Where PKCS#11 functions use pointers to return various objects, such objects and values are returned directly as the regular return value of the according function.
* In Java, it is not necessary to store the length of an array separatly. Every array in Java 'knows' it own length.
Any PKCS#11 module compliant to PKCS#11 version 2.x should be compatible to this API. We used PKCS#11 version 2.11 as a basis for development.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| IAIK PKCS#11 Wrapper version 1.2.18
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

IAIK JavaSecurity Website http://jce.iaik.tugraz.at/
IAIK at Graz University of Technology, Austria, Europe
Copyright 2001-2004, IAIK, Graz University of Technology, Inffeldgasse 16a, 8010 Graz, Austria. All Rights Reserved. version 1.2.18