代写辅导接单-New Directions in Cryptography

欢迎使用51辅导,51作业君孵化低价透明的学长辅导平台,服务保持优质,平均费用压低50%以上! 51fudao.top

644 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. IT-22, NO. 6, NOVEMBER 1976

New Directions in Cryptography

Invited Paper

WHITFIELD DIFFIE AND MARTIN E. HELLMAN, MEMBER, IEEE

Abstract-Two kinds of contemporary developments in cryp- The best known cryptographic problem is that of pri-

tography are examined. Widening applications of teleprocessing vacy: preventing the unauthorized extraction of informa-

have given rise to a need for new types of cryptographic systems,

tion from communications over an insecure channel. In

which minimize the need for secure key distribution channels and

order to use cryptography to insure privacy, however, it is

supply the equivalent of a written signature. This paper suggests

ways to solve these currently open problems. It also discusses how currently necessaryf or the communicating parties to share

the theories of communication and computation are beginning to a key which is known to no one else. This is done by send-

provide the tools to solve cryptographic problems of long stand- ing the key in advance over some secure channel such as

ing.

private courier or registered mail. A private conversation

between two people with no prior acquaintance-is a com-

mon occurrence in business, however, and it is unrealistic

to expect initial business contacts to be postponed long

I. INTRODUCTION

enough for keys to be transmitted by some physical means.

W E STAND TODAY on the brink of a revolution in The cost and delay imposed by this key distribution

cryptography. The development of cheap digital problem is a major barrier to the transfer of business

hardware has freed it from the design limitations of me- communications to large teleprocessing networks.

chanical computing and brought the cost of high grade Section III proposes two approaches to transmitting

cryptographic devices down to where they can be used in keying information over public (i.e., insecure) channels

such commercial applications as remote cash dispensers

without compromising the security of the system. In a

and computer terminals. In turn, such applications create

public key cryptosystem enciphering and deciphering are

a need for new types of cryptographic systems which governed by distinct keys, E and D, such that computing

minimize the necessity of secure key distribution channels

D from E is computationally infeasible (e.g., requiring

and supply the equivalent of a written signature. At the

lOloo instructions). The enciphering key E can thus be

same time, theoretical developments in information theory

publicly disclosed without compromising the deciphering

and computer science show promise of providing provably

key D. Each user of the network can, therefore, place his

secure cryptosystems, changing this ancient art into a

enciphering key in a public directory. This enables any user

science.

of the system to send a message to any other user enci-

The development of computer controlled communica-

phered in such a way that only the intended receiver is able

tion networks pron$ses effortless and inexpensive contact

to decipher it. As such, a public key cryptosystem is a

between people or computers on opposite sides of the

multiple accessc ipher. A private conversation can there-

world, replacing most mail and many excursions with

fore be held between any two individuals regardless of

telecommunications. For many applications these contacts

whether they have ever communicated before. Each one

must be made secure against both eavesdropping.and the

sends messagest o the other enciphered in the receiver’s

injection of illegitimate messages.A t present, however, the

public enciphering key and deciphers the messagesh e re-

solution of security problems lags well behind other areas

ceives using his own secret deciphering key.

of communications technology. Contemporary cryp-

We propose some techniques for developing public key

tography is unable to meet the requirements, in that its use

cryptosystems, but the problem is still largely open.

would impose such severe inconveniences on the system

Public key distribution systems offer a different ap-

users, as to eliminate many of the benefits of teleprocess-

proach to eliminating the need for a secure key distribution

ing.

channel. In such a system, two users who wish to exchange

a key communicate back and forth until they arrive at a

key in common. A third party eavesdropping on this ex-

Manuscript received June 3,1976. This work was partially supported

by the National Science Foundation under NSF Grant ENG 10173. change must find it computationally infeasible to compute

Portions of this work were presented at the IEEE Information Theory the key from the information overheard, A possible solu-

Workshop;Lenox , MA, June 23-25, 1975 and the IEEE International

Symposium on Information Theory in Ronneby, Sweden, June 21-24, tion to the public key distribution problem is given in

1976. Section III, and Merkle [l] has a partial solution of a dif-

W. Diffie is with the Department of Electrical Engineering, Stanford

Universitv. Stanford. CA. and the St,anford Artificial IntelliPYe nce Lab- ferent form.

oratory, g&ford, CIk 94.505. A second problem, amenable to cryptographic solution,

M. E. Hellman is with the Department of Electrical Engineering,

Stanford University, Stanford, CA 94305. which stands in the way of replacing contemporary busi-

.

DIFFIE AND HELLMAN: NEW DIRECTIONS IN CRYPTOGRAPHY 645

ness communications by teleprocessing systems is au-

thentication. In current business,t he validity of contracts

is guaranteed by signatures. A signed contract serves as

legal evidence of an agreement which the holder can

present in court if necessary.T he use of signatures, how-

ever, requires the transmission and storage of written

contracts. In order to have a purely digital replacement for KEY

SOURCE

this paper instrument, each user must be able to produce

Fig. 1. Flow of information in conventional cryptographic system.

a messagew hose authenticity can be checked by anyone,

but which could not have been produced by anyone else,

transmitted over a public channel,t hus assuringt he sender

even the recipient. Since only one person can originate

of a messaget hat it is being read only by the intended re-

messagesb ut many people can receive messages,th is can

cipient. An authenticationsystemprevents the unauthor-

be viewed as a broadcast cipher. Current electronic au-

ized injection of messagesi nto a public channel, assuring

thentication techniques cannot meet this need.

the receiver of a messageo f the legitimacy of its sender.

Section IV discussest he problem of providing a true,

A channel is considered public if its security is inade-

digital, messaged ependent signature. For reasonsb rought

quate for the needs of its users. A channel such as a tele-

out there, we refer to this as the one-way authentication

phone line may therefore be considered private by some

problem. Some partial solutions are given, and it is shown

usersa nd public by others. Any channel may be threatened

how any public key cryptosystem can be transformed into

with eavesdropping or injection or both, depending on its

a one-way authentication system.

use. In telephone communication, the threat of injection

Section V will consider the interrelation of various

is paramount, since the called party cannot determine

cryptographic problems and introduce the even more

which phone is calling. Eavesdropping, which requires the

difficult problem of trap doors.

use of a wiretap, is technically more difficult and legally

At the samet ime that communications and computation

hazardous. In radio, by comparison, the situation is re-

have,given rise to new cryptographic problems, their off-

versed. Eavesdropping is passive and involves no legal

spring, information theory, and the theory of computation

hazard, while injection exposest he illegitimate transmitter

have begun to supply tools for the solution of important

to discovery and prosecution.

problems in classical cryptography.

Having divided our problems into those of privacy and

The search for unbreakable codes is one of the oldest

authentication we will sometimes further subdivide au-

themes of cryptographic research, but until this century

thentication into message authentication, which is the

all proposed systems have ultimately been broken. In the

problem defined above, and user authentication, in which

nineteen twenties, however, the “one time pad” was in-

the only task of the system is to verify that an individual

vented, and shown to be unbreakable [2, pp. 398-4001.T he

is who he claims to be. For example, the identity of an in-

theoretical basis underlying this and related systems was

dividual who presents a credit card must be verified, but

put on a firm foundation a quarter century later by infor-

there is no messagew hich he wishes to transmit. In spite

mation theory [3]. One time pads require extremely long

of this apparent absenceo f a messagei n user authentica-

keys and are therefore prohibitively expensive in most

tion, the two problems are largely equivalent. In user au-

applications.

thentication, there is an implicit message“I AM USER X,”

In contrast, the security of most cryptographic systems

while messagea uthentication is just verification of the

resides in the computational difficulty to the cryptanalyst

identity of the party sending the message.D ifferences in

of discovering the plaintext without knowledge of the key.

the threat environments and other aspects of these two

This problem falls within the domains of computational

subproblems, however, sometimes make it convenient to

complexity and analysis of algorithms, two recent disci-

distinguish between them.

plines which study the difficulty of solving computational

Fig. 1 illustrates the flow of information in a conven-

problems. Using the results of these theories, it may be

tional cryptographic system used for privacy of commu-

possible to extend proofs of security to more useful classes

nications. There are three parties: a transmitter, a receiver,

of systems in the foreseeable future. Section VI explores

and an eavesdropper. The transmitter generates a plain-

this possibility.

text or unenciphered messageP to be communicated over

Before proceeding to newer developments,w e introduce

an insecure channel to the legitimate receiver. In order to

terminology and define threat environments in the next

prevent the eavesdropperf rom learning P, the transmitter

section.

operates on P with an invertible transformation SK to

produce the ciphertext or cryptogram C = SK(P). The key

II. CONVENTIONAL CRYPTOGRAPHY

K is transmitted onlv to the legitimate receiver via a secure

Cryptography is the study of “mathematical” systems channel, indicated by a shielded path in Fig. 1. Since the

for solving two kinds of security problems: privacy and legitimate receiver knows K, he can decipher C by oper-

authentication. A privacy system prevents the extraction ating with SK-~ to obtain SK-~(C) = SK-~(SK(P)) = P,

of information by unauthorized parties from messages the original plaintext message.T he securec hannel cannot

646 IEEE TRANSACTIONS ON INFORMATION THEORY. NOVEMBER 1976

be used to transmit P itself for reasonso f capacity or delay. bits of the plaintext. Block ciphers act in a purely combi-

For example, the secure channel might be a weekly courier natorial fashion on large blocks of text, in such a way that

and the insecure channel a telephone line. a small change in the input block produces a major change

A cryptographic system is a single parameter family in the resulting output. This paper deals primarily with

{SKJK~~I(~o f invertible transformations block,ciphers, because this error propagation property is

valuable in many authentication applications.

SdPl - WI (1)

In an authentication system, cryptography is used to

from a space (P) of plaintext messagest o a space (C) of ci- guarantee the authenticity of the messaget o the receiver.

phertext messages.T he parameter K is called the key and Not only must a meddler be prevented from injecting to-

is selected from a finite set (K) called the keyspace. If the tally new, authentic looking messagesi nto a channel, but

messages paces (PI and {C) are equal, we will denote them he must be prevented from creating apparently authentic

both by (M). When discussing individual cryptographic messagesb y combining, or merely repeating, old messages

transformations SK, we will sometimes omit mention of which he has copied in the past. A cryptographic system

the system and merely refer to the transformation K. intended to guarantee privacy will not, in general, prevent

The goal in designing the cryptosystem {SK) is to make this latter form of mischief.

the enciphering and deciphering operations inexpensive, To guarantee the authenticity of a message,i nformation

but to ensure that any successful cryptanalytic operation is added which is a function not only of the message and

is too complex to be economical. There are two approaches a secret key, but of the date and time as well; for example,

to this problem. A system which is secure due to the com- by attaching the date and time to each message and en-

putational cost of cryptanalysis, but which would succumb crypting the entire sequence. This assures that only

to an attack with unlimited computation, is called com- someone who possessest he key can generate a message

putationally secure; while a system which can resist any which, when decrypted, will contain the proper date and

cryptanalytic attack, no matter how much computation time. Care must be taken, however, to use a system in

is allowed, is called unconditionally secure. Uncondi- which small changes in the ciphertext result in large

tionally secure systems are discussed in [3] and [4] and changes in the deciphered plaintext. This intentional error

belong to that portion of information theory, called the propagation ensures that if the deliberate injection of noise

Shannon theory, which is concerned with optimal perfor- on the channel changesa messages uch as “erase file 7” into

mance obtainable with unlimited computation. a different message such as “erase file 8,” it will also cor-

Unconditional security results from the existence of rupt the authentication information. The message will

multiple meaningful solutions to a cryptogram. For ex- then be rejected as inauthentic.

ample, the simple substitution cryptogram XMD resulting The first step in assessingt he adequacy of cryptographic

from English text can represent the plaintext messages: systems is to classify the threats to which they are to be

now, and, the, etc. A computationally secure cryptogram, subjected. The following threats may occur to crypto-

in contrast, contains sufficient information to uniquely graphic systems employed for either privacy or authenti-

determine the plaintext and the key. Its security resides cation.

solely in the cost of computing them. A ciphertext only attack is a cryptanalytic attack in

The only unconditionally secure system in common use which the cryptanalyst possesseso nly ciphertext.

is the one time pad, in which the plaintext is combined A known plaintext attack is a cryptanalytic attack in

with a randomly chosen key of the same length. While such which the cryptanalyst possessesa substantial quantity

a system is provably secure, the large amount of key re- of corresponding plaintext and ciphertext.

quired makes it impractical for most applications. Except A chosen plaintext attack is a cryptanalytic attack in

as otherwise noted, this paper deals with computationally which the cryptanalyst can submit an unlimited number

secure systems since these are more generally applicable. of plaintext messageso f his own choosing and examine the

When we talk about the need to develop provably secure resulting cryptograms.

cryptosystems we exclude those, such as the one time pad, In all cases it is assumed that the opponent knows the

which are unwieldly to use. Rather, we have in mind sys- general system (SK) in use since this information can be

tems using ‘only ’ a few; hundred bits of key and imple- obtained by studying a cryptographic device. While many

mentable in either a small amount of digital hardware or users of cryptography attempt to keep their equipment

a few hundred lines of software. secret, many commercial applications require not only that

We will call a task computationally infeasible if its cost the general system be public but that it be standard.

as measured by either the amount of memory used or the A ciphertext only attack occurs frequently in practice.

runtime is finite but impossibly large. The cryptanalyst uses only knowledge of the statistical

Much as error correcting codes are divided into convo- properties of the language in use (e.g.,i n English, the letter

lutional and block codes, cryptographic systems can be e occurs 13 percent of the time) and knowledge of certain

divided into two broad classes: stream ciphers and block “probable” words (e.g., a letter probably begins “Dear

ciphers. Stream ciphers process the plaintext in small Sir:“). It is the weakest threat to which a system can be

chunks (bits or characters), usually producing a pseudo- subjected, and any system which succumbs to it is con-

random sequence of bits which is added modulo 2 to the sidered totally insecure.

DIFFIE AND HELLMAN: NEW DIRECTIONS IN CRYPTOGRAPHY 647

A system which is secure against a known plaintext at- system itself. The receiver’s password tables and other

tack frees its users from the need to keep their past mes- authentication data are then more vulnerable to theft than

sagess ecret, or to paraphrase them prior to declassifica- those of the transmitter (an individual user). As shown

tion. This is an unreasonable burden to place on the sys- later, some techniques for protecting against this threat

tem’s users, particularly in commercial situations where also protect against the threat of dispute. That is, a mes-

product announcements or press releasesm ay be sent in sage may ‘ be sent but later repudiated by either the

encrypted form for later public disclosure. Similar situa- transmitter or the receiver. Or, it may be alleged by either

tions in diplomatic correspondenceh ave led to the cracking party that a messagew as sent when in fact none was. Un-

of many supposedly secure systems. While a known forgeable digital signatures and receipts are needed. For

plaintext attack is not always possible, its occurrence is example, a dishonest stockbroker might try to cover up

frequent enought hat a system which cannot resist it is not unauthorized buying and selling for personal gain by

considered secure. forging orders from clients, or a client might disclaim an

A chosen plaintext attack is difficult to achieve in order actually authorized by him but which he later sees

practice, but can be approximated. For example, submit- will causea loss. We will introduce concepts which allow

ting a proposal to a competitor may result in his enci- the receiver to verify the authenticity of a message,b ut

phering it for transmission to his headquarters. A cipher prevent him from generating apparently authentic mes-

which is securea gainst a chosenp laintext attack thus frees sages,t hereby protecting against both the threat of com-

its users from concern over whether their opponents can promise of the receiver’s authentication data and the

plant messagesin their system. threat of dispute.

For the purpose of certifying systems as secure, it is

appropriate to consider the more formidable cryptanalytic III. PUBLIC KEY CRYPTOGRAPHY

threats as these not only give more realistic models of the

As shown in Fig. 1, cryptography has been a derivative

working environment of a cryptographic system, but make

security measure.O nce a securec hannel exists along which

the assessmento f the system’s strength easier. Many sys-

keys can be transmitted, the security can be extended to

tems which are difficult to analyze using a ciphertext only

other channels of higher bandwidth or smaller delay by

attack can be ruled out immediately under known plain-

encrypting the messagess ent on them. The effect has been

text or chosen plaintext attacks.

to limit the use of cryptography to communications among

As is clear from these definitions, cryptanalysis is a

people who have made prior preparation for cryptographic

system identification problem. The known plaintext and

security.

chosenp laintext attacks correspond to passive and active

In order to develop large, secure, telecommunications

system identification problems, respectively. Unlike many

systems, this must be changed.A large number of users n

subjects in which system identification is considered,s uch

results in an evenl arger number, (n2 - n)/2 potential pairs

as automatic fault diagnosis, the goal in cryptography is

who may wish to communicate privately from all others.

to build systems which are difficult, rather than easy, to

It is unrealistic to assumee ither that a pair of users with

identify.

no prior acquaintance will be able to wait for a key to be

The chosen plaintext attack is often called an IFF at-

sent by somes ecurep hysical means,o r that keys for all (n2

tack, terminology which descends from its origin in the

n)/2 pairs can be arranged in advance.I n another paper

development of cryptographic “identification friend or

ii the authors have considered a conservative approach

foe” systems after World War II. An IFF system enables

requiring no new development in cryptography itself, but

military radars to distinguish between friendly and enemy

this involves diminished security, inconvenience, and re-

planes automatically. The radar sends a time-varying

striction of the network to a starlike configuration with

challenge to the airplane which receives the challenge,

respect to initial connection protocol.

encrypts it under the appropriate key,and sendsi t back to

We propose that it is possible to develop systems of the

the radar. By comparing this response with a correctly

type shown in Fig. 2, in which two parties communicating

encrypted version of the challenge,t he radar can recognize

solely over a public channel and using only publicly known

a friendly aircraft. While the aircraft are over enemy ter-

techniques can create a securec onnection. We examinet wo

ritory, enemy cryptanalysts can send challenges and ex-

approaches to this problem, called public key cryptosys-

amine the encrypted responsesin an attempt to determine

the authentication key in use, thus mounting a chosen

plaintext attack on the system. In practice, this threat is

countered by restricting the form of the challenges,w hich

need not be unpredictable, but only nonrepeating.

There are other threats to authentication systemsw hich

cannot be treated by conventional cryptography, and

which require recourse to the new ideas and techniques

introduced in this paper. The threat of compromise of the

receiver’s authentication data is motivated by the situa-

tion in multiuser networks where the receiver is often the Fig. 2. Flow of information in public key system.

64X IEEE TRANSACTJONS ON INFORMATION THEORY, NOVEMBER 1976

terns and public key distribution systems, respectively. equals Em. Letting B = Em l we have m - DC. Thus, both

The first are more powerful, lending themselves to the enciphering and deciphering require about n2 operations.

solution of the authentication problems treated in the next Calculation of D from E, however, involves a matrix in-

section, while t,he second are much closer to reahzation. version which is a harder problem. And it is at least con-

A public key cryptosystem is a pair of families ceptually simpler to obtain an arbitrary pair of inverse

PKIK E (KI and ID K 1K E JRJo f algorithms representing matrices than it is to invert a given mabrix, St.art with the

invertible transformations, identity matrix I and do elementary row and column op-

erations to obtain an arbitrary invertible matrix E. Then

I&:(Mj -+ {M) (2) starting with I do the inverses of these same elementary

operations in reverse order to obtain 61 - E--l. The se-

D[(:(M) --*- ’ {M) (3)

quence of elementary operations could be easi1.yd eter-

on a finite message space (MJ, such that mined from a random bit string.

Unfortunately, matrix inversion takes only a.bout n3

1) for every K E {Kb EK is the inverse of DK,

operations. The ratio of “cryptanalytic” time (i.e., com-

2) for every K E {KJ and M E (MI, the algorithms EK

puting D from E) to enciphering or deciphering t,ime is

and DK are easy to compute,

thus at most n, and enormous block sizes would be re-

3) for almost every K E (KJ, each easily computed al-

quired to obtain ratios of 3O 6o r greater. Also, it does not

gorithm equivalent to Df( is computationally in-

appear that knowledge of the element,ary operat.ions used

feasible to derive from EK,

to obtain E from I greatly reduces the time for computing

4) for every K E {K), it is feasible to compute inverse

D. And, since there is no round-off error in binary arith-

pairs EK and DK from K.

metic, numerical stability is unimportant in the matrix

Because of the third property, a user’s enciphering key inversion. In spite of its lack of practicaleutility, this matrix

EK can be made public without compromising the security example is still useful for clarifying the relationships

of his secret deciphering key DK. The cryptographic sys- necessary in a public key cryptosystem.

tem is therefore split into two parts, a family of enciphering A more practical approach to finding a pair of easily

transformations and a family of deciphering transforma- computed inverse algorithms E and D; such that, D is hard

tions in such a way that, given a member of one family, it to infer from E, makes use of the difficulty of analyzing

is infeasible to find the corresponding member of the programs in low level languages. Anyone who has tried to

other. determine what operation is accomplished by someone

The fourth property guarantees that there is a feasible else’s machine language program knows that E itself (i.e.,

way of computing corresponding pairs of inverse trans- what E does) can be hard to infer from an algorithm for E.

formations when no constraint is placed on what either the If the program were to be made purposefully confusing

enciphering or deciphering transformation is to be. In through addition of umleeded variables and statements,

practice, the cryptoequipment must contain a true random then determining an inverse algorithm could be made very

number generator (e.g., a noisy diode) for generat,ing K, difficult. Of course, E must be complicated enough to

together with an algorithm for generating the EK ~- n, prevent its identification from input-output pairs.

pair from its outputs. Essentially what is required is a one-way compiler: one

Given a system of this kind, the problem of key distri- which takes an easily understood program writ,ten in a h.igh

bution is vastly simplified. Each user generates a pair of level language and translates it into an incomprehensible

inverse transformations, E and D, at his terminal. The program in some machine language. The compiler is one-.

deciphering transforrnation D must be kept secret, but way because it must be feasible to do the compila.tion, but

need never be communicated on any channel. The enci- infeasible to reverse the process. Since efficiency in size of

phering key E can be made public by placing it in a public program and run time are not crucial in this application,

directory along with the user’s name and address. Anyone such compilers may be possible if the struct,ure of the

can then encrypt messagesa nd send them to the user, but machine language can be optimized to assist in the con-

no one else can decipher messagesi nbended for him. Public fusion.

key cryptosystems can thus be regarded as multiple access Merkle [I] has independently studied the problem of

ciphers. distributiug keys over an insecure channel. His approach

It is crucial that the public file of enciphering keys be is different from that of the public key cryptosystems

protected from unauthorized modification. This task is suggested above, and will be termed a public key distri-

made easier by the public nature of the file. Read prot,ec bution system. The goal is for two .users, A and B, to se-

tion is unnecessary and, since the file is modified infre- curely exchange a key over an insecure charmel. This key

quently, elaborate write protection mechanisms can be is then used by both users in a normal cryptosystem for

economically employed. both enciphering and deciphering. Merkle bas a solu.tion

A suggestive, although unfortunate!.y useless, example whose crypt,analytic cost grows as n,2w here n is the cost to

of a public key cryptosystem is to encipher the plaintext, the legitimate users. Unfortunately the cost to the legiti-

represented as a binary n-vector m, by multiplying it by mate users of the system is as much in transmission time

an invertible binary n X n matrix E. The cryptogram thus as in computation, because Merkle’s protocol requires n

DIFFIE AND IIELLMAN: NEW DIRECTIONS IN CRYPTOGRAPHY 649

potential keys to be transmitted before orie key can be as their key. .User i obtains Kij by obtaining Y, from the

decided on. Merkle not.es that this high transmission public file and letting

overhead prevents the system from being very useful in

Kij z yj”[ mod q (9)

practice. If a one megabit limit is placed on the setup

protocol’s overhead, his technique can achieve cost ratios = (a”/)Xl Inod q (10)

of approximately 10 000 to 1, which are too small for most

;: ,x-!x, z NX,X l modq. (11)

applications. If inexpensive, high bandwidth data links

becomea vailable, ratios of a million to one or greater could User j obtains Kij in the similar fashion

be achieved and the system would be of substantial prac-

Kij = Yx/ mod 4. (12)

tical value.

We now suggest a new public key distribution system Another user must compute Kij from Yi and Yj, for ex-

which has several advantages. First, it requires only one ample, by computing

“key” to be exchanged. Second, the cryptanalytic effort

Kjj z ~~iyil~~cvmYo~d) q,

(13)

appearst o grow exponentially in the effort of the legitimate

users. And, third, its use can be tied to a public file of user We thus see that if logs mod q are easily computed the

information which servest o authenticate user A to user B system can be broken. While we do not currently have a

and vice versa. By making the public file essentially a read proof of the converse (i.e., that the system is securei f logs

only memory, one personal appearance allows a user to mod q are difficult to compute), neither do we seea ny way

authenticate his identity many times to many users. to compute Kij from Yi and Yj without first obtaining ei-

Merkle’s technique requires A and B to verify eacho ther’s ther Xi or Xi.

identities through other means. If q is a prime slightly less than 26, then all quantities

The new technique makes use of the apparent difficulty are representable as b bit numbers. Exponentiation then

of computing logarithms over a finite field GF(q) with a takes at most 2b multiplications mod q, while by hypoth-

prime number q of elements. Let esis taking logs requires q112= 2b/2 operations. The

cryptanalytic effort therefore grows exponentially relative

Y = crx mod q1 forl_

to legitimate efforts. If b = 200, then at most 400 multi-

where 01is a fixed primit,ive element of GE’(q), then X is plications are required to compute Yi from Xi, or Kij from

referred to as the logarithm of Y to the base 01,m od q: Yi and Xj, yet taking logs mod q requires 21°0o r approxi-

mately lO”O operations.

X = log, Y mod q, forl

Calculation of Y from X is easy,t aking at most 2 X log2 q

multiplications [6, pp. 398-4221. For example, for X =

The problem of authenCicationi s perhaps an even more

1%

serious barrier to the universal adoption of telecomrnun-

y = ,I8 = (((u.“)2)“)2 x *2.

(6) ications for businesst ,ransactionst han the problem of key

Computing X from Y, on the other hand can be much more distribution. Authentication is at the heart of any system

difficult and, for certain carefully chosen values of q, re- involving contracts and billing. Without it, businessc annot

quires on the order of qlk operations, using the best known function. Current electronic authentication systemsc annot

meet the need for a purely digital, unforgeable, message

algorithm [7, pp. 9, 575-5761, [$I.

dependent signature. They provide protection against

The security of our technique depends crucially on the

third party forgeries, but do not protect against disputes

difficulty of computing logarithms mod q, and if an algo-

between transmitter and receiver.

rithm whosec omplexity grew as logzqw ere to be found, our

In order to develop a system capable of replacing the

syst.em would be broken. While the simplicity of the

current written contract with some purely electronic form

problem statement might allow such simple algorithms,

of communication, we must discover a digital phenomenon

it might instead allow a proof of the problem’s difficulty.

with the samep roperties as a written signature. It must be

For now we assume that the best known algorithm for

easyf or anyonet o recognizet he signature as authentic, but

computing logs mod q is in fact closet o optimal and hence

impossible for anyone other than the legitimate signer to

that q1/2i s a good measure of the problem’s complexity,

produce it. We will call any such technique one-way au-

for a properly chosen q.

thentication. Since any digital signal can be copied pre-

Each user generates an independent random number

cisely, a true digit,al signature must be recognizablew ithout

Xi chosenu niformly from the set of integers {1,2, . . . ,q -

being known.

1). Each keeps Xi secret, but places

Consider the “login” problem in a multiuser computer

Yi =za *ysr jlod q

(7) system. When setting up his account, the user choosesa

password which is entered into the system’s password di-

in a public file with his name and address. When users i

rectory. Each time he logs in, the user is again asked to

and j wish t,o communicate privately, they use

provide his password. By keeping this password secret

Kij = 01~x1~ mod (1 (8) from all other users, forged logins are prevented. This,

650 IEEE TRANSACTIONS ON INFORMATION THEORY, NOVEMBER 1976

however, makes it vital to preserve the security of the discussed later, is probably present in the most promising

password directory since the information it contains would class of one-way functions.

allow perfect impersonation of any user. The problem is Polynomials offer an elementary example of one-way

further compounded if system operators have legitimate functions. It is much harder to find a root xe of the poly-

reasons for accessing the directory. Allowing such legiti- nomial equation p (3~)= y than it is to evaluate the poly-

mate accesses, but preventing all others, is next to im- nomial p(x) at x = x0. Purdy [l l] has suggested the use of

possible. sparse polynomials of very high degree over finite fields,

This leads to the apparently impossible requirement for which appear to have very high ratios of solution to eval-

a new login procedure capable of judging the authenticity uation time. The theoretical basis for one-way functions

of passwords without actually knowing them. While ap- is discussed at greater length in Section VI. And, as shown

pearing to be a logical impossibility, this proposal is easily in Section V, one-way functions are easy to devise in

satisfied. When the user first enters his password PW, the practice.

computer automatically and transparently computes a The one-way function login protocol solves only some

function f(PW) and stores this, not PW, in the password of the problems arising in a multiuser system. It protects

directory. At each successivel ogin, the computer calculates against compromise of the system’s authentication data

f(X), where X is the proffered password, and compares when it is not in use, but still requires the user to send the

f(X) with the st ored value f (P W). If and only if they ‘are true password to the system. Protection against eaves-

equal, the user is accepted as being authentic. Since the dropping must be provided by additional encryption, and

function f must be calculated once per login, its compu- protection against the threat of dispute is absent alto-

tation time must be small. A million instructions (costing gether.

approximately $0.10 at bicentennial prices) seems to be A public key cryptosystem can be used to produce a true

a reasonable limit on this computation. If we could ensure, one-way authentication system as follows. If user A wishes

however, that calculation of f-l required 1030o r more in- to send a message M to user B, he “deciphers” it in his

structions, someone who had subverted the system to ob- secret deciphering key and sends DA(M). When user B

tain the password directory could not in practice obtain receives it, he can read it, and be assured of its authenticity

PW from f(PW), and could thus not perform an unau- by “enciphering” it with user A’s public enciphering key

thorized login. Note that f(PW) is not accepted as a pass- EA. B also saves DA(M) as proof that the message came

word by the login program since it will automatically from A. Anyone can check this claim by operating on

compute f (f(PW)) which will not match the entry f(PW) DA(M) with the publicly known operation EA to recover

in the password directory. M. Since only A could have generated a messagew ith this

We assume that the function f is public information, so property, the solution to the one-way authentication

that it is not ignorance off which makes calculation of f-l problem would follow immediately from the development

difficult. Such functions are called one-way functions and of public key cryptosystems.

were first employed for use in login procedures by R. M. One-way messagea uthentication has a partial solution

Needham [9, p. 911.T hey are also discussed in two recent suggested to the authors by Leslie Lamport of Massa-

papers [lo], [ll] which suggest interesting approaches to chusetts Computer Associates. This technique employs a

the design of one-way functions. one-way function f mapping k-dimensional binary space

More precisely, a function f is a one-way function if, for into itself for h on the order of 100. If the transmitter

any argument x in the domain off, it is easy to compute the wishes to send an N bit message he generates 2N, ran-

corresponding value f(x), yet, for almost all y in the range domly chosen, k-dimensional binary vectors

off, it is computationally infeasible to solve the equation ,XN,XN which he keeps secret. The re-

x1,x1,x2,x2, * * *

y = f(x) for any suitable argument x. ceiver is given the corresponding images under f, namely

It is important to note that we are defining a function Y 1, Yl,Y 2, yz, * * * ,YN,YN. Later, when the message m =

which is not invertible from a computational point of view, ,mN) is to be sent, the transmitter sends xi or

(1721+2, * - -

but whose noninvertibility is entirely different from that Xi depending on whether ml = 0 or 1. He sends x2 or X2

normally encountered in mathematics. A function f is depending on whether m2 = 0 or 1, etc. The receiver op-

normally called “noninvertible” when the inverse of a point erates with f on the first received block and seesw hether

y is not unique, (i.e., there exist distinct points 3~1a nd x2 it yields yi or Yi as its image and thus learns whether it was

such that f(xi) = y = f (x2)). We emphasize that this is not 3~1o r X1, and whether ml = 0 or 1. In a similar manner the

the sort of inversion difficulty that is required. Rather, it receiver is able to determine m2,m3, . . . ,mN. But the re-

must be overwhelmingly difficult, given a value y and ceiver is incapable of forging a change in even one bit of

knowledge of f, to calculate any x whatsoever with the m.

property that f (3c)= y. Indeed, if f is noninvertible in the This is only a partial solution because of the approxi-

usual sense, it may make the task of finding an inverse mately lOO-fold data expansion required. There is, how-

image easier. In the extreme, if f(x) = yc for all x: in the ever, a modification which eliminates the expansion

domain, then the range off is (yc), and we can take any x problem when N is roughly a megabit or more. Let g be a

as f-l(yo). It is therefore necessary that f not be too de- one-way mapping from binary N-space to binary n-space

generate. A small degree of degeneracy is tolerable and, as where n is approximately 50. Take the N bit message m

DIFFIE AND HELLMAN: NEW DIRECTIONS IN CRYPTOGRAPHY 651

and operate on it with g to obtain the n bit vector m’. Then

uset he previous schemet o send m’. If iV = 106,n = 50, and

k = 100, this adds kn = 5000 authentication bits to the

message.I t thus entails only a 5 percent data expansion

CIPHERTEXT

during transmission (or 15 percent if the initial exchange

OfYl,Yl, -*- ,YN,YN is included). Even though there are Y-f(x)

Fig. 3. Secure cryptosystem used as one-way function.

a large number of other messages( 2N-n on the average)

with the same authentication sequence,t he one-wayness

of g makes them computationally infeasible to find and

thus to forge. Actually g must be somewhat stronger than defined by

a normal one-wayf unction, since an opponent has not only

f(X) = SxPd. (15)

m ’ but also one of its inverse images m. It must be hard

even given m to find a different inverse image of m’. This function is one-way becauses olving for X given f(X)

Finding such functions appears to offer little trouble (see is equivalent to the cryptanalytic problem of finding the

Section V). key from a single known plaintext-cryptogram pair. Public

There is another partial solution to the one-way user knowledge off is now equivalent to public knowledge of

authentication problem. The user generates a password (SK] and PO.

X which he keepss ecret.H e givest he systemfT(X), where While the converseo f this result is not necessarily true,

f is a one-way function. At time t the appropriate au- it is possible for a function originally found in the search

thenticator is f T-t(X), which can be checked by the sys- for one-way functions to yield a good cryptosystem. This

tem by applying ft(X). Because of the one-waynesso ff, actually happened with the discrete exponential function

past responsesa re of no value in forging a new response. discussed in Section III [8].

The problem with this solution is that it can require a fair One-way functions are basic to both block ciphers and

amount of computation for legitimate login (although key generators. A key generator is a pseudorandom bit

many orders of magnitude less than for forgery). If for generator whose output, the keystream, is added modulo

example t is incremented every second and the system 2 to a messager epresented in binary form, in imitation of

must work for one month on each password then T = 2.6 a one-time pad. The key is used as a “seed” which deter-

million. Both the user and the system must then iterate f mines the pseudorandom keystream sequence.A known

an averageo f 1.3 million times per login. While not insur- plaintext attack thus reduces to the problem of deter-

mountable, this problem obviously limits use of the tech- mining the key from the keystream. For the system to be

nique. The problem could be overcomei f a simple method secure, computation of the key from the keystream must

for calculating f c2tn),f or n = 1,2, . . . could be found, much be computationally infeasible. While, for the system to be

as X8 = ((X2)2)2. For then binary decompositions of T - usable, calculation of the keystream from the key must be

t and t would allow rapid computation off T-t and ft. It computationally simple. Thus a good key generator is, al-

may be, however, that rapid computation of fn precludes most by definition, a one-way function.

f from being one-way. Use of either type of cryptosystem as a one way function

suffers from a minor problem. As noted earlier, if the

function f is not uniquely invertible, it is not necessary( or

V. PROBLEMINTERRELATIONSANDTRAPDOORS possible) to find the actual value of X used. Rather any X

with the samei mage will suffice. And, while each mapping

In this section, we will show that some of the crypto-

SK in a cryptosystem must be bijective , there is no such

graphic problems presented thus far can be reduced to restriction on the function f from key to cryptogram de-

others, thereby defining a loose ordering according to

fined above.I ndeed, guaranteeingt hat a cryptosystem has

difficulty. We also introduce the more difficult problem

this property appears quite difficult. In a good crypto-

of trap doors. system the mapping f can be expected to have the char-

In Section II we showed that a cryptographic system

acteristics of a randomly chosen mapping (i.e., f(Xi) is

intended for privacy can also be used to provide authen- chosen uniformly from all possible Y, and successive

tication against third party forgeries. Such a system can

choices are independent). In this case,i f X is chosenu ni-

be used to create other cryptographic objects, as well.

formly and there are an equal number of keys and mes-

sages( X and Y), then the probability that the resultant

A cryptosystem which is secure against a known

Y has k + 1 inverses is approximately e-l/k! for k =

plaintext attack can be used to produce a one-way func-

071 2, 3, f . . . . This is a Poisson distribution with mean X =

tion.

1, shifted by 1 unit. The expected number of inverses is

As indicated in Fig. 3, take the cryptosystem (SK:(P) - thus only 2. While it is possiblef or f to be more degenerate,

{C]}K,(Kf which is securea gainst a known plaintext attack, a good cryptosystem will not be too degenerates ince then

the key is not being well used. In the worst case,i f f (X) =

fix P = POa nd consider the map

Yc for some Yc, we have S,(P,) = Cc, and encipherment

of POw ould not depend’on the key at all!

652 IEEE TRANSACTIONS ON INFORMATION THEORY, NOVEMBER 1976

While we are usually interested in functions whose do- For A and B to establish a common private key, A

main and range are of comparable size, there are excep- chooses a key at random and sends an arbitrary plain-

tions. In the previous section we required a one-way text-cryptogram pair to B. B, who made the trap-door ci-

function mapping long strings onto much shorter ones. By pher public, but kept the trap-door information secret,

using a block cipher whose key length is larger than the uses the plaintext-cryptogram pair to solve for the key. A

blocksize, such functions can be obtained using the above and B now have a key in common.

technique. There is currently little evidence for the existence of

Evans et al. [lo] have a different approach to the prob- trap-door ciphers. However they are a distinct possibility

lem of constructing a one-way function from a block cipher. and should be remembered when accepting a cryptosystem

Rather than selecting a fixed Pa as the input, they use the from a possible opponent [12].

function By definition, we will require that a trap-door problem

f(X) = SXLQ. (16) be one in which it is computationally feasible to devise the

trap door. This leaves room for yet a third type of entity

This is an attractive approach because equations of this

for which we shall use the prefix “quasi.” For example a

form are generally difficult to solve, even when the family

quasi one-way function is not one-way in that an easily

S is comparatively simple. This added complexity, how-

computed inverse exists. However, it is computationally

ever, destroys the equivalence between the security of the

infeasible everrfor the designer, to find the easily computed

system S under a known plaintext attack and the one-

inverse. Therefore a quasi one-way function can be used

wayness off.

in place of a one-way function with essentially no loss in

Another relationship has already been shown in Section

security.

IV.

Losing the trap-door information to a trap-door one-way

A public key cryptosystem can be used to generate a function makes it into a quasi one-way function, but there

one-way authentication system. may also be one-way functions not obtainable in this

manner.

The converse does not appear to hold, making the con-

It is entirely a matter of definition that quasi one-way

struction of a public key cryptosystem a strictly more

functions are excluded from the class of one-way functions.

difficult problem than one-way authentication. Similarly,

One could instead talk of one-way functions in the wide

a public key cryptosystem can be used as a public key

sense or in the strict sense.

distribution system, but not conversely.

Similarly, a quasi secure cipher is a cipher which will

Since in a public key cryptosystem the general system

successfully resist cryptanalysis, even by its designer, and

in which E and D are used must be public, specifying E

yet for which there exists a computationally efficient

specifies a complete algorithm for transforming input

cryptanalytic algorithm (which is of course computation-

messagesi nto output cryptograms. As such a public key

ally infeasible to find). Again, from a practical point of

system is really a set of trap-door one-way functions,

view, there is essentially no difference between a secure

These are functions which are not really one-way in that

cipher and a quasi secure one.

simply computed inverses exist. But given an algorithm

We have already seen that public key cryptosystems

for the forward function it is computationally infeasible

imply the existence of trap-door one-way functions.

to find a simply computed inverse. Only through knowl-

However the converse is not true. For a trap-door one-way

edge of certain trap-door information (e.g., the random

function to be usable as a public key cryptosystem, it must

bit string which produced the E-D pair) can one easily find

be invertible (i.e., have a unique inverse.)

the easily computed inverse.

Trap doors have already been seen in the previous

paragraph in the form of trap-door one-way functions, but VI. COMPUTATIONALCOMPLEXITY

other variations exist. A trap-door cipher is one which

Cryptography differs from all other fields of endeavor

strongly resists cryptanalysis by anyone not in possession

in the ease with which its requirements may appear to be

of trap-door information used in the design of the cipher.

satisfied. Simple transformations will convert a legible text

This allows the designer to break the system after he has

into an apparently meaningless jumble. The critic, who

sold it to a client and yet falsely to maintain his reputation

wishes to claim that meaning might yet be recovered by

as a builder of secure systems. It is important to note that

cryptanalysis, is then faced with an arduous demonstration

it is not greater cleverness or knowledge of cryptography

if he is to prove his point of view correct. Experience has

which allows the designer to do what others cannot. If he

shown, however, that few systems can resist the concerted

were to lose the trap-door information he would be no

attack of skillful cryptanalysts, and many supposedly se-

better off than anyone else. The situation is precisely

cure systems have subsequently been broken.

analogous to a combination lock. Anyone who knows the

In consequenceo f this, judging the worth of new systems

combination can do in seconds what even a skilled

has always been a central concern of cryptographers.

locksmith would require hours to accomplish. And yet, if

During the sixteenth and seventeenth centuries, mathe-

he forgets the combination, he has no advantage.

matical arguments were often invoked to argue the

A trap-door cryptosystem can be used to produce a strength of cryptographic methods, usually relying on

public key distribution system. counting methods which showed the astronomical number

DIFFIE AND HELLMAN: NEW DIRECTIONS IN CRYPTOGRAPHY 653

of possible keys. Though the problem is far too difficult to of interest or effort which has prevented people from

be laid to rest by such simple methods, even the noted al- finding solutions in P time for these problems. It is thus

gebraist Cardano fell into this trap [2, p. 1451.A s systems strongly believed that at least one of these problems must

whose strength had been so argued were repeatedly bro- not be in the class P, and that therefore the class NP is

ken, the notion of giving mathematical proofs for the se- strictly larger.

curity of systems fell into disrepute and was replaced by Karp has identified a subclass of the NP problems,

certification via crypanalytic assault. called NP complete, with the property that if any one of

During this century, however, the pendulum has begun them is in P, then all NPproblems are in P. Karp lists 21

to swing back in the other direction. In a paper intimately problems which are NP complete, including all of the

connected with the birth of information theory, Shannon problems mentioned above [14].

[3] showed that the one time pad system, which had been While the NP complete problems show promise for

in use since the late twenties offered “perfect secrecy” (a cryptographic use, current understanding of their diffi-

form of unconditional security). The provably secure culty includes only worst casea nalysis. For cryptographic

systems investigated by Shannon rely on the use of either purposes,t ypical computational costs must be considered.

a key whose length grows linearly with the length of the If, however, we replace worst casec omputation time with

messageo r on perfect source coding and are therefore too average or typical computation time as our complexity

unwieldy for most purposes. We note that neither public measure,t he current proofs of the equivalencesa mong the

key cryptosystemsn or one-waya uthentication systemsc an NPcomplete problems are no longer valid. This suggests

be unconditionally secureb ecauset he public information several interesting topics for research. The ensemble and

always determines the secret information uniquely among typicality concepts familiar to information theorists have

the members of a finite set. With unlimited computation, an obvious role to play.

the problem could therefore be solved by a straightforward We can now identify the position of the general

search. cryptanalytic problem among all computational prob-

The past decadeh as seent he rise of two closely related lems.

disciplines devoted to the study of the costs of computa- The cryptanalytic difficulty of a system whose en-

tion: computational complexity theory and the analysis of cryption and decryption operations can be done in P time

algorithms. The former has classified known problems in cannot be greater than NP.

computing into broad classesb y difficulty, while the latter To seet his, observet hat any cryptanalytic problem can

has concentrated on finding better algorithms and be solved by finding a key, inverse image, etc., chosenf rom

studying the resources they consume. After a brief di- a finite set. Chooset he key nondeterministically and verify

gression into complexity theory, we will examine its ap- in Ptime that it is the correct one. If there are M possible

plication to cryptography, particularly the analysis of keys to choosef rom, an M-fold parallelism must be em-

one-way functions. ployed. For example in a known plaintext attack, the

A function is said to belong to the complexity classP (for plaintext is encrypted simultaneously under each of the

polynomial) if it can be computed by a deterministic keys and compared with the cryptogram. Since, by as-

Turing Machine in a time which is bounded aboveb y some sumption, encryption takes only P time, the cryptanalysis

polynomial function of the length of its input. One might takes only NP time.

think of this as the classo f easily computed functions, but We also observet hat the general cryptanalytic problem

it is more accurate to say that a function not in this class is NP complete. This follows from the breadth of our

must be hard to compute for at least some inputs. There definition of cryptographic problems. A one-way function

are problems which are known not to be in the class P [13, with an NP complete inverse will be discussed next.

pp. 405-4251. Cryptography can draw directly from the theory of NP

There are many problems which arise in engineering complexity by examining the way in which NY complete

which cannot be solved in polynomial time by any known problems can be adapted to cryptographic use. In partic-

techniques, unless they are run on a computer with an ular, there is an NP complete problem known as the

unlimited degree of parallelism. These problems may or knapsack problem which lends itself readily to the con-

may not belong to the class P, but belong to the class NP struction of a one-way function.

(for nondeterministic, polynomial) of problems solvable Let y = f(x) = a . x where a is a known vector of n in-

in polynomial time on a “nondeterministic” computer (i.e., tergers (al,az, . -. ,a,) and x is a binary n-vector. Calcu-

one with an unlimited degree of parallelism). Clearly the lation of y is simple, involving a sum of at most n integers.

class NP includes the class P, and one of the great open The problem of inverting f is known as the knapsack

questions in complexity theory is whether the class NPis problem and requires finding a subseto f the (ai) which sum

strictly larger. toy.

Among the problems known to be solvable in NP time, Exhaustive search of all 2n subsetsg rows exponentially

but not known to be solvable in P time, are versions of the and is computationally infeasible for n greater than 100

traveling salesmanp roblem, the satisfiability problem for or so. Care must be exercised, however, in selecting the

propositional calculus, the knapsack problem, the graph parameters of the problem to ensuret hat shortcuts are not

coloring problem, and many scheduling and minimization possible.F or example if n = 100a nd eacha i is 32 bits long,

problems [13, pp. 363-4041,[ 14]. We seet hat it is not lack y is at most 39 bits long, and f is highly degenerate; re-

654 IEEE TRANSACTIONS ON INFORMATION THEORY, NOVEMBER 1976

quiring on the average only 238t ries to find a solution. The failure of numerous attempts to demonstrate the

Somewhat more trivially, if ai = 2i-1 then inverting f is soundnesso f cryptographic systems by mathematical proof

equivalent to finding the binary decomposition of y. led to the paradigm of certification by cryptanalytic attack

This example demonstrates both the great promise and set down by Kerchoffs [2, p. 2341i n the last century. Al-

the considerable shortcomings of contemporary com- though some general rules have been developed, which aid

plexity theory. The theory only tells us that the knapsack the designer in avoiding obvious weaknesses,t he ultimate

problem is probably difficult in the worst case.T here is no test is an assault on the system by skilled cryptanalysts

indication of its difficulty for any particular array. It ap- under the most favorable conditions (e.g., a chosen plain-

pears, however, that choosing the {ai) uniformly from text attack). The development of computers has led for the

{O,i,Z, * - - ,2n-l] results in a hard problem with probability first time to a mathematical theory of algorithms which can

oneasn-m. begin to approach the difficult problem of estimating the

Another potential one-way function, of interest in the computational difficulty of breaking a cryptographic

analysis of algorithms, is exponentiation mod q, which was system. The position of mathematical proof may thus come

suggested to the authors by Prof. John Gill of Stanford full circle and be reestablished as the best method of cer-

University. The one-wayness of this functions has already tification.

been discussed in Section III. The last characteristic which we note in the history of

cryptography is the division between amateur and pro-

VII. HISTORICALPERSPECTIVE fessional cryptographers. Skill in production cryptanalysis

has always been heavily on the side of the professionals,

While at first the public key systems and one-way au-

but innovation, particularly in the design of new types of

thentication systems suggested in this paper appear to be

cryptographic systems, has come primarily from the am-

unportended by past cryptographic developments, it is

ateurs. Thomas Jefferson, a cryptographic amateur, in-

possible to view them as the natural outgrowth of trends

vented a system which was still in use in World War II [2,

in cryptography stretching back hundreds of years.

pp. 192-1951,w hile the most noted cryptographic system

Secrecy is at the heart of cryptography. In early cryp-

of the twentieth century, the rotor machine, was invented

tography, however, there was a confusion about what was

simultaneously by four separate people, all amateurs [2,

to be kept secret. Cryptosystems such as the Caesar cipher

pp. 415,420,422-4241. We hope this will inspire others to

(in which each letter is replaced by the one three places

work in this fascinating area in which participation has

further on, so A is carried to D, B to E, etc.) depended for

been discouraged in the recent past by a nearly total gov-

their security on keeping the entire encryption process

ernment monopoly.

secret. After the invention of the telegraph [2, p. 1911,t he

distinction between a general system and a specific key

allowed the general system to be compromised, for exam-

REFERENCES

ple by theft of a cryptographic device, without comprom-

ising future messagese nciphered in new keys. This prin- [I] R. Merkle, “Secure communication over an insecure channel,”

ciple was codified by Kerchoffs [2, p. 2351w ho wrote in submitted to Communications of the ACM.

1881 that the compromise of a cryptographic system [2] D. Kahn, The Codebreakers, The Story of Secret Writing. New

York: Macmillan, 1967.

should cause no inconvenience to the correspondents. [3] C. E. Shannon, “Communication theory of secrecy systems,” Bell

About 1960, cryptosystems were put into service which Syst. Tech. J., vol. 28, pp. 656-715, Oct. 1949.

were deemed strong enough to resist a known plaintext [4] M. E. Hellman, “An extension of the Shannon theory approach to

cryptography,” submitted to IEEE Trans. Inform. Theory, Sept.

cryptanalytic attack, thereby eliminating the burden of

1975.

keeping old messagess ecret. Each of these developments [5] W. Diffie and M. E. Hellman, “Multiuser cryptographic techniques,”

decreased the portion of the system which had to be pro- presented at National Computer Conference, New York, June 7-10,

1976.

tected from public knowledge, eliminating such tedious

[6] D. Knuth, The Art of Computer Programming, Vol. 2, Semi-

expedients as paraphrasing diplomatic dispatches before Numerical Algorithms. Reading, MA.: Addison-Wesley, 1969.

they were presented. Public key systems are a natural [7] --, The Art of Computer Programming, Vol. 3, Sorting and

Searching. Reading, MA.: Addison-Wesley, 1973.

continuation of this trend toward decreasing secrecy.

[S] S. Pohlig and M. E. Hellman, “An improved algorithm for com-

Prior to this century, cryptographic systems were limited puting algorithms in GF(p) and its cryptographic significance,”

to calculations which could be carried out by hand or with submitted to IEEE Trans. Inform. Theorv.

[9] M. V. Wilkes, Time-Sharing Computer Systems. New York: El-

simple slide-rule-like devices. The period immediately

sevier, 1972.

after World War I saw the beginning of a revolutionary [lo] A. Evans, Jr., W. Kantrowitz, and E. Weiss, “A user authentication

trend which is now coming to fruition. Special purpose system not requiring secrecy in the computer,” Communications

of the ACM, vol. 17, pp. 437-442, Aug. 1974.

machines were developed for enciphering. Until the de-

1111G . B. Purdy, “A high security log-in procedure,” Communications

velopment of general purpose digital hardware, however, of the ACM, vol. 17, pp. 442-445, Aug. 1974.

cryptography was limited to operations which could be 1121W . Diffie and M. E. Hellman, “Cryptanalysis of the NBS data en-

cryption standard” submitted to Computer, May 1976.

performed with simple electromechanical systems. The

[I31 A. V. Aho, J. E. Hopcroft, and J. D. Ullman, The Design and

development of digital computers has freed it from the Analysis of Computer Algorithms. Reading, MA.: Addison-

limitations of computing with gears and has allowed the Wesley, 1974.

[I41 R. M, Karp, “Reducibility among combinatorial problems,” in

search for better encryption methods according to purely

Complexity of Computer Computations. R. E. Miller and J. W.

cryptographic criteria. Thatcher, Eds. New York: Plenum, 1972, pp. 855104.

51作业君

Email:51zuoyejun

@gmail.com

添加客服微信: Fudaojun0228