• Tidak ada hasil yang ditemukan

CRYPTOGRAPHY /KRIPˈTÄGRƏFĒ/ Teori Dasar Kriptografi Penyandian Monoalfabetik Penyandian Polialfabetik Penggunaan Publik Key

N/A
N/A
Protected

Academic year: 2021

Membagikan "CRYPTOGRAPHY /KRIPˈTÄGRƏFĒ/ Teori Dasar Kriptografi Penyandian Monoalfabetik Penyandian Polialfabetik Penggunaan Publik Key"

Copied!
27
0
0

Teks penuh

(1)

Teori Dasar Kriptografi

Penyandian Monoalfabetik

Penyandian Polialfabetik

Penggunaan Publik Key

(2)

H

ISTORY

Kriptografi / cryptography berasal dari bahasa Yunani: “cryptos” artinya “secret” (rahasia), sedangkan “graphein” artinya “writing” (tulisan). Jadi, kriptografi berarti “secret writing” (tulisan rahasia). Namun saat ini krptografi lebih dari sekedar

suatu bentuk privacy, untuk tujuan data integrity,

authentication, dan non-repudiation.

Jadi kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentifikasi.

(3)

Dalam bab ini, kita akan memeriksa dan mempelajari apa enkripsi dan bagaimana kerjanya. Disini diperkenalkan dasar prinsip enkripsi dengan dua metode enkripsi sederhana:

Selanjutnya, kita akan mengeksplorasi bagaimana enkripsi dapat diperluas dan ditingkatkan untuk menciptakan sebuah kunci yang kuat dan melindungi sebuah data. Sebuah enkripsi yang lemah atau cacat, bisa dikatakan hanya menyediakan ilusi perlindungan, dan dari sini kita bisa

melihat bagaimana sebuah enskripsi tersebut bisa gagal.

(4)

T

ERMINOLOGY

Skenario

Mempertimbangkan langkah-langkah yang terlibat dalam

pengiriman pesan dari si pengirim sebagai berikut :

> S, dan ke penerima > R. Jika S mempercayakan pesan ke --> T, yang kemudian memberikan kepada R, T kemudian menjadi media transmisi. Jika orang luar yang adalah O, ingin mengakses

pesan (untuk membaca, mengubah, atau bahkan

menghancurkannya), kita sebut O sebuah pencegat atau penyusup. Setiap saat setelah S mentransmisikan melalui T, pesan tersebut rentan terhadap eksploitasi, dan O mungkin mencoba untuk mengakses pesan tersebut. Contoh dalam skenario berikut.

(5)

T

ERMINOLOGY

PLAINTEXT

Alice, I love you, Will you marry me?

CIPHERTEXT *bþòäµNœ¢bóQ†T…( Ñ!““ttØÄQúaìJ«$fÕ W¬ ¦»EÊ• ORIGINAL PLAINTEXT Hi bob, me too… OMG, why not !

yes I want to marry you, and i want to have kids with you

Decrypt

Bob Alice

Hacker (blackhat)

Hmm…I will Decrypt your Plaintext

Encrypt

you cheated me, i hate you, it's over, we are never ever

getting back together

Encrypt Decrypt CIPHERTEXT *bþòäµNœ¢bóQ†T…( Ñ!““ttØÄQúaìJ«$fÕ W¬ ¦»EÊ•

(6)

T

ERMINOLOGY

 Melakukan block dengan mencegah alice mencapai tujuan

tersebut ke bob, sehingga ini bisa mempengaruhi ketersediaan

(availability) pesan.

 Mencegat dengan membaca atau mendengarkan pesan, sehingga

mempengaruhi kerahasiaan pesan.

Mempengaruhi integritas pesan (integrity).

 Mengarang pesan otentik yang tampak seperti aslinya, dan

mengaturnya sehingga yang disampaikan seolah-olah itu berasal dari Alice, yang akhirnya mempengaruhi integritas pesan.

Seperti yang telah kita lihat, kerentanan pesan ini mencerminkan empat kegagalan keamanan yang diidentifikasi.

(7)

Dengan adanya enkripsi tersebut, maka kita dapat mengatasi semua masalah ini, yang dimana enkripsi adalah suatu metode bagaimana kita dapat membuat suatu program atau data yang telah dienkripsi dari sebuah komputasi yang aman dan juga sarana untuk mempertahankan data yang aman dalam lingkungan. Dalam session ini, kita mempelajari enkripsi sebagai keamanan teknik, dan kita melihat bagaimana ia digunakan dalam program perlindungan, database, jaringan, dan elektronik komunikasi.

(8)

T

ERMINOLOGY

Enkripsi adalah proses pengkodean pesan sehingga maknanya tidak jelas, dekripsi adalah sebaliknya dimana proses mengubah pesan terenkripsi kembali ke bentuk normal, atau, istilah encode dan

decode atau menulis dalam kode dan menguraikan menggunakan pengganti enkripsi dan dekripsi.

Artinya, kita mengatakan bahwa kita encode, mengenkripsi, atau menulis dalam kode pesan asli untuk menyembunyikan

maknanya. Kemudian, kita decode, mendekripsi, atau

memahaminya untuk mengungkapkan pesan asli, dimana sebuah sistem untuk enkripsi dan dekripsi disebut cryptosystem.

(9)

T

ERMINOLOGY

Enkripsi juga terdapat didalam suatu bahasa pemograman contohnya pemograman php, bagaimana cara melakukan encode pada sebuah text email didalam script php dan melakukan teknik encode dengan string yang dihasilkan dan akan menjadikan nilai tersebut kedalam ASCII yang telah di encode ketika digunakan pada halaman web seperti ini

<ahref="mailto:&#107;&#101;&#118;&#105;&#110;&#64;&#112;&#104;&#1 12;&#114;&#111;&#46;&#111;&#114;&#103;">&#107;&#101;&#118;&#105; &#110;&#64;&#112;&#104;&#112;&#114;&#111;&#46;&#111;&#114;&#103 ;<a>

Dan lebih penting lagi, apa yang dilakukan adalah dengan menggunakan teknik filter_var () fungsi pada sebuah array, sama seperti kita melakukan string. Prinsip yang sama juga berlaku dan mem-filter dan menerapkan fungsi callback kepada setiap anggota array.

(10)

E

NKRIPSI DAN

D

EKRIPSI

Dekripsi (D) Plaintext (P) Enkripsi (E) Ciphertext (C) Plaintext (P) K (E) K (D)

Proses Enkripsi dan Dekripsi dengan kunci K

Fungsi enkripsi E dioperasikan dengan P kemudian menghasilkan C, yang digambarkan seperti notasi berikut :

E ( P ) = C

Pada proses dekripsi data yang sudah diproses pada enkripsi ( ciphertext ) melalui proses dekripsi data akan dikembalikan lagi ke dalam bentuk plaintext/ data aslinya, yang digambarkan seperti notasi berikut :

(11)

E

NKRIPSI DAN

D

EKRIPSI

Dekripsi (D) Plaintext (P) Enkripsi (E) Ciphertext(C) Plaintext (P) K (E) K (D)

Proses Enkripsi dan Dekripsi dengan kunci K

Data atau informasi yang telah melalui proses enkripsi dan dekripsi, dimana data yang sudah diacak akan menghasilkan data atau informasi aslinya ( plaintext ), yang digambarkan seperti notasi berikut :

(12)

E

NKRIPSI DAN

D

EKRIPSI

Algoritma enkripsi digunakan pada saat melakukan proses enkripsi terhadap suatu plaintext dan algoritma dekripsi digunakan pada saat melakukan proses dekripsi terhadap suatu ciphertext.

Sedangkan dalam penerapannya algoritma enkripsi dan algoritma dekripsi harus menggunakan kunci untuk membuka dan menutup sandinya, hal ini untuk menjaga keamanan data atau informasi tersebut. Kunci yang dimaksud dapat dilambangkan dengan K.

(13)

E

NKRIPSI DAN

D

EKRIPSI

Kunci yang digunakan dapat berupa sebuah angka bernilai kecil atau besar sesuai dengan angka-angka yang telah ditentukan untuk melakukan nilai transformasi matematis yang memetakan plaintext ke ciphertext dan sebaliknya. Ciphertext sangat dipengaruhi oleh keberadaan plaintext dan kuncinya, jadi nilai dari suatu kunci akan mempengaruhi fungsi enkripsi dan dekripsi, sehingga fungsi

enkripsi tersebut dapat dinotasikan seperti berikut : Ek ( P ) = C

(14)

E

NKRIPSI DAN

D

EKRIPSI

Dekripsi (D) Plaintext (P) Enkripsi (E) Ciphertext (C) Plaintext (P) K (E) K (D)

Proses Enkripsi dan Dekripsi dengan kunci K

Bila kunci yang dipakai untuk proses enkripsi sama dengan kunci yang dipakai untuk proses dekripsi, maka dapat digambarkan dengan notasi sebagai berikut : ( Dk ( Ek ) ) = P Keterangan : K : Kunci Ek : Kunci Enkripsi Dk : Kunci Dekripsi

(15)

E

NKRIPSI

Monoalphabet, yaitu setiap karakter teks kode menggantikan

salah satu karakter teks asli.

Polyalphabet, setiap karakter teks-kode dapat menggantikan lebih

dari satu macam karakter teks asli

Monograf, adalah satu enkripsi dilakukan terhadap satu karakter

teks-asli

Polygraph, adalah satu enkripsi dilakukan terhadap lebih dari

(16)
(17)

E

NKRIPSI

Caesar code

Subsitusi kode yang pertama dalam dunia penyandian terjadi pada pemerintahan Yulius Caesar yang dikenal dengan kode Kaesar

(Caesar code), dengan mengganti posisi huruf dari alfabet atau

disebut juga dengan algoritma ROT3

X Y Z A B C D E F

(18)

E

NKRIPSI

(19)

Secara detail, perhatikan table dibawah ini :

(20)

Jika penggeseran yang dilakukan sebanyak tiga kali maka kunci untuk dekripsinya adalah 3. Penggeseran kunci yang dilakukan tergantung keinginan pengirim. Bisa saja kunci yang dipakai a = 7, b = 9, dan seterusnya.

Dalam algoritma kode caesar: biasaya teks-asli diberika simbol “P” dan teks kodenya “C” dan kunci “K”, sehingga didapatkan rumus sebagai berikut.

Pada contoh diatas, kita bisa memasukkan kunci dengan nilai tiga sehingga menjadi:

C=E(P) = (P+K) mod (26)

(21)

E

NKRIPSI

Sebagai contoh jika diberikan teks-asli sebagai berikut: “STMIK WIDURI TEKNIK INFORMATIKA”

Dengan menggunakan kunci 3 maka kita akan mendapatkan teks-kode sebagai berikut :

“VWPLN ZLGXUL WHNQLN LQJRUPDWLND”

Kode caesar bisa dipecahkan dengan cara Brute Force attack, yaitu dimana suatu bentuk serangan yang mencoba-coba berbagai kemungkinan untuk menemukan kunci. Karena jumlah kunci yang sangat sedikit (hanya 26 kunci). Meski sedikit, kunci suatu kode cukup untuk merepotkan seorang cryptanalyst, Karena untuk menemukannya dengan brute force attack dibutuhkan waktu yang cukup lama.

(22)

Brute force attack juga digunakan untuk mencari Password dan User ID dari suatu sistem komputasi. Pada serangan ini, para

penyerang mencoba beberapa kemungkinan yang ada dari daftar kata (wordlist) yang ada di dalam kamus. Umumnya serangan ini dapat berhasil, hanya saja memerlukan waktu yang lama.

E

NKRIPSI

(23)

ROT13

Pada sistem operasi Unix, ROT13 adalah fungsi yang menggunakan kode caesar dengan pergeseran k = 13.

E

NKRIPSI

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

(24)

Sistem enkripsi pada Unix, dengan membagi alfabet n = 26 menjadi 13 sehingga satu huruf dengan huruf yang lain saling berhadapan. Jika text aslinya adalah “A” maka teks-kode adalah “N”. Begitu seterusnya Notasi matematika dapat ditulis sebagai berikut:

Untuk melakukan dekripsi dengan proses enkripsi ROT13 dua kali adalah sebagai berikut:

C = ROT13(M)

M = ROT13 (ROT 13 (M))

(25)

ROT13 juga didesain untuk keamanan pada sistem operasi UNIX yang sering digunakan pada forum online, yang berfungsi untuk menyelubungi isi artikel sehingga hanya orang yang berhak yang dapat membacanya. Contoh proses enkripsi ROT13 dapat dilihat dibawah ini:

Ekripsi dengan menggunakan ROT13

E

NKRIPSI

S I S T E M O P E R A S I

(26)

Proses dekripsi

E

NKRIPSI

S I S T E M O P E R A S I

(27)

Pada perkembangannya algoritma kode Caesar memberikan suatu gagasan baru untuk menggunakan kunci lain yang disebut

poly-alphabetic. Kunci bisa jadi nama, alamat atau apa saja yang

diinginkan oleh pengirim pesan.

Kode Caesar dengan menggunakan satu kunci bisa disebut dengan subsitusi deret campur kata kunci. Yang perlu diingat, tidak ada perulangan huruf dalam hal ini. STMIK WIDURI menjadi STMIKWDUR. Karena ada pengulangan huruf “I”, maka huruf itu tidak dipakai lagi.

Gambar

Figure : Wifi crack dengan brute force attack

Referensi

Dokumen terkait

Hal ini menunjukan hubungan variabel independen yaitu faktor psikografis yang terdiri dari gaya hidup (X 1 ), karakter kepribadian konsumen (X 2 ), faktor demografis (X 3

Hexc adalah medan yang dihasilkan oleh kumparan eksitasi, Ho medan eksternal, Iexc arus yang dialirkan ke kumparan eksitasi, Nexc jumlah lilitan eksitasi, Npc

Berdasarkan hasil penelitian dan pembahasan yang telah dilakukan, maka dapat disimpulkan bahwa gaya kepemimpinan dan ketidakapastian lingkungan memiliki pengaruh terhadap

Beberapa faktor karakteristik pekerjaan yang mempengaruhi tingginya perputaran tenaga kerja Departemen Food And Beverage Service di Hotel Hilton Bali adalah

Sehingga dapat ditarik kesimpulan bahwa ada hubungan yang signifikan antara komunikasi ibu-anak dan tingkat pendidikan ibu dengan kesiapan bersekolah anak.. Berdasarkan hasil

Untuk orang-orang yang memiliki karakteristik seperti diatas, pendekatan belajar yang mungkin bisa dilakukan adalah belajar berdasarkan atau melalui pengalaman

(Prioritas Utama) oleh pelanggan dianggap sebagai atribut yang penting namun pelaksanaannya tidak optimal dan belum sesuai dengan harapan adalah harga produk,

Pada studi ini diteliti pengaruh DMSO sebagai enhancer absorpsi transdermal teofilin, yang sediaannya banyak digunakan untuk antiselulit Percobaan absrpsi secara transdermal