Der Makro CRANDOM umfasst folgende Funktionen:
zusätzliches Startparameter-Material in den Zufallszahlen-Generator für die Token mischen
Zufallsdaten generieren
Alle Funktionen werden asynchron ausgeführt, falls für die Task mit C_Initialize asynchrone Funktionsausführung festgelegt wurde.
Eine detaillierte Beschreibung zu den Funktionen des Makros CRANDOM finden Sie in PKCS#11 V2.20: Cryptographic Token Interface Standard im Abschnitt 11.15 „Random number generation functions“.
Makro | Operanden |
CRANDOM | MF=C / D / L / M / E ,VERSION=001 / 002 ,ACTION=*SEEDRANDOM / *GENERATERANDOM / <var: enum-of _action_set: 1> / default: _action_set.undefined ,SESSION=<var: int:4> / <integer 0..2147483647> / 0 ,DATA=<var: pointer> / NULL ,DATALEN=<var: int:4> / <integer 0..2147483647> / 0 ,BOID=<<var: int:4> / 0 ,RPOSTAD=var: pointer> / NULL ,RPOSTL=<integer 1..2> / <var: int:4> / 0 |
VERSION
gibt an, welche Version des Parameterbereichs generiert werden soll. Es empfiehlt sich, immer die neueste Version zu verwenden.
=001
Es wird das Format generiert, das von CRYPT V1.0 unterstützt wurde. Dieses Format unterstützt nur die bereits in CRYPT V1.0 bekannten Parameter.
VERSION=001 ist Voreinstellung.
=002
Es wird das Format generiert, das ab CRYPT V1.1 unterstützt wird.
ACTION
Art der Aktion.
Die korrespondierende PKCS#11-Funktion ist bei jedem Aktionscode angegeben.
=*SEEDRANDOM
entspricht der PKCS#11-Funktion C_SeedRandom;
mischt zusätzliches Startparameter-Material in den Zufallszahlen-Generator für die Token.
=*GENERATERANDOM
entspricht der PKCS#11-Funktion C_GenerateRandom;
generiert Zufallsdaten.
SESSION
Identifier der Sitzung
DATA
zeigt auf folgende Daten:
bei *SEEDRANDOM: DATA zeigt auf das Startparameter-Material.
bei *GENERATERANDOM: DATA zeigt auf den Speicherbereich, der die Zufallsdaten empfängt.
DATALEN
Länge der Daten in Bytes
BOID
Ereigniskennung
bei synchroner Ausführung: BOID wird nicht genutzt.
bei asynchroner Ausführung: Ereigniskennung, an die das Ende der Funktionsbearbeitung signalisiert wird.
RPOSTAD
Adresse des Postcodes
bei synchroner Ausführung: RPOSTAD wird nicht genutzt.
bei asynchroner Ausführung: spezifiziert ein Feld, das Postcode-Information enthält, die zum korrespondierenden Programm übertragen werden soll, das den SOLSIG-Aufruf absetzt (siehe auch Benutzerhandbuch „Makroaufrufe an den Ablaufteil“ [3]).
Länge des Postcodes: 4 oder 8 bytes
RPOSTL
Länge des Postcodes
bei synchroner Ausführung: RPOSTL wird nicht genutzt.
bei asynchroner Ausführung: gibt die Länge der Postcode-Information in Worten an (1 oder 2).