Sabtu, 26 Oktober 2013

Steganografi

Steganografi adalah seni dan ilmu menulis pesan tersembunyi atau menyembunyikan pesan dengan suatu cara sehingga selain si pengirim dan si penerima, tidak ada seorangpun yang mengetahui atau menyadari bahwa ada suatu pesan rahasia. Sebaliknya, kriptografi menyamarkan arti dari suatu pesan, tapi tidak menyembunyikan bahwa ada suatu pesan. Kata "steganografi" berasal dari bahasa Yunani steganos, yang artinya “tersembunyi atau terselubung”, dan graphein, “menulis”.
Kini, istilah steganografi termasuk penyembunyian data digital dalam berkas-berkas (file) komputer. Contohnya, si pengirim mulai dengan berkas gambar biasa, lalu mengatur warna setiap pixel ke-100 untuk menyesuaikan suatu huruf dalam alphabet (perubahannya begitu halus sehingga tidak ada seorangpun yang menyadarinya jika ia tidak benar-benar memperhatikannya).
Pada umumnya, pesan steganografi muncul dengan rupa lain seperti gambar, artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan yang tertulis ini merupakan tulisan yang menyelubungi atau menutupi. Contohnya, suatu pesan bisa disembunyikan dengan menggunakan tinta yang tidak terlihat di antara garis-garis yang kelihatan.
Teknik steganografi meliputi banyak sekali metode komunikasi untuk menyembunyikan pesan rahasia (teks atau gambar) di dalam berkas-berkas lain yang mengandung teks, image, bahkan audio tanpa menunjukkan ciri-ciri perubahan yang nyata atau terlihat dalam kualitas dan struktur dari berkas semula. Metode ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur tersembunyi dan komunikasi spektrum lebar.
Tujuan dari steganografi adalah merahasiakan atau menyembunyikan keberadaan dari sebuah pesan tersembunyi atau sebuah informasi. Dalam prakteknya, kebanyakan pesan disembunyikan dengan membuat perubahan tipis terhadap data digital lain yang isinya tidak akan menarik perhatian dari penyerang potensial, sebagai contoh sebuah gambar yang terlihat tidak berbahaya. Perubahan ini bergantung pada kunci (sama pada kriptografi) dan pesan untuk disembunyikan. Orang yang menerima gambar kemudian dapat menyimpulkan informasi terselubung dengan cara mengganti kunci yang benar ke dalam algoritma yang digunakan.
Pada metode steganografi cara ini sangat berguna jika digunakan pada cara steganografi komputer karena banyak format berkas digital yang dapat dijadikan media untuk menyembunyikan pesan. Format yang biasa digunakan di antaranya:
  • Format image : bitmap (bmp), gif, pcx, jpeg, dll.
  • Format audio : wav, voc, mp3, dll.
  • Format lain : teks file, html, pdf, dll.
Kelebihan steganografi jika dibandingkan dengan kriptografi adalah pesan-pesannya tidak menarik perhatian orang lain. Pesan-pesan berkode dalam kriptografi yang tidak disembunyikan, walaupun tidak dapat dipecahkan, akan menimbulkan kecurigaan. Seringkali, steganografi dan kriptografi digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya.
Sebuah pesan steganografi (plaintext), biasanya pertama-tama dienkripsikan dengan beberapa arti tradisional, yang menghasilkan ciphertext. Kemudian, covertext dimodifikasi dalam beberapa cara sehingga berisi ciphertext, yang menghasilkan stegotext. Contohnya, ukuran huruf, ukuran spasi, jenis huruf, atau karakteristik covertext lainnya dapat dimanipulasi untuk membawa pesan tersembunyi; hanya penerima (yang harus mengetahui teknik yang digunakan) dapat membuka pesan dan mendekripsikannya.

Metode Steganografi

Kebanyakan algoritma steganografi menggunakan sebuah kombinasi dari bidang jenis teknik untuk melakukan sebuah tugas dalam penyelubungan pesan rahasia dalam sebuah selubung berkas. Sebuah program steganografi dibutuhkan untuk melakukan hal-hal berikut (baik implisit melalui suatu perkiraan maupun eksplisit melalui sebuah perhitungan), menemukan kelebihan bits dalam selubung file yang dapat digunakan untuk menyelubungi pesan rahasia didalamnya, memilih beberapa diantaranya untuk digunakan dalam menyelubungi data dan penyelubungan data dalam bits dipilih sebelumnya.
Ada empat jenis metode Steganografi, yaitu:

Least Significant Bit Insertion (LSB)

Metoda yang digunakan untuk menyembunyikan pesan pada media digital tersebut berbeda-beda. Contohnya, pada berkas image pesan dapat disembunyikan dengan menggunakan cara menyisipkannya pada bit rendah atau bit yang paling kanan (LSB) pada data pixel yang menyusun file tersebut. Pada berkas bitmap 24 bit, setiap pixel (titik) pada gambar tersebut terdiri dari susunan tiga warna merah, hijau dan biru (RGB) yang masing-masing disusun oleh bilangan 8 bit (byte) dari 0 sampai 255 atau dengan format biner 00000000 sampai 11111111. Dengan demikian, pada setiap pixel berkas bitmap 24 bit kita dapat menyisipkan 3 bit data.
Kekurangan dari LSB Invertion: Dapat diambil kesimpulan dari contoh 8 bit pixel, menggunakan LSB Insertion dapat secara drastis mengubah unsur pokok warna dari pixel. Ini dapat menunjukkan perbedaan yang nyata dari cover image menjadi stego image, sehingga tanda tersebut menunjukkan keadaan dari steganografi. Variasi warna kurang jelas dengan 24 bit image, bagaimanapun file tersebut sangatlah besar. Antara 8 bit dan 24 bit image mudah diserang dalam pemrosesan image, seperti cropping (kegagalan) dan compression (pemampatan).
Keuntungan dari LSB Insertion : Keuntungan yang paling besar dari algoritma LSB ini adalah cepat dan mudah. Dan juga algoritma tersebut memiliki software steganografi yang mendukung dengan bekerja di antara unsur pokok warna LSB melalui manipulasi pallete (lukisan).

Algorithms and Transformation

Algoritma compression adalah metode steganografi dengan menyembunyikan data dalam fungsi matematika. Dua fungsi tersebut adalah Discrete Cosine Transformation (DCT) dan Wavelet Transformation. Fungsi DCT dan Wavelet yaitu mentransformasi data dari satu tempat (domain) ke tempat (domain) yang lain. Fungsi DCT yaitu mentransformasi data dari tempat spatial (spatial domain) ke tempat frekuensi (frequency domain).

Redundant Pattern Encoding

Redundant Pattern Encoding adalah menggambar pesan kecil pada kebanyakan gambar. Keuntungan dari metode ini adalah dapat bertahan dari cropping (kegagalan). Kerugiannya yaitu tidak dapat menggambar pesan yang lebih besar.

Spread Spectrum method

Spread Spectrum steganografi terpencar-pencar sebagai pesan yang diacak (encrypted) melalui gambar (tidak seperti dalam LSB). Untuk membaca suatu pesan, penerima memerlukan algoritma yaitu crypto-key dan stego-key. Metode ini juga masih mudah diserang yaitu penghancuran atau pengrusakan dari kompresi dan proses image (gambar).

Steganalisis dan Stegosystem

Seperti Kriptografi dan Kriptanalisis, Steganalisis didefinisikan sebagai suatu seni dan ilmu dalam mendeteksi informasi tersembunyi. Sebagai tujuan dari steganografi adalah untuk merahasiakan keberadaan dari sebuah pesan rahasia, satu keberhasilan penyerangan pada sebuah sistem steganografi terdiri dari pendeteksian bahwa sebuah berkas yang diyakini berisikan data terselubung. Seperti dalam Kriptanalisis, diasumsikan bahwa sistem steganografi telah diketahui oleh si penyerang. Maka dari itu, keamanan dari sistem steganografi bergantung hanya pada fakta bahwa kunci rahasia tidak diketahui oleh si penyerang.
Stegosystem di sini berisi tentang penyerangan-penyerangan yang dilakukan terhadap suatu sistem steganografi, sebuah perbedaan penting harus dibuat di antara penyerangan-penyerangan pasif di mana penyerang hanya dapat memotong data, dan penyerangan-penyerangan aktif di mana penyerang juga dapat memanipulasi data. Gambar di bawah ini[rujukan?] menunjukkan sebuah diagram untuk menjelaskan sistem stego. Lingkaran-lingkaran menunjukkan tempat-tempat penyerang yang berpotensi memiliki jalan masuk ke satu atau lebih dari tempat-tempat tersebut akibat penyerangan-penyerangan yang berbeda jenis, dan juga berfungsi untuk melakukan sebuah penyerangan aktif. Jika lingkaran tidak terisi, penyerang hanya dapat melakukan penyerangan pasif yaitu menghalangi memotong data.
Penyerangan-penyerangan berikut memungkinkan dalam model dari stegosistem ini:
  • Stego-Only-Attack (Penyerangan hanya Stego). Penyerang telah menghalangi stego data dan dapat menganalisisnya.
  • Stego-Attack (Penyerangan Stego). Pengirim telah menggunakan cover yang sama berulangkali untuk data terselubung. Penyerang memiliki berkas stego yang berasal dari cover file yang sama. Dalam setiap berkas stego tersebut, sebuah pesan berbeda disembunyikan.
  • Cover-Stego-Attack (Penyerangan selubung Stego). Penyerang telah menghalangi berkas stego dan mengetahui cover file mana yang digunakan untuk menghasilkan berkas stego ini. Ini menyediakan sebuah keuntungan melalui penyerangan stego-only untuk si penyerang.
  • Manipulating the stego data (Memanipulasi data stego). Penyerang memiliki kemampuan untuk memanipulasi data stego. Jika penyerang hanya ingin menentukan sebuah pesan disembunyikan dalam berkas stego ini, biasanya ini tidak memberikan sebuah keuntungan, tapi memiliki kemampuan dalam memanipulasi data stego yang berarti bahwa si penyerang mampu memindahkan pesan rahasia dalam data stego (jika ada).
  • Manipulating the cover data (Memanipulasi data terselubung). Penyerang dapat memanipulasi data terselubung dan menghalangi hasil data stego. Ini dapat membuat tugas dalam menentukan apakah data stego berisikan sebuah pesan rahasia lebih mudah bagi si penyerang.

KRIPTOGRAFI


KRIPTOGRAFI


DEFENISI

Cryptography adalah suatu ilmu ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer.
Cryptanalysis adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst.

 

ELEMEN


Proses Enkripsi/Dekripsi


CRYPTOSYSTEM


Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi.

1. Kriptografi dapat memenuhi kebutuhan umum suatu transaksi:

1.      Kerahasiaan (confidentiality) dijamin dengan melakukan enkripsi (penyandian).
2.      Keutuhan (integrity) atas data-data pembayaran dilakukan dengan fungsi hash satu arah.
3.      Jaminan atas identitas dan keabsahan (authenticity) pihak-pihak yang melakukan transaksi dilakukan dengan menggunakan password atau sertifikat digital. Sedangkan keotentikan data transaksi dapat dilakukan dengan tanda tangan digital.
4.      Transaksi dapat dijadikan barang bukti yang tidak bisa disangkal (non-repudiation) dengan memanfaatkan tanda tangan digital dan sertifikat digital.


2. Karakteristik cryptosytem yang baik sebagai berikut :

  1. Keamanan sistem terletak pada kerahasiaan kunci dan bukan pada kerahasiaan algoritma yang digunakan.
  2. Cryptosystem yang baik memiliki ruang kunci (keyspace) yang besar.
  3. Cryptosystem yang baik akan menghasilkan ciphertext yang terlihat acak dalam seluruh tes statistik yang dilakukan terhadapnya.
  4. Cryptosystem yang baik mampu menahan seluruh serangan yang telah dikenal sebelumnya

3. MACAM CRYPTOSYSTEM

A. Symmetric Cryptosystem
Dalam symmetric cryptosystem ini, kunci yang digunakan untuk proses enkripsi dan dekripsi pada prinsipnya identik, tetapi satu buah kunci dapat pula diturunkan dari kunci yang lainnya. Kunci-kunci ini harus dirahasiakan. Oleh karena itulah sistem ini sering disebut sebagai secret-key ciphersystem. Jumlah kunci yang dibutuhkan umumnya adalah :

nC2  = n . (n-1)
          --------
       2
dengan n menyatakan banyaknya pengguna.
Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA.

B. Assymmetric Cryptosystem
Dalam assymmetric cryptosystem ini digunakan dua buah kunci. Satu kunci yang disebut kunci publik (public key) dapat dipublikasikan, sedang kunci yang lain yang disebut kunci privat (private key) harus dirahasiakan. Proses menggunakan sistem ini dapat diterangkan secara sederhana sebagai berikut : bila A ingin mengirimkan pesan kepada B, A dapat menyandikan pesannya dengan menggunakan kunci publik B, dan bila B ingin membaca surat tersebut, ia perlu mendekripsikan surat itu dengan kunci privatnya. Dengan demikian kedua belah pihak dapat menjamin asal surat serta keaslian surat tersebut, karena adanya mekanisme ini. Contoh sistem ini antara lain RSA Scheme dan Merkle-Hellman Scheme.



4. PROTOKOL CRYPTOSYSTEM

Cryptographic protocol adalah suatu protokol yang menggunakan kriptografi. Protokol ini melibatkan sejumlah algoritma kriptografi, namun secara umum tujuan protokol lebih dari sekedar kerahasiaan. Pihak-pihak yang berpartisipasi mungkin saja ingin membagi sebagian rahasianya untuk menghitung sebuah nilai, menghasilkan urutan random, atau pun menandatangani kontrak secara bersamaan.

Penggunaan kriptografi dalam sebuah protokol terutama ditujukan untuk mencegah atau pun mendeteksi adanya eavesdropping dan cheating.


5. JENIS PENYERANGAN PADA PROTOKOL

·         Ciphertext-only attack. Dalam penyerangan ini, seorang cryptanalyst memiliki ciphertext dari sejumlah pesan yang seluruhnya telah dienkripsi menggunakan algoritma yang sama.
·         Known-plaintext attack. Dalam tipe penyerangan ini, cryptanalyst memiliki akses tidak hanya ke ciphertext sejumlah pesan, namun ia juga memiliki plaintext pesan-pesan tersebut.
·         Chosen-plaintext attack. Pada penyerangan ini, cryptanalyst tidak hanya memiliki akses atas ciphertext dan plaintext untuk beberapa pesan, tetapi ia juga dapat memilih plaintext yang dienkripsi.
·         Adaptive-chosen-plaintext attack. Penyerangan tipe ini merupakan suatu kasus khusus chosen-plaintext attack. Cryptanalyst tidak hanya dapat memilih plaintext yang dienkripsi, ia pun memiliki kemampuan untuk memodifikasi pilihan berdasarkan hasil enkripsi sebelumnya. Dalam chosen-plaintext attack, cryptanalyst mungkin hanya dapat memiliki plaintext dalam suatu blok besar untuk dienkripsi; dalam adaptive-chosen-plaintext attack ini ia dapat memilih blok plaintext yang lebih kecil dan kemudian memilih yang lain berdasarkan hasil yang pertama, proses ini dapat dilakukannya terus menerus hingga ia dapat memperoleh seluruh informasi.
·         Chosen-ciphertext attack. Pada tipe ini, cryptanalyst dapat memilih ciphertext yang berbeda untuk didekripsi dan memiliki akses atas plaintext yang didekripsi.
·         Chosen-key attack. Cryptanalyst pada tipe penyerangan ini memiliki pengetahuan tentang hubungan antara kunci-kunci yang berbeda.
·         Rubber-hose cryptanalysis. Pada tipe penyerangan ini, cryptanalyst mengancam, memeras, atau bahkan memaksa seseorang hingga mereka memberikan kuncinya.


6. JENIS PENYERANGAN PADA JALUR KOMUNIKASI

·         Sniffing: secara harafiah berarti mengendus, tentunya dalam hal ini yang diendus adalah pesan (baik yang belum ataupun sudah dienkripsi) dalam suatu saluran komunikasi. Hal ini umum terjadi pada saluran publik yang tidak aman. Sang pengendus dapat merekam pembicaraan yang terjadi.
·         Replay attack [DHMM 96]: Jika seseorang bisa merekam pesan-pesan handshake (persiapan komunikasi), ia mungkin dapat mengulang pesan-pesan yang telah direkamnya untuk menipu salah satu pihak.
·         Spoofing [DHMM 96]: Penyerang – misalnya Maman – bisa menyamar menjadi Anto. Semua orang dibuat percaya bahwa Maman adalah Anto. Penyerang berusaha meyakinkan pihak-pihak lain bahwa tak ada salah dengan komunikasi yang dilakukan, padahal komunikasi itu dilakukan dengan sang penipu/penyerang. Contohnya jika orang memasukkan PIN ke dalam mesin ATM palsu – yang benar-benar dibuat seperti ATM asli – tentu sang penipu bisa mendapatkan PIN-nya dan copy pita magentik kartu ATM milik sang nasabah. Pihak bank tidak tahu bahwa telah terjadi kejahatan.
·         Man-in-the-middle [Schn 96]: Jika spoofing terkadang hanya menipu satu pihak, maka dalam skenario ini, saat Anto hendak berkomunikasi dengan Badu, Maman di mata Anto seolah-olah adalah Badu, dan Maman dapat pula menipu Badu sehingga Maman seolah-olah adalah Anto. Maman dapat berkuasa penuh atas jalur komunikas ini, dan bisa membuat berita fitnah.


METODE CRYPTOGRAFI


1. METODE KUNO

a. 475 S.M. bangsa Sparta, suatu bangsa militer pada jaman Yunani kuno, menggunakan teknik kriptografi yang disebut scytale, untuk kepentingan perang. Scytale terbuat dari tongkat dengan papyrus yang mengelilinginya secara spiral.
Kunci dari scytale adalah diameter tongkat yang digunakan oleh pengirim harus sama dengan diameter tongkat yang dimiliki oleh penerima pesan, sehingga pesan yang disembunyikan dalam papyrus dapat dibaca dan dimengerti oleh penerima.


b. Julius Caesar, seorang kaisar terkenal Romawi yang menaklukkan banyak bangsa di Eropa dan Timur Tengah juga menggunakan suatu teknik kriptografi yang sekarang disebut Caesar cipher untuk berkorespondensi sekitar tahun 60 S.M. Teknik yang digunakan oleh Sang Caesar adalah mensubstitusikan alfabet secara beraturan, yaitu oleh alfabet ketiga yang mengikutinya, misalnya, alfabet ‘’A" digantikan oleh "D", "B" oleh "E", dan seterusnya. Sebagai contoh, suatu pesan berikut :
Gambar 2. Caesar Cipher

Dengan aturan yang dibuat oleh Julius Caesar tersebut, pesan sebenarnya adalah "Penjarakan panglima divisi ke tujuh segera".


2. TEKNIK DASAR KRIPTOGRAFI

a. Substitusi

Salah satu contoh teknik ini adalah Caesar cipher yang telah dicontohkan diatas. 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

Gambar 3. Tabel Substitusi

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 :


BLOK 1
BLOK 2
BLOK 3 BLOK 4 BLOK 5 BLOK 6 BLOK 7
 
 

Gambar 4. Enkripsi dengan Blocking

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.
Untuk contoh diatas, plaintext akan dibagi menjadi blok-blok yang terdiri dari 6 karakter, dengan aturan permutasi sebagai berikut :

Gambar 5. Permutasi

Dengan menggunakan aturan diatas, maka proses enkripsi dengan permutasi dari plaintext adalah sebagai berikut :
Gambar 6. Proses Enkripsi dengan Permutasi

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 :

Gambar 7. Enkripsi dengan Ekspansi

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 :
Gambar 8. Enkripsi dengan Pemampatan

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.


BERBAGAI SOLUSI ENKRIPSI MODERN


  1. Data Encryption Standard (DES)
·         standar bagi USA Government
·         didukung ANSI dan IETF
·         popular  untuk metode secret key
·         terdiri dari : 40-bit, 56-bit dan 3x56-bit (Triple DES)

  1. Advanced Encryption Standard (AES)
·        untuk menggantikan DES (launching akhir 2001)
·        menggunakan variable length block chipper
·        key length : 128-bit, 192-bit, 256-bit
·        dapat diterapkan untuk smart card.

  1. Digital Certificate Server (DCS)
·        verifikasi untuk digital signature
·        autentikasi user
·        menggunakan public dan private key
·        contoh : Netscape Certificate Server

  1. IP Security (IPSec)
·        enkripsi public/private key
·        dirancang oleh CISCO System
·        menggunakan DES 40-bit dan authentication
·        built-in pada produk CISCO
·        solusi tepat untuk Virtual Private Network (VPN) dan Remote Network Access


  1. Kerberos
·        solusi untuk user authentication
·        dapat menangani multiple platform/system
·        free charge (open source)
·        IBM menyediakan versi komersial : Global Sign On (GSO)

  1. Point to point Tunneling Protocol(PPTP), Layer Two Tunneling Protocol (L2TP)
·        dirancang oleh Microsoft
·        autentication berdasarkan PPP(Point to point protocol)
·        enkripsi berdasarkan algoritm Microsoft (tidak terbuka)
·        terintegrasi dengan NOS Microsoft (NT, 2000, XP)

  1. Remote Access Dial-in User Service (RADIUS)
·        multiple remote access device menggunakan 1 database untuk authentication
·        didukung oleh 3com, CISCO, Ascend
·        tidak menggunakan encryption

  1. RSA Encryption
·        dirancang oleh Rivest, Shamir, Adleman tahun 1977
·        standar de facto dalam enkripsi public/private key
·        didukung oleh Microsoft, apple, novell, sun, lotus
·        mendukung proses authentication
·        multi platform

  1. Secure Hash Algoritm (SHA)
·        dirancang oleh National Institute of Standard and Technology (NIST) USA.
·        bagian dari standar DSS(Decision Support System) USA dan bekerja sama dengan DES untuk digital signature.
·        SHA-1 menyediakan 160-bit message digest
·        Versi : SHA-256, SHA-384, SHA-512 (terintegrasi dengan AES)

  1. MD5
·        dirancang oleh Prof. Robert Rivest (RSA, MIT) tahun 1991
·        menghasilkan 128-bit digest.
·        cepat tapi kurang aman

  1. Secure Shell (SSH)
·        digunakan untuk client side authentication antara 2 sistem
·        mendukung UNIX, windows, OS/2
·        melindungi telnet dan ftp (file transfer protocol)

  1. Secure Socket Layer (SSL)
·        dirancang oleh Netscape
·        menyediakan enkripsi RSA pada layes session dari model OSI.
·        independen terhadap servise yang digunakan.
·        melindungi system secure web e-commerce
·        metode public/private key dan dapat melakukan authentication
·        terintegrasi dalam produk browser dan web server Netscape.

  1. Security Token
·        aplikasi penyimpanan password dan data user di smart card

  1. Simple Key Management for Internet Protocol
·        seperti SSL bekerja pada level session model OSI.
·        menghasilkan key yang static, mudah bobol.

APLIKASI ENKRIPSI


Beberapa aplikasi yang memerlukan enkripsi untuk pengamanan data atau komunikasi diantaranya adalah :

a. Jasa telekomunikasi
·         Enkripsi untuk mengamankan informasi konfidensial baik berupa suara, data, maupun gambar yang akan dikirimkan ke lawan bicaranya.
·         Enkripsi pada transfer data untuk keperluan manajemen jaringan dan transfer on-line data billing.
·         Enkripsi untuk menjaga copyright dari informasi yang diberikan.

b. Militer dan pemerintahan
·         Enkripsi diantaranya digunakan dalam pengiriman pesan.
·         Menyimpan data-data rahasia militer dan kenegaraan dalam media penyimpanannya selalu dalam keaadan terenkripsi.

c. Data Perbankan
·         Informasi transfer uang antar bank harus selalu dalam keadaan terenkripsi

d. Data konfidensial perusahaan
·         Rencana strategis, formula-formula produk, database pelanggan/karyawan dan database operasional
·         pusat penyimpanan data perusahaan dapat diakses secara on-line.
·         Teknik enkripsi juga harus diterapkan untuk data konfidensial untuk melindungi data dari pembacaan maupun perubahan secara tidak sah.

e. Pengamanan electronic mail
·         Mengamankan pada saat ditransmisikan maupun dalam media penyimpanan.
·         Aplikasi enkripsi telah dibuat khusus untuk mengamankan e-mail, diantaranya PEM (Privacy Enhanced Mail) dan PGP (Pretty Good Privacy), keduanya berbasis DES dan RSA.

f. Kartu Plastik
·         Enkripsi pada SIM Card, kartu telepon umum, kartu langganan TV kabel, kartu kontrol akses ruangan dan komputer, kartu kredit, kartu ATM, kartu pemeriksaan medis, dll
·         Enkripsi  teknologi penyimpanan data secara magnetic, optik, maupun chip.








Algoritma Kriptografi Substitusi

Pada penyandian substitusi, setiap satu unti plainteks digantikan dengan satu unti cipherteks. Satu unit di sini bisa berarti satu huruf, pasangan huruf, atau kelompok lebih dari 2 huruf. 

Kemudian dalam perkembangannya, dalam metode penyandian substitusi modern, digunakan sebuah program aplikasi tertentu di mana teks asli yang berbentuk kumpulan karakter dalam sebuah file digital diganti dengan kumpulan karakter lain secara digital pula sehingga menghasilkan file sandi yang siap dikomunikasikan. 

Untuk membaca teks aslinya kembali dari teks sandi, cukup dengan membalik prosesnya. Metode penyandian substitusi sederhana ini termasuk dalam kriptografi klasik. Metode ini dilakukan dengan mengganti setiap huruf dari teks asli dengan huruf lain sebagai huruf sandi yang telah didefinisikan sebelumnya oleh algoritma kunci. 

Dalam metode penyandian substitusi sederhana, deretan alfabetiknya bisa berupa deretan dari A sampai Z yang disebut deret langsung, ataupun kebalikannya dari Z ke A yang disebut deret inversi (kebalikan), namun dapat pula berupa deretan acak berkunci ataupun tidak berkunci. 

Untuk memudahkan dalam mengoperasikan penyandiannya, deretan huruf tersebut dapat dibuatkan kedalam sebuah tabel, ataupun dengan matematika aljabar modulus 26, tergantung algoritma kunci yang ditentukan. 

Huruf asli : ABCDEFGHIJKLMNOPQRSTUVWXYZ 
Huruf sebagai kunci sandi : 
1. Deret langsung : MNOPQRSTUVWXYZABCDEF GHIJKL 
2. Deret inversi : FEDCBAZYXWVUTSRQPONM LKJIHG 
3. Deret acak tidak berkunci : QPALZMOWKSN XIEJDBCVFHRUYTG 
4. Deret acak berkunci (BATIK TULIS) : BATIKUL SCDEFGHJMNOPQRVWXYZ 
5. Deret acak berkunci inversi (WAYANG GOLEK) : ZXVUTSRQPMJIHFDCBKELOGNYAW

Untuk mempermudah pemahaman dapat diperhatikan contoh berikut : 
Teks asli : SEMUA HAL BESAR DIAWALI DARI SEBUAH IMPIAN 

Algoritma : Deret inversi dengan kunci A = F  
Hasil teks sandi : NBTLF YFU EBNFO CXFJFUX CFOX NBELFY XTQXFS 
Algoritma : Deret acak berkunci (BATIK TULIS) 
Hasil teks sandi : PKGRB SBF AKPBO ICBWBFC IBOC PKARBS CGMCBH 

Jika plainteks dilihat sebagai sebuah urutan angka biner, maka substitusi dilakukan dengan menukar patern bit plainteks dengan patern bit chiperteks.