blob: d2d53de765cf493419f7b2fb6df5ce17f9949438 [file] [log] [blame]
openCryptoki Test Programs
This directory contains programs designed to test the functionality of
openCryptoki and PKCS#11. The rely on STDLL's installed to the standard system
location. Many of the programs have command line options for passing the slot
number to use (default is slot 0) as well as other options. All programs expect
that the a slot has been intialized using pkcsconf. The expected user pin is
"01234567" and this can also be set using pkcsconf. The expected PINs can also
be changed by modifying DEFAULT_USER_PIN and DEFAULT_SO_PIN in
include/regress.h.
For correct testcase execution, the token should be initialized before and
after running the testcases.
driver
------
The driver programs tests all openCryptoki that do not involve token
manipulation. This includes, but is not limited to, tests such as RSA key
generation, CBC and ECB encryption and decryption, and MD5 digests.
init_tok
--------
This program initializes a token with a name of "L13", and sets the user pin to
"12345678".
mkobj
-----
This program creates a certificate object of class CKO_CERTIFICATE and type
CKC_X_509. It is created as a public object.
rsa_keygen
----------
This test program generates an RSA Keypair.
rsa_test
--------
There are 3 test programs in this sub-directory. The first is rsa_test. This
program encrypts random data using a known RSA key. The key information is
hardcoded in rsa_test.c. The second programs, rsa_test_genkey, encrypts
random data using a generated RSA key. This test key generation as well as
encryption. The third program, rsa_thread_test, tests the ability of
openCryptoki to handle multithreaded application. It sets up a given number of
threads (default is 3), with each performing an RSA encryption operation.
speed
-----
The speed program is a performance oriented test program. It times certain
operations over multiple runs, and gives min, max, and average times for these
operations. Performace tests are run for: 2048 bit RSA keygen, 10½4 bit RSA
keygen, 1024 bit RSA signature generate, 1024 bit RSA signature verify, triple
DES encrypt/decrypt on a 10K message, and SHA1 on a 10K message.
test_crypto
-----------
This program tests DES and triple DES encryption and decryption using both ECB
and CBC modes. It also tests RSA encryption and decryption using generate
keys.
threadmkobj
-----------
This program is similar to mkobj, except that it spawns multiple (default 5)
threads to create objects.
tok_obj
-------
This program is used to test object creation and modification. The token does
not need to be intitialized to use this application. When run, a user is
presented with a menu. From there, the user must initialize the token and set
the user PIN if this has not been done previously. The menu choice for setting
the user PIN sets it to "12345678".
For help, send mail to the openCryptoki mailing list at
opencryptoki-users@lists.sourceforge.net