ENKRIPSI. . . .????

ENKRIPSI???

Enkripsi adalah ukuran security yang pertama, tetapi banyak wireless access points (AP) tidak menggunakan enkripsi sebagai default-nya. Meskipun banyak AP telah memiliki Wired Equivalent Privacy (WEP) protocol, tetapi secara default tidak diaktifkan. WEP memang mempunyai beberapa lubang di security-nya, dan seorang peretas yang berpengalaman pasti dapat membukanya, tetapi itu masih tetap lebih baik dari pada tidak ada enkripsi sama sekali. Pastikan untuk mengaktifkan metode WEP authentication dengan “shared key” daripada “open system”. Untuk “open system”, AP tidak melakukan enkripsi data, tetapi hanya melakukan otentifikasi client. Ubah WEP key sesering mungkin, dan pakai 128-bit WEP hindari menggunakan 40-bit.




ENKRIPSI BLOWFISH

Blowfish alias “OpenPGP.Cipher.4″ merupakan enkripsi yang termasuk dalam golongan Symmetric Cryptosystem , metoda enkripsinya mirip dengan DES (DES-like Cipher) diciptakan oleh seorang Cryptanalyst bernama Bruce Schneier Presiden perusahaan Counterpane Internet Security, Inc (Perusahaan konsultan tentang kriptografi dan keamanan Komputer) dan dipublikasikan tahun 1994. Dibuat untuk digunakan pada komputer yang mempunyai microposesor besar (32-bit keatas dengan cache data yang besar). Blowfish dikembangkan untuk memenuhi kriteria desain yang cepat dalam implementasinya dimana pada keadaan optimal dapat mencapai 26 clock cycle per byte, kompak dimana dapat berjalan pada memori kurang dari 5 KB, sederhana dalam algoritmanya sehingga mudah diketahui kesalahannya, dan keamanan yang variabel dimana panjang kunci bervariasi (minimum 32 bit, maksimum 448 bit, Multiple 8 bit, default 128 bit).Blowfish dioptimasikan untuk berbagai aplikasi dimana kunci tidak sering berubah, seperti pada jaringan komunikasi atau enkripsi file secara otomatis. Dalam pengimplementasiannya dalam komputer bermicroprosesor 32-bit dengan cache data yang besar (Pentium dan Power PC) Blowfish terbukti jauh lebih cepat dari DES. Tetapi Blowfish tidak cocok dengan aplikasi dengan perubahan kunci yang sering atau sebagai fungsi hast satu arah seperti pada aplikasi packet switching. Blowfish pun tidak dapat digunakan pada aplikasi kartu pintar (smart card) karena memerlukan memori yang besar. Blowfish termasuk dalam enkripsi block Cipher 64-bit dangan panjang kunci yang bervariasi antara 32-bit sampai 448-bit.Algoritma Blowfish terdiri atas dua bagian :

Key-Expansion

Berfungsi merubah kunci (Minimum 32-bit, Maksimum 448-bit) menjadi beberapa array subkunci (subkey) dengan total 4168 byte.

Enkripsi Data

Terdiri dari iterasi fungsi sederhana (Feistel Network) sebanyak 16 kali putaran. Setiap putaran terdiri dari permutasi kunci-dependent dan substitusi kunci- dan data-dependent. Semua operasi adalah penambahan (addition) dan XOR pada variabel 32-bit. Operasi tambahan lainnya hanyalah empat penelusuran tabel (table lookup) array berindeks untuk setiap putaran.

Algoritma Blowfish

Blowfish menggunakan subkunci yang besar. Kunci tersebut harus dihitung sebelum enkripsi atau dekripsi data. Blowfish adalah algoritma yang menerapkan jaringan Feistel (Feistel Network) yang terdiri dari 16 putaran. Input adalah elemen 64-bit,X.Untuk alur algoritma enkripsi dengan metoda Blowfish dijelaskan sebagai berikut :

1. Bentuk inisial P-array sebanyak 18 buah (P1,P2,…………..P18) masing-msing bernilai 32-bit.

Array P terdiri dari delapan belas kunci 32-bit subkunci :

P1,P2,…….,P18

2. Bentuk S-box sebanyak 4 buah masing-masing bernilai 32-bit yang memiliki masukan 256.

Empat 32-bit S-box masing-masing mempunyai 256 entri :

S1,0,S1,1,………………..,S1,255

S2,0,S2,1,………………..,S2,255

S3,0,S3,1,………………..,S3,255

S4,0,S4,1,………………..,S4,255

3. Plaintext yang akan dienkripsi diasumsikan sebagai masukan, Plaintext tersebut diambil sebanyak 64-bit, dan apabila kurang dari 64-bit maka kita tambahkan bitnya, supaya dalam operasi nanti sesuai dengan datanya.

4. Hasil pengambilan tadi dibagi 2, 32-bit pertama disebut XL, 32-bit yang kedua disebut XR.

5. Selanjutnya lakukan operasi XL = XL xor Pi dan XR = F(XL) xor XR

6. Hasil dari operrasi diatas ditukar XL menjadi XR dan XR menjadi XL.

7. Lakukan sebanyak 16 kali, perulangan yang ke-16 lakukan lagi proses penukaran XL dan XR.

8. Pada proses ke-17 lakukan operasi untuk XR = XR xor P17 dan XL = XL xor P18.

9. Proses terakhir satukan kembali XL dan XR sehingga menjadi 64-bit kembali.

Subkunci dihitung menggunakan algoritma Blowfish, metodanya adalah sebagai berikut :

  • Pertama-tama inilialisasi P-array dan kemudian empat S-box secara berurutan dengan string yang tetap. String ini terdiri atas digit hexadesimal dari Pi.
  • XOR P1 dengan 32-bit pertama kunci, XOR P2 dengan 32-bit kedua dari kunci dan seterusnya untuk setiap bit dari kunci (sampai P18).Ulangi terhadap bit kunci sampai seluruh P-array di XOR dengan bit kunci.
  • Enkrip semua string nol dengan algoritma Blowfish dengan menggunakan subkunci seperti dijelaskan pada langkah (1) dan (2).
  • Ganti P1 dan P2 dengan keluaran dari langkah (3).
  • Enkrip keluaran dari langkah (3) dengan algoritma Blowfish dengan subkunci yang sudah dimodifikasi.
  • Ganti P3 dan P4 dengan keluaran dari langkah (5).
  • Lanjutkan proses tersebut, ganti seluruh elemen dari P-array, kemudian seluruh keempat S-box berurutan, dengan keluaran yang berubah secara kontiyu dari algoritma Blowfish.

Total yang diperlukan adalah 521 iterasi untuk menghasilkan semua subkunci yang dibutuhkan. Aplikasi kemudian dapat menyimpan subkunci ini dan tidak membutuhkan langkah-langkah proses penurunan berulang kali, kecuali kunci yang digunakan berubah.

Untuk deskripsi sama persis dengan enkripsi, kecuali pada P-array (P1,P2,……..,P18) digunakan dengan urutan terbalik atau di inverskan.

Keamanan Blowfish

Sampai saat ini algoritma Blowfish belum ditemukan kelemahan yang berarti hanya adanya weak key dimana dua entri dari S-box mempunyai nilai yang sama. Belum ada cara untuk mengecek weak key sebelum melakukan key expansion, tetapi hal ini tidak berpengaruh terhadap hasil enkripsi. Hasil enkripsi dengan algoritma Blowfish sangat tidak mungkin dan tidak praktis untuk di terjemahkan tanpa bantuan kunci. Sampai kini belum ada Cryptanalysis yang dapat membongkar pesan tanpa kunci yang enkripsi oleh Blowfish. Agar aman dari pembongkaran pesan maka dalam algoritmanya harus menggunakan 16 putaran agar pesan tersebut tidak dapat dibongkar. Algoritma Blowfish pun dapat digabungkan dengan algoritma-algoritma enkripsi yang lain dalam pengkripsian sebuah pesan untuk lebih menjamin isi dari pesan tersebut.

Blowfish alias "OpenPGP.Cipher.4" merupakan enkripsi yang termasuk dalam golongan Symmetric Cryptosystem, metoda enkripsinya mirip dengan DES (DES-like Cipher) diciptakan oleh seorang Cryptanalyst bernama Bruce Schneier Presiden perusahaan Counterpane Internet Security, Inc (Perusahaan konsultan tentang kriptografi dan keamanan Komputer) dan dipublikasikan tahun 1994. Dibuat untuk digunakan pada komputer yang mempunyai microposesor besar (32-bit keatas dengan cache data yang besar).

Blowfish dikembangkan untuk memenuhi kriteria desain yang cepat dalam implementasinya dimana pada keadaan optimal dapat mencapai 26 clock cycle per byte, kompak dimana dapat berjalan pada memori kurang dari 5 KB, sederhana dalam algoritmanya sehingga mudah diketahui kesalahannya, dan keamanan yang variabel dimana panjang kunci bervariasi (minimum 32 bit, maksimum 448 bit, Multiple 8 bit, default 128 bit).Blowfish dioptimasikan untuk berbagai aplikasi dimana kunci tidak sering berubah, seperti pada jaringan komunikasi atau enkripsi file secara otomatis. Dalam pengimplementasiannya dalam komputer bermicroprosesor 32-bit dengan cache data yang besar (Pentium dan Power PC) Blowfish terbukti jauh lebih cepat dari DES. Tetapi Blowfish tidak cocok dengan aplikasi dengan perubahan kunci yang sering atau sebagai fungsi hast satu arah seperti pada aplikasi packet switching. Blowfish pun tidak dapat digunakan pada aplikasi kartu pintar (smart card) karena memerlukan memori yang besar.

Blowfish termasuk dalam enkripsi block Cipher 64-bit dangan panjang kunci yang bervariasi antara 32-bit sampai 448-bit. Algoritma Blowfish terdiri atas dua bagian :

1. Key-Expansion
Berfungsi merubah kunci (Minimum 32-bit, Maksimum 448-bit) menjadi beberapa array subkunci (subkey) dengan total 4168 byte.

2. Enkripsi Data
Terdiri dari iterasi fungsi sederhana (Feistel Network) sebanyak 16 kali putaran. Setiap putaran terdiri dari permutasi kunci-dependent dan substitusi kunci- dan data-dependent. Semua operasi adalah penambahan (addition) dan XOR pada variabel 32-bit. Operasi tambahan lainnya hanyalah empat penelusuran tabel (table lookup) array berindeks untuk setiap putaran.


Algoritma Blowfish

Blowfish menggunakan subkunci yang besar. Kunci tersebut harus dihitung sebelum enkripsi atau dekripsi data.

Blowfish adalah algoritma yang menerapkan jaringan Feistel (Feistel Network) yang terdiri dari 16 putaran. Input adalah elemen 64-bit,X.Untuk alur algoritma enkripsi dengan metoda Blowfish dijelaskan sebagai berikut :

1. Bentuk inisial P-array sebanyak 18 buah (P1,P2,..............P18) masing-msing bernilai 32-bit.
Array P terdiri dari delapan belas kunci 32-bit subkunci :


P1,P2,.......,P18



2. Bentuk S-box sebanyak 4 buah masing-masing bernilai 32-bit yang memiliki masukan 256.

Empat 32-bit S-box masing-masing mempunyai 256 entri :


S1,0,S1,1,....................,S1,255

S2,0,S2,1,....................,S2,255

S3,0,S3,1,....................,S3,255

S4,0,S4,1,....................,S4,255



3. Plaintext yang akan dienkripsi diasumsikan sebagai masukan, Plaintext tersebut diambil sebanyak 64-bit, dan apabila kurang dari 64-bit maka kita tambahkan bitnya, supaya dalam operasi nanti sesuai dengan datanya.

4. Hasil pengambilan tadi dibagi 2, 32-bit pertama disebut XL, 32-bit yang kedua disebut XR.


5. Selanjutnya lakukan operasi XL = XL xor Pi dan XR = F(XL) xor XR


6. Hasil dari operrasi diatas ditukar XL menjadi XR dan XR menjadi XL.

7. Lakukan sebanyak 16 kali, perulangan yang ke-16 lakukan lagi proses penukaran XL dan XR.

8. Pada proses ke-17 lakukan operasi untuk XR = XR xor P17 dan XL = XL xor P18.


9. Proses terakhir satukan kembali XL dan XR sehingga menjadi 64-bit kembali.


Untuk lebih jelas lagi dapat dilihat digambar dibawah ini :
Gambar Algoritma Blowfish



FlowChart Blowfish

Fungsi F adalah sebagai berikut :
Bagi XL, menjadi empat bagian 8-bit : a,b,c dan d.


F(XL)=((S1,a + S2,b mod 232)xor S3,c) + S4,c mod 232



Subkunci dihitung menggunakan algoritma Blowfish, metodanya adalah sebagai berikut :

1. Pertama-tama inilialisasi P-array dan kemudian empat S-box secara berurutan dengan string yang tetap. String ini terdiri atas digit hexadesimal dari Pi.


2. XOR P1 dengan 32-bit pertama kunci, XOR P2 dengan 32-bit kedua dari kunci dan seterusnya untuk setiap bit dari kunci (sampai P18).Ulangi terhadap bit kunci sampai seluruh P-array di XOR dengan bit kunci.


3. Enkrip semua string nol dengan algoritma Blowfish dengan menggunakan subkunci seperti dijelaskan pada langkah (1) dan (2).

4. Ganti P1 dan P2 dengan keluaran dari langkah (3).


5. Enkrip keluaran dari langkah (3) dengan algoritma Blowfish dengan subkunci yang sudah dimodifikasi.

6. Ganti P3 dan P4 dengan keluaran dari langkah (5).


7. Lanjutkan proses tersebut, ganti seluruh elemen dari P-array, kemudian seluruh keempat S-box berurutan, dengan keluaran yang berubah secara kontiyu dari algoritma Blowfish.

Gambar fungsi F dalam Blowfish


FlowChart F Fungsi

Total yang diperlukan adalah 521 iterasi untuk menghasilkan semua subkunci yang dibutuhkan. Aplikasi kemudian dapat menyimpan subkunci ini dan tidak membutuhkan langkah-langkah proses penurunan berulang kali, kecuali kunci yang digunakan berubah. Untuk deskripsi sama persis dengan enkripsi, kecuali pada P-array (P1,P2,........,P18) digunakan dengan urutan terbalik atau di inverskan.

Keamanan Blowfish.

Sampai saat ini algoritma Blowfish belum ditemukan kelemahan yang berarti hanya adanya weak key dimana dua entri dari S-box mempunyai nilai yang sama. Belum ada cara untuk mengecek weak key sebelum melakukan key expansion, tetapi hal ini tidak berpengaruh terhadap hasil enkripsi.
Hasil enkripsi dengan algoritma Blowfish sangat tidak mungkin dan tidak praktis untuk di terjemahkan tanpa bantuan kunci. Sampai kini belum ada Cryptanalysis yang dapat membongkar pesan tanpa kunci yang enkripsi oleh Blowfish. Agar aman dari pembongkaran pesan maka dalam algoritmanya harus menggunakan 16 putaran agar pesan tersebut tidak dapat dibongkar. Algoritma Blowfish pun dapat digabungkan dengan algoritma-algoritma enkripsi yang lain dalam pengkripsian sebuah pesan untuk lebih menjamin isi dari pesan tersebut.


KRIPTOGRAFI CAESAR

Salah satu kriptografi yang paling tua dan paling sederhana adalah kriptogtafi Caesar. Menurut sejarah, ini adalah cara Julius Caesar mengirimkan surat cinta kepada kekasihnya Cleopatra. Dalam kriptografi Caesar, maka setiap huruf akan dituliskan dalam huruf lain hasil pergeseran 3 buah huruf. Kriptografi Caesar ini adalah kriptografi substitusi karena setiap huruf akan digantikan huruf lain.
Sebagai contoh, huruf A akan digeser 3 huruf menjadi huruf D, B akan digeser 3 huruf menjadi E, J akan digeser menjadi M, O akan menjadi R dan seterusnya. Pergeseran ini juga berputar kembali ke awal abjad sehingga sesudah huruf Z diikuti kembali oleh huruf A. Kriptografi Caesar ini dikenal sebagai monoalphabetic substitution cipher karena satu huruf tertentu pasti akan berubah menjadi huruf tertentu yang lain.
Perubahan pada kriptografi Caesar bisa dituliskan sebagai berikut:

Jika Caesar akan menuliskan kalimat ‘I LOVE YOU’ maka akan dituliskan dalam kalimat ‘L ORYH BRX.
Jika kita memberi nomor ke pada huruf-huruf abjad dan kita mulai dengan huruf A=0, B=1, C=2 dstnya sampai dengan Z=25, maka kriptografi Caesar memenuhi rumus sebagai berikut :

C = (P + 3) mod 26, di mana C adalah nomor abjad ciphertext, P adalah nomor abjad plaintext . Dan dekripsinya adalah P = (C – 3) mod 26.

Kripotogtafi Caesar ini kemudian berkembang di mana pergeseran tidak hanya 3 huruf tetapi ditentukan oleh suatu kunci yang adalah suatu huruf. Huruf ini yang menentukan pergeseran dari huruf pada plaintext. Jika kunci adalah A maka pergeseran adalah 0, B pergeseran adalah 1, C 2 dan seterusnya. Rumus di atas tetap berlaku tetapi pergeseran huruf ditentukan oleh nilai pergeseran k (lihat tabel 1) dan bisa berubah- ubah sesuai kunci yang digunakan.

Tabel pergeseran huruf pada kriptografi Caesar

Rumus kriptografi Caesar, secara umum bisa dituliskan sebagai berikut: C=E(P)= (P+k)mod26P=D(C)= (C-k)mod26 di manaPadalah plaintext,Cadalah ciphertext,kadalah pergeseran huruf sesuai dengan kunci yang dikehendaki. Dibawah ini adalah tampilan implementasi kriptografi Caesar dalam Visual Basic.Net. Masukkan kalimat yang ingin dienkripsi, dan masukkan kunci yang dikehendaki, misalnya kalimat: INI PESAN RAHASIA dengan kunci L. Klik tombol Encipher dan lihat ciphertext yang muncul.

Salah satu kriptografi yang paling tua dan paling sederhana adalah kriptogtafi Caesar. Menurut sejarah, ini adalah cara Julius Caesar mengirimkan surat cinta kepada kekasihnya Cleopatra. Dalam kriptografi Caesar, maka setiap huruf akan dituliskan dalam huruf lain hasil pergeseran 3 buah huruf. Kriptografi Caesar ini adalah kriptografi substitusi karena setiap huruf akan digantikan huruf lain.
Sebagai contoh, huruf A akan digeser 3 huruf menjadi huruf D, B akan digeser 3 huruf menjadi E, J akan digeser menjadi M, O akan menjadi R dan seterusnya. Pergeseran ini juga berputar kembali ke awal abjad sehingga sesudah huruf Z diikuti kembali oleh huruf A. Kriptografi Caesar ini dikenal sebagai monoalphabetic substitution cipher karena satu huruf tertentu pasti akan berubah menjadi huruf tertentu yang lain.
Perubahan pada kriptografi Caesar bisa dituliskan sebagai berikut:

Jika Caesar akan menuliskan kalimat ‘I LOVE YOU’ maka akan dituliskan dalam kalimat ‘L ORYH BRX.
Jika kita memberi nomor ke pada huruf-huruf abjad dan kita mulai dengan huruf A=0, B=1, C=2 dstnya sampai dengan Z=25, maka kriptografi Caesar memenuhi rumus sebagai berikut :

C = (P + 3) mod 26, di mana C adalah nomor abjad ciphertext, P adalah nomor abjad plaintext . Dan dekripsinya adalah P = (C – 3) mod 26.

Kripotogtafi Caesar ini kemudian berkembang di mana pergeseran tidak hanya 3 huruf tetapi ditentukan oleh suatu kunci yang adalah suatu huruf. Huruf ini yang menentukan pergeseran dari huruf pada plaintext. Jika kunci adalah A maka pergeseran adalah 0, B pergeseran adalah 1, C 2 dan seterusnya. Rumus di atas tetap berlaku tetapi pergeseran huruf ditentukan oleh nilai pergeseran k (lihat tabel 1) dan bisa berubah- ubah sesuai kunci yang digunakan.

Tabel pergeseran huruf pada kriptografi Caesar

Rumus kriptografi Caesar, secara umum bisa dituliskan sebagai berikut: C=E(P)= (P+k)mod26P=D(C)= (C-k)mod26 di manaPadalah plaintext,Cadalah ciphertext,kadalah pergeseran huruf sesuai dengan kunci yang dikehendaki. Dibawah ini adalah tampilan implementasi kriptografi Caesar dalam Visual Basic.Net. Masukkan kalimat yang ingin dienkripsi, dan masukkan kunci yang dikehendaki, misalnya kalimat: INI PESAN RAHASIA dengan kunci L. Klik tombol Encipher dan lihat ciphertext yang muncul.














ANALISA VIRUS - VIRUS PADA KOMPUTER

Ringkasan ini tidak tersedia. Harap klik di sini untuk melihat postingan.