Cabang ilmu pengetahuan yang mempelajari tentang bagaimana mengamankan rahasia (menyembunyikan) isi suatu pesan pada saat mengirimkannya dengan proses encoding atau enciphering, kemudian mengembalikan pesan tersebut agar dapat dibaca oleh penerima yang memiliki hak melalui proses decoding atau deciphering disebut dengan istilah cryptography. Kata cryptography sendiri berasal dari kombinasi dua kata Yunani, yakni kryptos yang berarti tersembunyi, dan graphia yang berarti menulis. Dengan demikian secara harafiah, cryptography berarti penulisan suatu pesan secara rahasia. Perbedaan antara code dengan cipher cukup samar, keduanya sepintas sangat mirip. Sebagai contoh pada saat mengganti suatu kata atau kalimat dengan menggunakan suatu kamus bahasa asing, maka proses tersebut termask coding. Sedangkan pada saat mencampurkan atau menggantikan huruf dalam suatu pesan, maka hal tersebut disebut dengan istilah cipher. Berikut ini adalah beberapa istilah-istilah lainnya yang terkait dengan cryptography tersebut.
- Cryptographer merupakan seseorang yang mempelajari dan menggunakan cryptography dalam mengamankan rahasia suatu informasi
- Cryptanalyst disebut juga dengan istilah lain seperti code breaker, merupakan orang-orang yang memiliki kemampuan untuk membajak dan membaca isi pesan yang telah dirahasiakan tersebut
- Encryption merupakan proses untuk mengacak suatu pesan sehingga sulit dibaca orang yang tidak memiliki hak
- Decryption merupakan proses untuk mengembalikan suatu pesan yang telah diacak sehingga dapat dibaca oleh penerima yang memiliki hak
- Plaintext merupakan pesan informasi awal yang akan dikirimkan secara rahasia, belum melalui proses encryption
- Key merupakan kunci jawaban yang digunakan untuk melakukan proses encryption maupun decryption
- Ciphertext merupakan pesan informasi yang telah diacak, dengan kata lain plaintext yang telah mengalami tahap encryption
- Pada proses encryption, plaintext + key = ciphertext
- Pada proses decryption, ciphertext + key = plaintext
Jenis Encryption
Secara garis besar hanya terdapat dua jenis encryption, yakni symmetric encryption dan asymmetric encryption. Untuk symmetric encryption merupakan jenis encryption dimana key yang digunakan untuk melakukan proses encryption dan decryption ialah sama. Sedangkan untuk asymmetric encryption, menggunakan key yang berbeda untuk melakukan encryption dan decryption.
Dalam penerapannya, dua jenis encryption tersebut digunakan secara bersamaan. Untuk symmetric encryption hanya menggunakan sebuah key yang cukup rentan. Bila key tersebut diketahui maka proses encryption dan decryption (bisa saja) menjadi tidak berguna. Sedangkan untuk asymmetric encryption memiliki kelemahan, yakni sulit untuk melakukan encryption suatu data dengan ukuran yang besar. Oleh karena itu biasanya digunakan kombinasi kedua jenis encryption tersebut. Dengan asymmetric encryption digunakan untuk encryption key, sedangkan symmetric encryption untuk encryption plaintext.
Lihat juga mengenai enigma machine.