Load aolkeypk11.dll
C_Initialize NULL
C_GetSlotList false NULL slotCount
NewArray slotList CK_ULONG slotCount
C_GetSlotList false slotList slotCount
#change the following to the appropriate slot id
#set slotID slotList[0]
set slotID 1
C_GetSlotInfo slotID slotInfo
C_GetTokenInfo slotID tokenInfo
C_OpenSession slotID CK_SESSION_SERIAL session
#
#uncomment the following line and include the correct password
#for authenticated tokens
#C_Login session CKU_USER 0000 4
#
# build the search template
#
#NewTemplate search CKA_CLASS
#SetTemplate search 0 CKO_CERTIFICATE
#NewArray certID CK_ULONG 1
#C_FindObjectsInit session search 1
#C_FindObjects session certID 1 count
#C_FindObjectsFinal session
#
# now read the cert out
#
#NewTemplate derCert CKA_VALUE
#C_GetAttributeValue session certID derCert 1
#BuildTemplate derCert
#C_GetAttributeValue session certID derCert 1
#
# Do a signature
#
NewTemplate search CKA_CLASS
SetTemplate search 0 CKO_PRIVATE_KEY
NewArray privateKey CK_ULONG 1
C_FindObjectsInit session search 1
C_FindObjects session privateKey 1 count
C_FindObjectsFinal session
# sign
NewMechanism rsaParams CKM_RSA_PKCS
NewArray sign data 128
NewArray sdata data 20
C_SignInit session rsaParams privateKey
C_Sign session sdata sizeof(sdata) sign sizeof(sign)
#C_Logout session

