untuk mendapatkan K begitu seterusnya sampai putaran ke 16 yaitu n sudah mencapai 16. Setelah selesai K

ke paling Kanan dari bit K kiri 0 dan K kanan

0, untuk mendapatkan K

kiri 4 dan K kanan 4 pindahkan bit paling sebelah Kiri sebanyak 2 bit ke paling Kanan dari bit K kiri 3 dan K kanan

3, begitu seterusnya sampai putaran ke 16 yaitu n sudah mencapai 16. Setelah selesai K

kiri n dan K kanan n digabungkan kembali dan di permutasikan kembali mengikuti aturan tabel PC-2 menjadi 48 bit, hasilnya akan mendapatkan Kn dimana 1=n=16. PC-2 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 4 49 39 56 34 53 46 42 50 36 29 32 Tabel 2.3 Tabel PC-2 Setelah selesai, gabungkan K kiri dan K kanan kembali setelah digabung permutasikan K kiri n dan K kanan n sesuai aturan PC-2 yang akan menghasilkan Pn pada PC-2 di atas dari 64 bit K kiri n dan K kanan n hanya diambil 48 bit. Bit pertama pada Kn adalah bit ke-14 dan K kiri n dan K kanan n bit ke-2 dari Pn adalah bit ke-17 dari K kiri n dan K kanan n begitu seterusnya sampai bit ke-48 dari Pn adalah bit ke-32 dari K kiri n dan K kanan

n. Pada proses enkripsi, pesan M 64 bit dipermutasikan mengikuti aturan

tabel IP menjadi M+, dibagi menjadi dua bagian M kiri 0 32 bit setelah kita melakukan 16 iterasi untuk 1=n=16 menggunakan fungsi yang beroperasi pada 2 blok 32 bit kita anggap ⊕ adalah penambahan XOR pertambahan bit demi bit Modulo 2 dan n bertambah sampai 16 M kiri n = M kanan n-1 M kanan n = M kiri n-1 ⊕ f M kanan n-1, Kn Pemilihan Bit E 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 1 Tabel 2.4 Tabel Pemilihan Bit E Untuk fungsi f pertama, kita harus menambahkan tiap blok M kanan n-1 menjadi EM kanan n-1 dari 32 bit menjadi 48 bit agar bisa dioperasikan dengan Kn. Untuk itu, perlu tabel pemilihan bit E sehingga persamaan M kanan n-1 menjadi EM kanan n-1 setelah itu kita XOR-kan EM kanan n-1dengan persamaannya menjadi : Kn ⊕ EM kanan n-1. Hasil dari persamaan di atas adalah Kn 48 bit atau enam kelompok bit 6 bit. Kita lakukan sesuatu pada setiap kelompok 6 bit tersebut, kita gunakan kelompok-kelompok tersebut sebagai alamat di tabel yang disebut SBox. Dari hasil persamaan di atas bisa untuk menghitung : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 14 4 13 1 5 15 11 8 3 10 6 12 5 9 7 1 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 2 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 3 15 12 8 2 4 9 1 7 5 11 3 14 10 6 13 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 15 1 8 14 6 11 3 4 9 7 2 13 12 5 10 1 3 13 4 7 15 2 8 14 12 1 10 6 9 11 5 2 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15 3 13 8 10 1 3 15 4 2 11 6 7 12 5 14 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 10 9 14 6 3 15 5 1 13 12 7 11 4 2 8 1 13 7 9 3 4 6 10 2 8 5 14 12 11 15 1 2 13 6 4 9 8 15 3 11 1 2 12 5 10 14 7 3 1 10 13 6 9 8 7 4 15 14 3 11 5 2 12 Kn + EM kanan n-1 = B1, B2, B3, B4, B4, B5, B6, B7, B8 Dimana setiap B1 adalah sekumpulan bit. Sekarang kita hitung : S1B1, S2B2, S3B3, S4B4, S5B5, S6B6, S7B7, S8B8 Dimana setiap S1B1 adalah hasil dari Sbox ke Sbox 1 Tabel 2.5 Tabel Sbox 1 Sbox 2 Tabel 2.6 Tabel Sbox 2 Sbox 3 Tabel 2.7 Tabel Sbox 3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 7 13 14 3 6 9 10 1 2 8 5 11 12 4 15 1 13 8 11 5 6 15 3 4 7 2 12 1 10 14 9 2 10 6 9 12 11 7 13 15 1 3 14 5 2 8 4 3 3 15 6 10 1 13 8 9 4 5 11 12 7 2 14 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 12 4 1 7 10 11 6 8 5 3 15 13 14 9 1 14 11 2 12 4 7 13 1 5 15 10 3 9 8 6 2 4 2 1 11 10 13 7 8 15 9 12 5 6 3 14 3 11 8 12 7 1 14 2 13 6 15 9 10 4 5 3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 12 1 10 15 9 2 6 8 13 3 4 14 7 5 11 1 10 15 4 2 7 12 9 5 6 1 13 14 11 3 8 2 9 14 15 5 2 8 12 3 7 4 10 1 13 11 6 3 4 3 2 12 9 5 15 10 11 14 1 7 6 8 13 Sbox 4 Tabel 2.8 Tabel Sbox 4 Sbox 5 Tabel 2.9 Tabel Sbox 5 Sbox 6 Tabel 2.10 Tabel Sbox 6 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 11 2 14 15 8 13 3 12 9 7 5 10 6 1 1 13 11 7 4 9 1 10 14 3 5 12 2 15 8 6 2 1 4 11 13 12 13 7 14 10 15 6 8 5 9 2 3 6 11 13 8 1 4 10 7 9 5 15 14 2 3 12 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 13 2 8 4 6 15 11 1 10 9 3 14 5 12 7 1 1 15 13 8 10 3 7 4 12 5 6 11 14 9 2 2 7 11 4 1 9 12 14 2 6 10 13 15 3 5 8 3 2 1 14 7 4 10 8 13 15 12 9 3 5 6 11 Sbox 7 Tabel 2.11 Tabel Sbox 7 Sbox 8 Tabel 2.12 Tabel Sbox 8 Setiap kelompok akan memberikan kita sebuah alamat pada sebuah Sbox yang berbeda. Ada 4 bit angka pada alamat tersebut yang akan menggantikan 6 bit tersebut, hasil setiap kelompok 6 bit dirubah menjadi 4 bit untuk menjadi 32 bit. Misalkan kita memasukkan sebuah nilai 32 10 = 100000 2 ke dalam Sbox1, pertama pisahkan bit pertama dan terakhir kemudian satukan keduanya menjadi 10 2 = 2 10 nilai yang kita dapat akan kita gunakan untuk menentukan baris pada Sbox1 kemudian bit ke-2 sampai bit-5 atau nilai tengah 0000 2 = 0 10 kita gunakan untuk menentukan kolom pada Sbox1. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 14 4 13 1 5 15 11 8 3 10 6 12 5 9 7 1 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 2 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 3 15 12 8 2 4 9 1 7 5 11 3 14 10 6 13 Sbox 1 Tabel 2.5 Tabel Sbox 1 Nilai yang kita dapatkan akan kita substitusi dengan nilai yang kita input 32=4. Dengan penjelasan tersebut, maka akan kita dapatkan nilai M kanan n = M kir in-1 ⊕ f M kanan n-1, Kn dan ini berlangsung sampai nilai n mencapai 16, setelah didapati nilai M kiri 16 dan M kanan 16 gabungkan kembali, akan tetapi dengan urutan di balik menjadi 64 bit blok : M kanan 16 M kiri 16. Setelah digabungkan, maka lakukan operasi terakhir dengan mengikuti aturan IP-1 hasilnya adalah ciphertext. Untuk melakukan dekripsi cukup membalik dari yang akhir ke paling awal dari proses enkripsi Wirawan, 2006:42.

2.7 Metode RSA Rivest, Shamir, Adleman

RSA ditemukan oleh tiga orang yang kemudian disingkat menjadi RSA. Ketiga penemu itu adalah Ron Rivest, Adi Shamir, dan Leonard Adleman yang menemukannya pada tahun 1977 di MIT. Algoritma ini merupakan cara enkripsi publik yang paling kuat saat ini karena, sulitnya pemfaktoran bilangan yang sangat besar. RSA termasuk algoritma asimetri, yang berarti memiliki dua kunci, yaitu kunci publik dan kunci privat. Skema yang dikembangkan oleh Rivest, Shamir dan Adleman mengekspresikan bahwa plaintext dienkripsi menjadi block-block yang setiap block memiliki nilai bilangan biner yang diberi simbol “n”, plaintext blok “M” dan ciphertext “C”. Untuk melakukan enkripsi pesan “M”, pesan dibagi ke dalam block-block numeric yang lebih kecil daripada “n” data biner dengan pangkat terbesar, jika bilangan prima yang panjangnya 200 digit dan dapat menambah beberapa bit 0 di kiri bilangan untuk menjaga agar pesan tetap kurang dari nilai “n” Ariyus, 2006:113. Sekali kunci telah diciptakan, sebuah pesan dapat dienkrip dalam blok dan melewati persamaan berikut ini : C = M e mod n 1, dimana C adalah ciphertext. M adalah message plaintext, sedangkan e adalah kunci publik penerima. Dengan demikian, pesan di atas dapat didekrip dengan persamaan berikut : M = C d mod n 2, dimana d adalah kunci pribadi penerima. Oleh karena itu, hanya orang yang mempunyai kunci rahasia yang sesuai yang dapat membuka pesan yang disandi dengan kunci publik tertentu. 2.8 Algoritma RSA 2.8.1 Properti Algoritma RSA Besaran-besaran yang digunakan pada algoritma RSA Rinaldi Munir: Bahan Kuliah ke-15, 2004:1 : 1 p dan q bilangan prima rahasia 2 n = p . q tidak rahasia 3 φn = p – 1q – 1 rahasia 4 e kunci enkripsi tidak rahasia 5 d kunci dekripsi rahasia 6 m plainteks rahasia 7 c cipherteks tidak rahasia

2.8.2 Algoritma Membangkitkan Pasangan Kunci Stallings, 2004:569

1. Pilih dua buah bilangan prima sembarang, p dan q dan p q.

2. Hitung n = p x q