IBM 2 Computer Hardware User Manual


 
Key_Generate CCA Release 2.54
key_length
The key_length parameter is a pointer to an eight-byte string variable,
left-justified and padded on the right with space characters, containing the
length of the new key or keys. Depending on key type, you can specify a
single-length key or a double-length key. A double-length key consists of two
eight-byte values. The key_length variable must contain one of the following:
SINGLE or KEYLN8
For a single-length key
SINGLE-R For a double-length key with equal-valued halves (“single
replicated”)
DOUBLE or KEYLN16
For a double-length key
8
. The key halves will be different
except when the same 56-bit key would be generated twice in
succession — a minuscule possibility.
8 spaces When you provide a control vector, or when you wish the verb
to select the key length based on the key type, provide eight
space characters to direct the verb to select the key length.
key_type_1 and key_type_2
The key_type_1 and key_type_2 parameters are pointers to eight-byte string
variables, each containing a keyword that specifies the key type for each new
key being generated. To specify the key type via the control vector in the
preexisting key-token, use the TOKEN keyword. Alternatively, you can specify
the key type using keywords shown in Figure 5-11 on page 5-48 and
Figure 5-12 on page 5-49. This is useful when you want to create
default-value key-tokens and control-vectors.
Figure 5-11 on page 5-48 lists the keywords allowed when generating a
single key copy (key_form OP, IM, or EX). Key_type_2 should contain a
string of eight space characters.
Figure 5-12 on page 5-49 lists the key_type keyword combinations allowed
when requesting two copies of a key value.
KEK_key_identifier_1 and KEK_key_identifier_2
The KEK_key_identifier_1 and KEK_key_identifier_2 parameters are pointers to
64-byte string variables containing the key token or key label of a key-token
record for the key used to encipher the IM-form and EX-form keys. If an
OP-form key is requested, the associated KEK identifier must point to a null
key-token.
generated_key_identifier_1 and generated_key_identifier_2
The generated_key_identifier_1 and generated_key_identifier_2 parameters are
pointers to 64-byte string variables containing the key token or key label of a
key-token record of the generated keys. If the parameter identifies an internal
or external key-token, the verb attempts to use the information in the existing
key-token and simply replaces the key value. Using the TOKEN keyword in the
key_type variables requires that key tokens already exist when the verb is
called, so the control vectors in those key tokens can be used. In general,
8
Certain other CCA implementations may support the keyword DOUBLE-O to enable generation of double-length keys with
key-halves guaranteed to be unique. The associated key-form control vector bits (bits 40-42) B'110' are described at “Key-Form
Bits, ‘fff’ and ‘FFF’” on page C-7. This implementation does not support the DOUBLE-O keyword, but this implementation does
support generation of guaranteed unique-key-halves if you supply a key token with a control vector having form-field bits of
B'110'. Support of form-field B'110' is not available in all CCA implementations.
5-46 IBM 4758 CCA Basic Services, Release 2.54, February 2005