P4 Enkripsi & Dekripsi (II)
ENKRIPSI DAN DEKRIPSI II
MATERI
Metode enkripsi DES (Data Encryption Standar)
Metode enkripsi RSA (Rivest, Shamir, Adleman)
Penggunaan public key
DATA ENCRYPTION STANDARD (DES)
Standard ini dibuat oleh National Beraue of Standard
USA pada tahun 1977.
DES menggunakan 56 bit kunci, algoritma enkripsi ini
termasuk yang kuat dan tidak mudah diterobos.
Cara enkripsi ini telah dijadikan standar oleh
pemerintah Amerika Serikat sejak tahun 1977 dan
menjadi standar ANSI tahun 1981.DATA ENCRYPTION STANDARD (DES)
DES seharusnya terdiri dari algoritma enkripsi data yang
diimplementasikan dalam peralatan elektronik untuk tujuan
tertentu.
Peralatan ini dirancang menurut cara yang mereka
gunakan dalam system atau jaringan computer untuk
melengkapi perlindungan cryptographyc pada data biner.
Algoritma DES adalah sesutu yang kompleks dan signifikan
yang merupakan kombinasi dari 2 model enkripsi dasar
yaitu substitusi dan permutasi (transposisi).DATA ENCRYPTION STANDARD (DES)
Metode implementasi akan tergantung
pada aplikasi dan lingkungan di sekitar
sistem itu.
Peralatan itu diimplementasikan tetapi
sebelumnya diuji dan divalidkan secara
akurat untuk menampilkan transformasi
dalam bentuk algoritma.DATA ENCRYPTION STANDARD (DES)
DATA ENCRYPTION STANDARD (DES) CYCLE
DETAIL DATA ENCRYPTION STANDARD (DES) CYCLE
EKSPANSI PERMUTASI DES
¨ Setiap setengah kanan diperluas dari 32 menjadi 48 bit dengan cara permutasi ekspansi.
¨ Ekspansi mengijinkan urutan bit dan juga mengulang bit tertentu.
¨ Ekspansi ini memiliki dua tujuan:
¤ Untuk membuat bagian antara ciphertext sebanding dengan ukuran ke kunci,
¤ Untuk memberikan hasil yang lebih lama yang nanti bisa dikompres. TABEL EKSPANSI PERMUTASI DES
TABEL EKSPANSI PERMUTASI DES
Pola Ekpsansi Permutasi
TRANSFORMASI KUNCI DES
Kunci 64-bit segera menjadi kunci 56-bit dengan menghapus setiap bit ke-8.
Pada setiap langkah dalam siklus,
kuncinya dipecah menjadi dua
bagian 28-bit, bagian-bagiannya
digeser ke kiri dengan sejumlah
digit tertentu, bagian-bagiannya
disisipkan bersama lagi, dan 48
dari 56 bit ini permutasi digunakan
sebagai kunci selama siklus ini.
Kunci untuk siklus digabungkan oleh fungsi eksklusif atau dengan separuh kanan yang diperluas dari bagian di atas.
Hasil itu bergerak ke dalam S-box yang dijelaskan pada langkah selanjutnya.
Pada setiap siklus, bagian dari
kunci secara independen bergeser
ke kiri secara sirkuler oleh sejumlah
posisi bit tertentu.
TRANSFORMASI KUNCI DES
Cycle Number Bits Shifted ¨
Jumlah bit dari
1
1
2
1 Circular Shifts untuk
3
2 setiap siklus.
4
2
5
2
6
2
7
2
8
2
9
1
10
2
11
2
12
2
13
2
TRANSFORMASI KUNCI DES
¨ Pilihan Permutasi Untuk Memilih 48 Key Bits
ALGORITMA ENKRIPSI DATA DES
Algoritma DES dirancang untuk menulis dan membaca berita
blok data yang terdiri dari 64 bit di bawah control kunci 64 bit.
Dalam pembacaan berita harus dikerjakan dengan
menggunakan kunci yang sama dengan waktu menulis berita,
dengan penjadwalan alamat kunci bit yang diubah sehingga
proses membaca adalah kebalikan dari proses menulis.
Sebuah blok ditulis dan ditujukan pada permutasi dengan inisial
IP, kemudian melewati perhitungan dan perhitungan tersebut
sangat tergantung pada kunci kompleks dan pada akhirnya
ALGORITMA ENKRIPSI DATA DES
Perhitungan yang tergantung pada kunci tersebut dapat didefinisikan
sebagai fungsi f, yang disebut fungsi cipher dan fungsi KS, yang disebut
Key Schedule.
Sebuah dekripsi perhitungan diberikan pada awal, sepanjang algoritma
yang digunakan dalam penulisan berita.
Berikutnya, penggunaan algoritma untuk pembacaan berita
didekripsikan.
Akhirnya, definisi dari fungsi cipher f menjadi fungsi seleksi Si dan fungsi
permutasi adalah P.ALGORITMA ENKRIPSI DATA DES
Perhatikan contoh berikut ini :
• Diberikan 2 blok yaitu L dan R dari bit. LR merupakan blok yang terdiri dari bit L dan diikuti oleh bit R.
• Kemudian menyusul urutan bit yang saling berhubungan, yaitu : B1, B2, … B8.
• Artinya, bit yang terdiri dari B1 diikuti B2
Kotak S adalah sebuah tabel dimana enam bit data digantikan oleh
empat bit.Input 48 bit dibagi menjadi delapan blok 6-bit, yang diidentifikasi sebagai B1B2 ... B8; blok Bi dioperasikan oleh S-box Si S-Boxes DES
S-Boxes DES
¨ S-Box table for the DES
S-Boxes DES
¨ Table Permutasi Box P
RIVEST SHAMIR ADLEMAN (RSA)
RSA adalah singkatan dari huruf depan 3 orang yang menemukannya pada
tahun 1977 di MIT, yaitu Ron Rivest, Adi Shamir, dan Len Adleman.Algoritma ini merupakan cara enkripsi publik yang paling kuat saat ini.
Algoritma RSA melibatkan seleksi digit angka prima dan mengalikan secara
bersama-sama untuk mendapatkan jumlah, yaitu n.
Angka-angka ini dilewati algoritma matematis untuk menentukan kunci publik
KU={e,n} dan kunci pribadi KR={d,n} yang secara matematis berhubungan.Ini merupakan hal yang sulit untuk menentukan e dan atau d diberi n.
RIVEST SHAMIR ADLEMAN (RSA)
¨ Sekali kunci telah diciptakan, sebuah pesan dapat dienkrip dalam blok dan melewati persamaan berikut ini:
¤ C = Me mod n (Persamaan 1) n Dimana C adalah ciphertext, M adalah plaintext, sedangkan e adalah kunci publik penerima.
¨ Dengan demikian, pesan di atas dapat dienkrip dengan persamaan berikut :
¤ C = Md mod n (Persamaan 2) n Dimana d adalah kunci pribadi penerima.
RIVEST SHAMIR ADLEMAN (RSA)
¨ Sebagai contoh, kita mengasumsikan bahwa M=19 (kita akan menggunakan jumlah yang kecil untuk hal yang sederhana dan nantinya secara normal jumlah-jumlah ini akan menjadi lebih besar).
¨ Kita akan menggunakan angka 7 sebagai huruf p dan angka 17 sebagai huruf q.
¤ Jadi n=7x17=119.
¨ Kemudian, e dihitung menjadi 5 dan dihitung lagi menjadi 77.
¤ KU={5,119} dan KR={77,119}.
¨ Kita dapat melalui nilai yang dibutuhkan dengan persamaan 1 untuk mencari nilai C.
¨ Dalam hal ini C=66, kemudian hasil dekrip C(66) dapat digunakan untuk mendapatkan nilai plaintext yang asli.
¨ Untuk persamaan (2) juga mendapat nilai 19 dan plaintext yang
RIVEST SHAMIR ADLEMAN (RSA)
Hanya orang yang mempunyai kunci rahasia yang
sesuai yang dapat membuka pesan yang disandi
dengan kunci publik tertentu.
Algoritma enkripsi inilah yang dipakai sebagai dasar
dari system enkripsi PGP (Pretty Good Privacy).
PGP adalah system enkripsi yang banyak dipakai
secara umum di internet.RIVEST SHAMIR ADLEMAN (RSA)
Cara enkripsi dengan kunci publik ini ternyata
mempunyai kelebihan lain, yaitu bisa dipakai
sebagai semacam tanda tangan digital yang
dapat digunakan untuk menjamin keaslian e-mail.
Si A yang akan mengirim E-mail kepada si B
dapat membubuhkan tanda tangan digitalnya di
akhir e-mail tersebut.RIVEST SHAMIR ADLEMAN (RSA)
Tanda tangan digital ini berupa sederetan huruf yang
dibentuk dengan rumusan matematis berdasarkan
kunci rahasia si A dan isi e-mail yang dikirim.
Keaslian ini dapat dicek oleh B dengan menggunakan
kunci publik milik si A.
Jadi, jika e-mail yang telah dibubuhi tanda tangan
digital tersebut diubah isinya, e-mail ini tidak akan
lulus proses autentikasi dengan kunci publik si APRETTY GOOD PRIVACY (PGP)
Setiap orang mempunyai 2 kunci, yaitu kunci publik dan kunci
pribadi.
Ketika seseorang ingin mengirim sesuatu pada si penerima,
pengirim mengenkrip dengan kunci publik si penerima.
Namun, cara untuk mendekripnya dengan kunci pribadi si
penerima.
Salah satu keuntungan lain dari PGP adalah mengizinkan pengirim
menandai pesan-pesan mereka.
Ini membuktikan bahwa pesan datang dari pengirim dan belum
PRETTY GOOD PRIVACY (PGP)
Berdasarkan pada teori ini, PGP
mengizinkan seseorang untuk mengumumkan
kunci publik mereka dan menjaga kunci
pribadi yang sifatnya rahasia.
Hasilnya, seseorang dapat mengenkrip
pesan kepada orang lain sepanjang
mereka mempunyai kunci publik.PRETTY GOOD PRIVACY (PGP)
PGP adalah suatu metode enkripsi informasi yang bersifat
rahasia sehingga jangan sampai diketahui oleh orang yang
tidak berhak.
Informasi ini bisa berupa e-mail yang sifatnya rahasia, nomor
kode kartu kredit, atau pengiriman dokumen rahasia
perusahaan melalui internet.
PGP menggunakan metode kriptografi yang disebut “public
key encryption”- Yaitu suatu metode kriptografi yang sangat sophisticated.
PRINSIP KERJA PGP
1) PGP, seperti yang telah dijelaskan sebelumnya, menggunakan teknik yang disebut public key encryption dengan dua kode.
¤ Kode-kode ini berhubungan secara intrinsic, namun tidak mungkin untuk memecahkan satu sama lain.
2) Ketika dibuat suatu kunci, maka secara otomatis akan dihasilkan sepasang kunci, yaitu kunci publik dan kunci rahasia.
¤ Si a dapat memberikan kunci publik kemanapun tujuan yang diinginkannya, melalui telepon, internet, keyserver, dan sebagainya. Kunci rahasia yang disimpan pada mesin si A dan menggunakan messager decipher akan dikirimkan ke si A. Jadi, orang lain yang akan menggunakan kunci publik milik A (yang hanya dapat di dekripsi oleh kunci rahasia milik si A), mengirimkan pesan kepada A, dan A akan menggunakan kunci rahasia untuk membacanya.
3) Mengapa menggunakan dua kunci ? Karena dengan conventional crypto, di saat terjadi transfer informasi kunci, diperlukan suatu secure channel. Jika kita memiliki suatu secure channel, mengapa masih menggunakan crypto ? Dengan public-key system, tidak akan menjadi masalah siapa yang melihat kunci milik kita, karena kunci yang dilihat orang lain adalah yang digunakan hanya untuk enkripsi dan hanya pemiliknya saja yang mengetahui kunci rahasia tersebut.
Penerapan PGP dalam jaringan 1.
Kunci public sangat lambat bila dibandingkan dengan konvensional, jadi PGP akan mengkombinasikan 2 algoritma yaitu RSA dan IDEA untuk melakukan enkripsi plaintext.
2. Sebagai contoh, Bejon (pemilik PGP) ingin mengenkripsi suatu file yang
diberi nama plain.txt sedemikian sehingga hanya si Matangin yang dapat mendekripsinya.
¤ Dalam hal ini, Badrun mengirimkan PGP perintah (command line) untuk melakukan enkripsi: pgp –e plain.txt Matangin.
¤ Pada command line ini, pgp adalah file executable, -e berarti memberitahukan PGP untuk mengenkripsi file, plain.txt adalah nama plaintext, dan dul merepresentasikan kunci public suatu tujuan (Matangin) yang diinginkan Badrun untuk mengenkripsi pesannya.
¤ PGP menggunakan suatu random number generator dalam file randseed.bin untuk menghasilkan suatu kunci (session key) IDEA yang bersifat temporer.
¤ Kunci rahasia itu sendiri dienkripsi dengan kunci RSA public yang Penerapan PGP dalam jaringan 3.
Kemudian PGP menggunakan kunci sesi untuk mengenkripsi pesan, ASCII-armors, dan menyimpan seluruhnya sebagai cipher.asc.
¤ Bila Matangin ingin membaca pesannya, ia mengetikkan command: pgp cipher.asc.
4. PGP menggunakan kunci rahasia milik Matangin yang
merupakan kunci RSA, untuk mendekripsi kunci sesi yang mana, yang jika dipanggil oleh Badrun akan dienkripsi oleh kunci public.