Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/security/nss/cmd/pk11util/scripts/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 4 kB image not shown  

Quelle  dosign   Sprache: C

 
Load nsscapi.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 1
#set slotID slotList[0]
C_GetSlotInfo slotID slotInfo
C_GetTokenInfo slotID tokenInfo
C_OpenSession slotID CKF_SERIAL_SESSION session
java.lang.NullPointerException
#uncomment the following line and include the correct password
#C_Login session CKU_USER 0000 4 
java.lang.NullPointerException
build the search template
java.lang.NullPointerException
NewTemplate search CKA_CLASS
SetTemplate search 0 CKO_CERTIFICATE
NewArray certID CK_ULONG 10
C_FindObjectsInit session search 1
C_FindObjects session certID sizeA(certID) count
C_FindObjectsFinal session
java.lang.NullPointerException
now read the cert out
java.lang.NullPointerException
#NewTemplate derCert CKA_VALUE
#NewTemplate certName CKA_LABEL,CKA_VALUE
#C_GetAttributeValue session certID[0] certName sizeA(certName)
#BuildTemplate certName
#C_GetAttributeValue session certID[0] certName sizeA(certName)
#print certName[0]
Set countm1 count
Decrement countm1 1
LoopRun pLabel1 i 0 countm1 1
Set i 1
run pLabel1
NewTemplate id CKA_CLASS,CKA_ID
C_GetAttributeValue session certID[i] id sizeA(id)
BuildTemplate id
C_GetAttributeValue session certID[i] id sizeA(id)
SetTemplate id 0 CKO_PRIVATE_KEY
NewArray keyID CK_ULONG 10
C_FindObjectsInit session id sizeA(id)
C_FindObjects session keyID sizeA(keyID) count
C_FindObjectsFinal session

NewMechanism rsaParams CKM_RSA_PKCS
NewArray sign data 256
NewArray sdata data 36
C_SignInit session rsaParams keyID[0]
print sdata
C_Sign session sdata sizeof(sdata) sign sizeof(sign)
save signature sign
save hash sdata
NewTemplate privValue CKA_MODULUS,CKA_PUBLIC_EXPONENT
C_GetAttributeValue session keyID[0] privValue sizeA(privValue)
BuildTemplate privValue
C_GetAttributeValue session keyID[0] privValue sizeA(privValue)
print privValue[0]
print privValue[1]

save the public key
SetTemplate id 0 CKO_PUBLIC_KEY
NewArray pubkeyID CK_ULONG 10
C_FindObjectsInit session id sizeA(id)
C_FindObjects session pubkeyID sizeA(pubkeyID) count
C_FindObjectsFinal session
NewTemplate pubkeyValue CKA_MODULUS,CKA_PUBLIC_EXPONENT
C_GetAttributeValue session pubkeyID[0] pubkeyValue sizeA(pubkeyValue)
BuildTemplate pubkeyValue
C_GetAttributeValue session pubkeyID[0] pubkeyValue sizeA(pubkeyValue)
print pubkeyValue[0]
print pubkeyValue[1]


C_Finalize null
unload

java.lang.NullPointerException
Now do the same for using softoken
java.lang.NullPointerException
load softokn3.dll
NewInitArg init CKF_OS_LOCKING_OK configdir=./db
C_Initialize init
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[1]
#set slotID slotList[0]
C_GetSlotInfo slotID slotInfo
C_GetTokenInfo slotID tokenInfo
C_OpenSession slotID CKF_SERIAL_SESSION session
NewTemplate search CKA_CLASS
SetTemplate search 0 CKO_CERTIFICATE
NewArray certID CK_ULONG 10
C_FindObjectsInit session search 1
C_FindObjects session certID sizeA(certID) count
C_FindObjectsFinal session
java.lang.NullPointerException
now read the cert out
java.lang.NullPointerException
#NewTemplate derCert CKA_VALUE
#NewTemplate certName CKA_LABEL,CKA_VALUE
#C_GetAttributeValue session certID[0] certName sizeA(certName)
#BuildTemplate certName
#C_GetAttributeValue session certID[0] certName sizeA(certName)
#print certName[0]
#Set countm1 count
#Decrement countm1 1
#LoopRun pLabel1 i 0 countm1 1
Set i 0
run pLabel1
NewTemplate id CKA_CLASS,CKA_ID
C_GetAttributeValue session certID[i] id sizeA(id)
BuildTemplate id
C_GetAttributeValue session certID[i] id sizeA(id)
SetTemplate id 0 CKO_PRIVATE_KEY
NewArray keyID CK_ULONG 10
C_FindObjectsInit session id sizeA(id)
C_FindObjects session keyID sizeA(keyID) count
C_FindObjectsFinal session

NewMechanism rsaParams CKM_RSA_PKCS
NewArray sign data 256
NewArray sdata data 36
C_SignInit session rsaParams keyID[0]
C_Sign session sdata sizeof(sdata) sign sizeof(sign)
save signature2 sign
save hash2 sdata

SetTemplate id 0 CKO_PUBLIC_KEY
NewArray pubkeyID CK_ULONG 10
C_FindObjectsInit session id sizeA(id)
C_FindObjects session pubkeyID sizeA(pubkeyID) count
C_FindObjectsFinal session

java.lang.NullPointerException
OK now we use raw unwrap and see what we have...
java.lang.NullPointerException
NewMechanism rawRsaParams CKM_RSA_X_509
NewArray vdata data 256
C_VerifyRecoverInit session rawRsaParams pubkeyID[0]
C_VerifyRecover session sign sizeof(sign) vdata sizeof(vdata)
save verify2 vdata
restore signature sign
C_VerifyRecoverInit session rawRsaParams pubkeyID[0]
C_VerifyRecover session sign sizeof(sign) vdata sizeof(vdata)
save verify vdata

NewTemplate pubkeyValue CKA_MODULUS,CKA_PUBLIC_EXPONENT
C_GetAttributeValue session pubkeyID[0] pubkeyValue sizeA(pubkeyValue)
BuildTemplate pubkeyValue
C_GetAttributeValue session pubkeyID[0] pubkeyValue sizeA(pubkeyValue)
print pubkeyValue[0]
print pubkeyValue[1]


C_Finalize null

unload

Messung V0.5
C=100 H=79 G=90

¤ Dauer der Verarbeitung: 0.2 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.