|
IAIK PKCS#11 Wrapper version 1.2.17 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectiaik.pkcs.pkcs11.objects.Object
iaik.pkcs.pkcs11.objects.Storage
iaik.pkcs.pkcs11.objects.Key
An object of this class represents a key as defined by PKCS#11 2.11. A key is of a specific type: RSA, DSA, DH, ECDSA, EC, X9_42_DH, KEA, GENERIC_SECRET, RC2, RC4, DES, DES2, DES3, CAST, CAST3, CAST5, CAST128, RC5, IDEA, SKIPJACK, BATON, JUNIPER, CDMF, AES or VENDOR_DEFINED. If an application needs to use vendor-defined keys, it must set a VendorDefinedKeyeBuilder using the setVendorDefinedKeyBuilder method.
Nested Class Summary | |
static interface |
Key.KeyType
This interface defines the available key types as defined by PKCS#11 2.11: RSA, DSA, DH, ECDSA, KEA, GENERIC_SECRET, RC2, RC4, DES, DES2, DES3, CAST, CAST3, CAST5, CAST128, RC5, IDEA, SKIPJACK, BATON, JUNIPER, CDMF, AES, EC, X9_42_DH or VENDOR_DEFINED. |
static interface |
Key.VendorDefinedKeyBuilder
If an application uses vendor defined keys, it must implement this interface and install such an object handler using setVendorDefinedKeyBuilder. |
Nested classes inherited from class iaik.pkcs.pkcs11.objects.Object |
Object.ObjectClass, Object.VendorDefinedObjectBuilder |
Field Summary | |
protected MechanismArrayAttribute |
allowedMechanisms_
The list of mechanism that can be used with this key. |
protected BooleanAttribute |
derive_
True, if other keys can be derived from this key. |
protected DateAttribute |
endDate_
The end date of this key's validity. |
protected ByteArrayAttribute |
id_
The identifier (ID) of this key. |
protected MechanismAttribute |
keyGenMechanism_
The mechanism used to generate the key material. |
protected KeyTypeAttribute |
keyType_
The type of this key. |
protected static Hashtable |
keyTypeNames_
A table holding string representations for all known key types. |
protected BooleanAttribute |
local_
True, if this key was created (generated or copied from a different key) on the token. |
protected DateAttribute |
startDate_
The start date of this key's validity. |
protected static Key.VendorDefinedKeyBuilder |
vendorKeyBuilder_
The currently set vendor defined key builder, or null. |
Fields inherited from class iaik.pkcs.pkcs11.objects.Storage |
label_, modifiable_, private_, token_ |
Fields inherited from class iaik.pkcs.pkcs11.objects.Object |
attributeTable_, objectClass_, objectClassNames_, objectHandle_, vendorObjectBuilder_ |
Constructor Summary | |
|
Key()
The default constructor. |
protected |
Key(Session session,
long objectHandle)
Called by sub-classes to create an instance of a PKCS#11 key. |
Method Summary | |
protected void |
allocateAttributes()
Allocates the attribute objects for this class and adds them to the attribute table. |
Object |
clone()
Create a (deep) clone of this object. |
boolean |
equals(Object otherObject)
Compares all member variables of this object with the other object. |
MechanismArrayAttribute |
getAllowedMechanisms()
Get the list of mechanisms that are allowed to use with this key. |
BooleanAttribute |
getDerive()
Check, if other keys can be derived from this key. |
DateAttribute |
getEndDate()
Gets the end date attribute of the validity of this key. |
ByteArrayAttribute |
getId()
Gets the ID attribute of this key. |
MechanismAttribute |
getKeyGenMechanism()
Get the mechanism used to generate the key material for this key. |
LongAttribute |
getKeyType()
Gets the key type attribute of the PKCS#11 key. |
static String |
getKeyTypeName(Long keyType)
Get the given key type as string. |
BooleanAttribute |
getLocal()
Check, if this key is a local key; i.e. was generated on the token or created via copy from a different key on the token. |
DateAttribute |
getStartDate()
Gets the start date attribute of the validity of this key. |
static Key.VendorDefinedKeyBuilder |
getVendorDefinedKeyBuilder()
Get the currently set vendor-defined key builder. |
int |
hashCode()
The overriding of this method should ensure that the objects of this class work correctly in a hashtable. |
protected static void |
putAttributesInTable(Key object)
Put all attributes of the given object into the attributes table of this object. |
void |
readAttributes(Session session)
Read the values of the attributes of this object from the token. |
static void |
setVendorDefinedKeyBuilder(Key.VendorDefinedKeyBuilder builder)
Set a vendor-defined key builder that should be called to create an instance of an vendor-defined PKCS#11 key; i.e. an instance of a vendor defined sub-class of this class. |
String |
toString()
This method returns a string representation of the current object. |
Methods inherited from class iaik.pkcs.pkcs11.objects.Storage |
getLabel, getModifiable, getPrivate, getToken, putAttributesInTable |
Methods inherited from class iaik.pkcs.pkcs11.objects.Object |
getAttributeTable, getAttributeValue, getAttributeValues, getInstance, getObjectClass, getObjectClassName, getObjectHandle, getSetAttributes, getSetAttributes, getUnknownObject, getVendorDefinedObjectBuilder, putAttributesInTable, setObjectHandle, setVendorDefinedObjectBuilder |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
protected static Key.VendorDefinedKeyBuilder vendorKeyBuilder_
protected static Hashtable keyTypeNames_
protected KeyTypeAttribute keyType_
protected ByteArrayAttribute id_
protected DateAttribute startDate_
protected DateAttribute endDate_
protected BooleanAttribute derive_
protected BooleanAttribute local_
protected MechanismAttribute keyGenMechanism_
protected MechanismArrayAttribute allowedMechanisms_
Constructor Detail |
public Key()
protected Key(Session session, long objectHandle) throws TokenException
session
- The session to use for reading attributes.
This session must have the appropriate rights; i.e.
it must be a user-session, if it is a private object.objectHandle
- The object handle as given from the PKCS#111 module.
TokenException
- If getting the attributes failed.Method Detail |
public static void setVendorDefinedKeyBuilder(Key.VendorDefinedKeyBuilder builder)
builder
- The vendor-defined key builder. Null to clear any
previously installed vendor-defined builder.public static Key.VendorDefinedKeyBuilder getVendorDefinedKeyBuilder()
public static String getKeyTypeName(Long keyType)
keyType
- The key type to get as string.
protected static void putAttributesInTable(Key object)
object
- The object to handle.protected void allocateAttributes()
allocateAttributes
in class Storage
public Object clone()
clone
in class Storage
public boolean equals(Object otherObject)
equals
in class Storage
otherObject
- The other object to compare to.
public LongAttribute getKeyType()
public ByteArrayAttribute getId()
public DateAttribute getStartDate()
public DateAttribute getEndDate()
public BooleanAttribute getDerive()
public BooleanAttribute getLocal()
public MechanismAttribute getKeyGenMechanism()
public MechanismArrayAttribute getAllowedMechanisms()
public int hashCode()
hashCode
in class Storage
public void readAttributes(Session session) throws TokenException
readAttributes
in class Storage
session
- The session handle to use for reading attributes.
This session must have the appropriate rights; i.e.
it must be a user-session, if it is a private object.
TokenException
- If getting the attributes failed.public String toString()
toString
in class Storage
|
IAIK PKCS#11 Wrapper version 1.2.17 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |