Cryptography adalah teknik penyandian yang sudah dilakukan dari zaman dulu, Julius Caesar salah satu pengguna cryptography pada zaman dulu dimana dia menggunakan teknik ini untuk menyampaikan pesan agar musuh tidak mengetahui isi asli dari pesannya.
Ada dua jenis cryptography, yaitu:
1. Enkripsi:
a. Mengamankan data dengan mengacak data sehingga sulit untuk dibaca
b. Memastikan tidak ada perubahan data
c. Memastikan identitas seseorang sebagai pengguna atau pemilik yang sah
2. Dekripsi:
mengembalikan sandi-sandi atau data yang teracak menjadi pesan yang sebenarnya.
Komponen cryptography yaitu:
1. Plain text, adalah sumber berita atau pesan atau teks aslinya
2. Cipher text, adalah teks yang sudah diproses (diacak)
3. Algoritma dan text
Rumus untuk enkripsi dan dekripsi adalah:
1. Enkripsi
C = Ek (P)
2. Dekripsi
P = Dk (P)
Ket:
C = Cipher Text
P = Plain Text
E = fungsi enkripsi
D = fungsi dekripsi
k = kunci
Metode yang terdapat dalam cryptography, yaitu:
1. Substitusi
mengganti karakter dengan karakter yang lain berdasarkan kunci tertentu.
2. Transposisi
merubah susunan karakter dengan menggunakan algoritma dan kunci tertentu.
Ada tiga jenis cryptography yang akan dibahas, yaitu:
1. Caesar Cipher
Cara ini menggunakan kunci angka untuk melakukan penyandian.
Contohnya:
a. Buatlah nilai dari Abjad A - Z dimulai dari A = 0 sampai Z = 25 seperti ini
b. Sebuah kata untuk kita enkripsi (COBA)
c. Kemudian tentukan kunci yang diinginkan untuk melakukan enkripsi dan dekripsi (misal: k = 3)
d. Sebagai contoh rumus, untuk huruf "C" dari "COBA" adalah:
C = (2+3) mod 26
C = 5
Sehingga hasil dari enkripsi "COBA" adalah:
*mod 26 didapatkan dari total huruf A - Z
Dan hasil dekripsinya:
C = (5-3) mod 26
C = 2
2. Monoalphabetic Cipher
Teknik ini menggunakan huruf sebagai kunci untuk melakukan penyandian.
Contohnya:
a. Buatlah nilai dari Abjad A - Z dimulai dari A = 0 sampai Z = 25 seperti ini
b. Sebuah kata untuk kita enkripsi (CONTOH)
c. Kemudian tentukan kunci yang diinginkan untuk melakukan enkripsi dan dekripsi (misal: k = DICOBA)
Semakin panjang jumlah karakter kunci dan kurang huruf yang kembar semakin bagus.
d. Hasil enkripsinya:
*huruf kunci tidak boleh kembar
e. Hasil dekripsinya:
3. Polyalphabetic Cipher
Teknik ini mirip dengan teknik Caesar tetapi lebih rumit karena menggunakan kunci huruf juga.
Contohnya:
a. Buatlah nilai dari Abjad A - Z dimulai dari A = 0 sampai Z = 25 seperti ini
b. Sebuah kata untuk kita enkripsi (PERCOBAAN)
c. Kemudian tentukan kuncinya (misal: k = MAKANAN)
d. Kemudian urutkan tabelnya menjadi:
*kuncinya berulang-ulang dituliskan hingga mencukupi total karakter dari sandi, sedangkan monoalphabetic menuliskan kata kunci satu kali, tidak berulang dan tidak ada huruf yang sama
e. Sehingga hasil enkripsinya menjadi:
Perhitungannya dilakukan dengan menambahkan angka dari "P" dan "M" lalu mod 26 sehingga mendapatkan "B", begitu seterusnya sampai huruf "N" dari "PERCOBAAN"
f. untuk dekripsinya:
Perhitungan dilakukan dengan mengurangi angka dari "B" dan "M" lalu mod 26 sehingga mendapatkan "P". Jika hasil pengurangan minus (-) maka untuk lebih mudah mendapatkan hasilnya cukup menambahkan hasil pengurangan dengan mod.
Contohnya: M = 12 ; B = 1, hasil pengurangan = -11 ; ditambahkan mod = -11 + 26 = 15 atau P
Demikian pembahasan mengenai beberapa teknik cryptography, semoga dapat memberi manfaat bagi para pembaca sekalian. Mohon maaf apabila terdapat kesalahan penjelasan dalam tulisan ini.
Senin, 24 Juni 2013
E-Mail Security
Setelah postingan sebelumnya membahas tentang web atau www security, kali ini akan dibahas mengenai masalah keamanan dari sisi surat elektronik atau E-Mail. Tetapi sebelum membahas masalahnya apa saja, ada baiknya kita ketahui dulu sistem E-Mail itu seperti apa.
Ada dua bagian pada sistem E-Mail, yaitu:
1) Mail User Agent (MUA)
MUA ini merupakan fasilitas E-Mail yang berhubungan dengan user untuk menulis, mengirim, membaca, serta menyimpan E-Mail.
Contohnya: Eudora, Pegasus, Hotmail, Gmail, Ymail, Yahoo, dsb.
2) Mail Transfer Agent (MTA)
Sedangkan MTA merupakan server yang bertugas mengirim, meneruskan dan menerima E-Mail
Jadi, secara deskriptif cara kerja dari sistem E-Mail kurang lebih seperti ini:
Andaikan saja kita menggunakan www.yahoo.com sebagai sarana kita untuk melakukan E-Mail pada suatu pihak. Tampilan yang kita lihat pada web browser itu merupakan MUA (Mail User Agent) dimana biasanya terdiri dari bagian-bagian seperti: "Kepada", "CC", "Judul", "Lampiran", "Emotikon", "Format" dan sebuah area text untuk menuliskan isi dari E-Mail kita.
Setelah menuliskan dan merangkaikan pesan sesuai keinginan, selanjutnya dikirimkan ke pihak yang dituju. Disinilah MTA (Mail Transfer Agent) menjalankan tugasnya, ketika kita menekan tombol kirim maka MTA akan mencari ke seluruh dunia alamat yang anda tuju tersebut.
Misalkan E-Mail kita menggunakan dicoba@yahoo.com dan yang dituju menggunakan testing@hotmail.com, maka MTA akan mencari kelompok MTA yang menggunakan @hotmail.com kemudian mencari nama E-Mail yang kita tuju, dalam konteks ini "testing" (dari testing@hotmail.com) dan jika ditemukan maka pesan ditampilkan ke pihak yang dimaksud, tetapi jika tidak ditemukan maka akan kembali kepada pihak pengirim dan memberitahukan "alamat email yang dimaksud tidak ditemukan" atau semacamnya.
Kira-kira seperti itulah cara kerja E-Mail secara singkat dijelaskan disini, selanjutnya mengenai struktur E-Mail. Struktur dari E-Mail hanya terbagi atas dua, yaitu:
1) Header E-Mail
a) Berisi informasi tentang pengirim dan tujuan atau penerima E-Mail
b) Berisi informasi dari setiap MTA yang dilalui saat pengiriman
Header E-Mail dapat dilihat melalui tombol "Tindakan" dan memilih "Lihat Header lengkap"
2) Body E-Mail
Berisi pesan atau isi E-Mail yang ditulis oleh pengirim
Berikut masalah-masalah keamanan yang dapat terjadi pada E-Mail, yaitu:
1) Penyadapan
adalah masalah yang mengakibatkan adanya kemungkinan kebocoran informasi dan diketahui oleh pihak ketiga. Proteksi terhadap masalah ini
bisa dengan enkripsi isi E-Mail.
2) Pemalsuan
adalah masalah keaslian atau otentikasi. Proteksi terhadap masalah ini bisa dengan menggunakan digital signature atau tanda tangan
digital
3) Penyusupan virus
adalah masalah yang dapat mengakibatkan kinerja komputer menjadi tidak normal. Proteksi awal terhadap masalah ini hanya bisa dari pihak
pengguna, dimana pengguna harus selalu waspada terhadap E-Mail yang tidak dikenali.
4) Spamming
adalah masalah yang dapat mengakibatkan pihak korban menerima E-Mail dari pihak tertentu secara kontinu. Proteksi untuk masalah ini bisa
dengan menggunakan anti-spam seperti SpamAssassin misalnya, atau melaporkan E-Mail yang dianggap sebagai spam. Dengan melaporkan E-Mail
yang dianggap spam, maka sistem E-Mail akan semakin "pintar" memilah E-Mail yang masuk ke alamat kita.
5) Mail Bomb
adalah jenis masalah yang mengirimkan banyak E-Mail kepada suatu pihak. Proteksinya bisa dengan membatasi ukuran E-Mail, Kuota disk atau
bisa dengan menggunakan filter khusus yang mendeteksi duplikasi isi E-Mail.
6) Mail Relay
adalah jenis masalah yang mengirimkan E-Mail kepada suatu pihak tetapi dengan menggunakan server orang lain. Proteksi yang dapat
dilakukan yaitu dengan tidak menjalankan Open Relay.
Ada dua bagian pada sistem E-Mail, yaitu:
1) Mail User Agent (MUA)
MUA ini merupakan fasilitas E-Mail yang berhubungan dengan user untuk menulis, mengirim, membaca, serta menyimpan E-Mail.
Contohnya: Eudora, Pegasus, Hotmail, Gmail, Ymail, Yahoo, dsb.
2) Mail Transfer Agent (MTA)
Sedangkan MTA merupakan server yang bertugas mengirim, meneruskan dan menerima E-Mail
Jadi, secara deskriptif cara kerja dari sistem E-Mail kurang lebih seperti ini:
Andaikan saja kita menggunakan www.yahoo.com sebagai sarana kita untuk melakukan E-Mail pada suatu pihak. Tampilan yang kita lihat pada web browser itu merupakan MUA (Mail User Agent) dimana biasanya terdiri dari bagian-bagian seperti: "Kepada", "CC", "Judul", "Lampiran", "Emotikon", "Format" dan sebuah area text untuk menuliskan isi dari E-Mail kita.
Setelah menuliskan dan merangkaikan pesan sesuai keinginan, selanjutnya dikirimkan ke pihak yang dituju. Disinilah MTA (Mail Transfer Agent) menjalankan tugasnya, ketika kita menekan tombol kirim maka MTA akan mencari ke seluruh dunia alamat yang anda tuju tersebut.
Misalkan E-Mail kita menggunakan dicoba@yahoo.com dan yang dituju menggunakan testing@hotmail.com, maka MTA akan mencari kelompok MTA yang menggunakan @hotmail.com kemudian mencari nama E-Mail yang kita tuju, dalam konteks ini "testing" (dari testing@hotmail.com) dan jika ditemukan maka pesan ditampilkan ke pihak yang dimaksud, tetapi jika tidak ditemukan maka akan kembali kepada pihak pengirim dan memberitahukan "alamat email yang dimaksud tidak ditemukan" atau semacamnya.
Kira-kira seperti itulah cara kerja E-Mail secara singkat dijelaskan disini, selanjutnya mengenai struktur E-Mail. Struktur dari E-Mail hanya terbagi atas dua, yaitu:
1) Header E-Mail
a) Berisi informasi tentang pengirim dan tujuan atau penerima E-Mail
b) Berisi informasi dari setiap MTA yang dilalui saat pengiriman
Header E-Mail dapat dilihat melalui tombol "Tindakan" dan memilih "Lihat Header lengkap"
2) Body E-Mail
Berisi pesan atau isi E-Mail yang ditulis oleh pengirim
Berikut masalah-masalah keamanan yang dapat terjadi pada E-Mail, yaitu:
1) Penyadapan
adalah masalah yang mengakibatkan adanya kemungkinan kebocoran informasi dan diketahui oleh pihak ketiga. Proteksi terhadap masalah ini
bisa dengan enkripsi isi E-Mail.
2) Pemalsuan
adalah masalah keaslian atau otentikasi. Proteksi terhadap masalah ini bisa dengan menggunakan digital signature atau tanda tangan
digital
3) Penyusupan virus
adalah masalah yang dapat mengakibatkan kinerja komputer menjadi tidak normal. Proteksi awal terhadap masalah ini hanya bisa dari pihak
pengguna, dimana pengguna harus selalu waspada terhadap E-Mail yang tidak dikenali.
4) Spamming
adalah masalah yang dapat mengakibatkan pihak korban menerima E-Mail dari pihak tertentu secara kontinu. Proteksi untuk masalah ini bisa
dengan menggunakan anti-spam seperti SpamAssassin misalnya, atau melaporkan E-Mail yang dianggap sebagai spam. Dengan melaporkan E-Mail
yang dianggap spam, maka sistem E-Mail akan semakin "pintar" memilah E-Mail yang masuk ke alamat kita.
5) Mail Bomb
adalah jenis masalah yang mengirimkan banyak E-Mail kepada suatu pihak. Proteksinya bisa dengan membatasi ukuran E-Mail, Kuota disk atau
bisa dengan menggunakan filter khusus yang mendeteksi duplikasi isi E-Mail.
6) Mail Relay
adalah jenis masalah yang mengirimkan E-Mail kepada suatu pihak tetapi dengan menggunakan server orang lain. Proteksi yang dapat
dilakukan yaitu dengan tidak menjalankan Open Relay.
WWW Security
Di era modern seperti saat ini, kebutuhan akan internet sangat tinggi dan ketersediaan layanan internet pun beragam, bisa menggunakan Handphone, USB Modem, ataupun menyambungkan kabel telepon rumah dengan modem.
Informasi pun kini sudah bukan menjadi masalah untuk mendapatkannya, karena setiap orang yang memiliki akses ke internet dapat melakukan browsing atau pencarian informasi yang ingin didapatkan cukup dengan hanya mengetikkan kata-kata yang berkaitan dengan informasi yang diinginkan, contohnya pada google.com kita dapat mencari mulai dari musik, pengetahuan, E-Book, atau bahkan mencari informasi yang berkaitan dengan barang yang akan dibeli.
Akan tetapi, sama seperti hal lainnya dalam dunia nyata terkait masalah keamanan, tentu saja dunia web pun tak lepas dari masalah-masalah keamanan. Tetapi sebelum membahas masalah-masalah keamanan apa saja yang dapat terjadi dalam dunia web, mari kita lihat terlebih dahulu sarana yang dibutuhkan untuk dapat menjelajahi web.
Diantara sekian banyak browser (software untuk melakukan penjelajahan dalam dunia web) seperti Internet Explorer atau yang biasa disingkat dengan IE, Firefox, Netscape, Safari, Opera, Galeon, Arena, Amaya, Lynx, K-Meleon, dan sebagainya merupakan software yang wajib dimiliki untuk melakukan browsing.
Tidak hanya pada PC saja terdapat aplikasi, pada web pun terdapat aplikasi yang ada pada PC, seperti Microsoft Office Word misalnya. Adapun kelebihan aplikasi yang tersedia pada web, seperti memungkinkan untuk mengimplementasikan sistem secara tersentralisasi.
Yang dimaksud implementasi sistem secara tersentralisasi disini adalah:
1) Dari pihak client hanya membutuhkan web browser, jadi pihak client tidak perlu menginstal softwarenya terlebih dahulu untuk dapat digunakan karena sudah tersedia dari pusat dan platform aplikasinya adalah web browser client.
2) Update software bisa dilakukan hanya pada server saja, karena pihak client yang menggunakan aplikasi web hanya memuat apa yang ada pada server jadi tidak perlu ada update dari pihak client.
3) Atau jika ada konten yang tidak dapat dimuat oleh pihak client, dapat ditambahkan "plugin" pada browser untuk menambahkan fitur seperti animasi, streaming, audio dan video.
Dan juga pada saat sekarang sudah banyak bermunculan aplikasi-aplikasi yang menggunakan basis web sehingga lebih memudahkan para pengguna yang tidak ingin berlama-lama dengan instalasi aplikasi sebelum menggunakannya, meskipun ada aplikasi yang portable atau dapat langsung digunakan tanpa instalasi tetapi tetap membutuhkan waktu untuk mendownloadnya.
Ada juga pengguna-pengguna dan pemilik web yang memiliki asumsi yang beresiko:
1) Dari asumsi pengguna:
a) Server dimiliki dan dikendalikan oleh organisasi yang mengaku memiliki server tersebut
b) Dokumen yang ditampilkan bebas dari virus atau itikad jahat lainnya
c) Server tidak mencatat atau mendistribusikan informasi tentang user (misalnya kebiasaan browsing)
2) Dari asumsi webmaster atau pemilik web:
a) Pengguna tidak beritikad untuk merusak web server atau mengubah isinya
b) Pengguna hanya mengakses dokumen-dokumen yang diperkenankan diakses
c) Identitas pengguna benar
3) Dari asumsi kedua pihak:
a) Network dan komputer bebas dari penyadapan pihak ketiga
b) Informasi yang disampaikan dari server ke pengguna (dan sebaliknya) terjamin keutuhannya dan tidak dimodifikasi oleh pihak ketiga
Dari semua asumsi-asumsi diatas, dapat disimpulkan bahwa dari asumsi pengguna jangan terlalu percaya terhadap konten web yang ditampilkan karena belum tentu itu adalah konten yang benar, bisa saja sudah terkena eksploitasi atau sudah terjangkiti virus. Sedangkan dari asumsi pemilik web perlu diingat tidak semua pengunjung itu baik dan jujur, bisa saja tujuannya mengunjungi web anda untuk merusak. Serta kedua pihak harus selalu berhati-hati karena belum tentu data yang mengalir tidak disadap atau dimodifikasi oleh pihak luar atau pihak ketiga.
Berikut kemungkinan-kemungkinan eksploitasi pada web:
1) Tampilan web diubah (deface)
2) Beberapa cara untuk mengubah data di server:
a) Masuk ke server dan mengubah secara manual
b) Mengubah data melalui CGI
c) Mengubah data di database, misalnya dengan SQL injection
3) Kebocoran informasi
4) Penyadapan informasi
5) DOS attack
Informasi pun kini sudah bukan menjadi masalah untuk mendapatkannya, karena setiap orang yang memiliki akses ke internet dapat melakukan browsing atau pencarian informasi yang ingin didapatkan cukup dengan hanya mengetikkan kata-kata yang berkaitan dengan informasi yang diinginkan, contohnya pada google.com kita dapat mencari mulai dari musik, pengetahuan, E-Book, atau bahkan mencari informasi yang berkaitan dengan barang yang akan dibeli.
Akan tetapi, sama seperti hal lainnya dalam dunia nyata terkait masalah keamanan, tentu saja dunia web pun tak lepas dari masalah-masalah keamanan. Tetapi sebelum membahas masalah-masalah keamanan apa saja yang dapat terjadi dalam dunia web, mari kita lihat terlebih dahulu sarana yang dibutuhkan untuk dapat menjelajahi web.
Diantara sekian banyak browser (software untuk melakukan penjelajahan dalam dunia web) seperti Internet Explorer atau yang biasa disingkat dengan IE, Firefox, Netscape, Safari, Opera, Galeon, Arena, Amaya, Lynx, K-Meleon, dan sebagainya merupakan software yang wajib dimiliki untuk melakukan browsing.
Tidak hanya pada PC saja terdapat aplikasi, pada web pun terdapat aplikasi yang ada pada PC, seperti Microsoft Office Word misalnya. Adapun kelebihan aplikasi yang tersedia pada web, seperti memungkinkan untuk mengimplementasikan sistem secara tersentralisasi.
Yang dimaksud implementasi sistem secara tersentralisasi disini adalah:
1) Dari pihak client hanya membutuhkan web browser, jadi pihak client tidak perlu menginstal softwarenya terlebih dahulu untuk dapat digunakan karena sudah tersedia dari pusat dan platform aplikasinya adalah web browser client.
2) Update software bisa dilakukan hanya pada server saja, karena pihak client yang menggunakan aplikasi web hanya memuat apa yang ada pada server jadi tidak perlu ada update dari pihak client.
3) Atau jika ada konten yang tidak dapat dimuat oleh pihak client, dapat ditambahkan "plugin" pada browser untuk menambahkan fitur seperti animasi, streaming, audio dan video.
Dan juga pada saat sekarang sudah banyak bermunculan aplikasi-aplikasi yang menggunakan basis web sehingga lebih memudahkan para pengguna yang tidak ingin berlama-lama dengan instalasi aplikasi sebelum menggunakannya, meskipun ada aplikasi yang portable atau dapat langsung digunakan tanpa instalasi tetapi tetap membutuhkan waktu untuk mendownloadnya.
Ada juga pengguna-pengguna dan pemilik web yang memiliki asumsi yang beresiko:
1) Dari asumsi pengguna:
a) Server dimiliki dan dikendalikan oleh organisasi yang mengaku memiliki server tersebut
b) Dokumen yang ditampilkan bebas dari virus atau itikad jahat lainnya
c) Server tidak mencatat atau mendistribusikan informasi tentang user (misalnya kebiasaan browsing)
2) Dari asumsi webmaster atau pemilik web:
a) Pengguna tidak beritikad untuk merusak web server atau mengubah isinya
b) Pengguna hanya mengakses dokumen-dokumen yang diperkenankan diakses
c) Identitas pengguna benar
3) Dari asumsi kedua pihak:
a) Network dan komputer bebas dari penyadapan pihak ketiga
b) Informasi yang disampaikan dari server ke pengguna (dan sebaliknya) terjamin keutuhannya dan tidak dimodifikasi oleh pihak ketiga
Dari semua asumsi-asumsi diatas, dapat disimpulkan bahwa dari asumsi pengguna jangan terlalu percaya terhadap konten web yang ditampilkan karena belum tentu itu adalah konten yang benar, bisa saja sudah terkena eksploitasi atau sudah terjangkiti virus. Sedangkan dari asumsi pemilik web perlu diingat tidak semua pengunjung itu baik dan jujur, bisa saja tujuannya mengunjungi web anda untuk merusak. Serta kedua pihak harus selalu berhati-hati karena belum tentu data yang mengalir tidak disadap atau dimodifikasi oleh pihak luar atau pihak ketiga.
Berikut kemungkinan-kemungkinan eksploitasi pada web:
1) Tampilan web diubah (deface)
2) Beberapa cara untuk mengubah data di server:
a) Masuk ke server dan mengubah secara manual
b) Mengubah data melalui CGI
c) Mengubah data di database, misalnya dengan SQL injection
3) Kebocoran informasi
4) Penyadapan informasi
5) DOS attack
Langganan:
Postingan (Atom)







