Matakuliah Tahun Versi : H0242 / Keamanan Jaringan : 2006 :1 Pertemuan 07 Enkripsi Simetrik Kontemporer 1 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : – Mahasiswa dapat menjelaskan enkripsi simetrik kontemporer 2 Outline Materi • Karakteristik Block Cipher modern • Standard Triple DES • Stream Cipher 3 Block Cipher Characteristics • Features seen in modern block ciphers are: – Variable key length / block size / no rounds – Mixed operators, data/key dependent rotation – Key dependent S-boxes – More complex key scheduling – Operation of full data in each round – Varying non-linear functions 4 Triple-DES with Two-Keys • Must use 3 encryptions – would seem to need 3 distinct keys • Can use 2 keys with E-D-E sequence – C = EK1[DK2[EK1[P]]] – number of encrypt & decrypt equivalent in security – if K1=K2 then can work with single DES • Standardized in ANSI X9.17 & ISO8732 • No current known practical attacks 5 Blowfish • Symmetric block cipher designed by Bruce Schneier in 1993/94 • Characteristics – fast implementation on 32-bit CPUs – compact in use of memory – simple structure eases analysis/implemention – variable security by varying key size • Has been implemented in various products 6 RC5 Ciphers • RC5 is a family of ciphers RC5-w/r/b – w = word size in bits (16/32/64) nb data=2w – r = number of rounds (0..255) – b = number of bytes in key (0..255) • Nominal version is RC5-32/12/16 – 32-bit words so encrypts 64-bit data blocks, using 12 rounds, with 16 bytes (128-bit) secret key 7 RC5 Key Expansion • RC5 uses 2r+2 subkey words (w-bits) • Subkeys are stored in array S[i], i=0..t-1 then the key schedule consists of – Initializing S to a fixed pseudorandom value, based on constants e and phi – The byte key is copied (little-endian) into a c-word array L – A mixing operation then combines L and S to form the final S array 8 RC5 Encryption • Split input into two halves A & B L0 = A + S[0]; R0 = B + S[1]; for i = 1 to r do Li = ((Li-1 XOR Ri-1) <<< Ri-1) + S[2 x i]; Ri = ((Ri-1 XOR Li) <<< Li) + S[2 x i + 1]; • Each round is like 2 DES rounds • Note rotation is main source of nonlinearity, need reasonable number of rounds (eg 12-16) 9 RC5 Modes • RFC2040 defines 4 modes used by RC5 – RC5 Block Cipher, is ECB mode – RC5-CBC, is CBC mode – RC5-CBC-PAD, is CBC with padding by bytes with value being the number of padding bytes – RC5-CTS, a variant of CBC which is the same size as the original message, uses ciphertext stealing to keep size same as original 10 Stream Ciphers • Process the message bit by bit (as a stream) • Typically have a (pseudo) random stream key combined (XOR) with plaintext bit by bit • Randomness of stream key completely destroys any statistically properties in the message – Ci = Mi XOR StreamKeyi • Must never reuse stream key – Otherwise can remove effect and recover messages 11 Stream Cipher Properties • Some design considerations are: – Long period with no repetitions – Statistically random – Depends on large enough key – Large linear complexity – Correlation immunity – Confusion – Diffusion – Use of highly non-linear boolean functions 12 Use of Symmetric Encryption • Traditionally symmetric encryption is used to provide message confidentiality • Typical scenario – Workstations on LANs access other workstations & servers on LAN – LANs interconnected using switches/routers with external lines or radio/satellite links • Consider attacks and placement in this scenario – Snooping from another workstation – Use dial-in to LAN or server to snoop – Use external router link to enter & snoop monitor and/or modify traffic one external links 13 Placement of Encryption • Two major placement alternatives – Link encryption • Encryption occurs independently on every link, implies must decrypt traffic between links • Requires many devices, but paired keys – End-to-end encryption • Encryption occurs between original source and final destination • Need devices at each end with shared keys 14 Key Distribution • Symmetric schemes require both parties to share a common secret key • The issue is how to securely distribute this key • Often secure system failure due to a break in the key distribution scheme 15 Key Distribution • Given parties A and B have various key distribution alternatives: 1. A can select key and physically deliver to B 2. Third party can select & deliver key to A & B 3. If A & B have communicated previously can use previous key to encrypt a new key 4. Ff A & B have secure communications with a third party C, C can relay key between A &B 16 Key Distribution Scenario 17 Key Distribution Issues • Hierarchies of KDC’s required for large networks, but must trust each other • Session key lifetimes should be limited for greater security • Use of automatic key distribution on behalf of users, but must trust system • Use of decentralized key distribution 18