GB2308282A - Secret crytptographic key is split to reduce work factor - Google Patents
Secret crytptographic key is split to reduce work factor Download PDFInfo
- Publication number
- GB2308282A GB2308282A GB9625925A GB9625925A GB2308282A GB 2308282 A GB2308282 A GB 2308282A GB 9625925 A GB9625925 A GB 9625925A GB 9625925 A GB9625925 A GB 9625925A GB 2308282 A GB2308282 A GB 2308282A
- Authority
- GB
- United Kingdom
- Prior art keywords
- key
- encrypted
- partial
- message
- secret encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04K—SECRET COMMUNICATION; JAMMING OF COMMUNICATION
- H04K1/00—Secret communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/605—Copy protection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
1 1 2308282 DEFFERENTL41 WORK FACTOR CRYPTOGRAPHY METHOD AND SYSTEM
COPMUGHT NOTICE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent disclosure, as it appears in the Patent and Trademark Office public patent files or records, but otherwise reserves all copyright rights whatsoever. BACKUQUND OF THE NVEN
This invention relates generally to the field of cryptology and, more particularly, to cryptographic methods and systems which provide for secure communications against attackers but which satisfy restrictions imposed by governmental authorities against the use, export, or import of strong cryptographic systems.
Two general types of cryptography are secret key cryptography and public key cryptography. With secret key, or symmetric, cryptography, a message (also called "plaintext") to be transmitted from a sender to an intended recipient is encrypted using a secret value or key, and the intended recipient decrypts the encrypted message (also caUed "ciphertexie' or "cryptogram') using the same secret key. Only the secret key may be used to encrypt and decrypt the message, and attempts made to decrypt the message with other keys will fail. This system must provide for some secure way for the sender to communicate the secret key to the intended recipient, such as by secure courier. A 1 11 widely used secret key system is the Data Encryption Standard, or DES, which employs a 56 bit key and 8 non-key parity bits. DES was published as a U.S. Federal, Information Processing Standard in 1977.
With public key, or asymmetric, cryptography, a different key is used to encrypt than is used to decrypt, and one key can not be derived from the other. Each entity participating in a public key system has two keys; the key used to encrypt is made public and the key used to decrypt is kept secret. As a result, a sender can transmit a message to an intended recipient by encrypting it with the recipient's public key, and the recipient and only the recipient can decrypt the message using his secret or private key. A central 10 agency is often employed to make the public keys available and to issue certificates cg the authenticity of keys. One example of a commercially available public key system is the RSA algorithm, described in U.S. Patent No. 4,405,929 and implemented in software available from RSA Data Security, Inc. of Redwood City California.
A public key system is frequently used to encrypt and transmit secret keys for use with a secret key system. A public key system is also used to provide for digital signatures, in which.the sender encrypts a signature message using his private key. Because the signature message can only be decrypted with the sender's public key, the recipient can use the sender's public key to confirm that the signature message originated with the sender.
The degree of security provided by, or strength of, an encryption system is often measured in terms of the number of bits in the key. For example, in a secret key encryption systc=4 a key which is three bytes long (i.e., 24 bits) can be relatively easily broken by trying each of the 2 24 possible keys until the message is decrypted, i.e., until the encryption is broken. This type of attack, wherein keys are guessed and tried until sensible plaintext is obtaing is sometimes referred to as a "brute-force attack" or at exhaustive cryptanalysis." In some public key systems, including RSA, the same value encrypted twice produces the same result. In those systems, an attacker who knows the public key used to encrypt the message can attempt to break the encrypted message by systematically trying various messages, encrypting each one with the public key, and comparing the resulting encrypted data with the encrypted message until a match is found. The strength of public key systems also depends on key size, although the strength of key sizes for different algorithms are not necessarily comparable. With RSA, key sizes on the order of 500-1000 bits are necessary to provide a reasonable level of security against attack..
The average amount of effort or work required to break an encryption system, i.e., to decrypt a message without having the entire encryption key or to find a secret key given all or part of a ciphertext, is sometimes referred to as the work factor or work characteristic of the cryptographic system. This is measured in some convenient units such as hours of computing time on one or more given computer systems or a cost in 3 dollars of breaking the encryption. If the work factor is sufficiently high, the encryption system is considered to be practically or economically unbreakable, and is sometimes referred to as "econornically infeasible" to break. Communication systems using encryption schemes which are economically infeasible to break are generally considered secure.
Of course. the work factor required to break a given cryptographic system can vary over time due to advancements in technology, such as improvements in the speed and capacity of computers. For example, while a 40 bit secret key encryption scheme can currently be broken by a fast personal computer in less than a year or by a room fan of personal computers in a short amount of time, future advances in computer technology will likely substantially reduce this work factor.
Further background information regarding the issues described above and the state of the art in cryptology can be obtained from many sources, including U.S. Pat. Nos. 4,908,861, 5,261,002, and 5,323,464, and Simmons, Gustavas L, Contemporary Cryptology: The Science ofInformation Integrity (MEE Press 1992), all of which are hereby incorporated herein by reference.
Some governments impose restrictions on the use, export, or import of cryptographic hardware and software having high work factors. For example, citing national security interests, among other reasons, the U.S. prohibits the export of certain types of cryptographic hardware, software, or technical data. The export of these items 4 1 are controlled by the U.S. Department of State under the Arms Export Control Act (22 U.S.C. 2751-2794) and International Traffic in Arms Regulations (22 C.F.R. 120130). The State Department can cede jurisdiction over a given cryptographic algorithm or product to the U.S. Department of Commerce, which then controls export of the product under the Export Administration Act (50 U.S.C. 2401-2420) and the Export Administration Regulations.
The export from the U. S. of certain cryptographic algorithms or products having a limited key size has been permitted. For example. the algorithms RC2 and RC4, developed by RSA Data Security, Inc., may currently be exported if limited to a 40 bit key length. As a result, many U.S. companies market two versions of their products -one version with strong cryptography which may be sold in the U. S, and another version, sometimes called the "export", "short key", or "cryptolighe' version, to be sold overseas. However, cryptolight systems do not generally provide adequate security against attackers, and the systems are therefore less marketable. The inability of U.S. companies to sell software products with strong cryptography in foreign markets substantially inhibits their ability to compete with foreign companies that do not face the same restrictions on export.
Further background information regarding us. export controls and their effect on the software market is available in chapter 4 of U.S. Congress, Office of Technology
Assessment, Information Security and Privacy in Network Environments, OTATCT-606 cl (Washington, D.C., U.S. Government Printing Office, September, 1994), which is hereby incorporated herein by reference.
In 1994, the Department of Commerce approved the Escrowed Encryption Standard, or EES, as a Federal Information Processing Standard. The EES may be used to encrypt voice, facsimile, and computer data communicated in a telephone system. The F-ES specifies a symmetric encryption algorithm, called SKIPJACK, which is implemented on a chip, known generally as the "Clipper chip." Each EES chip has a chip-specific key that is split into two parts after being programmed into the chip. Each part of the key is held by one of two designated government escrow agents, and law enforcement agents may obtain the two parts from these escrow agents when surveillance has been authorizedL such as via a search warrant. The two parts can then be recombined to form the entire key, which can be used by the government to decrypt a message encrypted with EES without the need for further work.
It was the stated goal of the EES to make it possible to gmt easier export approval for strong encryption. However, third-party key escrow systems such as the EES are generally considered undesirable because, among other reasons, of the risk of mistaken disclosure of the key, accidental or otherwise, by the escrow agent or its employees, and of the need to establish international bilateral law enforcem ent arrangements to address the needs of foreign governments.
6 C Thus, there remains a need for a cryptographic system which provides the advantages of both short key systems, by adequately addressing the government's security interests, and fully escrowed systems, by providing for secure communications against attackers. The present invention substantially solves these problems and provides the heretofore missing cryptographic system. SURY OF THE INVENTION It is an object of the present invention to solve the problems described above associated with existing encryption systems.
It is another object of the present invention to provide an encryption system which reduces but does not eliminate the work factor required by one or more authorized entities, such as govenunental bodies, to break an encrypted message.
It is another object of the present invention to provide an encrypdon system which may be legally exported from the U.S. but which provides for secure communication.
It is another object of the present invention to enable U.S. soe developers to compete effectively with foreign software developers in the sale of cryptographic software in foreign markets.
It is another object of the present invention to provide for a cryptographic system having a differential work factor without the need for one or more authorities to establish and maintain a large database of keys.
7 It is another object of the present invention to provide an enforcement method and system for use in a cryptographic system in which all or part of a secret encryption key is encrypted under an authority's public key and transmitted with an encrypted message.
Some or all of the above and other objects of the present invention are achieved by a method for reducing but not eliminating the work- factor required by an authorized entity to break an encrypted message, which encrypted message requires a secret encryption key to decrypt the message, and which secret encryption key is provided to or known by an intended recipient of the message other than the authorized entity. Ike method comprises splitting the secret encryption key into at least two partial keys such that knowledge of a first of the partial keys reduces but does not eliminate the work factor required to break the encrypted mes and providing the authorized entity with information that enables the authorized entity to deMrmine the first partial key and to use the first partial key to break. the encrypted message.
In preferred embodiments, the secret key is a random or pseudo-random number (the word "random' being used heminafter as including either nuly random or pseudo-random numbers) generated by an unpredictable random number generator and used to encrypt the message. Ile secret key is encrypted using a public key of the intended recipient and is provided to the intended recipient together with the encrypted message. The intended recipient can then decrypt the secret key using its secret or private key.
7he authorized entity can be given the first partial k-ey by sending it directly to the authorized entity. Alternatively, the first partial key is encrypted using a public key of the 8 cl, 1 authorized entity and attached to the encrypted message, making available to the authorized entity the encrypted first partial key upon obtaining the message, such as by intercepting the message during transn-dssion. The first partial key can be encrypted along with additional information, such as a hash (described further below) of the secret encryption kcy a cryptographic combination, such as a hash, of the secret key concatenated with a salt (described flirther below), all or pan of the salt and control information. If a salt is used, the salt is also encrypted with the secret key encrypted using the intended recipient's public key.
Ile use of a hash or other cryptographic combination in the encrypted partial key field provides a method for enforcing the partial key system, because the hash can be calculated by the recipient from the secret key and salt, encrypted with the authorized entity's public key, and compared with the encrypted hash and partial key attached to the encrypted message. The use of the salt helps to control the work factor required by the authorized entity in breaking the message using the hash. An alternative method for enforcing the partial key system is cryptographically combining, such as with a hash function, the entire secret key with the fint partial key encrypted with the authorized entity's public key and providing this cryptographic combination with tlic encrypted message, such as in a header field of the message. Ile recipient's system can then reproduce the hash using the secret and encrypted partial keys and compare this hashed value with the hashed value received with the encrypted message. If the values do not match, the recipient's system can refuse to decrypt the message.
9 C1 1 is The aud may be a private =tee holding a partial key in the event thc full secret key is lost and must be retrieved, or may be a private or governmental entity holding the partial key to satisfy govenunental restriction on use, impom or export of encryption hardware or software using encryption keys greater thm a given size. In the latter case, the s=et key is split by making the size of the partial key remaining after splitting og the first p key from d= secret encryption key equal to or less than the restricted encryption key . By =ating multiple partial key fields the system can provide for multiple diHe work factors for multiple governments. Of course, a specific license to use, export; or import any tion system should be obtained from each government, and no representation is made h=in with respect to any specific government regarding the right to use, expo^ or import products employing the encryption method and system of the present invention.
The objects of the present invention are also achieved by a differential work factor system for reducing but not eliminating the work factor required by an authorized entity to break an encr message, which message is encrypted such that a secret encryption key is required to decrypt the message, and in which a governmental authority imposes one or more restrictions on the use, impoM or export of encryption hardware or software using encryption keys than a given size.
Ille system comprises mew for splitting the secret encryption key into at least two Partial keys such that knowledge of a first of the partial keys reduces but does not eliminate the work, factor required to break the encrypted message and such that die size of at 1 one partial key remaining after splitting ofrthe first partial key from the secret encryption key is no greater flan the given size of the encryption key subject to the one or more restrictions of the governmental authority. The system fluther comprises means for encrypting at least the first partial key using a public key of the authorized entity, and means for providing the encrypted at least first partial key with the encrypted message to enable the authorized entity, in the event the authorized entity obtains the encrypted message and wishes to break it, to decrypt the encrypted at least first partial key using the authorized entity's private key and to break the message using the first partial key.
In preferred embodiments, the system further comprises means for preventing the intended recipient of the encrypted message from decrypting the encrypted message if the encrypted at least first partial key is not provided with the encrypted message or is otherwise determined to have been tampered with. The means preferably comprises the use of the hash of the secret key, possibly with a salt encrypted under the authorized entity's public key.
The methods and systems of the present invention may be incorporated in soft is stored on a computer usable medium such as a hard or floppy disk, CD- ROM, or other electrical, magnetic, or optical memory device. The methods or systems may also be incorporated in hardware elements such as specially designed integrated circuits, as is Imown in the art.
In accordance Ydth further aspects of the present invention, a data structure is provided 20 for an encrypted message stored in a memory device or transmitted from one computer 11 1 1 1 r to another, the data structure providing a reduced work factor for an authorized entity to break the encrypted message. Ile data structure conqxises a first encrypted data entity comprising at least the message encrypted with a secret encryption key and a second is encrypted data entity attached to the first encrypted data entity, the second encrypted data entity comprising a partial key of the secret encryption key encrypted using a public keyof the authonzed entity such that knowledge of the partial key reduces but does not eliminate the work factor required to break the encrypted message. llic data structure may also include a third encrypted data entity attached to the encrypted message comprising at least the secret encryption key ted with a public key of an intended recipient of the message.
In preferred embodiments, the second encrypted data entity comprises the partial key in combination with a random (i.e., random or pseudo-random) number, a hash of at least part of the secret enantion key. andlor a hash of the secret encryption key and a salt and all or part of the salt. If a salt is used, the third encrypted data entity may comprise the secret encryption key in combination with the salt.
In accordance with finther aspects of the present invention, a method is provided for enforcing a difierential work factor cryptograpluc system. In the ddfc work factor cryptographic system a message transmitted to an intended recipient other than an authority is encrypted using a secret encryption key, and is transmitted with a partial key of the secret encryption key encrypted using a public key of the authority. The method comprises determining, upon receipt by the intended recipient of the encrypted message, whed= the 12 4 encrypted partial key is provided with the encrypted message and is valid and refusing to decrypt the encrypted message if the encrypted partial key is not provided with the encrypted message or is not valid. The determination as to the validity of the partial k-ey field may be made by including a hash of the secret key in the partial key field, which hash can be generated again by the recipient, encrypted again with the authority's public ke3 and compared to the encrypted, hash and partial key t- dnsmitted with the encrypted message.
Alternatively, the determination as to the validity of the partial key field may be made by including a cryptographic combination, such as a hask of the secret key combined with the partial key field in the header of the enmntcd message, where the recipient recomputes the 10 hash and compares it to the value received in the header.
The enforcement methods described above may also be used in a cryptographic system in which the entire secret encryption key is provided to an authority by encrypting it with the &uthOritY's public key and transmitting it with the message. The step of determining whether the encrypted key field is present and valid is the same as the step described above except that the entire key is used rather than a partial key. BRIEF DESCRIPTION OF THE DRAWINGS
The invention is illustrated in the figures of the accompanying drawings which, are meant to be exemplary and not limiting, in which like references refer to like or corresponding parts, and in which:
13 1 Figs. 1 - 1A contain a flow chart showing the process of sending and receiving encrypted messages in accordance with one embodiment of the present mivention, and h Figs. 2-6 are block diagrams of data fields encrypted and transmitted in accordance with preferred embodiments of the present invention. DE-TAZED DESMPTION OF THE MFERRED EMBODIMIENTS
The preferred embodiments of the present invention will be described herein with reference to the flow chart in Figs. 1 - 1A and the block diagrams in Figs. 2-6.
In accordance with the invention, a message to be transmitted is encrypted such that a large secret key is required to decrypt the message. The secret key may be the Same key used to encrypt the message or may be the private key of an intended recipient of the message. In the preferred embodiments, with reference to Figs. PIA, the secret key is a random (i. c., random or pseudo-random) number which is generated for each message, step 10, and is used to encrypt the message, step 12. The random key generator preferably generates numbers in an unpredictable manner so that an attack- er who breaks one message encrypted with a generated secret key can not guess a subsequent key using the algorithm for the random number generator. The manner of generating an unpredictable series of random numbers is well known in the art and is incorporated in existing encryption systems, such as systems using the RC4 algorithm available from RSA Data Security, Inc., used in the preferred embodiments of the invention.
14 A sufficiently large secret key is utilized so that the work factor required to break the encrypted message is high and the encrypted message can be considered economically unbreakable. In the preferred embodiments, a secret key size of 64 bits is used. As explained above. the size of the secret key needed to make the communications secure varies depending on the cryptographic algorithm used and the nature of the technology able to break it. Thus, greater key sizes will likely be required in the future to ensure secure communications, and one skilled in the art will recognize the size of the secret key required to ensure secure communications.
To help enforce the differential work factor system in the preferred embodinients, as explained further below, a one-way hash of the secret key is generated, step 14. A one-way hash is a well-known cryptographic function which operates on an input value to produce an output value, called the hash or message digest and for which it is computationally infeasible to determine the input value from the hash or to find two input values that hash to the sarne value. Hash fimctions of various strength are well- known, including the hash functions MD2, MD4, and MD5, available from RSA Data Security, Inc. One skilled in the art will recognize that various hash functions may be used in the present invention.
In further preferred embodiments, the hash function is generated using both the secret key and an additional bit string as input values. The bit strin& referred to as a 2 0 "salt", is a number, preferably randomly generated, which is concatenated with the secret is key in order to thwart an attacker who uses a pre-calculated look-up table of possible hash values of keys to determine the secret key. The longer the salt, the stronger the encryption; in the preferred embodiments, the salt is 64 bits in length.
The secret key and salt are encrypted using the public key of the intended recipient, step 16. As explained flirther below, this encrypted value is decrypted by the recipient, who can then use the secret key to decrypt the encrypted message.
To enable an authorized entity such as a governmental or private trustee authority to break the message when necessary and appropriate (such as when a valid search warrant has been obtained), the secret key is split into at least two partial keys, step 18, and the authority is given a partial key which is just large enough to reduce the work factor sufficiently to make the key economically breakable and to satisfy governmental restrictions against the use, export, or import of encryption technology. In the preferred embodiment, the authority in the U.S. government is given 24 bits of the 64 bits, because the remaining 40 bit partial key is economically breakable and because 40 bit keys are is under certain circum tances permitted to be exported from the U.S. If the DES encryption algorithm is used, the partial key given to the authority consists of 16 of the key bits and the 8 non-key bits, so that the pat tial key kept secret from the authority consists of 40 key bits of the secret key.
16 1 1 a The secret key may be split in any convenient manner, such as by splitting off the first or last 24 bits of the 64 bit key. Preferably, the manner in which the key is split is known to both the intended recipient of the message and the authority.
The partial key may be given to the authority in several ways. In one embodiment, the partial key is sent directly to the authority via secure means, such as by encrypting it with a public key of the authority and transmitting it. The authority would then maintain a database of all encrypted partial keys so that each may be accessed when needed to break a message.
In the preferred embodiments, the partial kcy haúh, and all or part of the salt are encrypted using a public key of the authority, step 20, and this encrypted value is transmitted to the intended recipient along with the encrypted message and the encrypted secret key. step 22. When the authority obtains the message, such as by receiving it from the sender or recipient, copying it from the computer system memory of the sender or recipien or intercepting it during transmission, it can decrypt the portion of the message encrypted with the authority's public key and thus obtain the partial key, the hash, and all or part of the salt. Using the partial key, the authority can then break the encrypted message using conventional cryptanalytic techniques, such as exhaustive cryptanalysis, or can use exhaustive cryptanalysis to find the secret key, i.e., systematically trying various keys, concatenating each with the salt, when used, hashing each value, and comparing the 17 1 hashed values with the hash included with the encrypted partial key until a match is obtained.
Because providing the partial key reduces but does not eliminate the work factor required to break the encrypted message. the authority such as a governmental agency is required to expend a not insignificant amount of effort to break each encrypted message which it receives and desires to break. As a result the authority must be selective in deciding which messages to break, and cannot simply break every encrypted message without the expenditure of massive resources. Individuals are therefore provided a certain level of privacy against governmental intrusion beyond that provided by operation of law.
When the transmitted message is received by the intended recipient the recipient decrypts the encrypted secret key using its private key, step 24. The recipient then has the secret key with which to decrypt the encrypted message. In the preferred embodiments, the salt is included in the portion encrypted with the recipient's public key, so that the recipient obtains the salt as well.
The hash flinction and, if used. the salt are used to enforce the partial key system as follows. After receiving the encrypted message and attached encrypted key fields, the recipient's system concatenates the salt withthe secret key and hashes the resulting string, step 26, in the same manner performed by, and using the same hash function used by, the sender. The recipient's systern also splits the secret key into at least two partial is keys, step 28, in the same manner in which the key was split by the sender. The recipient's system then uses the authority's public key to encrypt the partial key, hash, and all or part of the salt, step 30, and compares this encrypted value with the encrypted partial key received by the recipient, step 32. If the encrypted values do not match, the recipient's system refuses to decrypt the encrypted message with the secret key, step 34. If the encrypted values match, the encrypted message is decrypted using the secret key, step 36.
In this way. the partial key system can be enforced against various abuses, including the sender's deletion of the encrypted partial key field from the message, the sender's improper encryption of the partial key field, such as by using an incorrect public key, so as to prevent the authority from decrypting the field, or the intentional or accidental scrambling of the partial key field during transmission or upon receipt by the recipient.
Figs. 2-6 show various embodiments of data structures with encrypted key fields in accordance with the present invention. Fig. 2 shows a basic embodiment in which the 64 bit secret key is encrypted along with a random number or pad using the public key of the intended recipient. The random pad is combined with the secret key because certain public key systems, such as RSA, require a fixed size block of plaintext to be encrypted depending upon the size of the modulus of the public key of the intended recipient, and the random key pro-wides the additional plaintext to be encrypted. The 24 bit partial key 19 .f 1 encrypted using the public key of the authority is also concatenated with a random pad for the same reasons, and the random pad should preferably not be calculated using a predictable random number generator which could allow an attacker who determined one of the random pads to determine or accurately guess the other.
Although the embodiment shown in Fig. 2 does not use a hash function or Wt as described above, some measure of enforcement of the partial key system may be obtained by using the encryption system of the present invention in a software system having undocumented, proprietary file formats so that the partial key field can not be removed or scrambled. Also, protection against cryptanalytic attacks which can be successful in breaking the encrypted partial key field may be obtained by including random numbers with the partial key to be encrypted so that the attacker would have to guess the random nuthber as well as the pardal key in order to break the encrypted message. The recipient ignores these random numbers.
In a typical scenazio, at least three governments may want access to a partial key using the present invention -- the sender's government, the recipient's government, and the government from which the system using the present invention is exported. The identity of the recipient's authority can be communicated to the sender by including it in the recipient's public key identity certificate. Fig. 3 shows an alternative embodiment suitable for use with two authorities, and one skilled in the art will clearly recognize how to expand the system to any number of authorities. As before, the 64 bit secret key and 1 random pad are encrypted using the intended recipient's public key and the 24 bit partial key and random pad are encrypted using the public key of one authority. If a second authority is to be given the same 24 bit partial key, the partial key and the same or another random pad are encrypted with the public key of that second authority, and that 5 encrypted data entity is also transmitted with the message.
Alternatively, the second authority could impose stricter requirements on permissible key bit sizes, and would then require a larger partial key, for instance, a 28 bit partial key. In that case, as shown in Fig. 3, the secret key is split into two other partial keys of 28 bits and 36 bits, and the second authority is given the 28 bit partial key by encrypting it under the second authority's public key. The partial keys given to the first and second authorities should not be complementary parts of the secret key, so that the governments can not cooperate by combining their partial keys to obtain the entire key. Preferably, the larger partial key contains the entire smaller partial key. As shown in Fig. 3, both encrypted partial keys are attached to and transmitted with the encrypted message. The recipient's system can enforce each partial key system by checking for the presence and validity of each encrypted partial key field, as described above.
As a further alternative, one or more authorities can be given the entire secret key while other authorities are given only partial keys, or all authorities can be given the entire secret key encrypted under different public keys. The amount and type of is 21 additional information provided with the encrypted full or partial secret keys can vary among authorities.
A concern with the cmbodiments described thus far is that they may be circumvented by removing or garbling the encrypted partial key field after the message has been generated so that the recipient will receive the message correctly but the authorized entity will be unable to decrypt it. Such tampering could be resisted by including a hash or other cryptographic combination of the full secret key and the encrypted partial key in a header field of the message. The recipient's system would recompute that hash value using the secret and partial keys and refuse to decrypt the message if the recomputed value did not match the one received with the message. Since only an entity knowing the full key could recompute the hash value, it would be impossible to make an undetected modification to the encrypted key field once the encrypted message was generated.
is Figs. 4-6 show message data structures with an even stronger enforcement mechanism, where even if the software generating the encrypted message is modified, it cannot generate a message that the recipient will decrypt correctly but that prevents the authorized entity from obtaining the partial key. In these embodiments, the public key system used is of the type, such as RSA, which generates the same ciphertext for the same plaintext.
22 In Fig. 4, the 64 bit secret key and random pad are encrypted using the intended recipient's public key, as before, and the 24 bit partial key, a hash of the fiffi secret key, and a non-random pad arc concatenated and encrypted under the authority's public key. The sender generates the nonrandom pad from information being given to the recipient, such as part of the recipient's random pad, so that the recipient WW not be required to guess the value of the authority's pad. which would require extra work for the recipient. The recipient's system will enforce the partial key system by, as explained above, decrypting the secret key using the recipient's private key, creating the partial key, generating the hash of the fiffi key, and using the authority's public key to encrypt the partial key, hash, and non-random pad. The recipient's system compares the resulting encrypted entity with the encrypted entity received with the transmitted message, and only allows the message to be decrypted with the secret key if the values match.
Although the message data structure shown in Fig. 4 allows for enforcement of the partial key system, it also provides the authority the ability to use a look-up table of hash values for a given hash flinction to more easily determine the secret key from the hashed secret key contained in the authority's partial key field. One way to increase the difficulty of computing the table is to perform the hash function multiple times. However, this also increases the processing time for the recipient of the message when checking the validity of the partial key field.
23 1 _1 1 Another way to prevent the authority from using a look-up table of hash values is to concatenate a salt with the secret key. as shown in Figs. 5 and 6. In both Figs. 5 and 6, the intended recipient is given the secret key and salt, and is required to calculate the hash using the secret key and salt in order to verify the validity of the partial key field. In Fig. 5, the authority is given the hash and the entire sal so that the authority is required to calculate a hash for each guess of the full secret key. and can not utilize a hash function look-up table. In Fig. 6, the authority is given only part of the sak 56 bits out of 64 bits, and must therefore also guess the missing bits of the salt for each hash calculated. This increases the work required by the authority to break the message using the hash to determine the secret key.
As a finiher alternative, the authority is not given any of the salt, so that the hash cannot be used by the authority to determine the secret key, but can still be used to enforce the partial key system. As one skilled in the art will recognize, many other alternatives to Figs. 4-6 are of course possible, including hashing only part of the full secret key. with or without salt, providing just the salt with the encrypted partial key, etc., the goal being, as explained herea' to provide additional information encrypted with the partial key which can be reconstructed by the recipient's system and checked to assure that the encrypted partial key field is present and valid.
One skilled in the art will also recognize that by using different variations of the message data structures shown in Figs. 5 and 6, the differential work factor of the 24 a 1 authority required to break a message using the hash can be predetermined and controlled in a precise manner. In contrast, the work factor required to break the message using a brute force attack on the encrypted message varies depending upon the size and contents of the message.
Additional data can be included in the encrypted key fields. For example, the authority's field can include control information such as the identities of the cryptographic algorithm employed in the encryption of the message and the hash function, the date the message was createdL identifying information regarding the sender, etc.
The enforcement methods and systems described herein can also be employed in cryptographic systems in which the entire secret encryption key is encrypted under the public key of the authority and transmitted along with the encrypted message. For example, a secret key field can include a hash of the secret key. hashed with or without salt, all or part of the salt; if used, and other information. Alternatively, a hash of the secret key, possibly in combination with other information, can be included in the header field of the encrypted message, as described above.
While the invention has been described and illustrated in connection with preferred embodiments, many variations and modifications as win be evident to those skilled in this art may be made without departing fTom the spirit and scope of the 2 0 invention, and the invention as set forth in the appended claims is thus not to be limited to the precise details of methodology or construction set forth above as such variations and modification are intended to be included within the scope of the appended claims.
26
Claims (1)
- CLAIMS:1. A method for reducing but not eliminating the work factor required by an authorized entity to break an encrypted message, which encrypted message requires a secret encryption key to decrypt the message, the method comprising: splitting the secret encryption key into at least two partial keys such that knowledge of a first of the partial keys reduces but does not eliminate the work factor required to break the encrypted message; and providing the authorized entity with information that enables the authorized entity to determine the first partial key and to break the encrypted message using the first partial key.2. The method of claim 1 further comprising encrypting the message using the s=ot encryption key, encrypting at least the secret encryption key using a public key of the intended recipien and providing to the intended recipient such encrypted secret encryption key together with the encrypted message.3. The method of claim 2 wherein the step of encrypting the message comprises generating a random secret encryption key and encrypting the message using the generated random secret encryption key.4. The method of claim 1 wherein the step of providing the authorized entity with information comprises sending the first partial key directly to the authorized entity.5. The method of claim 1 wherein the step of providing the authorized entity with 20 information comprises encrypting at least the first partial key using a public key of the 27 authorized entity and providing the encrypted first partial key together with the encrypted message to make the encrypted first partial key avadable to the authorized entity upon obtaining the message.6. The method of claim 5 wherein the step of encrypting at least the first: partial 5 key comprises encrypting additional information in combination with the first partial key.7. 71x method of claim 6 wherein the step of encrypting additional information in combination with the first partial key comprises encrypting a random number in combination with the first partial key.8. The method of claim 6 flirther comprising calculating a hash of at least part of the secret encryption key and wherein the step of encrypting additional information in combination with the first partial key comprises encrypting at least the hash in combination with the fnt partial key.9. The method of claim 8 wherein the step of calculating the hash of at least pat of the secret encryption key comprises calculating a hash of at least part of the secret encryption key in combination with a salt.10. The method of claim 9 further comprising encrypting the message using a secret encryption key, encrypting at least the secret encryption key in combination with the salt using the intended recipient's public key, and providing such encrypted secret encryption key and salt together with the encrypted message.28 11. The method of claim 9 wherein the step of encrypting at least the hash in combination with the first partial key comprises encrypting in combination the hash, the f= partial key, and the salt.12. The method of claim 9 wherein the step of encrypting at least the hash in combination with the first partial key comprises encrypting in combination the hash, the first partial key, and part of the salt.13. The method of claim 6 wherein the step of encrypting additional information in combination with the first partial key comprises encrypting control information in combination with the first partial key.14. 71e method of claim 5 firther comprising cryptographically combining the furst partial key encrypted with the public key of the authorized entity with the secret encryption ke3, and providing this cryptographic combination with the encrypted message.15. The method of any of claims 1-14 wherein a governmental authority imposes one or more restrictions on use, import, or export of encryption hardware or software using 15 encryption keys greater than a given size, and wherein the step of splitting the secret encryption key into at least two partial keys comprises malcing the size of the at least one partial key remaining after splitting ofrthe first partial key equal to or less than the encryption key size subject to the one or more restrictions of the governmental authority.16. The method of any of claims 1-14 wherein the method reduces but does not 20 eliminate the work factor required by at least one additional authorized entity to break the 29 p encrypted message, "er comprising providing the at least one additional authorized entity with information that enables the at least one additional authorized entity to determine the first partial key and to break the encrypted message using the first partial key.17. 71c method of any of claims 1-14 wtercin the method reduces but does not eliminate the work factor required by at least one additional authorized entity to break the encrypted message, finther comprising:splitting the secret encryption key into at least two additional partial keys, which additional partial keys are difierent than the at least two partial keys, such that knowledge of a fim of the additional partial keys reduces but does not eliminate the work factor required to lo break the encrypted message; and providing the at least one additional authorized entity with infonnation that enables the at lent one additional authorized entity to determine the first of the additional partial keys and to break the encrypted message using the first of the additional partial keys.18. A method for providing part of a secret encryption key to an authority to reduce but not eliminate the work factor required by the authority to break an encrypted message ted with the secret encryption key, wherein the secret mcryption key is split into at least two partial keys such that knowledge of a first of the partial keys reduces but does not eliminate the work factor required to break the encrypted message, the method compri encrypting at least the first partial key using a public key of the authority; and 1 providing the encrypted at leastfirst partial key with the encrypted message to enable the authority, in the event the authority obtains the encrypted message and wishes to break it to decrypt the encrypted at least first partial key using the authority's private key and to break the message using the first partial key.19. The method of claim 18 further comprising; upon receipt by an intended recipient of the encrypted message, detearfining whether the encrypted at lmt:6rst partial key is provided with the encrypted message and is vahd, and if the encrypted at least first partial key is not provided with the encrypted message or is not vahd, refusing to decrypt the encrypted message.20. A method for enforcing a cryptographic system in which of a secret encryption key used to encrypt a message transmitted to an intended recipient is to be made available to an authorized entity which may obtain the message, wherein the part of the secret encryption key is made available by encrypting the part of the secret encryption key such that the authorized entity can decrypt the part of the secret encryption key and by further transmitting the encrypted part of the secret encryption key with the encrypted message, the method comprising:detennirdg, upon receipt by the intended recipient of the encrypted message, whether the encrypted part of the secret encryption key is transmitted with the encrypted message and is valid; and 31 1 refb-sing to decrypt the encrypted message if the encrypted part of the se=t encryption key is not transmitted with the encrypted message or is not valid- 21. Ilm method of claim 20 wherein the part of the secret encryption key is encrypted in combination with additional information, and wherein the step of re-encrypting further comprises re-encrypting the part of the secret encription key in combination with the additional information.22. A data structure for an encrypted message transmitted from one computer system to another, the date structure pro%dding a reduced work factor for an authorized entity to break the encrypted message, the data cmm comprising:a first en"ted data entity comprising the message encrypted with a secret encryption key; and a second encrypted data entity attached to the first encrypted data entity, the second encrypted data entity comprising a partial key of the secret encryption key en"tcd using a public key of the authorized entity such that knowledge of the partial key reduces but does not eliminate the work factor required to break the encrypted message.23. The data structure of claim 22 wherein the second encrypted data entity comprises a random number in combination with the partial key.24. The data structure of claim 22 wherein the second encrypted data entity comprises the partial key in combination with a hash of at least part of the secret encryption key.32 25. The data structure of claim 24 wherein the second encrypted data entity comprises in combination the partial key, a hash of at least part of the secret encryption key and a salt, and all or part of the salt.26. The data structure of any of claims 22-25 finther comprising a third encrypted data entity attached to the first =cWted data entity, the third en"ted data entity comprising at least the secret encryption key encrypted with a public key of an intended recipient of the message.27. 7he data structure of claim 26 wherein the second encrypted data entity comprises in combination the partial key, a hash of at least part of the secret encryption key and a salt and all or part of the salt and wherein the third encrypted data entity comprises the secret encryption key in combination with all or pan of the salt 28. The data structure of any of claims 22-27 wherein the first encrypted data entity comprises the message and a cryptographic combination of the secret encryption key and the partial key.is 29. A computer usable medium having computer readable program code means embodied in said medium for causing said computer to perform method steps for reducing but not eliminating the work factor required by an authorized entity to break an en"ted message, which message is encrypted such that a secret encryption key is required to decrypt the message, the method steps comprising:33 splitting the secret encryption key into at least two Partial keys such do knowledge of a first of the partial keys reduces but does not eliminate the work factor required to break the encrypted message; and providing the authorized entity with information from which the first partial key may be determined to enable the first Partial key to be used to break the encrypted message which the authorized entity obtains and wishes to break.30. A computer usable medium having computer readable program code means =bodied in said medium for causing said computer to perform method steps for dea an encrypted message received in a differential work factor cryptographic system in which the message is encrypted using a secret encryption key, a partial key of the secret encryptim key is encrypted using a public key of an authority and the encrypted partial key is transmitted with the cted message, the method steps comprising:detertnining whether the encrypted partial key is received with the encrypted message and is valid; is if the encrypted partial key is not received with the encrypted message or is not valid, refusing to decrypt the encrypted message; and if the eted partial key is received with the encrypted message and is valid, decrypting the message using the secret encryption key.31. The computer usable medium of clairn 30 wherein a hash of at least the secret encryption key is encrypted with the partial key, and wherein the step performed by the 34 computer of determining whether the encrypted partial key is received with the encrypted message and is valid comprises generating a hash of at least the secret encryption k-ey encrypting the hashed at least secret encryption key and the partial key using the public key of the authorit34 and comparing the encrypted hashed at least secret encryption k-cy and partial 5 key with the encrypted partial key received with the encrypted message.32. A method for providing an authorized entity with at least part of a secret encryption key used to encrypt a me"c emumitted. to an intended recipient. the method c=prising:encrypting the at least part of the secret encryption kcy in combination with a hash of at least part of the secret encryption key and a salt such that the authorized entity can decrypt the at least part of the secret encryption key; and transmitting the encrypted at least part of the secret encryption key with the encrypted message.33. The method of claim 32 twher comprising:is determining, upon receipt by the intended recipient of the encrypted message, whether the encrypted at least part of the secret encryption key is transmitted with the encrypted message and is valid; and refusing to decrypt the encrypted message if the encrypted at least part of the secret McrYPtion key is not transmitted with the encrypted message or is not valid.e X 1 34. The method of claim 32 or 33 wherein the step of encrypting the at least part of the secret mcryption key comprises encrypting the entire secret encryption key.36 Ii
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US57322895A | 1995-12-15 | 1995-12-15 | |
US08/573,110 US5764772A (en) | 1995-12-15 | 1995-12-15 | Differential work factor cryptography method and system |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9625925D0 GB9625925D0 (en) | 1997-01-29 |
GB2308282A true GB2308282A (en) | 1997-06-18 |
GB2308282B GB2308282B (en) | 2000-04-12 |
Family
ID=27076032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9625925A Expired - Fee Related GB2308282B (en) | 1995-12-15 | 1996-12-13 | Differential work factor cryptography method and system |
Country Status (5)
Country | Link |
---|---|
JP (1) | JPH1028114A (en) |
KR (1) | KR100445737B1 (en) |
DE (1) | DE19652295B4 (en) |
FR (1) | FR2742617B1 (en) |
GB (1) | GB2308282B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2329096A (en) * | 1997-08-29 | 1999-03-10 | Ncipher Limited | Creating sub-keys from hashed cryptographic master key |
US6636968B1 (en) | 1999-03-25 | 2003-10-21 | Koninklijke Philips Electronics N.V. | Multi-node encryption and key delivery |
GB2390270A (en) * | 2002-06-27 | 2003-12-31 | Ericsson Telefon Ab L M | Escrowing with an authority only part of the information required to reconstruct a decryption key |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6578143B1 (en) * | 1998-12-18 | 2003-06-10 | Qualcomm Incorporated | Method for negotiating weakened keys in encryption systems |
WO2000067758A1 (en) * | 1999-05-10 | 2000-11-16 | Toshio Doi | Remedies for glomerulosclerosis |
DE102005013909A1 (en) * | 2005-03-24 | 2006-09-28 | Siemens Ag | Device and method for key reduction |
US7873166B2 (en) | 2005-09-13 | 2011-01-18 | Avaya Inc. | Method for undetectably impeding key strength of encryption usage for products exported outside the U.S |
US8345871B2 (en) * | 2007-03-15 | 2013-01-01 | Palo Alto Research Center Incorporated | Fast authentication over slow channels |
US8199917B2 (en) * | 2008-10-29 | 2012-06-12 | International Business Machines Corporation | SID management for access to encrypted drives |
CN111585964B (en) * | 2015-09-21 | 2023-03-24 | 华为终端有限公司 | Login information input method, login information storage method and related device |
FR3058604B1 (en) * | 2016-11-09 | 2022-12-16 | Sigfox | METHOD AND DEVICE FOR TRANSMITTING ENCRYPTED DATA, METHOD AND DEVICE FOR DATA EXTRACTION |
KR102357698B1 (en) * | 2020-02-24 | 2022-02-14 | 황순영 | Private key management method using partial hash value |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5315658B1 (en) * | 1992-04-20 | 1995-09-12 | Silvio Micali | Fair cryptosystems and methods of use |
US5323464A (en) * | 1992-10-16 | 1994-06-21 | International Business Machines Corporation | Commercial data masking |
US5557765A (en) * | 1994-08-11 | 1996-09-17 | Trusted Information Systems, Inc. | System and method for data recovery |
-
1996
- 1996-12-13 GB GB9625925A patent/GB2308282B/en not_active Expired - Fee Related
- 1996-12-14 KR KR1019960065695A patent/KR100445737B1/en not_active IP Right Cessation
- 1996-12-16 DE DE19652295A patent/DE19652295B4/en not_active Expired - Fee Related
- 1996-12-16 JP JP8352585A patent/JPH1028114A/en active Pending
- 1996-12-16 FR FR9615449A patent/FR2742617B1/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2329096A (en) * | 1997-08-29 | 1999-03-10 | Ncipher Limited | Creating sub-keys from hashed cryptographic master key |
US6636968B1 (en) | 1999-03-25 | 2003-10-21 | Koninklijke Philips Electronics N.V. | Multi-node encryption and key delivery |
GB2390270A (en) * | 2002-06-27 | 2003-12-31 | Ericsson Telefon Ab L M | Escrowing with an authority only part of the information required to reconstruct a decryption key |
Also Published As
Publication number | Publication date |
---|---|
FR2742617A1 (en) | 1997-06-20 |
DE19652295A1 (en) | 1997-06-19 |
KR100445737B1 (en) | 2004-11-03 |
GB2308282B (en) | 2000-04-12 |
KR970056124A (en) | 1997-07-31 |
JPH1028114A (en) | 1998-01-27 |
FR2742617B1 (en) | 2000-08-18 |
DE19652295B4 (en) | 2009-05-14 |
GB9625925D0 (en) | 1997-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5764772A (en) | Differential work factor cryptography method and system | |
US5557765A (en) | System and method for data recovery | |
US5557346A (en) | System and method for key escrow encryption | |
CA2197915C (en) | Cryptographic key recovery system | |
Clulow | On the security of PKCS# 11 | |
JP3872107B2 (en) | Encryption key recovery system | |
US7860243B2 (en) | Public key encryption for groups | |
US6049612A (en) | File encryption method and system | |
US6996712B1 (en) | Data authentication system employing encrypted integrity blocks | |
JP2539164B2 (en) | Commercial data masking | |
KR100459147B1 (en) | Proprietary watermark system for secure digital media and content distribution | |
JP4037614B2 (en) | Method for confirming the integrity of images transmitted with loss | |
US20030123667A1 (en) | Method for encryption key generation | |
EP1507261A2 (en) | Copyright protection system, recording device and reproduction device | |
WO1998047259A9 (en) | File encryption method and system | |
JP2006500843A (en) | System and method for ensuring software integrity | |
US8132264B2 (en) | Access authorization across processing devices | |
GB2308282A (en) | Secret crytptographic key is split to reduce work factor | |
US6704868B1 (en) | Method for associating a pass phase with a secured public/private key pair | |
US6088456A (en) | Data encryption technique | |
JP2000324096A (en) | Contents protection system | |
Cheung et al. | A commutative encrypted protocol for the privacy protection of watermarks in digital contents | |
Nahrstedt et al. | Approaches to multimedia and security | |
Piper | Basic principles of cryptography | |
JP4604523B2 (en) | Data transfer method and data storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
732E | Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977) | ||
746 | Register noted 'licences of right' (sect. 46/1977) |
Effective date: 20071127 |
|
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 20111213 |