Browse Prior Art Database

Computational Intensive Method for Generating Cryptographic Key Verification Patterns that Safeguards Key Security

IP.com Disclosure Number: IPCOM000104199D
Original Publication Date: 1993-Mar-01
Included in the Prior Art Database: 2005-Mar-18
Document File: 4 page(s) / 119K

Publishing Venue

IBM

Related People

Le, AV: AUTHOR [+2]

Abstract

Described is a method for generating cryptographic key verification patterns such that the verification pattern is based only on the key and constant data. While this is perhaps the simplest and most straightforward approach for calculating verification patterns, the method has one major disadvantage. Since the verification pattern depends only on the key and constant data, a pre-calculated dictionary of keys and corresponding verification patterns can be used repeatedly to attack intercepted verification patterns. Thus, the work factor to recover 10 keys from 10 verification patterns is just the work factor to initially build the dictionary. Conversely, if the adversary first intercepts several verification patterns and then constructs the dictionary, the work to find one clear key is greatly reduced.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 51% of the total text.

Computational Intensive Method for Generating Cryptographic Key Verification Patterns that Safeguards Key Security

      Described is a method for generating cryptographic key
verification patterns such that the verification pattern is based
only on the key and constant data.  While this is perhaps the
simplest and most straightforward approach for calculating
verification patterns, the method has one major disadvantage.  Since
the verification pattern depends only on the key and constant data, a
pre-calculated dictionary of keys and corresponding verification
patterns can be used repeatedly to attack intercepted verification
patterns.  Thus, the work factor to recover 10 keys from 10
verification patterns is just the work factor to initially build the
dictionary.  Conversely, if the adversary first intercepts several
verification patterns and then constructs the dictionary, the work to
find one clear key is greatly reduced.  To compensate for this, and
still retain the nice feature that the verification pattern is a
function of only the key and constant data, the function for
computing the verification pattern is made computationally intensive
by requiring VP to depend on several encryption steps instead of just
one.  In situations where the number of required encryptions is
modest, the method may represent an attractive alternative to other
methods that introduce additional complexity at the user interface.

      The number of encryption steps in the computation of VP is
adjusted according to the expected number of VP values (associated
with installed keys) that an adversary is likely to intercept.  If n
represents the number of such intercepted VP values, then the
function for computing VP is adjusted so that n encryption steps are
required to calculate VP.  (In situations where n is very large,
other methods for generating cryptographic key verification patterns
must be employed.)

      Fig. 1 illustrates a cryptographic system consisting of a
cryptographic facility 1, a cryptographic instruction execution unit
2 capable of executing a set of cryptographic instructions, a key
storage 3, a cryptographic facility access program 4, and using
application programs 5.  The cryptographic facility 1 also has a
secure front panel interface 6 with a capability for the manual entry
of keys.  A utility program 11 operating at a secure off-line device
10, e.g., an IBM Personal Computer (PC), is used to calculate
verification patterns on clear keys.  The keys themselves, which are
later installed within the cryptographic facility via the key entry
device 8, are either supplied to, or generated by, the utility
program.  Keys are entered into the cryptographic facility 1 via a
hand held key entry device 8 incorporating a LED display and 16
buttons corresponding to 16 hexadecimal digits.  Once entered, a key
is temporarily stored in key register 7 before being validated (i.e.,
via validation of its  associated verificatio...