Anda di halaman 1dari 62

BAB III SISTEM ENCRYPTION 1. PROPERTI ARIMATIK a.

invers
+ merupakan operasi bilangan + mungkin merupakan penambaha atau perkalian + bilangan I disebut idensitas untuk jika x * i = x untuk setiap bilangan x + contoh : 0 merupakan identitas untuk + karena x + 0 = x 1 merupakan identitas untuk * karena x * 0 = x i = identitas untuk operasi * Bilangan b disebut invers a dibawah * jika a * b = i dan b * a = i Invers dari elemen a sering ditunjukan dengan : a-1

b.

Bilangan prima Bilangan yang besar dari 1 yang habis dibagi (dengan sisa 0) Tetapi tidak boleh bilangan itu sendiri atau 1 Contoh : 2 3 5 7 11 13 17 19 23 29 31 37 41 43\ Bilangan yang bukan prima disebut : Komposit

c. Great Common Divisor 2 bilangan integer (a,b) = gcd (a,b) adalah integer terbesar yg membagi 1 dan b contoh : gcd(15,10) hasilnya 5 bilangan 5 dapat habis membagi bilangan 15 dan 10 serta tidak ada integer yg lebih besar dari 5 yang habis membagi 15 dan 10 yang lain : + gcd(24,36) = .. + gcd(35,45) = .. + gcd(45,60) = .. d. Euclidean Algorithm perkembangan dari gcd , yang merupakan prosedure untuk menghitung gcd dari 2 bilangan jika x dibagi a, b maka a-(k*b) untuk setiap nilai k a = x * a1 dan b = x * b1 a (k*b) = x*a1 (x * k * b1) = x * (a1 k * b1) =x*d a=m*b+r untuk 0r<b m = a/b jika x = gcd(a,b)

contoh : gcd (3615807, 2763323) 3615807 = 1 * 2763323 + 852484 2763323 = 3 * 8525484 + 205871 8525484 = 4 * 205871 + 29000 205871 = 7 * 29000 + 2871 29000 = 10 * 2871 + 290 2871 = 9 * 290 + 261 290 = 1 * 261 + 29 261 = 9 * 29 + 0 gcd (3615807, 2763323) = 29

soal : hitung gcd(1875, 405)

e. Modular aritmatic
+ merupakan cara untuk mendapatkan hasil dalam kisaran tertentu + 2 integer berbeda dapat memiliki modulus yg sama + contoh : 11 mod 3 = 2 5 mod 3 = 2 + Dua bilangan adalah ekuivalen dibawah modulus n, jika hasil mod n bilangan2 tersebut adalah sama X n Y jika dan hanya jika x mod n) = (y mod n) Ekuivalen X n Y jika dan hanya jika (x y) = k * n untuk k = integer rms: a mod n = b untuk a = c * n + b

- properti : associativity a + (b + c) mod n = (a + b) + c mod n a * (b * c) mod n = (a * b) * c mod n commutativity a + b mod a = b + a mod n a * b mod n = b * a mod n distributivity a * (b + c) mod n = ((a * b) + (a + c)) mod n

existence of identifier a + 0 mod n = 0 + a mod n = a a * 1 mod n = 1 * a mod n = a existence of invers a + (-a) mod n = 0 a * (a-1) mod n = 1 jika a 0

reducebility

(a + b) mod n = ((a mod n ) + (b mod n)) mod n (a * b) mod n = ((a mod n ) * (b mod n)) mod n

contoh, penjumlahan mod 5 dan perkalian mod 5 + 0 1 2 3 4 0 0 1 2 3 4 1 1 2 3 4 0 2 2 3 4 0 1 3 3 4 0 1 2 4 4 0 1 2 3 * 0 1 2 3 4 0 0 0 0 0 0 1 0 1 2 3 4 2 0 2 4 1 3 3 0 3 1 4 2 4 0 4 3 2 1

3 + 4 mod 5 = 2 sebab 3 + 4 = 7 dan 7 - 5 = 2 maka 3 + 4 mod 5 = 2 4 * 4 mod 5 = 1 sebab 4 * 4 = 16 , 16 5 = 11 , 115 = 6, 6 5 = 1 soal : a. mod 7 b. mod 11 c. mod 13

Menghitung invers :
Invers dari elemen a adalah elemen b, sehingga a * b = 1 Invers perkalian dari a dapat ditulis : a-1 Lihat tabel perkalian 5 diatas : Invers dari 1 = 1 Invers dari 2 = 3 Invers dari 3 = 2 Invers dari 4 = 4 Nilai-nilai ini diperoleh dari inspeksi/pemeriksaan bukan dari algoritma sistematik

Teorema fermat
Didalam teori bilangan, teorema fermat menyatakan : Untuk bilangan prima p dan elemen a < p ap mod p = a atau ap-1 mod p = 1 invers a adalah x, a x mod p = 1 kombinasi 2 persamaan: a x mod p = 1 = ap-1 mod p sehingga x = ap-2 mod p methoda ini bukan methoda lengkap untuk menghitung invers, hanya bekerja untuk p = prime dan elemen a < p

soal : hitung invers perkalian berikut : 3-1 mod 5 = .. 2-1 mod 7 = .. 4-1 mod 5 = . 2-1 mod 11 = .. 3-1 mod 7 = .. 2-1 mod 13 = ..

2. Public key Encryption sistem


- motivasi - karakteristik (public key = asymetris) - NP-completeness (Node Problem) & Encryption - Polynomial : - Polynomial functions Contoh : n, 10n, n2, 5n3, - Exponential functions Contoh : 2n, 210n, f(x) = (xn + a1xn1 + a2x3 + a3x2 + a4x + a5)mod p dimana : p = 264 59 n = 224 + 17 ai= angka random 19 digit, dimana i = 1, 2, 3, 4, 5 ) x = password asli yg diketik f(x)= password yg sudah diencription atau f(x) = (xn + a1xn-1 + ...... +an-1) mod p - merupakan algoritma paling tidak baik karena mempunyai batasan misalnya : n10000000

- Nondeterminism
2 phase algorithms: - The nondeterministic phase (the guessing phase) Merupakan perkiraan dari suatu problem yang dihadapi - The deterministic phase (the checking phase) Suatu kepastian dari algorithm yg dijalankan atau diluar hasil solusi dari phase 1. - Complexity Classes Class P P suatu tingkat masalah dalam polynomial-bounded. Class NP NP merupakan masalah dalam nondeterministic polynomial-bounded algorithm Aturan : P NP Maksud : Sebuah kepastian dari algorithm khususnya untuk nondeterministic algorithm (with phase 1 ignored

Karakteristik Hard Problem * clique suatu graph dimana vertex nya berhubungan satu sama lainya

- Setiap perolehan harus ada pemecahannya dan relatif mudah - Bila ada 2 n kasus ditemukan dan memecahanya hanya menggunakan non numeric maka semua hasilnya mungkin untuk semua input - Masalahnya : * logic * teori penomoran * teori graph - Jika taksiran mendatang untuk setiap problem ada pemecahanya dengan waktu singkat : proses verifiksi batasan polynomial - NP problem untuk kepuasan : FALSE atau True

Secret Key Encryption = Single Key = Symmetric private key = conventional algoritma Encryption & decryption sama keynya Contoh : DES

- Public key
pengirim menggunakan public key penerima untuk encryption dan penerima menggunakan private key untuk decryption

contoh : Merkle Hellam Knapsack, RSA dan EL Gamal

Public Key Encryption Process


Confidentiality: C = E(pubkey, M) Authentication: D = E(privkey, M) Digital signature

Secret Key Encryption

keuntungan: - symmetry mempunyai 2 arah - authetication (hanya yg berhak yg dapat mengirim) kerugian : - hanya 1 kesalahan - masalah didistribusi - penambahan key sukar - relatif lemah

PKC Algorithm Requirements


Oleh Diffie dan Hellman, tahun 1976 Key di generation dengan perhitungan yang mudah 1. Encryption mudah dihitung 2. Decryption mudah dihitung 3. Perhitungan yg mungkin sampai menemukan private key given public key 4. Hitung yang mungkin untuk meng recover plaintext didapat public key dan ciphertext 5. Fungsi Encryption dan decryption dapat diterapkan seperti sbb : M = DKRb[EKUb(M)] = EKRb[DKUb(M)]

Conventional and Public-Key Encryption


Conventional (Symmetric)
Same algorithm and key used for encryption and decryption Parties share algorithm and key Key must be kept secret Cipher must be strong Plaintext/ciphertext pairs must not weaken the security of the key

Public-Key (Asymmetric)
Same algorithm but different keys used for encryption and decryption Parties share algorithm but each has one key from a matched pair One key must be kept secret Cipher must be strong Plaintext/ciphertext pairs plus one of the keys must not weaken the other key

Principles of PKC

Public-Key Cryptosystem: Secrecy

Y = EKUb(X) X = DKRb(Y)

KUb: Bs public key KRb: Bs private key

Principles of PKC

PKC: Authentication

Y = EKRa(X) X = DKUa(Y)

No protection of confidentiality

Principles of PKC

PKC: Secrecy and Authentication

Z = EKUb[EKRa(X)] X = DKUa[DKRb(Z)]

Principles of PKC

One-way and Trap-door Functions


One-way function
Y = f(X) X = f-1(Y) easy (polynomial time) infeasible (non-polynomial time)

Trap-door one-way functions


Family of invertible functions, one for each k Y = fk(X) easy, given k and X X = fk-1(Y) easy, given k and Y X = fk-1(Y) infeasible if Y is known but k is unknown

a.

Merkle Hellman Knapsack


- merupakan public key - integer untuk public : private merupakan hubungan dgn superincrease - contoh : general : (17, 38, 73, 4, 11, 1) superincrease (1, 4, 11, 17, 38, 73) dimana ak lebih besar dari jumlah semua item - untuk penerimaan digunakan superincrease untuk description cipher - dasar : message dirubah dalam binary hasilnya ciphertext dijumlahkan yg berhubungan dengan yang pertama plaintext

plaintext knapsack ciphertext Target plaintext knapsack ciphertext Target

1 0 1 2 1

1 5 5

0 0 9 20

1 43 43 49

0 1

1 2 2

1 5 5

0 9

1 0 20 43 20 27

jenis a. Simple (superincrease) knapsack n Rms : ai * vi = T i=1 (1, 4, 11, 17,38,73 ) target jumlah 96 96 : 73 yes 96 73 = 23 38? No 23 : 17 yes 23 - 17 = 6 11? No 6: 4? yes 64=2 1? yes 2- 1=1 no solution plaintextnya : 1, 4, 17, 73 = 110101 95: 95- 73 = 22 22: 22- 17 = 5 5: 5-4=1 1 -1 = 0 73? yes 38? No 17 ? yes 11? No 4? yes 1? yes solution

b. Hard (General) knapsack


Rms : hi = w * si mod n dimana : s = bilangan integer w = perkalian yang dikehendaki n = modulus h = hard knapsak contoh : Diket : Sperincreasing knapsack S = (1, 2, 4. 9) W = 15, n = 17 n = prima dan n > (1 + 2 + 4 + 9) Diminta : cari hard knapsack, H Jawab : 1 * 15 = 15 mod 17 = 15 2 * 15 = 30 mod 17 = 13 4 * 15 = 60 mod 17 = 9 9 * 15 = 135 mod 17 = 16 maka H = (15, 13, 9, 16)

Soal : 1. Diketahui superincreasing knapsack, S = (1, 2, 5 , 9, 18, 37) W = 15, n = 41 n = prima dan n > (1+2+5+9+18+37) Diminta cari hardknapsack H Diketahui superincreasing knapsack, S = (1, 2, 4 , 8, 16) W = 10, n = 37 n = prima dan n > (1+2+5+8+16) Diminta cari hardknapsack H

2.

contoh : 1. Diket : S = (1,2,4,9) H = (15,13,9,16) w = 15, n = 17 dan m = 4 pesan yang dikirim : P = 0100101110100101 Ditanya : encryptionnya Jawab : H = (15, 13, 9, 16) P = 0100 1011 1010 0101 (0, 1, 0, 0) * (15, 13, 9, 16) = 13 (1, 0, 1, 1) * (15, 13, 9, 16) = 15 + 9 + 16 = 40 (1, 0, 1, 0) * (15, 13, 9, 16) = 15 + 9 = 44 (0, 1, 0, 1) * (15, 13, 9, 16) = 13 + 16 = 29 Encryptionnya : 13 40 44 29 menggunakan publik key 15 13 9 16

Diket : S = (1,2,4,9) w = 15, n = 17 pesan yang dikirim : 13 40 24 29 Ditanya : descryptionnya Jawab : Bila perkalian 8 mod 17 sebab 8 adalah 15-1 mod 17 maka 13 * 8 = 104 mod 17 = 2 = 0100 40 * 8 = 320 mod 17 = 14 = 1011 24 * 8 = 192 mod 17 = 5 = 1010 29 * 8 = 232 mod 17 = 11 = 0101 hasilnya : 0100 1011 1010 0101

b. RSA (Rivest Shammir Adelman) - 1978 oleh Rivest, Shammir dan Adelman pada MIT - sifatnya public key encryption - berhubungan denan bilangan integer antara 0 dan n-1 - encryption key (e) dan descryption key (d) yang dapat dipertukarkan - 2 key e dan d merupakan bilangan tertentu C = Pe mod n untuk encryption P = Cd mod n untuk descryption Dimana P = message dan C = ciphertext (n) = bilangan positif integer dan < n dan prima jika n penerima maka : (n) = n-1 jika n = p* q dimana p dan q prima , p q (n) = (p) * (q) = (p-1) * (q-1)

RSA Algorithm

RSA Algorithm
dikembangkan 1977, oleh Ron Rivest, Adi Shamir, dan Len Adleman Block cipher: block size is log2(n), untuk nilai n integer Encryption: C = Me mod n Decryption: M = Cd mod n = Med mod n Requirements
Tentukan nilai e, d, dan n s.t. Med = M mod n untuk M < n Hitung Relatively Me dan Cd Didapat kemungkinan d didapat n dan e

RSA Algorithm

RSA
Need to find a relationship of the form Med = M mod n Can use the corollary of Eulers theorem Given two primes p and q, and two integers, n and m, s.t. n = pq and 0 < m < n. and an arbitrary integer k, the following relationship holds: mk(n)+1 m mod n where (n) is the Eulers totient function (n) = (pq) = (p-1)(q-1) Can achieve the desired relationship if ed = k(n)+1 Equivalent to saying that ed 1 mod (n) or d e-1 mod (n) That is, e and d are multiplicative inverses modulo (n) This is true only if d (and therefore e) is relatively to prime to (n)

RSA Algorithm

RSA Algorithm

RSA Algorithm

RSA Example
1. 2. 3. 4. Select two primes, p = 7 and q = 17 Calculate n = pq = 7 17 = 119 Calculate (n) = (p-1)(q-1) = 96 Select e s.t. e is relatively prime to (n) and less than (n); in this case, e = 5 5. Determine d s.t. de mod 96 = 1 and d < 96. The correct value is d = 77 (77 5 = 385 = 4 96 + 1) 6. KU = {5, 119}, KR = {77, 119}

RSA Algorithm

RSA Computational Aspects Encryption and Decryption


Both require modular exponentiation Can use the following efficient algorithm to compute ab mod n Repeated squaring Modular-Exponentiation(a, b, n) 1. c 0 2. d 1 3. let bkbk-1b0 be the binary representation of b 4. for i k downto 0 5. do c 2c 6. d (d d) mod n 7. if bi = 1 8. then c c + 1 9. d (d a) mod n 10. return d

RSA Algorithm

RSA Computational Aspects - 2


Key Generation
Selecting 2 prime numbers, p dan q Selecting setiap e atau d dan jumlahkan

Selecting bilangan prime


1. Pick an odd integer n at random (e.g. using PRNG) 2. Pick an integer a < n at random 3. Perform the probabilistic primality test, such as Miller-Ravin. If n fails the test, reject the value n and goto step 1 4. If n has passed a sufficient number of tests, accept n; otherwise goto step 2

RSA Algorithm

How many numbers are likely to be rejected before a prime number is found? Prime number theorem
(x) ~ x/ln(x) In other words, primes near x are spaced on the average one every (ln x) integers Thus, on average, ln(x) tests are required to find a prime (Actually ln(x)/2 because all even numbers can be immediately rejected)

Example

If a prime on the order of magnitude of 2100 were thought, then about ln(2200)/2 = 70 trials would be needed to find a prime

RSA Algorithm

RSA Computational Aspects - 4


Selecting e and calculating d (or alternatively selecting d and calculating e) Need to select an e s.t. gcd((n), e) = 1 and then calculate d = e-1 mod (n) Extended Euclids Algorithm can do this Generate e randomly. Then using the EEA, test if gcd(((n), e) = 1, and then get d. Otherwise do again Need very few tests
Extended Euclid(e, (n)) 1. (X1, X2, X3) (1, 0, (n)); (Y1, Y2, Y3) (0, 1, e) 2. If Y3 = 0 return X3 = gcd(e, (n)); no inverse 3. If Y3 = 1 return Y3 = gcd(e, (n)); Y2 = e-1 mod (n) 4. Q = X3/Y3 5. (T1, T2, T3) (X1 QY1, X2 QY2, X3 QY3) 6. (X1, X2, X3) (Y1, Y2, Y3) 7. (Y1, Y2, Y3) (T1, T2, T3) 8. goto 2

RSA Algorithm

Attacks on RSA Algorithm


Brute force (Key space search) Try all possible private keys Use large keys Attacks on mathematical foundation Several approaches, all equivalent to factoring Timing attacks Based on the running time of the decryption algorithm Factor n into p and q Allows calculation of (n), which allows determination of d = e-1 (mod (n)) Determine (n) directly from n Equivalent to factoring Determine d = e-1 (mod (n)) directly Seems to be as hard as factoring

Mathematical Attacks on RSA

RSA Algorithm

Factoring
For a large n with large prime factors, factoring is a hard problem RSA factoring challenge Sponsored by RSA Labs. To encourage research into computational number theory and the practical difficulty factoring large integers A cash prize is awarded to the first person to factor each challenge number
Progress in Factorization

O (e

ln( n ) ln(ln( n ))

RSA Algorithm

RSA Factoring Challenge


Latest result is RSA 155 (512 bits)
Reported Aug 22, 1999

Factored with General Number Field Sieve 35.7 CPU-years in total on


160 175-400 MHz SGI and Sun workstations 8 250 MHz SGI Origin 2000 processors 120 300-450 MHz Pentium II PCs 4 500 MHz Digital/Compaq boxes This CPU-effort is estimated to be equivalent to approximately 8000 MIPS years; calendar time for the sieving was 3.7 months.

RSA Algorithm

RSA Factoring Challenge Numbers


Numbers are designated RSA-XXXX, where XXXX is the numbers length in bits Challenge Number RSA-576 (174 Digits) RSA-640 (193 Digits) RSA-704 (212 Digits) RSA-768 (232 Digits) RSA-896 (270 Digits) RSA-1024 (309 Digits) RSA-1536 (463 Digits) RSA-2048 (617 Digits) RSA-576 Decimal Digits: 174 18819881292060796383869723946165043980716356337941 73827007633564229888597152346654853190606065047430 45317388011303396716199692321205734031879550656996 221305168759307650257059 Prize ($US) $10,000 $20,000 $30,000 $50,000 $75,000 $100,000 $150,000 $200,000 Status Not Factored Not Factored Not Factored Not Factored Not Factored Not Factored Not Factored Not Factored

RSA Algorithm

Constraints on p and q
Suggested constraints on p and q (by RSA inventors and researchers) Length of p and q should differ by only a few digits Both p-1 and q-1 should contain a large prime factor gcd(p-1, q-1) should be small d > n

RSA Algorithm

Timing Attacks
Big integer multiplication take a long time Assume that the target system uses the following modular exponentiation algorithm for decryption By observing the time taken for modular multiplication, it is possible to infer bits in b If bi is set, d (d a) mod n will be executed (Will be much slower than the case of bi = 0) By varying values of a (ciphertext), and observing the execution (decryption) times carefully, values of bkbk-1b0 (private key) can be inferred
Modular-Exponentiation(a, b, n) /* Compute ab mod n */ 1. d 1 /* let bkbk-1b0 be the binary representation of b */ 2. for i k downto 0 3. do d (d d) mod n 4. if bi = 1 5. then d (d a) mod n 6. return d

RSA Algorithm

Timing Attack Countermeasures


Constant exponentiation time Ensure that all exponentiations take the same amount of time Simple fix, but degrade the performance Random delay Add a random delay to the exponentiation algorithm to confuse the timing attack Blinding Multiply the ciphertext by a random number before performing the exponentiation RSA Data Securitys blinding method
Generate a secret random r, 0 < r < n-1 Compute C = Cre mod n, where e is the public exponent Compute M = (C)d mod n with the ordinary RSA Compute M = M r-1 mod n = (Cre)dr-1 mod n = Cdredr-1 mod n (red mod n = r mod n) = Cd mod n

2 to 10% performance penalty

contoh : public key (e,n) privat key (d,n) tahap 1 : pilih bilangan n, p dan q misal n = 143 p*q = 143 11 * 13 tahap2 : pilih e prima e = (p-1) * (q-1) = (11-1) * (13-1) = 10 * 12 misalnya e = 17 tahap3 : hitung d d merupakan inverse e mod (p-1)*(q-1) d= e-1 mod(p-1)*(q-1) = 171 mod 120 = 113

c. EL GAMAL ALGORITMA

- 1984, public key - sebagai standard dalam US dalam DS (Digital Signature Standard) - pengirim dalam merubah sebagai key prima : DS = E(key privat , P) - penerima dalam verify menggunakan publickey pengirim : P=D(key public , DS) - tehniknya: pilih bilangan prima p dan 2 bilangan integer a dan x dimana p < p dan x < p pilih (p-1) lebih besar dari q hitung public key y = ax mod p private key = x dan public key = y untuk sender : misalnya message : M pilih bilangan integer k dimana 0 <p< p-1 dan k relprima (p-1) hitung r = ak mod p hitung s = k-1(m xr) mod (p-1) message signature r dan s

d. HASH ALGORITMA - berfungsi untuk melindungi data dari perubahan


- 1992 Secure Hash Algoritma (SHA) - input data < 2 64 bits - untuk memproduksi hash dari body data (digit/check value) - contoh MD5, MD4 MD5 Algoritm description. - dikembangkan oleh Ron Rivest di MIT - algoritma ini dengan input panjang dan hasilnya 128 bit. Input diolah dalam blok 512 bit

- Tahapannya : 1. Penambahan lapisan bits message dilapisi/ditambah bits panjangnya sama sebangun sampai 448 module n2 (panjang = 488 mod 512). Ini penambahan message 64 bits kurang dari kelipatan 512 bit. Lapisan selalu ditambah setiap kejadian jika message ingin ditambah. contoh : Jika panjang message 448 bit dilapisi 512 bit = 960 bit Pengisian harus tetap sebagai single 1 bit maka nomornya 0 bit

2. Penambahan panjang
64 bit mempresentasikan panjang message asli (sebelum ditambah). Jika panjang asli > 264 tetapi panjang yg digunakan < 64 maka panjang asli modulo 264 . Termasuk isi panjang sampai end message sehingga sulit bagi penyerang. Hasil pertama pada step kedua adalah sebuah message dengan kelipatan 512 bit. Dalam gambar diatas penambahan message memperlihatkan urutan blok 512 bit: Y0, Y1 . . . Y L-1 , total message : L * 512 bit akan sama hasilnya dengan kelipatan 9*32 bit word. kemudian M (0, . . . N-1) merupakan words hasil message dengan N kelipatan 16 N= L * 1

3. Initialization MD buffer

Sebanyak 128 bit pada buffer digunakan sebagai perantara dan hasil akhirnya merupakan hash function. Buffer dapat mempresentasikan 4 register 32 bits (A,B,C,D) dimana initialization dengan hexadecimal (low order octects first) A=012 3 45 67 B=89A BCDEF C=FEDCBA98 D=76 54 3210
4.

Proses message dalam 512 bit (16 word) blok

Mdq

5. Output.
Sesudah semua L 512 blok bit diolah dan menghasilkan menjadi pendek 128 bit. Algoritma MD5 mempunyai kelengkapan setiap bit merupakan code hash. Fungsi gabungan hash dari bit2 input merupakan pengulangan yg yg komplekx dasar dari fungsi (-F,G,H,I) menghasilkan suatu formulasi yang baik/unik. Jika tidak menghendaki 2 message pilihlah secara acak untuk memperlihatkan kelangsungan seperti hash kode. Dugaan Rivest dalam RFC pada MD5 suatu yg mungkin utuk 128 bit hash code. Kesulitan yang dihadapi bila 2 message dengan memperpendek semua pada operasi 264 dimana kesulitan memenuhi message dengan memperpendek pada 2128 operasi. penulisan ini tidak analyst dikerjakan untuk membuktikan dugaan

e. DES (The Data Encryption Standard) - 1972 oleh National Bureau of Standard
(National Institute of Standards Technologi) - digunakan dalam komunikasi - menggunakan 2 tehnik : substitution dan permutasi permutasi mengalami 16 iteration - dan iteration ada subkey yg merupakan kombinasi perputaran dan permutasian - fungsi permutasi sama setiap iteration setapi subkeynya berbeda karena adanya pergeseran bits

- Ada 2 input :
- plaintext panjang 64 bit - key panjang 56 bit Plaintext akan mengalami 3 proses : 1. 64 bit plaintext akan mengalami IP (Initial permutation) dan disusun sedemikian rupa akan menghasilkan : Permuted input. IP mengalami 16 iteration untuk fungsi yg sama, dimana hasilnya nanti 16 bit terakhir dari 64 bit berfungsi sebagai plaintext input dan key 2. Hasilnya dibagi dua, kanan dan kiri serta dipertukaran menghasilkan : PREOUTPUT 3. Preouput melalui permutation (IP-1) di inversi (dibalik) dengan order yg akan menghasilkan 64 bit ciphertext.

Input 64 bit permutasi akan mengalami 16 iteration. Hasil dari 64 bit akan mengahsilkan suatu kesimpulan dimana setiap iterasi dibagi dua setengah kiri dan kanan (L dan R). Key yg digunakan 56 bit input dengan algoritma pertama adalah permutasi. Hasil key 56 bit adalah 28 bit

3. STEGANOGRAFI 1. Pengertian - berasal dari bahasa Yunani - steganos : penyamaran atau penyembuyian - graphein : tulisan sebagai seni menyamarkan/menyembunyikan pesan tertulis kedalam pesan lainnya. Penyembunyian /penyamaran pesan ini dibuat sedemikian rupa sehingga pihak lain tidak mengetahui bahwa ada pesan lain didalam pesan yang dikirimkan. Hanya pihak penerima yang sah saja yang dapat mengetahui pesan lain tersebut

Istilah yang sering digunakan : - Carrier file : file yang berisi pesan rahasia tsb - Steganalysis : proses untuk mendeteksi keberadaanpesan rahasia dalam suatu file - Stego-medium : media yang digunakan untuk membawa pesan rahasia - Redundant bits : sebagian informasi yang terdapat di dalam file yang jika dihilangkan tidak akan menimbulakn kerusakan yang signifiakan (setidaknya bagi indera manusia) - Payload : informasi yang akan disembunyikan

Format yg bisa digunakan :


- Format image: bitmap (bmp), gif, pcx, jpeg, dll. - Format audio: wav, voc, mp3, dll. - Format lain: teks file, html, pdf, dll.

2. Tehnik a. Wax tablets menulis pesan diatas panel kayu yang kemudian disembunyikan dengan melapisi lilin sebagai penutupnya b. Invisible ink). penyembuyian teks pesan yang diperkecil menjadi sebuah titik (microdots) yang ditaruh dibawah perangko dan penyembunyian pesan dengan menggunakan tinta transparan

3. Model Cover x is an instance of a random variable X distributed according to model: PX x = ( x , x ) Choose x0 = (x , x0 ) to encode a message M while maintaining model statistics PX

Encoding

Decoding

Anda mungkin juga menyukai