Data Encryption Standard DES

6 b. Kunci pribadi Private key: kunci yang dirahasiakan hanya boleh diketahui satu orang. 3. Hash Function Fungsi Hash Fungsi hash sering disebut dengan fungsi hash satu arah one-way function, message digest, fingerprint, fungsi kompresi dan message authentication code MAC, hal ini merupakan suatu input matematika yang mengambil input panjang _inary_e dan mengubahnya ke dalam urutan panjang _inary yang tetap. Fungsi hash biasanya digunakan untuk membuat sidik jari dari suatu pesan.

2.2 Data Encryption Standard DES

Data Encryption Standard DES ditetapkan oleh FIPS sebagai suatu algoritma kriptografi yang telah disetujui dan digunakan oleh FIPS 140-1. DES dipublikasikan dalam rangka menyediakan sebuah gambaran komplit dari sebuah algoritma matematika untuk mengenkrip dan mendekrip informasi kode biner. Data Encryption Standard DES diadopsi tahun 1977 oleh National Bureau of Standard, sekarang National Institute of Standards and Technology NIST sebagai Federal Information Processing Standard 46 FIPS PUB 46. Algoritma itu sendiri ditujukan sebagai Data Encryption Algorithm DEA. Pada DES, data dienkripsi dalam 64-bit blok-blok dengan menggunakan sebuah kunci 56-bit. Algoritma perubahan input 64-bit dalam sebuah deretan langkah sampai 7 keluaran 64-bit. Dengan langkah dan kunci yang sama digunakan sebagai proses kebalikan dari enkripsi dekripsi. Pada awal tahun 1960-an, IBM mengadakan sebuah projek penelitian yang memegang peranan penting dalam kriptografi komputer oleh Horst Feistel. Projek tersebut telah ditandatangani pada tahun 1971, pada perkembangan terakhir algoritma tersebut ditandai dengan LUCIFER, yang telah dijual kepada L1oyd’s of London untuk digunakan dalam sistem penarikan uang . LUCIFER adalah chiper blok Feistel yang beroperasi pada blok-blok 64-bit menggunakan kunci berukuran 128-bit. Karena hasil yang diciptakan oleh projek LUCIFER memberikan harapan , IBM telah memulai sebuah usaha untuk mengembangkan sebuah produk enkripsi komersial yang dapat dipasarkan yang lebih ideal yang dapat dilaksanakan pada single chip. Usaha tersebut dikepalai oleh Walter Tuchman dan Carl Meyer, usaha itu tidak hanya meliputi para peneliti dari IBM saja tapi juga konsultan dari pihak luar serta penasehat teknikal dari NSA. Hasil dari usaha ini merupakan penghalusan dari versi LUCIFER yang lebih resisten terhadap kriptanalisis dengan meredusi ukuran kunci menjadi 56-bit yang sesuai dengan single chip. Pada tahun1973, National Bureau of Standard memerlukan chipper standar nasional. IBM telah mengajukkan hasil dari projek Tuchman-Mayer. Algoritma yang ditujukkan ini jauh lebih baik dan telah diadopsi pada tahun 1977 sebagai Data Encryption Standard. 8 Operasi Mode-mode pada Blok Chiper Algoritma DES adalah dasar pembentukan blok untuk memberikan keamanan data. Empat mode operasi yang telah dikembangkan untuk DES. Empat mode ini sebenarnya diperuntukkan untuk melindungi semua kemungkinan aplikasi-aplikasi yang digunakan untuk mengenkripsi dengan menggunakan model DES. Akan tetapi, NIST telah mengembangkan daftar mode-mode yang telah direkomendasikan menjadi lima mode. Mode-mode tersebut adalah[7]: 1. Mode Electronic Code Book ECB Mode ECB suatu blok cipher yang panjang dibagi dalam bentuk sequence binary menjadi satu blok tanpa mempengaruhi blok-blok yang lain, tiap blok terdiri dari 64 bit atau 128 bit, setiap blok dienkripsi dengan menggunakan kunci yang sama. Pada mode ini untuk pesan yang lebih panjang dari 64 bit prosedur yang digunakan adalah dengan membagi pesan menjadi blok-blok dengan panjang 64 bit dan menambahkannya pada blok terakhir jika dibutuhkan. Sifat yang paling mendasar pada mode ECB adalah blok plainteks yang sama akan dikodekan menjadi cipherteks yang sama. Sehingga kelemahan pada mode ini yaitu penukaran pesan yang sedang dikirim sudah bisa diterka apa kira-kira isi pesan tersebut. 2. Mode Cipher Blok Chaining CBC Sistem dari mode CBC adalah plaintext yang sama akan dienkripsi ke dalam bentuk cipher yang berbeda, disebabkan blok cipher yang satu tidak 9 berhubungan dengan blok cipher yang lain. Melainkan tergantung pada cipher sebelumnya. Pada mode CBC, input untuk enkripsi merupakan hasil dari XOR antara plainteks dengan cipherteks sebelumnya dan menggunakan kunci yang sama pada setiap blok. Bentuk formal dari mode CBC yaitu: C 1 = E k IV ⊕ P 1 P 1 = IV ⊕ D k+ C 1 dengan C 1 = cipherteks ke-1 E k = enkripsi D k = dekripsi P 1 = plainteks ke-1 IV = initialization vector 3. Mode Cipher Feed Back CFB Metode ini digunakan untuk melakukan enkripsi pada stream cipher, mode ini tidak memerlukan padding bit tambahan bit karena jumlah panjang blok sama dengan panjang plainteks yang ada. Mode ini bekerja pada sistem waktu nyata. Pada metode ini, input diproses 8 bit setiap kali enkripsi dilakukan. Cipherteks sebelumnya digunakan sebagai bagian input dari algoritma enkripsi untuk menghasilkan keluaran acak. Keluaran ini diambil 8 bit paling kirinya untuk di-XOR-kan dengan plainteks sepanjang 8 bit untuk menghasilkan cipherteks berikutnya. 10 Enkripsi terdiri dari input yang lama digeser ke kiri sejauh 8 bit. Kekosongan 8 bit ini akan diisi oleh text cipher sebelumnya. Input enkripsi mula-mula adalah Initialization Vector IV. Salah satu kerugian mode CFB adalah perambatan kesalahan. Jika satu blok cipher mengalami kesalahan ketika di saluran, maka blok-blok berikutnya akan terpengaruh. Secara matematis, CFB dapat dinyatakan sebagai berikut: C i = P i ⊕ E k C i-1 P i = C i ⊕ E k C i-1 dengan C i = cipherteks ke-i E k = enkripsi D k = dekripsi P i = plainteks ke-i 4. Mode Output Feed Back OFB Mode OFB tidak mempengaruhi blok yang lain jika terjadi error, satu bit yang error pada cipherteks hanya akan mempengaruhi satu bit plainteks pada terjadinya proses dekripsi. Mode OFB sring digunakan untuk mengenkripsi pengiriman satelit. 11 5. Mode Counter CTR Nilai counter dalam proses enkripsi harus berbeda untuk setiap blok plainteks. Counter adalah beberapa nilai awal lalu ditambahkan dengan 1 untuk setiap subbarisan blok modulo 2 b , dimana b merupakan ukuran blok. Untuk proses enkripsi, counter dienkripsi lalu di XOR-kan blok plainteks untuk memperoleh blok cipherteks. Untuk proses dekripsi digunakan barisan nilai counter yang sama, stiap counter yang telah dienkripsi dan di-XOR-kan dengan blok cipherteks untuk memperoleh kembali blok plainteks yang sesuai.

2.3 Bentuk-bentuk Uji Statistik