A key such as a private key or key password of a private key is encrypted
for storage, and may be decrypted if the private key becomes lost or
unavailable. The key is encrypted by encoding, for example, by hashing,
private information such as mother's maiden name and social security
number, and the result is used as a key to encrypt the private key using
DES or another symmetric encryption technique. The encrypted key is again
encrypted, for example using asymmetric encryption, using the public key
of a trusted party such as the certificate authority that generated the
private key. The result may be stored as a key recovery file by the
principal of the private key or another party. To decrypt the key recovery
file, the private key corresponding to the public key used to encrypt the
key recovery file is used to decrypt the key recovery file, for example by
asymmetric decryption. The result is symmetrically decrypted using a key
obtained by encoding, for example, by hashing, the private information in
the same manner as was used to encrypt the key. The result of this
decryption is the key.