C SC 481.20 Lecture 15: Security Intro and Cryptographic Foundations
major resource: Computer Networking (4th Edition),
Kurose and Ross, Addison Wesley, 2008
[ previous
| schedule
| next ]
Network Security Intro
- Consider various dimensions of network security
- Secure transmission of credit card, bank account, or other private information
- Denial of service attacks
- Virus and worms
- Trojan horses
- Authentication: knowing who you're dealing with
- Pharming (request to a website is redirected to a different one)
- impersonation
- and so forth...
- We focus on sender, receiver, channel and intruder
- sender, receiver, intruder may be people (Alice, Bob, Trudy - a.k.a. Eve)
- sender, receiver, intruder may be electronic (browser, server, router, virus)
- sender, receiver, intruder may be combination of people and electronic
- We can illustrate using people but same principles/practices apply to electronics
- Major concerns thus are:
- confidentiality (only Alice and Bob can see the correct message contents)
- authentication (Bob can be assured message really came from Alice not Trudy)
- integrity (Bob can be assured message contents were not altered by Trudy)
- availability (message sending service is available and operational for Alice and Bob)
- The foundation for security is cryptography : principles and practice of hiding information using secret codes
Cryptography
Some terminology
- plaintext: information written in a format understandable to sender and receiver
- encryption: process of transforming plaintext into secret form
- cipher: algorithm for encryption
- ciphertext: information written in encrypted form
- decryption: process of transforming ciphertext back into plaintext
- key: parameter that determines functional output of a cipher
- brute-force attack: attempt to decrypt by trying every possible key value
Traditional, Symmetric, cryptography methods
- Symmetric: both sender and receiver must know the key and cipher, but no one else can
- Date to the age of Julius Caesar ("Caesar ciphers")
- Substitutions (disguise symbols)
- Transposition (re-order symbols)
- Combination of substitution and transposition
- Example: Caesar cipher and key
- cipher: For a given letter, substitute the letter X positions further along in the alphabet (circular)
- key: selected value of X
- How hard would this be to break?
- How can the key be securely exchanged?
- Example: DES
- Data Encryption Standard
- Message is encrypted in 64-bit blocks
- The key is 56 bit number (64 bits when 8 parity bits are added, one per 7 bit group)
- The 64 bit block is permuted (shuffled) l6 times (16 "rounds"), each permutation
based on different 48-bit combination from key, followed by a 17th permutation that is the inverse of the first one
- If you are interested, I have references that describe specific details of the permutations and
selection of the 48 bits for each round.
- DES has been cracked, and enhanced to Triple DES, a.k.a. 3DES, which applies DES three times,
e.g. E3(E2(E1(M))), or E3(D2(E1(M))), using two or three different keys
- A technique called Cipher Block Chaining (CBC) is also employed
- CBC addresses this problem: if same block of plaintext appears multiple
times in a message, its DES ciphertext will be the same for each occurrence.
This represents a pattern, which gives Trudy an advantage over
brute-force.
- Under CBC, each occurrence of a plaintext block will have different
ciphertext. How?
- Before submitting block I to DES, its plaintext is XORed with the ciphertext of block I-1.
- The bootstrapping "block 0" is a randomly-generated initialization vector (IV) that
needs be known by the receiver or sent with the message
- DES supplanted by AES (Advanced) that uses 128-bit blocks, longer keys (128, 192 or 256 bit)
Public Key Cryptography
- developed by Hellman and Diffie at Stanford in 1976, independently in secret British project
- Essence:
- Encryption key E is public, everyone can know it
- Decryption key D is private, only one person can know it
- Plaintext message M.
- Characteristics of D and E:
- D (private) is "very difficult" to deduce from E
- E (public) cannot be broken by plaintext attack
- D(E(M)) = M
- Procedure:
- Sender encrypts M using receiver's algorithm and receiver's public key ER to get ER(M)
- Sender transmits ER(M)
- Receiver decrypts using its private key DR as follows: DR(ER(M)) = M
- Rivest, Shamir, Adleman (RSA), a public-key encryption method
- Start with two very large prime numbers P and Q
- Calculate N = P * Q
- Calculate Z = (P-1) * (Q-1)
- Select E such that E < N and E is relatively prime to Z
- Select D such that E * D mod Z = 1 (e.g., remainder of (E * D) / Z is 1)
- Public key consists of N and E.
- Private key consists of N and D.
- The algorithm:
- Given plaintext M, ciphertext C = ME mod N
- Given ciphertext C, plaintext M = CD mod N
- RSA is widely used but very computationally expensive (hundreds of times more than DES)
- Public key encryption is often used in conjunction with symmetric encryption: Use public
key encryption to communicate the symmetric key between Alice and Bob, who proceed to use symmetric
encryption like DES to communicate
Legal Issues
- The U.S. government is quite interested in the export of encryption systems. Why?
- The fear obviously is that enemies will use encryption to communicate plans for hostile action against the U.S.
- One counter-argument is freedom of speech denial (where the algorithms represent speech)
- Encryption exports are currently (2008) regulated by the U.S. Bureau of Industry and Security.
- See http://www.bis.doc.gov/encryption/ (warning: bureaucratic language!)
- Until the mid-90s, encryption systems with key length > 40 bits were considered munition
and their export prohibited!
- A 40-bit key is trivial to break via brute force (1 trillion possible keys).
- With rise of the Web and e-commerce, 40-bit keys became an incredible barrier for U.S. companies.
- SSL, for instance, the backbone protocol for e-commerce (https://), uses 128-bit keys
- PGP (Pretty Good Privacy) in the early 90s provided a legal challenge, as it was open source (how to control who downloads it?) and used 128-bit public keys
- Government charged PGP inventor Phil Zimmerman with violating munitions export laws, but gave up after three year legal battle
- Regulations were then relaxed, but even the current (2008) website describes procedure for requesting
permission to export symmetric encryption with key length > 64 bits
[ C
SC 481 | Peter
Sanderson | Math Sciences server
| Math Sciences home page
| Otterbein ]
Last updated:
Peter Sanderson (PSanderson@otterbein.edu)