Theses
Thesis/Dissertation Collections
1981
Cryptography and its application to operating
system security
Michelle Painchaud
Follow this and additional works at:
http://scholarworks.rit.edu/theses
This Thesis is brought to you for free and open access by the Thesis/Dissertation Collections at RIT Scholar Works. It has been accepted for inclusion
in Theses by an authorized administrator of RIT Scholar Works. For more information, please contact
Recommended Citation
Michelle
Painchaud
Submitted
to
the
faculty
ofthe
School ofComputer
Science &Technology
in
partialfulfullment
of
the
requirementsfor
the
degree
ofT
h i
s
i
s
t
o
c
~
r
t
i f y
t
ha t
tl!
g
h
el
l
e_
E
a1o
ch
a
ud_
ha
s
s
ub
m
i t ted
a
t
h e
~i
s e~
ti tled
:
~
':~2~
c:
~P
~~E
~~
n
~
!!
~
L!!
§
_
A
2 2
Jj
,
Q
~
t
i
QU
_
to
_
Q
lle r:a
t. ing
_S}tS
t.
ec
.
-S6.G-
a-
F i-t-y
t
o
t
he
fac
u l ty
of
t
h e
Scho
e
l
of
C
o
~pu
ter
Sc
ien
ce
a
n d
Teeh l.o
lo
fY
in
par
t ia l
ful
fi l lme~ t
of
t
h e requ
i reme
nts
for
t
he deg
r
ee
o
f
Mes
ter
of Seien
ep-
.
App
r
ov e
L
:
JiJ
J
.
V ..1lL
_
_
{d
a
t
e )
_J~~~eY_ lt~K5~~j_~
_
(eomn
1i
t tee
nlembe
r
)
6
.,11 21 8
L
__
1.
Growing
Interestin
Security
andPrivacy
2.
Security
versusPrivacy
3.
Environmental
Threats4.
Cryptography
and Data Protection5.
Whatis
Cryptography?6.
Cryptography
in
the
Past7.
Cryptography
in
Transition8.
Cryptography
in
the
Age of Automation9.
Codes versus Ciphers10.
Basic
Components ofCryptography
II.
Substitution Techniques12.
Transposition Ciphers13.
Applicability
for
Computer
use14.
Message-OrientedSystems
15.
Information-OrientedSystems
16.
ProductCiphers
17.
Principles ofConfusion
and Diffusion18.
PrinciplesUnderlying Present-Day
Ciphers18.1
stream ciphers18.2
block
ciphers*
18.3
stream versusblock
encipherment19.
A
Block CipherCalled
DES
20.
Lucifer -A
Model
for
the
DES
22.2
the
key
schedule calculations23.
isthe
Data
Encryption StandardSecure?
24.
Summary
of Part OnePART
TWO
1.
Operating
SystemSecurity
2.
NetworkSecurity
Threats3.
Encryption
and NetworkSecurity
4.
Implementation of Encryption within the Network5.
Network Applications ofEncryption
5.1
authentication5.2
private communication5.3
network mail5.4
digital
signatures6.
Limitations ofEncryption
6.1
processing
in
plaintext]
6.2
revocation '6.3
protection against modification6.4
key
storage and management7.
Public-Key
Cryptosystems
versusConventional
Cryptosystems
7.1
conventional encryption7*.
2
public-key
encryption8.
Key
Management9.
Conventional-Key Distribution
9.3
hierarchical
key
control10.
Public-Key
Based DistributionAlgorithms
11.
Public-Key
versusConventional-Key
Distributionfor
PrivateCommunication
12.
Public-Key
Cryptosystems13.
Merkle-Hellman
Scheme14.
Rivest-Shamir-Adleman(RSA)
Scheme15.
User Authentication16.
FileEncryption
16.1
protection of removable media16.2
encryptionfor
internal
processing
16.3
data
encryptionin
the
main store17.
Network Mail18.
DigitalSignatures
18.1
aconventional-key
approachusing
network-registry-based
signatures18.2
notary-publicbased
signatures18.3
notary-public versus network-registry-based signatures19.
Execution Time Requirementsfor
Encryption Algorithms20.
Conclusionas a
result,
these
two
topics areappearing
in
agrowing
numberof computer related discussions
(Conway,
et. al. ,1972).
Thiscurrent
interest
was not alwaysthe
casefor,
up
until thelast
decade,
these
issues
were of minimal concern andonly
informa
tion which was vital
for
nationalsecurity
wasdeemed
relevantfor
protection purposes(Martin,
1970)
(Feistel,
et. al. ,1971).
The advent of computer systems awakened
the
commercial,
private,
and
legal
sectors to the problem ofensuring
privacy
and security
(
Dinardo,
1978).
Dueto
the
increasing
use of computers as a means ofproviding
cheap
and efficient communications plustheir
ability
to
process tremendous amounts of sensitiveinfor
mation,
coupled withthe
vulnerability
of these systems andtheir
data
files
to
penetration,
the needfor
privacy
and security
within computer systemsbecame
increasingly
apparent(Ko-lata,
1977).
Thus,
the
culmunation oflegislative
and societalpressures combined with
technological
innovations
resultedin
the current
interest
in
computersecurity
andprivacy
(Burns,
1977)(Konheim,
1978).
Security
versusPrivacy
Security
andprivacy
are related. Often timediscussions
involving
theseissues
lump
the
two togetherthereby
failing
to distinguish
their
differences.
As aresult,
privacy
andsecurity are
frequently
confused with one another(Davida,
1978).
and use of all personal
information.
Incontrast,
the
technicalmeans of
controlling
accessto,
modification,
anddissemination
of,
data
is
dealt
withby
security
which ensures the enforcementof all
privacy
decisions(Conway,
et. al. ,1972).
Environmental
ThreatsSensitive
information
stored withinthe
computer networkis
highly
vulnerableto
disclosure
thus
making
the task ofdata
privacy
andsecurity
extremely
difficult
(Sykes,
1976).
Data
is
always susceptibleto
monitoring,
modification,
misrouting,
or substitutionduring
its
transferral
over communication
links.
But
perhaps an even greater and moreinsidious
danger
is
the
insertion
of spuriousdata
designed
to confuse ormisdirect
the
operation of the system(Benedict,
1974).
Whenever a storage
device
such as adisk
is
usedto
store sensitivedata,
thereis
alwaysthe
danger
that
this
information
willbe
accessed
by
unauthorizedindividuals.
If
thedata
is
stored onremovable media such as
disc
packs or magnetictapes,
the
additional
threat
ofthe
physical removal ortheft
ofthe
infor
mation exists
(Sykes,
1976).
If
the
networkis
notsuitably
protectedthen
the
perpetration of
any
ofthese
threats
canlead
to
considerabledamage
which
may
resultin
rendering
the
network uselessfor
communication purposes and/or
the
storage of sensitiveinformation
(Popek
&Kline,
1979).
Consequently,
in
orderto
securely
protect
anetwork,
the
failures,
vulnera-Cryptography
and Data ProtectionThe use of
cryptography
to
protectinformation
within thenetwork
is
one meansby
which theprivacy,
secuz-ity,
andinteg
rity
ofinformation
exchange canbe
safeguarded(Popek
&Kline,
1979).
Cryptography
is
both
the
method and the processthrough
which communicated and stored
data
canbe
protected againsttheft
or misuse regardless of whether or not the
disclosure
is
legal
or
illegal
andthe
attemptis
deliberate
or accidental.Although
cryptography
by
itself
is
not sufficientto
protect asystem,
it
can
be
usedto
supplement otherdata
security
countermeasures(Keys
&
Clamons,
1974).
What
is
Cryptography?
Cryptography
is
ahighly
technical
science whichdeals
withthe
techniquesby
whichthe
originator ofthe
information
cantransform
the
messagein
such away
that
it
is
unintelligibleif
intercepted
by
someone otherthan
the
intended
receiver(Dinardo(l
1978).
Itis
this
transformation
of originaltext
orplaintext,
usually
on abit
or characterlevel,
into
meaninglessjiimble
orciphertext which
is
referredto
as encryption(Benedict,
1974).
Decryption
is
the opposite of encryption andis
the
reversal ofthe transformation
process,
enabling
the unintelligible messageto
be
reconvertedback
into
meaningfulform.
Both encryptionand
decryption
are carried outby
means of an algorithm referred
to
as a cipher system(Katzan,
1977).
Associated
withwhich
is
the
sole means ofdetermining
the
transformation
usedfor
the
encryption/decryption process(walker
&
Blake,
1977).
The
primary
objective ofcryptography
is
to
produce complex
data
transformations suchthat
the
amount oftime
and resources required
to
break
the
ciphertextby
far
exceeds thevalue of
the
information
whichis
being
protected. The "timefactor"
enables
the
sensitiveinformation
to
be
kept
securelong
enough so
that
it
may
be
out-dated andtherefore
uselessby
thetime
the
intruder
finally
breaks
the
cipher. The"cost
factor",
on
the
otherhand,
resultsin
the
intruder paying
ahigher
pricefor
the
information
thanit
is
actually
worthto
him
(Hellman,
1979)(Mellen,
1978).
Cryptography
in
the PastCryptography,
whichliterally
means "hiddenwriting",
ini
tially
evolved as an art andis
believed
to
have
developed
in
dependently
in
various ancient civilizations such asEgypt,
India,
andMesopotamia
(Lempel,
1979).
It was not until muchlater
with the systematization of cryptographictechniques
by
the Arabs
that
cryptography
wasfinally
transformedfrom
an artinto
a science(Branstad,
1977).
Cryptography
in
Transition
Throughout
history,
cryptographic techniques were constantly
changing
as a result ofthe
pursuitfor
a perfect cipher system
which wasimpenetrable
to
crypt analytic attack. One ofthe
earliest cryptographic
techniques
devised
replaced eachletter
of the plaintext message with one of several substitutes called
07
16
27
55
75
99
or07
20
27
55
36
99.
Noticethat
whilethe
homophones
for
theletter
"e"varied,
the
substitutionsfor
the
other
letters
remained constant. Thus encryption ofthe
sameword
two
or more times withinthe
same message enabled thecryptanalyst
to
reduce thehomophones
to
equivalentterms
andto|
the eventual
cracking
ofthe
cipher. Thistechnique,
therefore,
was soon
discarded
sinceit
relied ontoo
obvious a substitutiontechnique
(Kahn,
1966).
It was not until
1466
in
Italy
that
thefoundations
for
modern
cryptography
werelaid.
Leo Battista Albertidevised
acryptographic
technique
referredto
as polyalphabeticity.Whereas
in
previous ciphersystems,
only
a single alphabet wasused
to
encipherthe
message,
thus
the
term
raonoalphabetic,
this)
technique employed several
different
cipher alphabets orsubsti-|
tution alphabets which were used
periodically
to
encipherthe
message
(Diffie
&Hellman,
1979).
These cipher alphabets weregenerated
from
asingle,
primary
alphabetby
varying
the starting
letters
of the alphabetsin
relationto
theprimary
alphabet.
For
example,
if
theprimary
alphabet wasABC...XYZ
then
acipher alphabet could
be
createdby
starting
withthe
third
let-|
ter
thus
yielding
CDEF.
..XYZAB. Each cipher alphabethad
associated with
it
a uniquekeyletter
orstarting
letter.
Therefore,
in
thepreceding
example,
the
keyletter
for
the
cipheralphabet would
be
"c" sincethis
letter
signifiedthe
starting
bet
wasto
be
usedto
encipherthe
following
words(Kahn,
1966)
(Simmons,
1979).
Through
the use of numerous cipher alphabetsto
encipher asingle
message,
the cipher equivalentsfor
the
plaintextletters^
varied
thus
enabling
this
methodto
withstand cryptanalysis moreeasily
than
the previous monoalphabetic methods. Cryptanalysiswas
by
far
moredifficult
sincethe
intruder had
to
know
whichalphabet was used
for
eachletter
in
orderto
decipher
the
in
formation
(Diffie
&Hellman,
1979)
(Lempel,
1979).
In
the
years thatfollowed
majorimprovements
were madeto
this cipher system.
However,
it
was not until1553
that
Gio
vanni Battista
Belasco
devised
an efficient and secure means ofindicating
the current cipher alphabetin
use. Aneasily
remembered and
interchangeable
keyword
wasrepeatedly
writtenover
the
letters
ofthe
plaintext message. Eachletter
ofthe
keyword
wasthen
usedto
designate
the
cipher alphabetthat
wasto
be
usedto
encipherthe
corresponding
plaintextletter
(
seefigure
2).
Although this system remained
essentially
impregnable
overthe
next300
years,
it
was notwidely
used.Due
to
the
fact
that
this
systemtook
some effortto
employ
and was subjectto
error,
elaboratehomophonic
systems whichdid
not require multiple
cipher alphabets were usedinstead.
However,
withthe
invention
of the electrictelegraph,
aflexible
cipher systemIn
1863,
Friedrich Kasiski published a methodfor
solving
polyalphabetic ciphers that was
based
uponrepeating
keys.
Therepetition of a frequent plaintext trigram such as "ing" or
"thej
in
conjunction withthe
same portion of therepeating
key
produced
equivalent ciphertext. If enough repeated ciphertext wasmade available
to
the cryptanalyst,it
was possibleto
determine
the
length
of thekey
usedfor
encryption andthe
number ofi
times
the
key
was repeatedbetween
repetitions of ciphertext.The cryptanalyst could then proceed
to
sort theletters
of thecryptogram
into
groupsbased
uponkey
length
andsubsequently,
analyze each
group
according
to
the principles ofletter
fre
quency
(see
figure
3)(Diffie
&Hellman,
1979).
The
discovery
of thevulnerability
of polyalphabetic ciphers spurred
interest
in
thedevelopment
of moreingenious
enciphering
schemes. One ofthe
outgrowths of this period was'the
proposalthat
asingle,
continuous nonrepeatingkey,
such asjlthe
text of abook,
be
usedin
place ofrepeatedly
using
ail
jjsingle
wordto
encipher the plaintext(see
figure
4).
In spitei;
iiof
thefact
that therunning
key
prevented theperiodicity
ex-ij
iploited
by
theKasiski
solution,
this proposal was shortlived
if
or Auguste Kerckhoffdemonstrated
that this cipher system wasno more secure
than
the
previously
used polyalphabetic ciphers(Lempel,
1979).
A
technique
referredto
as superimpositionpermitted the
isolation
oftwo
or moreidentical
ciphertextto
obtain sufficientinformation
to
solve the cipher(Diffie
&
Hellman,
1979).
In thisway,
Kerckhoff's
superimposition methodcould
be
used tobreak
any
polyalphabetic cipherdevised
up
untilthis
time
(Kahn,
1966)
(
Simmons,
1979)
(Mellen,
1978).
In
theearly
1900's
the
discovery
was madethat
only
onecipher could resist
the
superimpositiontechnique.
This ciphersystem employed a
nonrepeating
key
which wasboth
meaninglessand without pattern
(see
figure
5).
Thekey
consisted of atotally
random numericalstring
which was added tothe
numericalrepresentation of the plaintext
(Feistel,
1973).
Thesecurity
of this system was
dependent
upon thekey
used to encipher themessage
being
nonreusable and the samelength
asthe
message(Diffie
&Hellman,
1979).
Although
this
"one-timesystem",
asit
wascalled,
\^as unbreakable,
practicaldifficulties
existed. Theextremely
long
key
which was required resultedin
this
systembeing
prohibitively
expensivefor
most applications(Diffie
&Hellman,
1976).
This system was also plagued
by
key
management problems whichresulted
from
the
advance preparation anddistribution
of thekey.
Consequently,
the
"one-time
system"was
impractical
for
universal use
(Lempel,
1979).
The
failure
ofthe
"one-time
system"as a
flexible
ciphersystem
led
to
the
searchfor
alternative cipher systems.Thus
the period
from
1917
through
World
WarII
witnessed thedevel-i
The rotor machine,
first
developed
by
EdwardH.
Hebemin
1917,
wasprobably
one ofthe
best
examples ofthis
modernsys-j
tem.
This machine consisted of ahard
rubberdisk
or rotort
which contained twenty-six contacts on each side.
By
randomly
j
wiring
the
twenty-six contacts on one sideto
the
twenty-sixcontacts on the other side and
through
the
use ofup
to eightrotors which rotated on
the
sameaxis,
the set of rotors provided an electrical path comparable to a series of cipher
alpha-j
bets.
By depressing
keys
onthe
machine'stypewriter
keyboard,
!
i|
a plaintext
letter
was transformedinto
a cipherletter
whichwas
illuminated
on the panel. After eachletter
wasenciphered,
one or more of
the
rotors rotated to a new spacethereby,
establishing
a new electrical path andconsequently,
substituting
anew cipher alphabet
(Kahn,
1966) (
Simmons,
1979).
Another polyalphabetic system called
the
Hagelindevice
was
invented
in
1934
by
Boris
C.
W.
Hagelin.
Thisdevice
consisted of a variable
toothed
gear which was usedto
drive
a cipher alphabet
through
a variable number of places. In comparison
to
the
rotormachine,
this
device
was simplerto
use andmuch
cheaper,
however,
it
was not as secure. Despitethis
drawback,
the Hagelindevice
was used quitefrequently during
the years that
followed
(Kahn,
1966).
All of
the
systemsdiscussed
sofar
encipheredonly
oneletter
at atime,
thus
the
term
monographic systems.The
enpos-sible
through
the use of polygraphic cipher systems. One ofthe|
best known
polygraphic system wasthe
PlayfairCipher
(Katzan,
1977).
The
Playfair
Cipher wasbased
upondigraphic
substitutionwhich permitted
two
characters tobe
encipheredsimultaneously
through
the
use of a5x5
substitution matrix. The plaintextmessage was
first
divided
into
groups oftwo
characters. Theoccurrence of
any
double
letters
withinthe
groups wascorrected
by
theinsertion
of aninfrequently
usedcharacter,
such as "x"or "z"
thereby,
eliminating
pairs ofidentical
characters.By
referring
to
the
matrix,
each pair of plaintext characters wastransformed
into
an equivalent ciphertext pairaccording
to
the
following
rules:1)
if
the
pair of plaintextletters
werein
the
samerow,
thenthe
corresponding
ciphertextletters
werefound
to
the
immediate
right ofthe
plaintextletters,
2)
if
the
two
plaintext characters werein
the
samecolumn,
the
e-quivalent ciphertext characters were
the
letters
immediately
below
the plaintextones,
and3)
if
the
pair of plaintext characters were neither
in
the
same row nor the samecolumn,
the
ciphertext equivalent of each character was
the
letter
found
atthe
intersection
ofthe
corresponding
row andcolumn,
withthe
row
letter
of thefirst
plaintextletter
being
first
(see
fig
ure
6)
(Katzan,
1977)
(Kahn,
1966).
The
polygraphic system wasby
far
superior with respectto
security
thanthe
monographicsystem.
This
system wasbetter
equipped
to
resistfrequency
analysisby
making
available
acharacteristics of the
letters.
As aresult,
the
task
ofthe
cryptanalyst
was madeexceedingly difficult
(Kahn,
1966)
(Sim
mons,
1979)
(Katzan,
1977).
Cryptography
in
the
Age ofAutomation
The
discovery
that
digraphic
substitution provided greatersecurity
enhancementsnaturally
led
to
the
assumptionthat
systems
which enciphered severalletters
at atime
would offer eveiigreater
security
measures.Lester
S.
Hill
was responsiblefor
inventing
an algebraic polygraphic systemthat
was capable ofenciphering
any
number ofletters
simultaneously
(Simmons,
1979]
With
his
discovery,
the
seeds of modern algebraiccryptography
were
laid
(Diffie
&Hellman,
1979).
Algebraic
cipherstransformed
letters
to
numbersby
meansof a
table
look-up
operation.
Encryption
anddecryption
werethen
performedthrough
the
use of conventional mathematicalmethods
(Katzan,
1977).
InHill's
system,
afterthe
letters
([were
convertedto
numericalvalues,
these
numbers were used asli
variables
in
a set of simultaneous equations. The cipher'skey
consisted ofthe
constants whichformed
the
equations.
Although
theoretically
nolimits
were set onthe
number oflet
ters
that
couldbe
encipheredsimultaneously,
practical restrictions
limited
the
enciphermentto
only
afew
letters
(Sim
mons,
1979)
(Katzan,
1977).
Hill's
system was neverseriously
usedprimarily
because
of
this
system'svulnerability
to
cryptanalyticattack.
De
spite
the
failure
ofthis
system,
the
theory
behind
it
was valtrans-formations
(Diffie
&Hellman,
1979).
Thus,
the yearsthat
fol
lowed
sawthe
development of greater sophisticationin
ciphersystems and witnessed
the
corresponding
growthin
complexity
with regard
to
the
simultaneous equations. Thisimplementation
of more
ingenious
enciphering
schemes wasdirectly
relatedto
the
invention
of the computer. The computerincreasingly
began
to
play
a more vital rolein
thedesign
ofhighly
technical
ciphers and
the
computational powerthat
became
available with theuse of
the
computerhad
a significantimpact
oncryptography
(Lempel,
1979).
Prior
to
thedevelopment
of electroniccomputers,
only
simple electromechanical systems existed
thus
restricting
thetype
of cryptographic operation which couldbe
performed. Thecomputer,
whichdid
notrely
uponthe
use of gearsfor
its
computing
power,
was ableto
break
throughthese
restrictions. Asa
consequence,
the
availablecomputing
powerincreased
substantially
andfor
the
first
time,
the searchfor
better
encryptionmethods
according
to
purely
cryptographic criteria was madepos.f
sible
(Diffie
&Hellman,
1976).
The
introduction
ofthe
digital
computer was responsiblenot
only
for
increasing
the
availablecomputing
powerbut
alsofor
permitting
a more adequate means oftesting
the
strength ofthe
cipher system.During
the
16th
and17th
centuries,
mathematical
arguments were ofteninvoked
to
verify
the
strength ofthe
cryptographicsystems.
These mathematical methods reliedheavily
uponthe
use ofcounting
methodsin
orderto
showthat
particu-lar
system. As systems whose strengthhad
been
so argued wererepeatedly
broken,
the
notion ofgiving
mathematical proofsfor
the
security
of the systems wasabandoned.
This
resultedin
this
technique
being
replacedby
certification throughcryptan-alytic assault which tested
the
ability
ofthe
cryptosystemto
withstand attack
by
a skilled cryptanalyst(Diffie
&
Hellman,
1976).
This approach remaineddominant
untilthe
availability
of the computer
led
to
the
formation
of a mathematicaltheory
ofalgorithms which permitted an estimate of the computational
dif
ficulty
involved
in
cracking
the cipher system. Thecryptog
rapher was
thus
ableto
design
various mathematical models andto
employ
the
computerto
determine
which ofthe
models was themost secure
(Diffie
&
Hellman,
1979)
(Mellen,
1978).
The
introduction
of electronic computersprofoundly
influ
enced
cryptography
and was responsiblefor
ushering
in
the
modern age of cryptography.
However,
only
the practice ofcryp
tography
has
been
affectedby
the use ofcomputers,
for
the
underlying
principles ofthis
sciencehave
remained unchanged(Mellen,
1978).
Cryptography
has
gained a valuableally
in
the
computer and
it
is
increasingly
apparentthat
the
computerit
self
may
wellbenefit
from
this
alliance. Withthe
evergrowing
need
for
security
andprivacy,
digital
computersmay
wellfind
themselves
in
need ofcryptography
(Girsdansky,
1971).
Codes versus
Ciphers
Encryption can
be
achievedin
one oftwo
ways -through
the
use of ciphers or
through
the
use of codes. All ofthe
systemstheoretically,
thereis
little
difference between
the
two,
in
practice ciphers and codes are quite
distinct
(Kahn,
1966).
Ciphers
are composed of plaintextletters
of constantlength
and are
usually
character oriented or charactergroup
oriented.Encryption
is
performedby
mapping
acharacter,
orgroup
ofchar^
acters,
into
a character orgroup
of characters. Since ciphersassign substitute symbols
to
some given set of alphabeticlet
ters,
any
message canbe
encipheredby
aproperly
designed
cipher
(Davida,
et. al. ,1978).
Consequently,
a cipher canbe
iused
to
encryptany
information
or messagethat
was never saidbefore
nor was ever anticipated asneeding
to
be
stated(Feistel
1973).
Codes,
onthe
otherhand,
are composed of plaintextletters
of variable
length
and are not asflexible
as ciphers. Unlikeciphers which
ignore
linguistic
structure,
codes are semantici
;in nature.
They
are collections of prearranged substitutionsI
jfor
words and phrases(Feistel,
et. al.,
19
71).
The process of|
encryptionis
accomplishedby
referring
to a preordainedtable,
i
jusually
called a codebook,
which consists of alist
ofletters,
jwords,
and/or phrasestogether
withthe
corresponding
randomjgroups
of numbers orletters
called codegroups(Diffie
& Hell-iiman,
1979).
As a result of codesbeing
prearranged substitutions,
only
meaningsthought
ofin
advance and which canbe
composed
from
prearranged messages canbe
used.Therefore
the
type
of message whichmay be
encodedis
severely
limited
(Da
vida,
et. al. ,1978).
failure
to
be
easily
automated and moreimportantly,
the
diffi
culty
in
changing
thekey,
or codebook,
if
the
key
is
compromised
has
resultedin
codes notbeing
widely
used(Diffie
&Hell
man,
1979).
Basic
Components
ofCryptography
Essentially
cryptography
consists ofonly
two
types
of operations: substitution and
transposition
(Simmons,
1979).
Thevarious
enciphering
schemesin
usetoday
aremerely
variationsin
the
complexity
ofthese
two
operations.Substitution,
whichis
the
mostelementary
ofthe
two,
in
volves
the
replacement of plaintext characters with other characters,
numbers,
orarbitrary
symbols asillustrated
below.
CANCEL
RENDEVOUS
plaintextXMAXLE
PLAQLGBYR
ciphertextIn
this
technique,
the various characterscomprising
the plaintext
message retaintheir
positionbut
lose
their
identity
uponencryption
(Katzan,
1977)
(Diffie
&Hellman,
1979).
In contrast
to
substitution,
transposition
techniques
actually
rearrangethe
charactersin
the
plaintext message.This
results
in
the
charactersretaining
their
identity
but
losing
their
position(Katzan,
1977).
TOMORROW
plaintextWMTOOROR
ciphertextiSubstitution
Techniques
Cipher
systems whichdepend
upon substitution methods aremuch more
diverse
and morewidely
usedthan
those
systems whichfor
their
universal appealis
their
relative ease of application
(Diffie
&
Hellman,
1979).
Despite their easein
implemen
tation,
substitution ciphers offer minimalsecurity
enhancementssince
they
areeasily
solvedby
means offrequency
analysis.The cryptanalyst need
only
make atable
listing
the
frequencies
of
the
variousletters,
letter
pairs(digrams),
andletter
tri-j
pies
(trigrams).
Carefulstudy
of this table reveals thoselet
ters
which occur quitefrequently
(the
letters
"e" and"t"),
I
those which occur rather
infrequently
(the
letters
"q" and"z"),
and
finally,
frequently
occurring
letter
pairs whichusually
reflect
the
pairing
of a vowel with a consonant. Thus throughfrequency
analysis,
the
cryptanalystis
ableto
identify
plaintext
letters
andtheir
corresponding
ciphertext equivalents(Diffie
&Hellman,
1979).
Although substitution ciphers are vulnerable
to
cryptanalyt-j
ic
attack,
the size of the alphabet plays a vital rolein
theease with which the substitution cipher
is
broken.
Too shortan alphabet permits
frequency
analysisto
be
easily
carried out|
while
too
long
of oneintroduces
otherdifficulties.
If thealphabet size
is
increased,
the
compilation of afrequency
table becomes a tedious
task
thus
making
this techniquetoo
pro-t
hibitive
both
with respectto
time and expensefor
the cryptanalyst.
Therefore,
for
substitution techniquesto
be
relative-tly
secure thekey
mustbe
limited
to
a reasonable size- one
that
is
neithertoo
short and therefore vulnerable nor solong
as
to
introduce compilation problems(Diffie
&Hellman,
1979)
Transposition
CiphersAs with substitution
ciphers,
transposition ciphers are also1relatively
easy
to
decipher,
however,
they
are not quite asvul-j
nerable
(see
figure
8).
Frequency
analysis ofthe
letter
pairs;
and
triples
revealsthe
breakup
of commonletter
pairs(i.e.
the
"i"and "e" of the word
"believe"),
thereby
allowing
the plaintext
to
be
reconstructed throughthe
searchfor
permutationswhich rejoin
them.
This permitsthe
recovery
of thekey
used totransform
the
plaintextinto
ciphertext andsubsequently,
the
plaintext
itself
from
the cryptogram alone(Diffie
&
Hellman,
1979).
As a result ofthe
letter
frequencies
in
the
plaintextbeing
invariant
in
cipherform,
transposition techniques are\
i
seldom used
by
themselvesdue
to
their
vulnerability
to
crypt-j
analytic attack
(Katzan,
1966).
!
Applicability
for
Computer
UseBoth transposition and substitution techniques are
ideally
suited
for
cryptographicprocessing
by
the
computer. Thesetwo
techniques canbe
easily
implemented
by
means ofthe
binary
number system.
The
use of "n"binary
digits
resultsin
the
generation of
2n
distinct
binary
codes. Thus ablock
of5
bi
nary
digits
can generate32
distinct
combinations - morethan
adequate
to
encodethe
twenty-six
letters
ofthe
standard alphabet.
More combinations are made possibleby
increasing
the
size of the
digit
block
(Katzan,
1966).
In addition
to
the
ease with whichbinary
digits
canbe
rep
resented
in
electroniccircuitry,
they
have
allthe
advantages.multiplied, etc. It
is
this arithmetic manipulation whichplays!'
a vital role
in
cryptographictechniques
designed
for
the computer
(Feistel,
1973).
[Message-Oriented
Systemsj
Substitution
andtransposition
ciphers are applicablefor
situations
in
whichonly
short andtransient
messages arebeing
transmitted,
since
this
type
of messageis
characteristic ofinessage-oriented
systems,
thesetwo
ciphers are well adaptedfor
this type of system(Hsiao
&Kerr,
1978).
Information-Oriented Systems
Situations which
deal
withlarge
databases
andlong
messages require the use of
longer
keys
than are requiredby
message-oriented systems. Although multiple short
keys
have
been
used
to
produce along
compoundedkey,
this solutionis
not always adequate. Situations which require the
easy detection
ofany
errors need a transformation whose ciphertextis
richin
bits
and,
therefore,
sensitiveto
any
change of a singledigit
position. Transformations which
fulfill
these characteristicsprovide
high
messageconfidentiality
plus errordetection.
Substitution and transposition ciphers are unable
to
fulfill
these
needs and are
therefore,
inadequate.
As aresult,
other cipherswhich are
better
suited mustbe
sought out(Hsiao
&Kerr,
1978)
(Diffie
&Hellman,
1979).
Product Ciphers
Transposition and substitution ciphers are seldom used
by
themselves primarily
due
to
their
vulnerability
to
cryptanalyticother methods allows
them
to
become
important
componentsin
morecomplex cipher systems
(Katzan,
1966).
Product
ciphers consist ofboth
transposition
and substitution
techniques.
If
transposition
and substitution ciphers areproperly
combined anditerated
a number oftimes,
they
providea
high
degree
ofsecurity,
much morethan
they
would otherwiseprovide
by
themselves
(Feistel,
1971)
(Diffie
&Hellman,
1979).
Product
ciphers enablethe
construction of astrong
systemfrom
simple,
individually
weak components. Thus theelementary
schemes of substitution and
transposition,
which act aslow
costbuilding
blocks,
canbe
efficiently
combinedto
form
complex ciphers
(Lempel,
1979).
Principles
ofConfusion
andDiffusion
Diffusion
and confusion aretwo
othertechniques
by
whichcomplex cipher systems can
be
generated.They
areespecially
useful
in
information-oriented
systems which require aflexible
cipher that
is
capable of errordetection.
The purpose of
diffusion
is
to
diffuse
or spreadlocal
statistics throughout
the
length
ofthe
message.Diffusion
attempts
to
eliminate some ofthe
correlations anddependencies
among
the
variables andin
thisway
anintruder has
to
intercept
larger
amounts of enciphered materialin
orderto
decipher
evena small portion of
the
message(Lempel,
1979).
The principle of
confusion,
onthe
otherhand,
is
based up
on nonlinear substitution. This principle
dictates
that
eventhough
large
amounts of enciphered materialmay be
intercepted,
[Version
is
so complexthat
a cryptanalyst would stillfind
it
(extremely
difficult
to
makeany
headway
in
cracking
the cipher.(Confusion
relies uponmaking
the
functional
dependencies
among
the
related variables as complex aspossible,
so asto
maximizethe
time
requiredfor
cryptanalysis(Lempel,
1979).
As are-Jsult,
the
workfactor
is
very
high
andconsequently,
this
principle offers good
security
measures(Difffie
&Hellman,
1979).
i
Shannon,
who was responsiblefor
important
contributionsduring
the
early
theoretical
development
ofcryptography,
has
j
arguedthat
the
alternatesandwiching
of simple ciphers withjthe principles of confusion and
diffusion,
produces a cipher ijthat
is
highly
resistantto
cryptanalytic attack(Walker,
et.jail.,
1977).
Thusthe
use ofboth
of these principlesis
capableof
producing
avery
flexible
and secure cipher system(Diffie
&Hellman,
1979).
Principles
Underlying Present-Day
CiphersCryptograhic systems can
be
classifiedinto
two
broad
types:
stream ciphers and
block
ciphers(Diffie
&Hellman,
1976).
The use of either
type
of cipher affects notonly
the strength|of
the
algorithmbut
alsohas
strong
implications
for
computeruse as well
(Popek
&Kline,
1979).
stream ciphers
Stream ciphers process
the
plaintext messagebit
by
bit
orcharacter
by
character. The entirepreceding
portion ofthe
Imessage,
as well asthe
key
andthe
currentbits
are usedto
determine
how
to
encipherthe
nextbits
ofthe
message(Popek
&
charac-ters
are nottreated
independently
(Diffie
&Hellman,
1979).
In
many
cases,
asufficiently
long
substring
ofthe
key
uniquely
determines
thesucceeding
elements of thekey
string. This allows
the
stream cipherto
be
vulnerableto
cryptanalytic attack.This
vulnerability,
however,
canbe
offsetif
special careis
taken
to
ensurethat
thekey
string
bits
are a complexfunction
of
their
predecessors(Lempel,
1979).
tblock
ciphersIn contrast
to
streamciphers,
the
basic
structure of atypical
presentday
block
cipheris
aniterated
productcipher,
with
transposition
and substitution asits
main components(Lem
pel,
1979).
Block ciphersdivide
the
plaintext messageinto
blocks,
usually
offixed
size withthe
block
length
ranging
from
32
to
128
bits
or characters. Encryptionis
performedby
ij
enciphering
each successiveblock
of the message onthe
basis
!|
|j
of thatblock
alone andthe
givenkey
(Popek
&Kline,
1979).
iii!
Therefore,
unlike streamciphers,
eachblock
is
operated onin-i|
j|
dependent
ly
of the previous one(Diffie
&
Hellman,
19
79).
stream versus
block
enciphermentWhereas
it
is
easier to constructstrong
stream ciphersas compared
to
strong
block
ciphers,
an unfortunate characteristic
of stream ciphersdeals
with errorpropagation.
A
singleerror
in
any
givenblock
resultsin
all subsequentblocks
being
undecipherable,
andtherefore,
in
error(Popek
&
Kline
1979).
This
is
directly
relatedto
the
fact
that
the
encipherment
ofthe
plaintextis
dependent
upon all ofthe
preceding
bits
orIn
general,
stream ciphers areless
acceptablefor
computeruse
than
areblock
ciphers. In orderto
updateany
portion of alengthy
ciphertext,
notonly
mustthe
relevantbits
be
reencrypted
but
also all subsequentbits
ofthe
stream as well. Blockciphers,
onthe
otherhand,
facilitate
updating. Allthat
is
required
is
to
decrypt
the relevantblock
ofciphertext,
updateit,
and reencrypt that particularblock.
No otherblocks
needto
be
changed.Primarily
due
to
their
easein
application,
block
ciphers areusually
preferred(popek
&Kline,
1970).
A
Block Cipher CalledDES
A
prime example of ablock
cipheris
the Data EncryptionStandard or
DES.
Essentially,
theDES
is
composed oftranspo
sition and substitution operations. After the
information
to
be
enciphered undergoes the transposition and substitutionoperations,
the
resulting
cipheris
reenteredinto
the same'enciphering
process. Thus the cipherthat
is
producedis
calleda recirculating product cipher. Since the
DES
operatesonly
ona
fixed
length
data
block,
it
may
be
precisely
referredto
as arecirculating
block
product cipher(Branstad,
1977) (Bright
&
Enison,
1978).
In November
1976,
the
Department
of Commerce approvedthe
Data
Encryption Standard as a FederalInformation
Processing
Standard
(FIPS).
The adoption ofthe
DES
as a standard makesit
mandatory
for
allFederal
Government
agenciesto
usethis
algorithm
to
ensure cryptographic protection of computerdata.
Only
those Federal agencies whichhave been
specifically
exto
usethe
Data
EncryptionStandard
(Dinardo,
1978).
Withthe
adoption of
this
standard,
it
is
hoped
that
this
will significantly
increase
the
use of encryptiondevices
to
protect computer systems
in
both
the
areas of communications andinforma
tion
storage(Branstad,
1977).
This algorithm employs a
64
bit
key
to
encipher anddeci
pher
binary-coded data.
Thedata
is
partitionedinto
blocks,
which are
64
bits
long,
priorto
the
encryption/decryption process.
Since
the
algorithmis
madepublic,
thekey
is
of primeimportance because
it
is
the
sole meansby
which thesecurity
of
the
data
is
maintained. Itis
this
64
bit
key
whichis
responsible
for
the generation of a uniqueblock
of ciphertextfrom
eachblock
of plaintext(Katzan,
1977).
Decryption
ofthe
enciphered
information
is
conducted through a reversal of thealgorithmic process which was used
to
transform
the
originall|
plaintextinto
ciphertext. The samekey
that
was usedfor
j:
i
encryption must alsobe
usedfor
decryption.
Therefore,
unauthorized
individuals
whohave
intercepted
the
ciphertext andhave knowledge
ofthe
algorithm can not recoverthe
originalplaintext message without
knowledge
of the uniquekey
which wasemployed
for
encryption(National
Bureau ofStandards,
1977).
The Data
Encryption
Standard
canbe
implemented
in
softwareor on a single
LSI
chip
and canbe
used withany
computerto
encrypt and
decrypt
transmitted
data
(Hellman,
1979).
Thus
cryptographic
transformations
are made possibleamong
different
terminals,
devices,
etc.,
thereby
allowing
communications
among
Lucifer
-A
Model
for
theDES
Motivated
by
thegrowing
needfor
data
protectionin
theirproducts,
IBM
initiated
cryptographic researchcentering
aroundnonlinear
block
ciphersin
the
late
1960's.
This work significantly
increased
unclassifiedliterature
oncryptography
and also produced several
important
cryptosystems(Diffie
&
Hellman,
1979).
One ofthese,
a cryptosystem namedLucifer,
which wasdeveloped
in
1972,
wasto
later become
the
prototypefor
the
Data
Encryption
Standard(Dinardo,
1978).
The
Lucifer
algorithm enciphers ordeciphers
fixed
length
blocks
consisting
of16
bytes
or128
bits.
Eachblock
is
processed
independently
of all otherblocks
andis
under the control
of a128
randombit
key.
Thiskey
canbe
furnished
from
amagnetic strip-card or
from
a plug-in16
byte
read-only
storemodule
(Girdansky,
1971).
Each
16
byte
block
is
divided
into
t\io
halves
priorto
encryption. The
top
half
consists ofthe
first
8
bytes
ofthe
plaintext message while
the
bottom half
consists of thelatter
8
bytes.
Thefollowing
functions
play
a vital rolein
the
encipherment of
the
data.
confusion: Eight
bits
are selectedfrom
the
key.
The value ofeach of
these
8
bits
(be
it
a0
or1)
is
usedto
determine
whichof
two
uniqueone-to-one,
nonlineartransformations
willbe
performed
on acopy
of each ofthe
8
bytes
in
the
top
half
ofthe
message group. This operation
is
known
as "confusion"and
the
resulting
8
bytes,
which are subjectedto
the
keyed
nonlinearkey
interruption:
The eight "confused bytes"are then added
to
the
eight selectedbytes
ofthe
key by
modulo-2 addition. Thepurpose of
this
operationis
to
effectively
interrupt
thecrypt-analyst's attempts
to
decipher
the
encryptedmessage,
thusthe
name
key
interruption.
diffusion:
Theresulting
eightbytes
ofthe
modulo-2 addition|are
then
permutedin
a randomfashion.
The result ofthis
per-ibiutation
undergoes pairwise convolution withthe
eightbytes
which comprise
the
bottom
half
ofthe
messageby
modulo-2 addition.
interchange:
Finally,
the topmost eightbytes
are theninter
changed with
the
eightbytes
whichform
the
bottom
half
(Feistel,
et. al. ,
1971)
(Smith,
1971).
The entire encryption process consists of sixteen rounds of
[confusion-interruption-diffusion
operations,
alternated withfifteen
interchanges
ofthe
two
halves.
For
eachround,
adif
ferent
set of eightbits
is
selectedfrom
the
key.
The
final
jresult of the encipherment
is
a unique sixteenbyte
ciphertext^hich represents
the
original sixteen messagebytes
(Feistel,
jet,
al. ,1971)(Girsdansky,
1971)
(Smith,
1971).
In
performing
these
sixteenrounds,
the
selection ofthe
key
bits
is
suchthat
each ofthe
128
bits,
which makeup
the
key,
is
used nine times - once asthe
controlbit
to
govern
the
nonlinear transformations
for
confusion and eighttimes
as akey
interruption
bit
in
each ofthe
eightdifferent
bit
positions
(Smith,
1971).
for
deciphering,
the eightbytes
whichform
thetop
half
mustbe
retained unalteredduring
any
confusion-interruption-diffusion
operation.
Inaddition,
the samekey
bits
usedfor
theencryption process must
be
retained. Theonly
requirementis
that
the
order ofthe
operationsbe
reversed. This means thatthe
first
confusion-interruption-diffusion operation executedfor
the
decryption
process mustbe
the
last
one performedfor
the encipherment
(see
chartbelow)
(
Smith,
1971).
plaintext plaintext
Round
1
-confusion-interruption-diffusion-interchange
u
H O
G
0)
Round
2
-confusion-interruption-diffusion-interchange
Round
3
-confusion-interruption-diffusion-interchange
u
a,
-H U
Round
16
- confusion-interruption-diffusionciphertext ciphertext
Introduction
to
the
Data Encryption StandardThe Data
Encryption
Standard,
whichis
a reduced modification of the Lucifer
algorithm,
operates on64
bit
blocks
ofdata
(Lempel,
1979).
LikeLucifer,
the DES requiresthat
the
same secret
key
be
usedfor
both
encryption anddecryption
(Everton,
1978).
Decryptionis
accomplishedusing
the
samekey
as that usedfor
encryption,
withthe
exceptionbeing
that
the schedule of
addressing
thekey
bits
is
reversed sothat
the
deciphering
processis
the
inverse
ofthe
enciphering
process(Branstad,
1977).
Thus,
the
invertible transformation
canbe
described
by
the
following
equations:C =
Sk(P)
P
=Sk-l(C)
In
these
equations,
P
denotes
a64
bit block
ofplaintext;
C,
a
64
bit
block
ofciphertext;
k,
the
64
bit
key;
Sk,
the enciphering
transformation whenkey
k
is
used;
andSk^
, thedeci
phering
process(Diffie
&
Hellman,
1977).
As with
Lucifer,
the
Data Encryption Standard also reliesupon sixteen rounds or
iterations
of ablock
enciphering
processwhere each
iteration
is
composed ofthe
permutation of theblock!
and
the
operation of some complicatedfunction.
In theDES,
thejj
i!complicated
function
involves
a substitution process on smallij
sub-blocks of the
data.
Both of theseoperations,
thepermuta-j
tion and the complicated
function,
are controlledby
akey
which
is
dependent
upon the round(Davida,
et. al. ,1978).
In
actuality,
only
56
ofthe
64
bits
which makeup
the
key
are used
for
the encryption/decryption process. Theremaining
eight
bits
are usedsolely
for
parity
errordetection.
Consequently,
thekey
is
divided
into
eight8
bit
bytes,
wherethe
first
sevenbits
of eachbyte
are usedby
the
algorithm whilethe
last
or eighthbit
is
usedto
maintain oddparity
(Lempel,
1979)
(Diffie
&Hellman,
1977).
Specifics of the Algorithm
The
64
bit
block
to
be
enciphered undergoesthree
majorsteps
during
the encryption process: aninitial
permutation,
signified
by
IP,
then
to
arecirculating
block
product cipherprocess which consists of sixteen rounds of a
block
enciphering
the
initial
permutation,
denoted
as IP*"1(Branstad,
1977)
(Kat
zan,
1977).
The
first
step
in
the encryption processis
to
divide
theplaintext
into
blocks
of64
bits
in
length.
Each64
bit
block
is
then
subjectedto
aninitial
permutation(IP)
whichis
performed
according
to
thefollowing
table.
IP
58
50
42
34
26
18
10
2
60
52
44
36
28
10
12
4
62
54
46
38
30
22
14
6
64
56
48
40
32
24
16
8
57
49
41
33
25
17
9
1
59
51
43
35
27
19
11
3
61
53
45
37
29
21
13
5
63
55
47
39
31
23
15
7
This operation results
in
the
58th
bit
of theinput
block
be
coming
thefirst
bit
of the permutedblock;
the50th
bit
of theinput
block,
the
secondbit
of the permutedblock;
the42th
bit|
the
third;
and soon,
untilthe
7th
input
bit
becomes
the
last
bit
of the permutedblock.
Theresulting
64
bit
permutedblock
is
then used asinput
to
a complexkey-dependent
computation orproduct transformation which consists of sixteen
iterations
(re^
circulating
block
product cipher process)(Branstad,
1977).
The
recirculating
block
productenciphering
process consists of a series of substitutions and
transpositions.
Thesubstitutions are performed under
the
control of a cipherkey
while the transpositions are executed
according
to
a predetermined sequence
(Katzan,
1977).
Prior
to
eachiteration,
the
64
bit
block
of plaintextis
divided
into
two
halves
ordata
half
whilethe
remaining
32
bits
form
the
right-handvector,
and are
denoted
by
L- andR.f
respectively
(Branstad,
1977).
In
the
nextstep,
the
right-handdata
vectorbecomes
theleft
most
32
bits
ofthe
outputblock.
Thus L. = R. -,. The rightmost
32
bits
ofthe
input
block,
r.,, undergo a selection pro
cess which results
in
a48
bit
data
block.
Notethat
this
selection process
is
notkey
dependent.
A
48
bit
subkey,
K
,
is
associated with eachiteration,
thus
there
are16
subkeys. Thissubkey
is
generatedfrom
the
64
bit
key
and represents a uniquesubkey
which correspondsto
the
j^thiteration
ofthe
producttransformation.
This48
bit
subkey
is
then
addedto
the
resulting
48
bit
data block
obtainecithrough
the
selection process asdefined
aboveby
modulo2
addi-ltion.