Rabu, 09 November 2016

Algoritma DES (Data Encryption Standard)

Sebagai salah satu sistem kriptografi simetris, DES tergolong jenis cipher blok. DES dikatakan enkripsi blok karena pemrosesan data baik enkripsi maupun dekripsi, diimplementasikan per blok harus 8 byte = 8 char.

Diberikan contoh:

  • Plaintext (P) = SEMESTER
  • Key (K)        = AKADEMIK
Langkah Pertama :
Ubah plaintext kedalam bentuk biner
S : 01010011
E : 01000101
M: 01001101
E : 01000101
S : 01010011
T : 01010100
E : 01000101
R : 01010010

Ubah key kedalam bentuk biner
A : 01000001
K : 01001011
A : 01000001
D : 01000100
E :  01000101
M:  01001101
I  :  01001001
K :  01001011

Langkah Kedua :
Lakukan Initial Permutation (IP) pada bit plaintext menggunakan tabel IP berikut:
Matriks permutasi kompresi PC-1 :
                             Hasil gambar untuk tabel pergeseran bit

 Matriks permutasi kompresi PC-2 :
                           Hasil gambar untuk tabel pergeseran bit

Kemudian pecah bit menjadi 2 bagian yaitu: L0 dan R0
Lakukan pergeseran kiri (Left Shift) pada C0 dan D0, sebanyak 1 atau 2 kali berdasarkan kali putaran yang ada pada tabel putaran sebagai berikut :

Maka Pergeseran Bit :
C0 : 0000000 0111111 1100000 0000000
D0 : 1000001 0001110 0011100 0100000

Digeser 1 bit ke kiri
C1 : 0000000 1111111 1000000 0000000
D1 : 0000010 0011100 0111000 1000001

Digeser 2 bit ke kiri
C2 : 0000001 1111111 0000000 0000000
D2 : 0000100 0111000 1110001 0000010

Digeser 2 bit ke kiri
C3 : 0000111 1111100 0000000 0000000
D3 : 0010001 1100011 1000100 0001000

Digeser 2 bit ke kiri
C4 : 0011111 1110000 0000000 0000000
D4 : 1000111 0001110 0010000 0100000

Digeser 2 bit ke kiri
C5 : 1111111 1000000 0000000 0000000
D5 : 0011100 0111000 1000001 0000010

Digeser 2 bit ke kiri
C6 : 1111110 0000000 0000000 0000011
D6 : 1110001 1100010 0000100 0001000

Digeser 2 bit ke kiri
C7 : 1111000 0000000 0000000 0001111
D7 : 1000111 0001000 0010000 0100011

Digeser 2 bit ke kiri
C8 : 1100000 0000000 0000000 0111111
D8 : 0011100 0100000 1000001 0001110

Digeser 1 bit ke kiri
C9 : 1000000 0000000 0000000 1111111
D9 : 0111000 1000001 0000010 0011100

Digeser 2 bit ke kiri
C10 : 0000000 0000000 0000011 1111110
D10 : 1100010 0000100 0001000 1110001

Digeser 2 bit ke kiri
C11 : 0000000 0000000 0001111 1111000

D11 : 0001000001000001000111000111

Digeser 2 bit ke kiri
C12 : 0000000 0000000 0111111 1100000
D12 : 0100000 1000001 0001110 0011100

Digeser 2 bit ke kiri
C13 : 0000000 0000001 1111111 0000000
D13 : 0000010 0000100 0111000 1110001

Digeser 2 bit ke kiri
C14 : 0000000 0000111 1111100 0000000
D14 : 0001000 0010001 1100011 1000100

Digeser 2 bit ke kiri
C15 : 0000000 0011111 1110000 0000000
D15 : 0100000 1000111 0001110 0010000

Digeser 1 bit ke kiri
C16 : 0000000 0111111 1100000 0000000
D16 : 1000001 0001110 0011100 0100000
 

Selasa, 25 Oktober 2016

LATIHAN SOAL

1. Tentukan enkripsi dan dekripsi dari P = K-E-A-M-A-N-A-N + (3 digit terakhir NIM) dengan menggunakan metode Super Enkripsi ! k(Transposisi) = 4, k(Chaesar Chiper) = 17
Jawab :
              


2. Tentukan enkripsi dan dekripsi dari P = (Nama Lengkap) dengan teknik Permutasi dimana digit 1-5 ditukar dan digit 2-4 ditukar !
Jawab :

3. Tentukan enkripsi dan dekripsi dari P = (Nama Lengkap) + 15 dengan teknik ekspansi dimana setiap kata yang diakhiri dengan huruf vokal atau bilangan genap dipindahkan pada digit ke-3 dan ditambahkan "OK" sedangkan jika kata diakhiri dengan huruf konsonan atau bilangan ganjil dipindahkan pada digit pertama dan ditambahkan "END"
Jawab :
   Jawaban ada di gambar atas.

Selasa, 04 Oktober 2016

TEKNIK KRIPTOGRAFI

TEKNIK DASAR KRIPTOGRAFI

a. Substitusi 
Salah satu contoh teknik ini adalah Caesar cipher. Langkah pertama adalah membuat suatu tabel substitusi. Tabel substitusi dapat dibuat sesuka hati, dengan catatan bahwa penerima pesan memiliki tabel yang sama untuk keperluan dekripsi. Bila tabel substitusi dibuat secara acak, akan semakin sulit pemecahan ciphertext oleh orang yang tidak berhak.
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-1-2-3-4-5-6-7-8-9-0-.-,
B-F-1-K-Q-G-A-T-P-J-6-H-Y-D-2-X-5-M-V-7-C-8-4-I-9-N-R-E-U-3-L-S-W-,-.-O-Z-0
Tabel substitusi diatas dibuat secara acak. Dengan menggunakan tabel tersebut, dari plaintext “5 teknik dasar kriptografi” dihasilkan ciphertext “L 7Q6DP6 KBVBM 6MPX72AMBGP”. Dengan menggunakan tabel substitusi yang sama secara dengan arah yang terbalik (reverse), plaintext dapat diperoleh kembali dari ciphertext-nya.
b. Blocking
Sistem enkripsi terkadang membagi plaintext menjadi blok-blok yang terdiri dari beberapa karakter yang kemudian dienkripsikan secara independen. Plaintext yang dienkripsikan dengan menggunakan teknik blocking adalah :
 

Dengan menggunakan enkripsi blocking dipilih jumlah lajur dan kolom untuk penulisan pesan. Jumlah lajur atau kolom menjadi kunci bagi kriptografi dengan teknik ini. Plaintext dituliskan secara vertikal ke bawah berurutan pada lajur, dan dilanjutkan pada kolom berikutnya sampai seluruhnya tertulis. Ciphertext-nya adalah hasil pembacaan plaintext secara horizontal berurutan sesuai dengan blok-nya. Jadi ciphertext yang dihasilkan dengan teknik ini adalah “5K G KRTDRAEAIFKSPINAT IRO”. Plaintext dapat pula ditulis secara horizontal dan ciphertextnya adalah hasil pembacaan secara vertikal.

c. Permutasi
Salah satu teknik enkripsi yang terpenting adalah permutasi atau sering juga disebut transposisi. Teknik ini memindahkan atau merotasikan karakter dengan aturan tertentu. Prinsipnya adalah berlawanan dengan teknik substitusi. Dalam teknik substitusi, karakter berada pada posisi yang tetap tapi identitasnya yang diacak. Pada teknik permutasi, identitas karakternya tetap, namun posisinya yang diacak. Sebelum dilakukan permutasi, umumnya plaintext terlebih dahulu dibagi menjadi blok-blok dengan panjang yang sama.
Plaintext akan dibagi menjadi blok-blok yang terdiri dari 6 karakter, dengan aturan permutasi sebagai berikut :



Dengan menggunakan aturan diatas, maka proses enkripsi dengan permutasi dari plaintext adalah sebagai berikut :

Ciphertext yang dihasilkan dengan teknik permutasi ini adalah “N ETK5 SKD AIIRK RAATGORP FI”.
 
d. Ekspansi
Suatu metode sederhana untuk mengacak pesan adalah dengan memelarkan pesan itu dengan aturan tertentu. Salah satu contoh penggunaan teknik ini adalah dengan meletakkan huruf konsonan atau bilangan ganjil yang menjadi awal dari suatu kata di akhir kata itu dan menambahkan akhiran “an”. Bila suatu kata dimulai dengan huruf vokal atau bilangan genap, ditambahkan akhiran “i”. Proses enkripsi dengan cara ekspansi terhadap plaintext terjadi sebagai berikut :
 
 
Ciphertextnya adalah “5AN EKNIKTAN ASARDAN RIPTOGRAFIKAN”. Aturan ekspansi dapat dibuat lebih kompleks. Terkadang teknik ekspansi digabungkan dengan teknik lainnya, karena teknik ini bila berdiri sendiri terlalu mudah untuk dipecahkan.
e. Pemampatan (Compaction)
Mengurangi panjang pesan atau jumlah bloknya adalah cara lain untuk menyembunyikan isi pesan. Contoh sederhana ini menggunakan cara menghilangkan setiap karakter ke-tiga secara berurutan. Karakter-karakter yang dihilangkan disatukan kembali dan disusulkan sebagai “lampiran” dari pesan utama, dengan diawali oleh suatu karakter khusus, dalam contoh ini digunakan “&”. Proses yang terjadi untuk plaintext kita adalah :
 
 
Aturan penghilangan karakter dan karakter khusus yang berfungsi sebagai pemisah menjadi dasar untuk proses dekripsi ciphertext menjadi plaintext kembali.
Dengan menggunakan kelima teknik dasar kriptografi diatas, dapat diciptakan kombinasi teknik kriptografi yang amat banyak, dengan faktor yang membatasi semata-mata hanyalah kreativitas dan imajinasi kita. Walaupun sekilas terlihat sederhana, kombinasi teknik dasar kriptografi dapat menghasilkan teknik kriptografi turunan yang cukup kompleks, dan beberapa teknik dasar kriptografi masih digunakan dalam teknik kriptografi modern.

Selasa, 27 September 2016

Kriptografi (Criptography)

Apa itu kriptografi ? Hayo apa hayo.. hahahaiiiii
kita bahas aja yaaa.... ^,^

Pengertian Kriptografi
Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data. Kriptografi juga diartikan sebagai ilmu sekaligus seni untuk menjaga keamanan pesan (message) dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya. Kata cryptography berasal dari kata Yunani terdiri dari dua suku kata yaitu “kripto” yang artinya tersembunyi / menyembunyikan dan “graphia” yang artinya tulisan / menulis.

Tujuan Kriptografi
       Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu : 
  • Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi. 
  •  Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya. 
  • Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
  •  Non-repudiasi., atau penyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.
Komponen Utama Kriptografi
1. Plaintext, yaitu pesan yang dapat dibaca
2. Chipertext, yaitu pesan acak yang tidak dapat dibaca
3. Key, yaitu kunci untuk melakukan teknik kriptografi
4. Algorithm, yaitu metode untuk melakukan enkripsi dan dekripsi

Proses Kriptografi 
1. Enkripsi (Encryption) atau Enciphering 
  • Proses menyandikan plaintext menjadi ciphertext 
  • Sebagai input dari algoritma ini adalah teks terang dan kunci sandi, yang kemudian akan menghasilkan serangkaian teks sandi.
2. Dekripsi (Decryption) atau Deciphering 
  • Proses mengembalikan ciphertext menjadi plaintextnya
  • Digunakan algoritma lain yang memiliki korelasi dengan algoritma enkripsinya. Kunci sandi yang digunakan pada proses dekripsi ini bisa sama ataupun berbeda dengan kunci yang digunakan pada proses enkripsinya. Hal ini tergantung dari jenis algoritma yang digunakan. Proses enkripsi dilakukan oleh pihak pengirim dan proses dekripsi dilakukan oleh penerima.  
 
 
Pengirim dan penerima Pada sistem komunikasi dasar, terdapat 3 bagian yang terlibat, yaitu : 
  • Pihak pertama, adalah pihak pengirim, sebagai sumber berita dan pemilik pesan, pesan atau maksud yang ingin disampaikan,
  • Pihak kedua,yaitu penerima, sebagai tujuan dari pengiriman tersebut,
  • Media yang disepakati dan dipakai oleh kedua pihak itu. 


Selasa, 20 September 2016

Vigenere Cipher

Kali ini kita akan mempelajari Vigenere Cipher. Apa itu  Vigenere Cipher ??
Ada yang tau gak nih.. :D Mending kita bahas bareng-bareng. :)

Vigenere Cipher merupakan pengembangan dari Caesar Cipher.
Caesar Cipher merupakan metode menyandikan teks alfphabet dengan menggunakan sederetan sandi caesar berdasarkan huruf huruf pada kata kunci. Jadi penyandian dengan metode ini juga sudah menggunakan kunci.

Proses menyandikan tabel Vigenere, cukup sederhana apabila melihat berdasarkan tabel berikut ini :

Dalam Vigenere Cipher terdiri dari penyandian enkripsi dan deskripsi.
Enkripsi (penyandian) dengan sandi Vigenere  dapat ditulis secara matematis, dengan menggunakan penjumlahan dan operasi  modulus.
Sedangkan Deskripsi  (penyandian) dengan sandi Vigenere  dapat ditulis secara matematis, dengan menggunakan pengurangan dan operasi  modulus.

Rumus enkripsi vigenere cipher :
Pi = (Ci-Ki) mod 26
atau
Ci = ( Pi + Ki ) – 26 kalau hasil penjumlahan Pi dan Ki lebih dari 26

Rumus dekripsi vigenere cipher :
Pi = (Ci-Ki) mod 26
atau
Pi = ( Ci – Ki ) + 26 kalau hasil pengurangan Ci dengan Ki minus

Keterangan:
Ci = nilai desimal karakter ciphertext ke-i
Pi = nilai desimal karakter plaintext ke-i
Ki = nilai desimal karakter kunci ke-i
Nilai desimal karakter:
A=0 B=1 C=2 ... Z=25


Selasa, 13 September 2016

Warrior of The Net

Pada mata kuliah Keamanan Sistem Komputer kali ini, saya akan mengulas film "Warrior of The Net". Sebuah film yang membahas tentang proses perjalanan data dalam jaringan internet.

Perangkat yang terlibat meliputi : 
  • TCP Packet, Transmission Control Protocol/Internet Protocol (TCP/IP) adalah satu set aturan standar komunikasi data yang digunakan dalam proses transfer data dari satu komputer ke komputer lain di jaringan komputer tanpa melihat perbedaan jenis hardware. 
  • ICMP Ping Packet / Paket Ping ICMP (Paket Ping Protokol Pesan Kendali Internet).
  • UDP Packet (Paket Protokol Datagram Pengguna), packet yang digunakan untuk mengirimkan pesan pendek yang disebut datagram antar sesama program dalam jaringan.
  • Router, komputer yang software dan hardwarenya diperuntukkan untuk melakukan routing dan forwarding. Router menyambungkan dua atau lebih subnet.
  • Ping of Death, packet yang mengandung lebih dari 65,536 byte, yang merupakan jumlah maksimum dari ukuran IP packet. Ping semacam ini dapat mengakibatkan crash pada komputer penerima ping.
  • Router Switch, suatu alat dalam jaringan yang menghubungkan beberapa segment dalam network. 

Di internet, terdapat yang namanya link. Saat kita mengeklik link atau URL pada browser, berbagai data informasi dikumpulkan dan dibentuk kedalam paket-paket, setiap paket mewakili ukuran tertentu tergantung besarnya data. Setiap paket kemudian dipasangi label yang berisi informasi seperti alamat pengirim dan penerima serta tipe paket dan data lain mengenai paket tersebut. Paket yang dikirimkan akan tersambung dengan internet, paket tersebut memiliki alamat yang akan melewati proxy.

Selanjutnya, paket data tersebut akan memasuki jaringan LAN. LAN merupakan area jaringan yang menghubungkan masing-masing komputer yang saling terhubung. Di dalam LAN (Local Area Connection) bias saling bertukar data, biasanya suka ada crashed yang menyebabkan paket tidak sampai tujuan. Dengan kata lain, pada jaringan LAN terdapat distribusi data yang sangat padat dan arusnya pun sangat cepat sehingga kemungkinan data yang dikirim akan membentur data yang berlawanan arah dan akan hancur. Paket-paket yang melewati LAN berisi berbagai data seperti paket IP.

Pada jaringan tersebut terdapat router yang berfungsi sebagai pengatur dan penyeleksi paket-paket tersebut ketujuan yang sudah ditetapkan. Setelah melewati router, paket data yang telah diseleksi akan memasuki lintasan satu arah menuju router switch. Berikutnya paket akan masuk firewall, yang diibaratkan sebagai tembok yang sangat tinggi. Di sini, data yang masuk akan disortir dan data yang berbahaya, seperti ping of the death akan dihancurkan. Data-data yang lolos selanjutnya akan melewati proxy sebuah server. Di sini terdapat beberapa “pintu” yang disebut dengan port. Port ini beragam tergantung jenisnya, 80 untuk untuk halaman web, 25 untuk e-mail, dan 21 untuk file transfer protocol (FTP). Data yang memenuhi kriteria yang berbahaya kembali dihancurkan disini. Setelah lolos barulah mereka disatukan menjadi suatu bagian yang utuh. Server kemudian mengulang apa yang diminta oleh para pengguna internet dan mengirimkan data dengan alur yang kurang lebih sama dengan jalannya informasi dari user ke server. Kira-kira seperti itulah proses jalannya sebuah informasi melalui internet. Sederhana, tetapi prosesnya jika dilihat secara mendetail sangatlah rumit.