Top Banner
Lecture 5 Page 1 CS 136, Fall 2010 More on Cryptography CS 136 Computer Security Peter Reiher October 7, 2010
71

More on Cryptography CS 136 Computer Security Peter Reiher October 7, 2010

Jan 16, 2016

Download

Documents

Ann

More on Cryptography CS 136 Computer Security Peter Reiher October 7, 2010. Outline. Desirable characteristics of ciphers Stream and block ciphers Cryptographic modes Uses of cryptography Symmetric and asymmetric cryptography Digital signatures. Desirable Characteristics of Ciphers. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 1CS 136, Fall 2010

More on CryptographyCS 136

Computer Security Peter Reiher

October 7, 2010

Page 2: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 2CS 136, Fall 2010

Outline

• Desirable characteristics of ciphers• Stream and block ciphers• Cryptographic modes• Uses of cryptography • Symmetric and asymmetric

cryptography• Digital signatures

Page 3: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 3CS 136, Fall 2010

Desirable Characteristics of Ciphers

• Well matched to requirements of application– Amount of secrecy required should

match labor to achieve it• Freedom from complexity

– The more complex algorithms or key choices are, the worse

Page 4: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 4CS 136, Fall 2010

More Characteristics

• Simplicity of implementation

– Seemingly more important for hand ciphering

– But relates to probability of errors in computer implementations

• Errors should not propagate

Page 5: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 5CS 136, Fall 2010

Yet More Characteristics

• Ciphertext size should be same as plaintext size

• Encryption should maximize confusion– Relation between plaintext and ciphertext

should be complex• Encryption should maximize diffusion

– Plaintext information should be distributed throughout ciphertext

Page 6: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 6CS 136, Fall 2010

Stream and Block Ciphers

• Stream ciphers convert one symbol of plaintext immediately into one symbol of ciphertext

• Block ciphers work on a given sized chunk of data at a time

Page 7: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 7CS 136, Fall 2010

Stream Ciphers

Plaintext Ciphertext

Key

Encryption

fsnarT fsnar TS S fsna rq qS fsn az zqS fs nm mzqS f sr rmzqS fe ermzqS

Of course, actual cipher used could be arbitrarily complex

Page 8: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 8CS 136, Fall 2010

Advantages of Stream Ciphers

+ Speed of encryption and decryption

• Each symbol encrypted as soon as it’s available

+ Low error propagation

• Errors affect only the symbol where the error occurred

• Depending on cryptographic mode

Page 9: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 9CS 136, Fall 2010

Disadvantages of Stream Ciphers

– Low diffusion• Each symbol separately encrypted• Each ciphertext symbol only contains

information about one plaintext symbol– Susceptible to insertions and modifications– Not good match for many common uses of

cryptography– Some disadvantages can be mitigated by use of

proper cryptographic mode

Page 10: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 10CS 136, Fall 2010

Block Ciphers

Plaintext Ciphertext

Key

Encryption

T r a ns f e r $ 1 0

T s rf $ a e1 n r 0

T r a ns f e r $ 1 0

T s rf $ a e1 n r 0

Page 11: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 11CS 136, Fall 2010

Advantages of Block Ciphers

+ Good diffusion

• Easier to make a set of encrypted characters depend on each other

+ Immunity to insertions

• Encrypted text arrives in known lengths

Most common Internet crypto done with block ciphers

Page 12: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 12CS 136, Fall 2010

Disadvantages of Block Ciphers

– Slower

• Need to wait for block of data before encryption/decryption starts

– Worse error propagation

• Errors affect entire blocks

Page 13: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 13CS 136, Fall 2010

Cryptographic Modes

• Let’s say you have a bunch of data to encrypt

– Using the same cipher and key

• How do you encrypt the entire set of data?

– Given block ciphers have limited block size

– And stream ciphers just keep going

Page 14: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 14CS 136, Fall 2010

The Basic Situation

1840326

$100.00

5610993

$550.00

3370259

$100.00

6840924

$225.00

Let’s say our block cipher has a block size of 7 characters and we use the same key for all

Now let’s encrypt

J2?@=4l

sS^0’sq

Dor72m/

2ci;aE9

Sv&`>oo

sS^0’sq

Xl3lu*m

#rdL04,

There’s something odd here . . .

sS^0’sq sS^0’sq

Is this good? Why did it happen?

Page 15: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 15CS 136, Fall 2010

Another Problem With This Approach

5610993

$550.00

J2?@=4l

sS^0’sq

Dor72m/

2ci;aE9

Sv&`>oo

sS^0’sq

Xl3lu*m

#rdL04,

What if these are transmissions representing deposits into bank accounts?

1840326 350

2201568 5000

3370259 8800

5610993 479

6840924 2500

8436018 10

450

1029

8900

2725

So far, so good . . .What if account 5610993 belongs to him?

Dor72m/

2ci;aE91579

Insertion Attack!

Page 16: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 16CS 136, Fall 2010

What Caused the Problems?• Each block of data was independently

encrypted

– With the same key

• So two blocks with identical plaintext encrypt to the same ciphertext

• Not usually a good thing• We used the wrong cryptographic mode

– Electronic Codebook (ECB) Mode

Page 17: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 17CS 136, Fall 2010

Cryptographic Modes• A cryptographic mode is a way of applying a

particular cipher

– Block or stream

• The same cipher can be used in different modes

– But other things are altered a bit

• A cryptographic mode is a combination of cipher, key, and feedback

– Plus some simple operations

Page 18: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 18CS 136, Fall 2010

So What Mode Should We Have Used?

• Cipher Block Chaining (CBC) mode might be better

• Ties together a group of related encrypted blocks

• Hides that two blocks are identical

• Foils insertion attacks

Page 19: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 19CS 136, Fall 2010

Cipher Block Chaining Mode

• Adds feedback into encryption process• The encrypted version of the previous block

is used to encrypt this block• For block X+1, XOR the plaintext with the

ciphertext of block X– Then encrypt the result

• Each block’s encryption depends on all previous blocks’ contents

• Decryption is similar

Page 20: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 20CS 136, Fall 2010

What About the First Block?

• If we send the same first block in two messages with the same key,– Won’t it be encrypted the same way?

• Might easily happen with message headers or standardized file formats

• CBC as described would encrypt the first block of the same message sent twice the same way both times

Page 21: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 21CS 136, Fall 2010

Initialization Vectors• A technique used with CBC

– And other crypto modes– Abbreviated IV

• Ensures that encryption results are always unique– Even for duplicate message using the same

key• XOR a random string with the first block

– plaintext IV– Then do CBC for subsequent blocks

Page 22: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 22CS 136, Fall 2010

Encrypting With An IV

1 1 0 1 0 0 0 1

First block of message

0 1 0 0 1 1 0 0

Initialization vector

1 0 0 1 1 1 0 1

XOR IV and message

Encrypt msg and send IV plus message

Second block of message

0 0 0 1 1 0 0 0

0 0 1 1 0 1 1 1

Use previous msg for CBC

Apply CBC

0 0 1 0 1 1 1 1

Encrypt and send second block of msg

No need to also send 1st block again

1 0 0 1 1 1 1 0

Page 23: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 23CS 136, Fall 2010

How To Decrypt With Initialization Vectors?

• First block received decrypts to

P = plaintext IV

• plaintext = P IV

• No problem if receiver knows IV

– Typically, IV is sent in the message

• Subsequent blocks use standard CBC

– So can be decrypted that way

Page 24: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 24CS 136, Fall 2010

An Example of IV Decryption

IP header

Encrypted data

Initialization vector

Now decrypt the message

1 0 0 1 1 1 0 1

And XOR with the plaintext IV

0 1 0 0 1 1 0 0

1 1 0 1 0 0 0 1

Page 25: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 25CS 136, Fall 2010

For Subsequent Blocks

0 0 1 1 0 1 1 1

Use previous ciphertext block instead of IV

Now decrypt the message

0 0 1 0 1 1 1 1

And XOR with the previous ciphertext block

0 0 0 1 1 0 0 0

Page 26: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 26CS 136, Fall 2010

Some Important Crypto Modes• Electronic codebook mode (ECB)• Cipher block chaining mode (CBC)• Cipher-feedback mode (CFB) and Output-feedback mode (OFB)

Both convert block to stream cipher

Page 27: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 27CS 136, Fall 2010

Uses of Cryptography

• What can we use cryptography for?

• Lots of things

– Secrecy

– Authentication

– Prevention of alteration

Page 28: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 28CS 136, Fall 2010

Cryptography and Secrecy

• Pretty obvious

• Only those knowing the proper keys can decrypt the message

– Thus preserving secrecy

• Used cleverly, it can provide other forms of secrecy

Page 29: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 29CS 136, Fall 2010

Cryptography and Authentication

• How can I prove to you that I created a piece of data?

• What if I give you the data in encrypted form?– Using a key only you and I know

• Then only you or I could have created it– Unless one of us told someone else the

key . . .

Page 30: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 30CS 136, Fall 2010

Some Limitations on Cryptography and Authentication• If both parties cooperative, cryptography can

authenticate– Problems with non-repudiation, though

• What if three parties want to share a key?– No longer certain who created anything– Public key cryptography can solve this

problem• What if I want to prove authenticity without

secrecy?

Page 31: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 31CS 136, Fall 2010

Cryptography and Non-Alterability

• Changing one bit of an encrypted message completely garbles it – For many forms of cryptography

• If a checksum is part of encrypted data, that’s detectable

• If you don’t need secrecy, can get the same effect– By encrypting only the checksum

Page 32: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 32CS 136, Fall 2010

Cryptography and Zero-Knowledge Proofs

• With really clever use, cryptography can be used to prove I know a secret

– Without telling you the secret

• Seems like magic, but it can work

• Basically, using multiple iterations of cryptography in very clever ways

Page 33: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 33CS 136, Fall 2010

Symmetric and Asymmetric Cryptosystems

• Symmetric - the encrypter and decrypter share a secret key– Used for both encrypting and

decrypting• Asymmetric – encrypter has different

key than decrypter

Page 34: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 34CS 136, Fall 2010

Description of Symmetric Systems

• C = E(K,P)

• P = D(K,C)

• E() and D() are not necessarily the same operations

Page 35: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 35CS 136, Fall 2010

Advantages of Symmetric Key Systems

+ Encryption and authentication performed in a single operation

+ Well-known (and trusted) ones perform faster than asymmetric key systems

+ Doesn’t require any centralized authority

• Though key servers help a lot

Page 36: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 36CS 136, Fall 2010

Disadvantage of Symmetric Key Systems

– Encryption and authentication performed in a single operation

• Makes signature more difficult

– Non-repudiation hard without servers

– Key distribution can be a problem

– Scaling

Page 37: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 37CS 136, Fall 2010

Scaling Problems of Symmetric Cryptography

K1

K1

K2

K2

K3K3

K4

K4

K5

K5

K6

K6

How many keys am I

going to need to handle

the entire Internet????

Page 38: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 38CS 136, Fall 2010

Sample Symmetric Key Ciphers

• The Data Encryption Standard

• The Advanced Encryption Standard

• There are many others

Page 39: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 39CS 136, Fall 2010

The Data Encryption Standard

• Probably the best known symmetric key cryptosystem

• Developed in 1977• Still much used

– Which implies breaking it isn’t trivial

• But showing its age

Page 40: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 40CS 136, Fall 2010

History of DES

• Created in response to National Bureau of Standards studies

• Developed by IBM• Analyzed , altered, and approved by the

National Security Agency• Adopted as a federal standard• One of the most widely used encryption

algorithms

Page 41: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 41CS 136, Fall 2010

Overview of DES Algorithm

• A block encryption algorithm– 64 bit blocks

• Uses substitution and permutation– Repeated applications

• 16 cycles worth• Each cycle is called a round

• 64 bit key– Only 56 bits really used, though

Page 42: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 42CS 136, Fall 2010

More On DES Algorithm• Uses substitutions to provide confusion

– To hide the set of characters sent• Uses transpositions to provide diffusion

– To spread the effects of one plaintext bit into other bits

• Uses only standard arithmetic and logic functions and table lookup

• Performs 16 rounds of substitutions and permutations– Involving the key in each round

Page 43: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 43CS 136, Fall 2010

Is DES Secure?

• Apparently, reasonably

• NSA alterations believed to have increased security against differential cryptanalysis

• Some keys are known to be weak with DES

– So good implementations reject them

• To date, only brute force attacks have publicly cracked DES

Page 44: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 44CS 136, Fall 2010

Key Length and DES

• Easiest brute force attack is to try all keys– Looking for a meaningful output

• Cost of attack proportional to number of possible keys

• Is 256 enough keys?• Not if you seriously care

– DES cracked via brute force in 1998– Took lots of computers and time– But computers keep getting faster . . .

Page 45: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 45CS 136, Fall 2010

Does This Mean DES is Unsafe?

• Depends on what you use it for• Takes lots of compute power to crack• On the other hand, computers will

continue to get faster• And motivated opponents can harness

vast resources• Increasingly being replaced by AES

Page 46: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 46CS 136, Fall 2010

The Advanced Encryption Standard

• A relatively new cryptographic algorithm• Intended to be the replacement for DES• Chosen by NIST

– Through an open competition • Chosen cipher was originally called Rijndael

– Developed by Dutch researchers– Uses combination of permutation and

substitution

Page 47: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 47CS 136, Fall 2010

Increased Popularity of AES• Gradually replacing DES

– As was intended• Various RFCs describe using AES in IPsec • FreeS/WAN IPsec (for Linux) includes AES• Some commercial VPNs use AES• Various Windows AES products available

– Used for some purposes in Vista– Used for most purposes in Windows 7

Page 48: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 48CS 136, Fall 2010

Is AES Secure?• No complete breaks discovered so far

• But some disturbing problems found recently

– Attacks that work on versions of AES using fewer rounds

– Attacks that can get keys in less time than pure brute force

• But not practical time (e.g. in 2119 operations)

Page 49: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 49CS 136, Fall 2010

Public Key Encryption Systems

• The encrypter and decrypter have different keys

C = E(KE,P)

P = D(KD,C)

• Often, works the other way, too′=C E K PD( , )

P D K CE= ′( , )

Page 50: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 50CS 136, Fall 2010

History of Public Key Cryptography

• Invented by Diffie and Hellman in 1976• Merkle and Hellman developed Knapsack

algorithm in 1978• Rivest-Shamir-Adelman developed RSA in

1978– Most popular public key algorithm

• Many public key cryptography advances secretly developed by British and US government cryptographers earlier

Page 51: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 51CS 136, Fall 2010

Practical Use of Public Key Cryptography

• Keys are created in pairs• One key is kept secret by the owner• The other is made public to the world• If you want to send an encrypted

message to someone, encrypt with his public key– Only he has private key to decrypt

Page 52: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 52CS 136, Fall 2010

Authentication With Shared Keys

• If only two people know the key, and I didn’t create a properly encrypted message -– The other guy must have

• But what if he claims he didn’t?• Or what if there are more than two?• Requires authentication servers

Page 53: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 53CS 136, Fall 2010

Authentication With Public Keys

• If I want to “sign” a message, encrypt it with my private key

• Only I know private key, so no one else could create that message

• Everyone knows my public key, so everyone can check my claim directly

Page 54: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 54CS 136, Fall 2010

Scaling of Public Key Cryptography

Ke

Kd

Ke

Kd

Ke

Kd Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Ke

Kd

Nice scaling properties

Page 55: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 55CS 136, Fall 2010

Key Management Issues

• To communicate via shared key cryptography, key must be distributed– In trusted fashion

• To communicate via public key cryptography, need to find out each other’s public key– “Simply publish public keys”

Page 56: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 56CS 136, Fall 2010

Issues of Key Publication• Security of public key cryptography

depends on using the right public key• If I am fooled into using the wrong one,

that key’s owner reads my message• Need high assurance that a given key

belongs to a particular person• Which requires a key distribution

infrastructure

Page 57: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 57CS 136, Fall 2010

RSA Algorithm

• Most popular public key cryptographic algorithm

• In wide use

• Has withstood much cryptanalysis

• Based on hard problem of factoring large numbers

Page 58: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 58CS 136, Fall 2010

RSA Keys

• Keys are functions of a pair of 100-200 digit prime numbers

• Relationship between public and private key is complex

• Recovering plaintext without private key (even knowing public key) is supposedly equivalent to factoring product of the prime numbers

Page 59: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 59CS 136, Fall 2010

Comparison of DES and RSA• DES is much more complex• However, DES uses only simple arithmetic,

logic, and table lookup• RSA uses exponentiation to large powers

– Computationally 1000 times more expensive in hardware, 100 times in software

• RSA key selection also more expensive• AES vs. RSA performance comparison is

similar

Page 60: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 60CS 136, Fall 2010

Security of RSA• Conjectured that security depends on factoring

large numbers– But never proven– Some variants proven equivalent to

factoring problem• Probably the conjecture is correct• Key size for RSA doesn’t have same meaning

as DES and AES

Page 61: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 61CS 136, Fall 2010

Attacks on Factoring RSA Keys• In 2005, a 663 bit RSA key was

successfully factored• A 768 bit key factored in 2009• Research on integer factorization

suggests keys up to 2048 bits may be insecure

• Size will keep increasing• The longer the key, the more expensive

the encryption and decryption

Page 62: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 62CS 136, Fall 2010

Combined Use of Symmetric and Asymmetric Cryptography

• Common to use both in a single session• Asymmetric cryptography essentially

used to “bootstrap” symmetric crypto• Use RSA (or another PK algorithm) to

authenticate and establish a session key• Use DES/Triple DES/AES using that

session key for the rest of the transmission

Page 63: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 63CS 136, Fall 2010

Combining Symmetric and Asymmetric Crypto

Alice BobKEA KDA KEB KDB

KEAKEB

KS

Alice wants to share the key only with Bob

Bob wants to be sure it’s Alice’s key

C=E(KS,KEB)

Only Bob can decrypt it

M=E(C,KDA)

Only Alice could have created it

MC=D(M,KEA)KS=D(C,KDB)

But there are problems we’ll discuss later

Page 64: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 64CS 136, Fall 2010

Digital Signature Algorithms

• In some cases, secrecy isn’t required

• But authentication is

• The data must be guaranteed to be that which was originally sent

• Especially important for data that is long-lived

Page 65: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 65CS 136, Fall 2010

Desirable Properties of Digital Signatures

• Unforgeable• Verifiable• Non-repudiable• Cheap to compute and verify• Non-reusable• No reliance on trusted authority• Signed document is unchangeable

Page 66: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 66CS 136, Fall 2010

Encryption and Digital Signatures

• Digital signature methods are based on encryption

• The basic act of having performed encryption can be used as a signature – If only I know K, then C=E(P,K) is a

signature by me– But how to check it?

Page 67: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 67CS 136, Fall 2010

Signatures With Shared Key Encryption

• Requires a trusted third party• Signer encrypts document with secret

key shared with third party• Receiver checks validity of signature

by consulting with trusted third party• Third party required so receiver can’t

forge the signature

Page 68: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 68CS 136, Fall 2010

For Example,

When in the Course of human events it becomes necessaryfor one

Ks

Ks

Elas7pa1o’gw0mega30’sswp.1f43’-s 432.doas3Dsp5.a#l^o,a 02

When in the Course of human events it becomes necessaryfor one

Page 69: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 69CS 136, Fall 2010

Signatures With Public Key Cryptography

• Signer encrypts document with his private key

• Receiver checks validity by decrypting with signer’s public key

• Only signer has the private key– So no trusted third party required

• But receiver must be certain that he has the right public key

Page 70: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 70CS 136, Fall 2010

For Example,

When in the Course of human events it becomes necessaryfor one

Ke

Kd

Elas7pa1o’gw0mega30’sswp.1f43’-s 432.doas3Dsp5.a#l^o,a 02

When in the Course of human events it becomes necessaryfor one

Alice’s public

key

Page 71: More on Cryptography CS 136 Computer Security  Peter Reiher October 7, 2010

Lecture 5Page 71CS 136, Fall 2010

Problems With Simple Encryption Approach

• Computationally expensive

– Especially with public key approach

• Document is encrypted

– Must be decrypted for use

– If in regular use, must store encrypted and decrypted versions