[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
a bit more information on key escrow
I and a few others sent a short list of questions to Dorothy Denning
and Steve Kent, with a request that they forward them to the other review
panel members. Here are Denning's answers. I do not know if they
represent the view of the other committee members, or if more details
will be forthcoming. In particular, I do not know if anyone on the
committee will ask NSA to declassify any information relative to these
questions. I did ask that if the answer to anything was ``it's
classified'', that a persuasive rationale for the classification
status be given.
Reposted with permission....
--Steve Bellovin
------- Forwarded Message
Date: Fri, 17 Jun 94 16:01:43 EDT
From: [email protected] (Dorothy Denning)
Steve,
Here are answers to the questions you asked. The answers generally
apply to the current system. In some cases, I noted changes that will
be made in the target system that is under development.
Regards,
Dorothy
Questions on Key Escrow
1. How are the halves of the unit key generated? What is
the function?
The Device Unique Key (KU) is a function of two Random Seed
values that are brought to the chip programming facility
by Escrow Officers from each of the Escrow Agents,
arbitrary input from the keyboard provided by the Escrow
Officers, and the Device Unique Identifier (UID). The exact
function is classified in order to avoid revealing
cryptographic principles about generating good keys.
2. How are the seeds generated for the unit key generation
process? These are extremely sensitive values, since
their compromise could give away an entire production run.
Each Escrow Agent generates a separate Random Seed using a PC
and NIST-developed smart card. The smart card implements a
pseudorandom number generator (PRNG) approved for cryptographic
key generation in FIPS 171. Input from the keyboard as well as
keystroke timing are used as input to the Secure Hash
Algorithm. After hashing, the result is fed to the PRNG.
Compromise of the Random Seed values could not give away an
entire production run since the Unique Keys are also a function
of arbitrary input from the keyboard. In addition, the
algorithm for generating the KU values, being classified, is
not generally available.
3. How is the serial number generated? Randomly? With only
32 bits, the probability of a collision is moderately high.
The serial numbers are generated in sequence.
4. How are the seeds destroyed after generation?
The Escrow Officers bring the seeds on floppy disks. These
disks are to be destroyed or stored in the double-locked safe
inside the programming facility (SCIF) until they can be
destroyed.
The seeds and all other key data is erased from the memory and
hard disk of the computer used for key generation at the end of
a programming session. The disk is then stored in the safe.
5. How is the session key encrypted within the LEAF?
The details of the LEAF creation method, including the exact
modes of encryption used, are classified in order to make it
more difficult to build an interoperable rogue product that
produced fake LEAFs in the event the Family Key should be
compromised, and also to avoid revealing cryptographic
principles.
6. How is the entire LEAF encrypted? The LEAF/IV package use
in Tessera? In particular, is the family key used for
session-level cryptographic protection of the IV?
The IV is passed in the clear. See 5 about how the LEAF is
encrypted.
7. How is the checksum in the LEAF calculated?
See 5.
9. What is the nature of the key exchange and key negotiation
protocol?
The key exchange protocol on the Capstone chip is classified to
avoid revealing cryptographic principles of key generation and
exchange. However, it is not a requirement to use this
algorithm. Other techniques can be used instead. The Escrowed
Encryption Standard (EES) does not specify a key exchange
method and the Clipper chip does not implement one.
10. How does the Tessera card generate its random keys and IVs?
A true random number generator? A pseudo-random number generator?
How is it seeded? From a true random source? Why not use that
all the time?
There is a true random number generator on the Capstone chip.
This can be used to generate all random values including the
IV. The target programming device may use this random number
generator in the generation of Device Unique Keys, but it would
not replace the entire algorithm.
11. How are escrowed keys protected during transport and storage?
What about backup?
Escrowed Key Components are stored in encrypted form on floppy
disks inside double locked safes. It takes 2 Escrow Officers at
each Escrow Agent site to open a safe, and it takes an Escrow
Officer from each Escrow Agent to form the Key Enciphering Key
(KCK) needed to decrypt the Encrypted Key Components. KCK is a
function of two Key Numbers, KN1 and KN2, each of which is held
by one of the Escrow Agents in its safe.
For backup, there are two copies of key escrow data in each
safe. In addition, each Escrow Agent has a backup safe, which
contains an additional two copies.
Encrypted Key Components are transported on floppy disks inside
tamper-detecting packages. A number is written on each
package. Upon arrival, the packages are checked for tampering and
the numbers are checked. In the target system, key escrow data
will be transmitted electronically using cryptography for
protection.
12. What mechanisms will protect the key halves during transmission
to authorized wiretap agents?
The same methods as for 11.
13. How will an audit trail be maintained of unit key requests
and usage?
Audit records are written for the following events: generation
of keying material, storage of and access to keying material,
request for Key Components, confirmation of a key release
certification, and notification that a Unique Key was deleted
in the Decrypt Processor. These records are kept in the double
locked safes under two person control.
14. How will wiretap keys expire?
When the Escrow Officers load the Key Components into the
Decrypt Processor, they also type in the expiration date. The
date is stored with the Unique Key, but the person operating
the Decrypt Processor must issue a command to delete the key.
When that happens, the Escrow Agents are to be notified of the
key deletion. In the target system, the key will be deleted
automatically when the court order expires, and the
notification will be sent automatically from the Decrypt
Processor.
------- End of Forwarded Message