Selasa, 07 Juni 2011

MD 5

Dalam kriptografi, MD5 (Message-Digest algortihm 5) ialah fungsi hash kriptograpik yang digunakan secara luas dengan hash value 128-bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah file.
MD5 di desain oleh Ronald Rivest pada tahun 1991untuk menggantikan hash function sebelumnya,MD4 Pada tahun 1996, sebuah kecacatan ditemukan dalam desainnya, walau bukan kelemahan fatal, pengguna kriptografi mulai menganjurkan menggunakan algoritma lain, seperti SHA-1 (klaim terbaru menyatakan bahwa SHA-1 juga cacat). Pada tahun 2004,  kecacatan-kecacatan yang lebih serius ditemukan menyebabkan penggunaan algoritma tersebut dalam tujuan untuk keamanan jadi makin dipertanyakan.

MD5 adalah salah satu dari serangkaian algortima message digest yang didesain oleh Profesor Ronald Rivest dari MIT (Rivest, 1994). Saat kerja analitik menunjukkan bahwa pendahulu MD5 — MD4 — mulai tidak aman, MD5 kemudian didesain pada tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans Dobbertin).
Pada tahun 1993, den Boer dan Bosselaers memberikan awal, bahkan terbatas, hasil dari penemuan pseudo-collision dari fungsi kompresi MD5. Dua vektor inisialisasi berbeda I dan J dengan beda 4-bit di antara keduanya.
MD5compress(I,X) = MD5compress(J,X)
Pada tahun 1996 Dobbertin mengumumkan sebuah kerusakan pada fungsi kompresi MD5. Dikarenakan hal ini bukanlah serangan terhadap fungsi hash MD5 sepenuhnya, hal ini menyebabkan para pengguna kriptografi menganjurkan pengganti seperti WHIRLPOOL, SHA-1 atau RIPEMD-160.
Ukuran dari hash — 128-bit — cukup kecil untuk terjadinya serangan brute force birthday attack. MD5CRK adalah proyek distribusi mulai Maret 2004 dengan tujuan untuk menunjukka kelemahan dari MD5 dengan menemukan kerusakan kompresi menggunakan brute force attack.
Bagaimanapun juga, MD5CRK berhenti pada tanggal 17 Agustus 2004, saat kerusakan ''hash'' pada MD5 diumumkan oleh Xiaoyun Wang, Dengguo Feng, Xuejia Lai dan Hongbo Yu [1][2]. Serangan analitik mereka dikabarkan hanya memerlukan satu jam dengan menggunakan IBM P690 cluster.
Pada tanggal 1 Maret 2005, Arjen Lenstra, Xiaoyun Wang, and Benne de Weger mendemontrasikan[3] kunstruksi dari dua buah sertifikat X.509 dengan public key yang berbeda dan hash MD5 yang sama, hasil dari demontrasi menunjukkan adanya kerusakan. Konstruksi tersebut melibatkan private key untuk kedua public key tersebut. Dan beberapa hari setelahnya, Vlastimil Klima menjabarkan[4] dan mengembangkan algortima, mampu membuat kerusakan Md5 dalam beberapa jam dengan menggunakan sebuah komputer notebook. Hal ini menyebabkan MD5 tidak bebas dari kerusakan.
Dikarenakan MD5 hanya menggunakan satu langkah pada data, jika dua buah awalan dengan hash yang sama dapat dibangun, sebuah akhiran yang umum dapat ditambahkan pada keduanya untuk membuat kerusakan lebih masuk akal. Dan dikarenakan teknik penemuan kerusakan mengijinkan pendahuluan kondisi hash menjadi arbitari tertentu, sebuah kerusakan dapat ditemukan dengan awalan apapun. Proses tersebut memerlukan pembangkitan dua buah file perusak sebagai file templat, dengan menggunakan blok 128-byte dari tatanan data pada 64-byte batasan, file-file tersebut dapat mengubah dengan bebas dengan menggunakan algoritma penemuan kerusakan.

Asimetris Kriptografi

Sistem asimetris akan jauh lebih cepat dan lebih mudah daripada kunci simetris. 
Algoritma simetris, sering juga disebut dengan algoritma kunci publik atausandi kunci publik, menggunakan dua jenis kunci, yaitu kunci publik (public key) dan kunci rahasia (secret key). Kunci publik merupakan kunci yang digunakan untuk mengenkripsi pesan. Sedangkan kunci rahasia digunakan untuk mendekripsi pesan.
Kunci publik bersifat umum, artinya kunci ini tidak dirahasiakan sehingga dapat dilihat oleh siapa saja. Sedangkan kunci rahasia adalah kunci yang dirahasiakan dan hanya orang-orang tertentu saja yang boleh mengetahuinya. Keuntungan utama dari algoritma ini adalah memberikan jaminan keamanan kepada siapa saja yang melakukan pertukaran informasi meskipun di antara mereka tidak ada kesepakatan mengenai keamanan pesan terlebih dahulu maupun saling tidak mengenal satu sama lainnya.


Algoritma asimetris pertama kali dipublikasikan oleh Diffie dan Hellman pada tahun 1976 dalam papernya yang berjudul “New Directions in Cryptography”.Contoh dari algoritma asimetris adalah RSA, ElGamal, McEliece, LUC dan DSA (Digital Signature Algorithm).

Simetris Kriptografi

Algoritma kunci rahasia atau sandi kunci rahasia. Adalah algoritma kriptografi yang menggunakan kunci enkripsi yang sama dengan kunci dekripsinya. Algoritma ini mengharuskan pengirim dan penerima menyetujui suatu kunci tertentu sebelum mereka saling berkomunikasi. Keamanan algoritma simetris tergantung pada kunci, membocorkan kunci berarti bahwa orang lain dapat mengenkripsi dan mendekripsi pesan. Agar komunikasi tetap aman, kunci harus tetap dirahasiakan.

Sifat kunci yang seperti ini membuat pengirim harus selalu memastikan bahwa jalur yang digunakan dalam pendistribusian kunci adalah jalur yang aman atau memastikan bahwa seseorang yang ditunjuk membawa kunci untuk dipertukarkan adalah orang yang dapat dipercaya. Masalahnya akan menjadi rumit apabila komunikasi dilakukan secara bersama-sama oleh sebanyak n pengguna dan setiap dua pihak yang melakukan pertukaran kunci, maka akan terdapat sebanyak (n-1)/2 kunci rahasia yang harus dipertukarkan secara sama

Algoritma kunci simetris memiliki beberapa kelebihan dan kekurangan, yakni:

Kelebihan :

Waktu proses untuk enkripsi dan dekripsi relatif cepat, hal ini disebabkan karena efisiensi yang terjadi pada pembangkit kunci.
Karena cepatnya proses enkripsi dan dekripsi, maka algoritma ini dapat digunakan pada sistem secara real-time seperti saluran telepon digital.

Kekurangan :

Untuk tiap pasang pengguna dibutuhkan sebuah kunci yang berbeda, sedangkan sangat sulit untuk menyimpan dan mengingat kunci yang banyak secara aman, sehingga akan menimbulkan kesulitan dalam hal manajemen kunci.
Perlu adanya kesepakatan untuk jalur yang khusus untuk kunci, hal ini akan menimbulkan masalah yang baru karena tidak mudah u menentukan jalur yang aman untuk kunci, masalah ini sering disebut dengan “Key Distribution Problem”.
Apabila kunci sampai hilang atau dapat ditebak maka kriptosistem ini tidak aman lagi.

Block-Cipher

Block-cipher adalah skema algoritma sandi yang akan membagi-bagi teks terang yang akan dikirimkan dengan ukuran tertentu (disebut blok) dengan panjang t, dan setiap blok dienkripsi dengan menggunakan kunci yang sama. Pada umumnya, block-cipher memproses teks terang dengan blok yang relatif panjang lebih dari 64 bit, untuk mempersulit penggunaan pola-pola serangan yang ada untuk membongkar kunci. Untuk menambah kehandalan model algoritma sandi ini, dikembangkan pula beberapa tipe proses enkripsi, yaitu :

ECB, Electronic Code Book
CBC, Cipher Block Chaining
OFB, Output Feed Back
CFB, Cipher Feed Back

Stream-Cipher

Stream-cipher adalah algoritma sandi yang mengenkripsi data persatuan data, seperti bit, byte, nible atau per lima bit(saat data yang di enkripsi berupa data Boudout). Setiap mengenkripsi satu satuan data di gunakan kunci yang merupakan hasil pembangkitan dari kunci sebelum.

Contoh algoritma yang menggunakan kunci simetris:

1. Data Encryption Standard (DES)

Data encryption standar (DES) yang diadopsi oleh NIST (Nasional Institue Of Standar and Technolog) sebagai standar pegolahan informasi federal As.

Data encryption standar (DES) terbagi menjadi tiga kelompok:

Proses Kunci
Enkripsi data 64 bit
Deskripsi data 64 bit

Secara umum skema Data encryption standar (DES) memiliki dua fungsi input yaitu:

Plaintext untuk dienkripsi dengan panjang 64 bit
Kunci dengan panjang 56 bit
2. Triple Data Encryption Standar (3DES)

Enigma

Mesin Enigma adalah sebuah mesin penyandi yang digunakan untuk mengenkripsikan dan mendekripsikan pesan rahasia. Enigma dipatenkan oleh insinyur Jerman Arthur Scherbius, dan awalnya digunakan untuk tujuan komersial, namun nantinya terkenal karena digunakan oleh tentara dan pemerintah Jerman Nazi sebelum dan selama Perang Dunia II. Secara teknis, mesin Enigma termasuk keluarga mesin rotor elektromekanik, yang memiliki berbagai model. Nama Enigma diambil dari kata Latin aenigma, yang artinya teka-teki.
Versi Enigma yang paling terkenal adalah yang digunakan oleh Wehrmacht (tentara Jerman Nazi). Mesin ini, mulai digunakan oleh Nazi pada 1928, pada awalnya dianggap sebagai mesin kriptografi teraman di dunia, namun akhirnya dapat dipecahkan oleh pihak Sekutu, sehingga mesin ini justru merugikan pihak Nazi. Metode pemecahan (dekripsi) mesin ini pertama kali ditemukan di tahun 1932 oleh kriptografer Polandia dari Biuro Szyfrów (Kantor Sandi), Marian Rejewski, Jerzy Różycki dan Henryk Zygalski. Namun pada 1939 Jerman mendisain ulang Enigma sehingga metode tersebut tidak dapat digunakan lagi. Berkat informasi dari Polandia, akhirnya Britania dan Perancis berhasil membuat mesin pemecah Enigma baru ini, yang diberi nama bombe. Informasi yang didapat Sekutu dari pemecahan Enigma disebut ULTRA, yang terbukti amat penting bagi kemenangan Sekutu pada Perang Dunia II. Menurut para ahli, PD II berakhir dua tahun lebih cepat berkat pemecahan Enigma ini.




Vigenere Chyper dan Hill Chyper

A. Vigenere Chyper 
Vigenere Cipher adalah suatu algoritma kriptografi klasik yang ditemukan oleh Giovan Battista Bellaso. Beliau menuliskan metodenya tersebut pada bukunya yang berjudul La Cifra del. Sig. Giovan Battista Bellaso pada tahun 1553. Nama vigenere sendiri diambil dari seorang yang bernama Blaise de Vigenere. Nama vigenere diambil sebagai nama algoritma ini karena beliau menemukan kunci yang lebih kuat lagi untuk algoritma ini dengan metode autokey cipher meskipun algoritma dasarnya telah ditemukan lebih dahulu oleh Giovan Battista Bellaso.
Algoritma ini menjadi terkenal karenacukup sulit dipecahkan. Matematikawan Charles Lutwidge Dodgson menyatakan bahwa algoritma ini tidak terpecahkan. Pada tahun 1917, ilmuwan Amerika menyebutkan bahwa Vigenere cipheradalah sesuatu yang tidak mungkin untukditranslasikan. Namun hal ini terbantahkan sejak Kasiski berhasil memecahkan algoritma pada abad ke-19. Pada dasarnya Vigenere Cipher serupadengan Caesar Cipher, perbedaannya adalah pada Vigenere Cipher setiap huruf pesan aslinya digeser sebanyak satu huruf pada kuncinya sedangkan pada Caesar Cipher setiap huruf pesannya digeser sebanyak 1 huruf yang sama.
Algoritma Vigenere Cipher ini menggunakan bujursangkar Vigenere untuk melakukan enkripsi. Setiap baris di dalam bujursangkar menyatakan huruf-huruf ciphertext yang diperoleh dengan Caesar cipher. Untuk lebih jelasnya perhatikan gambar 2 di bawah ini. Deretan huruf kuning mendatar merepresentasikan plaintext, sedangkan deretan huruf hijau menurun merepresentasikan kunci.



Vigenere chiper merupakan salah satu algoritma kriptografi klasik untuk menyandikan suatu plaintext dengan menggunakan teknik substitusi.Vigenere cipher pada dasarnya cukup rumit untuk dipecahkan. Meskipun begitu, Vigenere cipher tetap memiliki kelemahan. Salah satunya adalah dapat diketahui panjang kuncinya dengan menggunakan metode kasiski. Hal ini disebabkan karena umumnya terdapat frasa yang berulang-ulang pada ciphertext yang dihasilkan.


Enkripsi : Ci= (Pi+Ki) mod 26
Deskripsi : Pi= (Ci+Ki) mod 26

Untuk menyandikan pesan, digunakan sebuah pesan alphabetis yg di urut, dan di geser 1 shift untuk alphabet yg selanjut nya.

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
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 B
Dst..


1. Contoh penyelesaian vigenere chiper sederhana:

Plainteks : azizul hakim prabowo
Key : inform atika informa
Maka, akan di dapat kan chiperteks :
imnokx atssm xefpfio

2. Penyelesaian vigenere chiper menggunakan pembangkit kunci euler

Plainteks : KILL KING TONIGHT OR DIE
Key :  BUDI

e = 2.71828182845904523536028747135266249775724709369995957496696762772407……

ambil banyak digit sesuai dengan panjang plainteks (18)
Ubah key menjadi angka, 1 20 3 8
setelah itu kalikan dengan bilangan euler
12038 x 27182818284590452353 = 327226766509899865425414
Pisahkan 3 sesuai banyak nya palinteks 3 27 2 26 76 6 50 98 9 98 65 4 25 41 4
Kemudian ubah bentuk menggunakan mod 26 = D B C CG Y G FA U J JI N E CF P E

Akhir :
Plainteks : KILL KING TONIGHT OR DIE
Key : DBCC GYGF AUJJINE CF PED
Chiperteks : NJNN QGTL TIWROUX QW SMH 

B.  Hill Chyper
Hill Cipher merupakan penerapan aritmatika modulo pada kriptografi. Teknik kriptografi ini menggunakan sebuah matriks persegi sebagai kunci yang digunakan untuk melakukan enkripsi dan dekripsi.

Hill Cipher diciptakan oleh Lester S. Hill pada tahun 1929 [2]. Teknik kriptografi ini diciptakan dengan maksud untuk dapat menciptakan cipher(kode) yang tidak dapat dipecahkan menggunakan teknik analisis frekuensi. Hill Cipher tidak mengganti setiap abjad yang sama pada plaintext dengan abjad lainnya yang sama
pada ciphertext karena menggunakan perkalian matriks pada dasar enkripsi dan dekripsinya. 

Hill Cipher termasuk kepada algoritma kriptografi klasik yang sangat sulit dipecahkan oleh kriptanalis apabila dilakukan hanya dengan mengetahui berkas ciphertext saja. Namun, teknik ini dapat dipecahkan dengan cukup mudah apabila kriptanalis memiliki berkas ciphertext dan potongan berkas plaintext. Teknik kriptanalisis ini disebut known-plaintext attack.

Kriptografi Klasik


Ada dua cara yang paling dasar pada kriptografi klasik. Yang pertama adalah transposisi. Transposisi adalah mengubah susunan huruf pada plaintext sehingga urutannya berubah. Contoh yang paling sederhana adalah mengubah suatu kalimat dengan menuliskan setiap kata secara terbalik.

Plaintext: IBU AKAN DATANG BESOK PAGI
Ciphertext: UBI NAKA GNATAD KOSEB IGAP

Contoh transposisi yang sedikit lebih sulit adalah plaintext yang disusun dalam kelompok huruf yang terdiri dari beberapa kolom huruf, misalnya 5 kolom huruf :

IBUAK
ANDAT
ANGBE
SOKPA
GIAAA


Plaintext disusun dalam 5 kolom huruf

kemudian dituliskan per kolom, dengan urutan kolom yang bisa berubah-ubah. IAASGBNNOIUDGKAAABPAKTEAA Kolom huruf dituliskan berurutan dari kolom 1,2,3,4,5

Cara kedua adalah cara substitusi yaitu setiap huruf pada plaintext akan digantikan dengan huruf lain berdasarkan suatu cara atau rumus tertentu. Ada dua macam substitusi yaitu polyalphabetic substitution cipherdanmonoalphabetic substitution cipher. Padapolyalphabetic substitution cipher, enkripsi terhadap satu huruf yang sama bisa menghasilkan huruf yang berbeda sehingga lebih sulit untuk menemukan pola enkripsinya.
Pada monoalphabetic substitution cipher maka satu huruf tertentu pasti akan berubah menjadi huruf tertentu yang lain, sehingga pola enkripsinya lebih mudah diketahui, karena satu huruf pada ciphertext pasti merepresentasikan satu huruf pada plaintext.
Salah satu contoh cara substitusi adalah dengan dengan pergeseran huruf. Kita lihat pada gambar 4, urutan abjad ABCD…….Z bisa digeser sebanyak 1 huruf sehingga huruf A akan menjadi B, B akan menjadi C dan seterusnya. Pergeserannya bisa dibuat lebih banyak yaitu 2 huruf sehingga huruf A akan menjadi C, B akan menjadi D dan seterusnya. Pergeseran bisa lebih banyak lagi tergantung bagaimana kita merumuskannya. Cara pergeseran ini termasukmonoalphabetic substitution cipher di mana satu huruf pasti akan berubah menjadi huruf tertentu yang lain. Karena relasi antara huruf plaintext dan huruf ciphertext satu-satu, yang artinya suatu huruf plaintext pasti menjadi suatu huruf ciphertext tertentu, maka cara monoalphabetic substitution cipher sangat mudah dipecahkan.
A. Teknik Substitusi Cyper
Pada suatu cipher substitusi masing – masing huruf atau kelompok akan digantikan dengan huruf atau kelompok huruf lainnya untuk disamarkan.
Salah satu cipher paling tua dikenal dengan sebutan Cipher Caesar yang dikaitkan dengan Julius Caesar, dalam Cipher ini plaintext diberikan dalam huruf kecil sedangkan Ciphertext diberikan dalam huruf besar.
Penyempurnaan berikutnya adalah dengan menizinkan penggunaan symbol didalam plaintext misalnya :
Plaintext : abcdefghijklmnopqrstuvwxyz
Ciphertext : QWERTYUIOPASDFGHJKLZXCVBNM
System umum ini biasa disebut Substitusi Monoalphabetis, yang berkaitan dengan alphabet
Dengan kunci diatas maka plaintext “attack” akan ditransformasikan kedalam ciphertext menjadi “QZZQEA”

B. Shift Chypher
Sandi geser (shift cipher) merupakan generalisasi dari Sandi Caesar, yaitu tidak membatasi pergeseran sebanyak tiga huruf. Jadi ada sebanyak 26 kunci pergeseran yang bisa digunakan. Secara umum dapat dituliskan dengan persamaan berikut ini.
 e_K(x) = (x+k) \bmod 26

 d_K(y) = (x-k) \bmod 26
Untuk K dengan  0 \leq K \leq 25 dan  x,y \in \mathbb{Z}_{26} .
Misal diberikan plainteks “belajarsandi” dan kunci K=11, maka cipherteksnya adalah “MPWLULCDLYOT”.
Khusus untuk K=13 sering disebut dengan Sandi ROT(13). Dinamakan demikian karena fungsi enkripsi dan dekripsinya sama, sebab 13 sama dengan -13 (khusus di dalam mod 26). Jadi jika diberikan plainteks x, maka untuk mendekripsinya bisa dengan mengenkripsinya lagi.
Untuk menyerang sandi geser ini sangat mudah sekali, karena hanya diperlukan sebanyak 25 kali percobaan kunci.
 

Selasa, 26 April 2011

Syarat-Syarat Jaringan Terhubung

A. TCP/IP:

TCP/IP (singkatan dari Transmission Control Protocol/Internet Protocol) adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet.
Pada TCP/IP, agar terhubung ke jaringan, haruslah:
1. Net-Ide harus sama
2. Host-Id tidak boleh sama
3. Network nya sama

B. STP (Spaning Tree Protocol)
Spanning Tree Protocol disingkat menjadi STP, Merupakan bagian dari standard IEEE 802.1 untuk kontrol media akses. Berfungsi sebagai protocol untuk pengaturan koneksi dengan menggunakan algoritma spanning tree.

C. IP Address
Alamat IP (Internet Protocol Address atau sering disingkat IP) adalah deretan angka biner antar 32-bit sampai 128-bit yang dipakai sebagai alamat identifikasi untuk tiap komputer host dalam jaringan Internet. Panjang dari angka ini adalah 32-bit (untuk IPv4 atau IP versi 4), dan 128-bit (untuk IPv6 atau IP versi 6) yang menunjukkan alamat dari komputer tersebut pada jaringan Internet berbasis TCP/IP.

D. MAC Address
MAC Address (Media Access Control Address) adalah sebuah alamat jaringan yang diimplementasikan pada lapisan data-link dalam tujuh lapisan model OSI, yang merepresentasikan sebuah node tertentu dalam jaringan. Dalam sebuah jaringan berbasis Ethernet, MAC address merupakan alamat yang unik yang memiliki panjang 48-bit (6 byte) yang mengidentifikasikan sebuah komputer, interface dalam sebuah router, atau node lainnya dalam jaringan. MAC Address juga sering disebut sebagai Ethernet address, physical address, atau hardware address.