Senin, 22 April 2019

KRIPTOGRAFI

Jenis-Jenis Kriptografi

Algoritma kriptografi dibagi menjadi 3 bagian berdasarkan kunci yang dipakainya :

1. Kriptografi Simetris

Pengertian Kriptografi Simetris

Kriptografi Simetris adalah : Kode Hill atau lebih dikenal dengan Hill cipher merupakan salah satu algoritma kriptografi kunci simetris dan merupakan salah satu kripto polyalphabetic. Hill cipher diciptakan oleh Lester S. Hill pada tahun 1929 .

Teknik kriptografi ini diciptakan dengan maksud untuk dapat menciptakan cipher yang tidak dapat dipecahkan menggunakanteknik analisis frekuensi. Berbeda dengan caesar cipher, hill cipher tidak mengganti setiap abjad yang sama pada plainteks dengan abjad lainnya yang sama pada cipherteks karena menggunakan perkalian matriks pada dasar enkripsi dan dekripsinya
Hill cipher merupakan penerapan aritmatika modulo pada kriptografi. Teknik kriptografi ini enggunakan sebuah matriks persegi sebagai kunci berukuran m x m sebagai kunci untuk melakukan enkripsi dan dekripsi. Dasar teori matriks yang digunakan dalam Hill cipher antara lain adalah perkalian antar matriks dan melakukan invers pada matriks. Karena menggunakan matriks sebagai kunci, Hill cipher merupakan algoritma kriptografi kunci simetris yang sulit dipecahkan, karena teknik kriptanalisis seperti analisis frekuensi tidak dapat diterapkan dengan mudah untuk memecahkan algoritma ini. Hill cipher sangat sulit dipecahkan jika kriptanalis hanya memiliki ciphertext saja (chipertext-only), namun dapat dipecahkan dengan mudah jika kriptanalis memiliki ciphertext dan potongan dari plaintext-nya (known-plaintext).

Gambar Kriptografi Simetris :

   
Gambar Kriptografi Simetris


2. Kriptografi Asimetris

Pengertian Kriptografi Asimetris

Algoritma asimetris, 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 public 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.

Gambar Kriptografi Asimetris


Gambar Kriptografi Asimetris

3. Kriptografi Hibrid

Pengertian Kriptografi Hibrid

Permasalahan yang menarik pada bidang kemanan informasi adalah adanya trade off antara kecepatan dengan kenyamanan. Semakin aman semakin tidak nyaman, berlaku juga sebaliknya semakin nyaman semakin tidak aman. Salah satu contohnya adalah bidang kriptografi. Tetapi hal ini dapat diatasi dengan penggunaan kriptografi hibrida. Kriptografi hibrida sering dipakai karena memanfaatkan keunggulan kecepatan pemrosesan data oleh algoritma simetrik dan kemudahan transfer kunci menggunakan algoritma asimetrik. Hal ini mengakibatkan peningkatan kecepatan tanpa mengurangi kenyamanan serta keamanan. Aplikasi kriptografi hibrida yang ada saat ini pada umumnya ditujukan untuk penggunaan umum atau mainstream yang merupakan penggunakomputer.

Aplikasi pada umumnya mengikuti perkembangan hardware komputer yang semakin cepat dari waktu ke waktu. Sehingga hardware yang sudah lama tidak dapat difungsikan sebagaimana mestinya. Selain itu banyak perangkat embedded dengan kekuatan pemrosesan maupun daya yang terbatas. Terutama dengan trend akhir akhir ini, hampir semua orang memiliki handheld device yang mempunyai kekuatan terbatas, seperti  telepon seluler. Dalam tugas akhir ini dibahas mengenai perancangan sebuah aplikasi kriptografi hibrida yang ditujukan untuk kalangan tertentu, terutama pemakai hardware dengan kekuatan pemrosesan yang terbatas. Aplikasi yang ingin dicapai adalah aplikasi yang sederhana, ringan dan cepat tanpa mengurangi tingkat keamanan menggunakan hash.

Sistem ini mengggabungkan chiper simetrik dan asimetrik. Proses ini dimulai dengan negosiasi menggunakan chiper asimetrik dimana kedua belah pihak setuju dengan private key/session key yang akan dipakai. Kemudian session key digunakan dengan teknik chiper simetrik untuk mengenkripsi conversation ataupun tukar-menukar data selanjutnya. Suatu session key hanya dipakai sekali sesi. Untuk sesi selanjutnya session key harus dibuat kembali.

Gambar Kriptografi Hibrid


Gambar Kriptografi Hibrid


Contoh kriptografi Simetris
Perhitungan Matematis Umum dari teknik hill cipher adalah aritmatika modulo atas matriks. Hill cipher memanfaatkan teknik per kalian matriks serta teknik invers atas matriks dalam penggunaannya. Kunci pada hill cipher yaitu matriks n x n dimana n merupakan ukuran dari blok. Bila matriks kunci di sebut dengan K, maka matriks K adalah sebagai berikut :




Matriks K yang menjadi kunci ini harus matriks yang invertible, maksudnya memiliki multiplicative inverse K-1 sehingga :

K.K-1 = 1
Ingat ya ! Kunci harus memiliki invers karena matriks K-1 tersebut merupakan kunci yang digunakan untuk mengerjakan dekripsi.

Cara Enkripsi
Dengan mengkodekan ataupun mengganti setiap huruf abjad dengan integer seperti berikut:
A = 0, B = 1, …, Z = 25




Proses enkripsi hill cipher secara matematis yaitu :

C = K . P mod 26
C = Cipherteks | K = Kunci | P = Plainteks

Proses enkripsi hill cipher dikerjakan secara per blok plainteks. Ukuran bloknya serupa seperti matriks kuncinya.

Perhatikan contoh berikut!

P = D O D I S P U T R A ,dikodekan/diintegerkan menjadi
P = 3 14 3 8 18 15 20 19 17 0




Karena matriks kunci K berukuran 2, sehingga plainteks terbagi menjadi blok ukuran 2 karakter. Blok kesatu dari plainteks P1,2 =[3;14] selanjutnya di enkripsi oleh kunci K dengan persamaan C = K . P mod 26. Karena perkalian tersebut menciptakan lebih dari angka 25 maka dilakukan modulo 26 pada hasil yang lebih dari 25.

Karakter yang ber korespondensi dengan 21 dan 9 ialah V dan J. Selesainya melakukan enkripsi semua blok pada plainteks P maka akan memperoleh cipherteks C sebagai berikut:

P = D O D I S P U T R A
C = V J R N P W L U R X

Cipherteks yang dihasilkan oleh enkripsi hill chiper atau kode hill menghasilkan cipherteks yang tidak memiliki pola yang menyerupai dengan plainteks ataupun pesan aslinya.

Mancari K Invers dan Teknik Dekripsi
Perhitungan matematis dekripsi pada hill chiper atau kode hill ini sama seperti enkripsi. Tetapi matriks kunci harus dibalik (invers) dahulu dan kunci invers harus memenuhi persamaan.

K . K-1 = 1.
P=K-1.Cm26

Sebelum mendekripsikannya, kunci K harus di invers terlebih dahulu, untuk menginversnya kita akan memakai persamaan [K | I] = K-1, proses invers ini akan kita lakukan dengan operasi baris/ row operation.



Dari perhitungan diatas didapatkan K invers :


K invers sudah memenuhi persamaan K . K-1 = I, berlandaskan perkalian K dengan K-1 selanjutnya dimodulasi dengan 26 menghasilkan I = [1 0;0 1]. Kemudian kita akan melakukan dekripsi terhadap chiperteks, lalu diubah menjadi integer dahulu. Dengan kunci dekripsi yang dimiliki, kriptanalis hanya perlu menggunakan persamaan (P = K-1 . C mod 26) pada cipherteks dan kunci, jadi akan menghasilkan plainteks atau pesan asli (P = D O D I S P U T R A).
Kode hill atau disebut juga dengan Hill cipher adalah algoritma kriptografi klasik yang sangat kuat jika dipandang berdasarkan segi keamanannya, karena dengan matriks kunci hill cipher harus merupakan matriks yang invertible, dan di situlah letak keistimewaan dan kerumitan dari kode hill tersebut.

Kriptografi dalam Kehidupan Sehari-hari



1.           Transaksi lewat Anjungan Tunai mandiri (ATM)


  • Anjungan Tunai Mandiri atau Automatic Teller Machine (ATM) digunakan nasabah bank untuk melakukan transaski perbankan. Utamanya, kegunaan ATM adalah untuk menarik uang secara tunai (cash withdrawal), namun saat ini ATM juga digunakan untuk transfer uang (pemindahbukuan), mengecek saldo, membayar tagihan kartu ponsel, membeli tiket kereta api, dan sebagainya.

  • Transaksi lewat ATM memerlukan kartu magnetik (disebut juga kartu ATM) yang terbuat dari plastik dan kode PIN (Personal Information Number) yang berasosiasi dengan kartu tersebut.

  • PIN terdiri dari 4 angka yang harus dijaga kerahasiannya oleh pemilik kartu ATM, sebab orang lain yang mengetahui PIN dapat menggunakan kartu ATM yang dicuri atau hilang untuk melakukan penarikan uang.

  • PIN digunakan untuk memverifikasi kartu yang dimasukkan oleh nasabah di ATM. Proses verifikasi dilakukan di komputer pusat (host) bank, oleh karena itu harus ada komunikasi dua arah antara ATM  dan komputer host. ATM mengirim PIN dan informasi tambahan pada kartu ke komputer host, host melakukan verifikasi dengan cara membandingkan PIN yang di-entry-kan oleh nasabah dengan PIN yang disimpan di dalam basisdata komputer host, lalu mengirimkan pesan tanggapan ke ATM yang menyatakan apakah transaksi dapat dilanjutkan atau ditolak.

  • Selama transmisi dari ATM ke komputer host, PIN harus dilindungi  dari penyadapan oleh orang yang tidak berhak.

  • Bentuk perlindungan yang dilakukan selama transmisi adalah dengan mengenkripsikan PIN. Di sisi bank, PIN yang disimpan di dalam basisdata juga  dienkripsi.

  • Algoritma enkripsi yang digunakan adalah DES dengan mode ECB. Karena DES bekerja dengan mengenkripsikan blok 64-bit, maka PIN yang hanya terdiri dari 4 angka (32 bit) harus ditambah dengan padding bits sehingga panjangnya menjadi 64 bit.  Padding bits yang ditambahkan berbeda-beda untuk setiap PIN, bergantung pada informasi tambahan pada setiap kartu ATM-nya.

  • Karena panjang PIN hanya 4 angka, maka peluang ditebak sangat besar. Seseorang yang memperoleh kartu ATM curian atau hilang dapat mencoba semua kemungkinan kode PIN yang mungkin, sebab hanya ada 10 ´ 10 ´ 10 ´ 10 = 10.000 kemungkinan kode PIN 4-angka. Untuk mengatasi masalah ini, maka kebanyakan ATM hanya membolehkan peng-entry-an PIN maksimum 3 kali, jika 3 kali tetap salah maka ATM akan ‘menelan’ kartu ATM. Masalah ini juga menunjukkan bahwa kriptografi tidak selalu dapat menyelesaikan masalah keamanan data.

2.           Pay TV
  • Pay TV adalah siaran TV yang hanya dapat dinikmati oleh pelanggan yang membayar saja, sedangkan pemilik TV yang tidak berlangganan tidak dapat menikmati siarannya (Di Indonesia Pay TV dikelola oleh PT. IndoVision).

  • Siaran Pay TV dipancarkan secara broadcast, namun hanya sejumlah pesawat TV yang berhasil menangkap siaran tersebut yang dapat ‘mengerti’ isinya.

  • Pada sistem Pay TV, sinyal broadcast dienkripsi dengan kunci yang unik. Orang-orang yang berlangganan Pay TV pada dasarnya membayar untuk mengetahui kunci tersebut.

  • Bagaimana mengetahui bahwa kunci tersebut dimiliki oleh pelanggan yang sah, dan bukan orang yang mengetahui kunci tersebut dari pelanggan lainnya? Solusi yang umum adalah setiap pelanggan diberikan smart card yang mengandung kunci rahasia (private key) yang unik dalam konteks algoritma kriptografi kunci-publik.

  • Smart card dimasukkan ke dalam card reader yang dipasang pada pesawat TV.  Selanjutnya, pelanggan Pay TV dikirimi kunci simetri yang digunakan untuk mengenkripsi siaran. Kunci simetri ini dikirim dalam bentuk terenkripsi dengan menggunakan kunci publik pelanggan.  Smart card kemudian mendekripsi kunci simetri ini dengan kunci rahasia pelanggan. Selanjutnya, kunci simetri digunakan untuk mendekripsi siaran TV.

3.           Komunikasi dengan Telepon Seluler (GSM mobile phone)

·         Penggunaan telepon seluler (ponsel) yang bersifat mobile memungkinkan orang berkoumikasi dari tempat mana saja.

·         Telepon seluler bersifat nirkabel (wireless), sehingga pesan yang dikirim dari ponsel ditransmisikan melalui gelombang mikro (microwave) atau radio sampai ia mencapai base station (BST) terdekat, selanjutnya ditransfer melalui saluran kabel fixed.

·         Karena menyadap sinyal radio jauh lebih mudah daripada menyadap sinyal pada saluran kabel, maka ini berarti GSM tidak lebih aman daripada telepon fixed konvensional.

·         Untuk membuat komunikasi lewat ponsel aman, maka pesan dienkripsi selama transmisi dari ponsel ke BST terdekat.  Metode enkripsi yang digunakan adalah metode cipher aliran (stream cipher).

·         Masalah keamanan lain adalah identitas penelpon. Operator seluler harus dapat mengidentifikasi suatu panggilan (call) dan mengetahui siapa yang melakukan panggilan tersebut. Jadi, pada GSM diperlukan dua kebutuhan keamanan lainnya, yaitu kerahasiaan (confidentiality), yang merupakan kebutuhan bagi pelanggan, dan otentikasi pengguna (user authentication), yang merupakan kebutuhan bagi sistem.

·         Dua kebutuhan ini dipenuhi dengan penggunaan smart card yang disebut SIM card. SIM card disediakan oleh operator seluler (service provider). SIM card berisi nilai otentikasi rahasia sepanjang 128-bit yang diketahui hanya oleh operator. Nilai ini digunakan sebagai kunci pada protokol otentikasi dengan menggunakan algoritma yang dipilih oleh operator.

·         Ketika pengguna ponsel melakukan panggilan (call), identitasnya dikirim ke komputer host via BST untuk keperluan otentikasi. Komputer host melakukan verifikasi pengguna lalu membangkitkan pesan (challenge) dan mengirimnya ke BST. 

·         Program otentikasi menerima masukan 128-bit dan mengeluarkan response 128-bit, yang bergantung pada kunci otentikasi di dalam kartu. Dari 128-bit keluaran, hanya 32 bit yang dikirim dari SIM card ke BST sebagai response.   Jadi, masih ada 96 bit yang hanya diketahui hanya oleh SIM card, BST, dan komputer host.

·         SIM card juga berisi program stream cipher untuk mengenkripsi pesan dari ponsel ke BST. Kunci enkripsi panjangnya 64 bit, yang diambil dari 96 bit sisa dari response SIM card.

4.           Transaksi E-commerce di Internet
·         Sekarang banyak orang berbelanja melalui web di internet. Pembayaran barang dilakukan dengan menggunakan kartu kredit, yang berarti bahwa pembeli harus mengirimkan kode PIN kartu kredit dan informasi lainnya melalui internet. Karena alasan keamanan yang menyangkut informasi kartu kredit maka transaksi barang lewat internet tidak terlalu populer.

·         Browsing web secara aman adalah fitur paling penting pada e-commerce. Secure Socket Layer (SSL) adalah protokol yang digunakan untuk browsing web secara aman. Kedua protokol ini memfasilitasi penggunaan enkripsi untuk data yang rahasia dan membantu menjamin integritas informasi yang dipertukarkan antara website dan web brwoser (misalnya Netscape, Interner Explorer, dsb).

·         SSL adalah contoh protokol client-server, yang dalam hal ini web browser adalah client dan website adalah server. Client yang memulai komunikasi, sedangkan server memberi respon terhadap   permintaan client. Fungsi paling dasar yang digunakan SSL adalah membentuk saluran untuk mengirimkan data terenkripsi, seperti data kartu kredit, dari browser ke website yang dituju.

Sumber :

    Choose :
  • OR
  • To comment
Tidak ada komentar:
Write komentar