SEJARAH ENKRIPSI
Enkripsi dilaporkan sudah ada sejak zaman dahulu, dimana jenderal-jenderal bangsa Sparta menulis pesan-pesan mereka pada perkamen yang dililitkan pada sebuah silinder yang tipis. Pada saat abad ke 5 SM, seorang berbangsa Yunani yang bekerja pada kerajaan Persia mengirim sebuah pesan ke Yunani agar melakukan pembunuhan. Pesannya dikirim dengan cara men-tatonya pada kepala budaknya yang dipercaya. Ketika rambut pada kepala budak itu tumbuh kembali, tidak ada indikasi bahwa sebuah pesan telah dibawa. Metoda-metode jenis ini terus digunakan sampai Perang Dunia I, ketika agen-agen dikirim melewati garis pertahanan musuh dengan pesan-pesan ditulis pada kulit mereka dengan tinta yang tak kelihatan.
Enkripsi adalah sebuah proses yang melakukan perubahan sebuah kode dari yang bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti (tidak terbaca). Enkripsi dapat diartikan sebagai kode atau chiper. Sebuah sistem pengkodean menggunakan suatu tabel atau kamus yang telah didefinisikan untuk mengganti kata dari informasi atau yang merupakan bagian dari informasi yang dikirim. Sebuah chiper menggunakan suatu algoritma yang dapat mengkodekan semua aliran data (stream) bit dari sebuah pesan menjadi cryptogram yang tidak dimengerti (unitelligible). Karena teknik cipher merupakan suatu sistem yang telah siap untuk di automasi, maka teknik ini digunakan dalam sistem keamanan komputer dan network. Bangsa Yunani juga melakukan cipher pertama yang tercatat dalam sejarah dengan menggunakan subsitusi numerik. Cipher ini biasanya dioperasikan dengan menulis huruf alfabet pada sebuah grid dan kemudian menggunakan koordinat grid untuk menukar setiap huruf pada sebuah pesan.
SEND REINFORCEMENTS TO ITHACA
34 51 33 41 24 51 42 33 12 43 24 31 51 23 51 33 44 34 44 43 42 44 32 11 31 11
Cipher bisa dengan mudah diubah dengan mengganti pola dari huruf-huruf pada tabel di atas. Julius Caesar juga menggunakan cipher subsitusi yang sederhana, menggunakan huruf alfabet yang biasa, tetapi mengganti satu huruf dengan yang lain. Pada sistem ini, Caesar menulis D mengganti A dan E mengganti B.Sistem enkripsi juga membutuhkan sebuah algoritma, yang mengatur proses yang digunakan untuk mengenkripsi pesan. Ada beberapa algoritma yang tersedia untuk enkripsi, beberapa diantaranya dirahasiakan oleh pengembangnya dan beberapa dibuat terbuka buat umum. Pada awal tahun 1970an, algoritma Data Encryption Standard diperkenalkan, yang menggunakan key 56 bit untuk mengenkripsi dan mendekripsikan informasi. DES membagi setiap pesan dalam blok-blok dan meng-encode setiap blok satu pada setiap waktu. DES diadopsi sebagai algoritma yang diakui untuk penggunaan US Federal, tetapi tidak lagi dianggap cukup aman karena sebuah key 56-bit bisa dibuka secara paksa dalam waktu yang relatif cepat. DES kemudian diganti oleh Advanced Encryption Standard (AES), menggunakan algoritma Rijndael. AES beroperasi dengan key 128,192, atau 256 bit. Pada skema kriptografi public key, setiap pemakai mempunyai satu pasang key : satu private dan satu lagi public. Public key tidak bersifat rahasia biasanya disediakan kepada semua orang yang ingin mengirim sebuah pesan yang terenkripsi kepada pemilik key. Pengirim menggunakan public key untuk mengenkripsi sebuah pesan dan penerima (pemilik kedua key) kemudian menggunakan private key untuk mendekripsi pesan yang masuk. Hanya private key yang cocok yang bisa membuka pesan yang diamankan dengan public key.
Ilmu yang mempelajari teknik enkripsi disebut kriptografi. Gambaran sederhana tentang enkripsi, misalnya mengganti huruf a dengan n, b dengan m dan seterusnya. Model penggantian huruf sebagai bentuk enkripsi sederhana ini sekarang tidak dipergunakan secara serius dalam penyembunyian data. ROT-13 adalah program yang masih suka dipergunakan. Intinya adalah mengubah huruf menjadi 23 huruf didepannya. Misalnya b menjadi o dan seterusnya. Pembahasan enkripsi akan terfokus pada enkripsi password dan enkripsi komunikasi data.
Kriptografi
Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita (Bruce Schneier – Applied Cryptography). Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data (A. Menezes, P. van Oorschot andS. Vanstone – Handbook of Applied Cryptography). Tidak semua aspek keamanan informasi ditangani oleh kriptografi.
Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita (Bruce Schneier – Applied Cryptography). Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data (A. Menezes, P. van Oorschot and
- 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 nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat
ELEMEN
CRYPTOSYSTEM
Cryptographic system atau Cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pen-cipher-an tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi.
Cryptographic system atau Cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pen-cipher-an tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi.
Karakteristik Cryptosystem yang baik:
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.
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.
MACAM CRYPTOSYS
1.SYMETRIC CRYPTOSYSTEMINI
Dalam Symmetric Cryptosystemini, 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: dengan n menyatakan banyaknya pengguna.Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA.
Dalam Symmetric Cryptosystemini, 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: dengan n menyatakan banyaknya pengguna.Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA.
2.Asymmetric Cryptosystem
Dalam Asymmetric 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 membacasurat 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.
Dalam Asymmetric 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
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, ataupun menandatangani kontrak secara bersamaan.
Penggunaan kriptografi dalam sebuah protokol terutama ditujukan untuk mencegah ataupun mendeteksi adanya eavesdropping dan cheating.
METODE KUNO
a. 475 S.M. bangsa
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.Dengan aturan yang dibuat oleh Julius Caesar tersebut, pesan sebenarnya adalah “Penjarakan panglima divisi ke tujuh segera”.
TEKNIK DASAR KRIPTOGRAFI
a. SubstitusiSalah 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
b. BlockingB-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
Sistem enkripsi terkadang membagi plaintext menjadi blok-blok yang terdiri dari beberapa karakter yang kemudian dienkripsikan secara independent. 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 ciphertext-nya adalah hasil pembacaan secara vertikal.
Berikut ada beberapa macam metode enkripsi yang dapat anda digunakan pada pemrograman website seperti PHP, ASP dan yang lainnya.
1.Metode Enkripsi MD2
Message-Digest algortihm 2 (MD2) adalah fungsi hash cryptographic yang dikembangkan oleh Ronald Rivest pada tahun 1989.Algoritma dioptimalkan untuk komputer 8-bit. MD2 yang ditetapkan dalam RFC 1319.Meskipun algoritma lainnya telah diusulkan sejak dulu, seperti MD4, MD5 dan SHA, bahkan sampai dengan 2004 [update] MD2 tetap digunakan dalam infrastruktur kunci publik sebagai bagian dari sertifikat yang dihasilkan dengan MD2 dan RSA.
2. Metode Enkripsi MD42.
Message-Digest algortihm 4(seri ke-4) yang dirancang oleh Profesor Ronald Rivest dari MIT pada tahun 1990.Panjangnya adalah 128 bit.MD4 juga digunakan untuk menghitung NT-hash ringkasan password pada Microsoft Windows NT, XP dan Vista.
3. Metode Enkripsi MD5
MD5 adalah salah satu dari serangkaian algortima message digest yang didesain oleh Profesor Ronald Rivest dari MIT (Rivest, 1994).Saat kerja analitik menunjukkan bahwa pendahulu MD5 yaitu MD4 mulai tidak aman, MD5 kemudian didesain pada tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans Dobbertin).Dalam kriptografi, MD5 (Message-Digest algortihm 5) ialah fungsi hash kriptografik yang digunakan secara luas dengan hash value 128-bit.Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah file.
4. Metode Enkripsi SHA
SHA adalah serangkaian fungsi cryptographic hash yang dirancang oleh National Security Agency (NSA) dan diterbitkan oleh NIST sebagai US Federal Information Processing Standard.SHA adalah Secure Hash Algoritma. Jenis-jenis SHA yaitu SHA-0, SHA-1, dan SHA-2.Untuk SHA-2 menggunakan algoritma yang identik dengan ringkasan ukuran variabel yang terkenal sebagai SHA-224, SHA-256, SHA-384, dan SHA-512.
5. Metode Enkripsi RC4
RC4 merupakan salah satu jenis stream cipher, yaitu memproses unit atau input data pada satu saat. Unit atau data pada umumnya sebuah byte atau bahkan kadang kadang bit (byte dalam hal RC4).Dengan cara ini enkripsi atau dekripsi dapat dilaksanakan pada panjang yang variabel.RC4 adalah penyandian stream cipher yang dibuat oleh Ron Riverst pada tahun 1987 untuk pengamanan RSA.Algoritmanya didasarkan pada permutasi acak.
6. Metode Enkripsi Base64
Base64 adalah sistem untuk mewakili data mentah byte sebagai karakter ASCII.
Base64 menyediakan 6-bit encoding 8-bit ASCII karakter.Base64 merupakan format yang dicetak menggunakan karakter, memungkinkan binari data yang akan dikirim dalam bentuk dan email, dan akan disimpan di database atau file.
Message-Digest algortihm 2 (MD2) adalah fungsi hash cryptographic yang dikembangkan oleh Ronald Rivest pada tahun 1989.Algoritma dioptimalkan untuk komputer 8-bit. MD2 yang ditetapkan dalam RFC 1319.Meskipun algoritma lainnya telah diusulkan sejak dulu, seperti MD4, MD5 dan SHA, bahkan sampai dengan 2004 [update] MD2 tetap digunakan dalam infrastruktur kunci publik sebagai bagian dari sertifikat yang dihasilkan dengan MD2 dan RSA.
2. Metode Enkripsi MD42.
Message-Digest algortihm 4(seri ke-4) yang dirancang oleh Profesor Ronald Rivest dari MIT pada tahun 1990.Panjangnya adalah 128 bit.MD4 juga digunakan untuk menghitung NT-hash ringkasan password pada Microsoft Windows NT, XP dan Vista.
3. Metode Enkripsi MD5
MD5 adalah salah satu dari serangkaian algortima message digest yang didesain oleh Profesor Ronald Rivest dari MIT (Rivest, 1994).Saat kerja analitik menunjukkan bahwa pendahulu MD5 yaitu MD4 mulai tidak aman, MD5 kemudian didesain pada tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans Dobbertin).Dalam kriptografi, MD5 (Message-Digest algortihm 5) ialah fungsi hash kriptografik yang digunakan secara luas dengan hash value 128-bit.Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah file.
4. Metode Enkripsi SHA
SHA adalah serangkaian fungsi cryptographic hash yang dirancang oleh National Security Agency (NSA) dan diterbitkan oleh NIST sebagai US Federal Information Processing Standard.SHA adalah Secure Hash Algoritma. Jenis-jenis SHA yaitu SHA-0, SHA-1, dan SHA-2.Untuk SHA-2 menggunakan algoritma yang identik dengan ringkasan ukuran variabel yang terkenal sebagai SHA-224, SHA-256, SHA-384, dan SHA-512.
5. Metode Enkripsi RC4
RC4 merupakan salah satu jenis stream cipher, yaitu memproses unit atau input data pada satu saat. Unit atau data pada umumnya sebuah byte atau bahkan kadang kadang bit (byte dalam hal RC4).Dengan cara ini enkripsi atau dekripsi dapat dilaksanakan pada panjang yang variabel.RC4 adalah penyandian stream cipher yang dibuat oleh Ron Riverst pada tahun 1987 untuk pengamanan RSA.Algoritmanya didasarkan pada permutasi acak.
6. Metode Enkripsi Base64
Base64 adalah sistem untuk mewakili data mentah byte sebagai karakter ASCII.
Base64 menyediakan 6-bit encoding 8-bit ASCII karakter.Base64 merupakan format yang dicetak menggunakan karakter, memungkinkan binari data yang akan dikirim dalam bentuk dan email, dan akan disimpan di database atau file.
Sumber :
http://www.klik-kanan.com/fokus/enkripsi1.shtml
http://kambing.ui.ac.id/bebas/v01/DLL/ServerLinux/node165.html
http://sistem-keamanan-komputer.blogspot.com/2009/04/sejarah-enkripsi.html
http://luzcie.blogspot.com/2010/06/keamanan-sistem-operasi-dengan-enkripsi.html
http://geenz.wordpress.com/2008/12/29/keamanan-komputer-model-model-enkripsi/
http://www.klik-kanan.com/fokus/enkripsi1.shtml
http://kambing.ui.ac.id/bebas/v01/DLL/ServerLinux/node165.html
http://sistem-keamanan-komputer.blogspot.com/2009/04/sejarah-enkripsi.html
http://luzcie.blogspot.com/2010/06/keamanan-sistem-operasi-dengan-enkripsi.html
http://geenz.wordpress.com/2008/12/29/keamanan-komputer-model-model-enkripsi/