Apa Itu Cryptography

Share This Post

Share on whatsapp
Share on telegram
Share on facebook
Share on linkedin
Share on twitter

Cryptography, atau yang diterjemahkan menjadi kriptografi dalam bahasa Indonesia, merupakan sebuah proses mengubah pesan untuk menyembunyikan maknanya. Dalam proses tersebut, kriptografi membuat atau menghasilkan pesan tertulis agar buah pesan atau informasi tetap bersifat rahasia. Data tersebut lantas diubah ke dalam sebuah format yang tak terbaca, sehingga bisa ditransmisikan atau dikirimkan tanpa khawatir data pesan tersebut akan diterjemahkan oleh pihak-pihak yang tidak berwenang ke dalam format yang terbaca. Nah, proses inilah yang disebut sebagai enkripsi (encryption).

Sistem keamanan informasi menggunakan kriptografi dalam berbagai tingkatan atau level. Informasi tersebut hanya bisa dibaca jika terdapat kunci alias key, yang digunakan untuk proses deskripsi, yaitu proses perubahan data yang dienkripsi agar kembali ke data aslinya. Selama proses transmisi informasi maupun penyimpanan, data pesan tetap terjaga kerahasiaannya.

Dalam penjelasan berikut ini, Anda bisa temukan beragam informasi penting mengenai kriptografi secara keseluruhan, termasuk di dalamnya enkripsi, yang merupakan proses penting dalam pengamanan data dan informasi. Terlebih, enkripsi adalah proses yang saat ini memainkan peran signifikan mengingat banyak jenis data pesan dan informasi yang dikirim dan disimpan secara digital, sehingga kerahasiaannya wajib jadi prioritas. Baik itu data pesan obrolan di aplikasi seperti WhatsApp, pesan email, siaran video maupun adio, hingga data transaksi perbankan, semuanya membutuhkan enkripsi untuk mencegah kebocoran data dan privasi.

Komponen Cryptography

1. Plaintext.

Plaintext bisa jadi berupa gambar, teks, maupun kode biner, yang kemudian perlu diubah atau dikonversi menjadi sebuah format yang tidak bisa dibaca. Nantinya, hanya mereka yang berwenang saja yang memiliki otoritas untuk membuka pesan rahasia ini. Jadi, bisa disimpulkan bahwa plaintext merupakan data atau pesan asli yang belum dienkripsi, sehingga data tersebut perlu dilindungi selama proses transmisi data.

2. Algoritma enkripsi.

Algoritma enkripsi merupakan sebuah proses matematis yang mengubah plaintext agar menjadi sebuah data yang tidak bisa terbaca, termasuk ciphertext, dengan menggunakan kunci enkripsi tertentu. Nah, algoritma kriptografi inilah yang memproses plaintext serta kunci enkripsi sebagai masukan atau input, dan menghasilkan ciphertext sebagai keluaran atau output.

3. Ciphertext.

Dalam proses enkripsi, di mana algoritma enkripsi diterapkan dengan menggunakan kunci enkripsi tertentu, plaintext dapat diubah menjadi sebuah rushed format yang disebut sebagai ciphertext. Jenis komponen kriptografi yang satu ini sama sekali tidak dijaga, dan “mengalir” pada channel komunikasi publik. Dengan begitu, ciphertext sebenarnya masih bisa disadap atau dibajak oleh orang lain yang dapat mengakses channel komunikasi tersebut. Meski demikian, algoritma enkripsi yang telah diterapkan sebelumnya membuat ciphertext tidak bisa langsung dipecahkan atau diubah menjadi data yang terbaca, karena hanya pihak yang memiliki kunci dekripsinya saja yang bisa melakukannya.

4. Algoritma dekripsi.

Sementara itu, algoritma dekripsi pun merupakan sebuah proses matematis. Hanya saja, yang membedakannya dengan algoritma enkripsi adalah tujuannya. Pada algoritma dekripsi, prosesnya akan menghasilkan sebuah plaintext unik untuk ciphertext serta kunci dekripsi apapun, di mana ciphertext dan kunci dekripsi diproses sebagai masukan atau input, dan plaintext sebagai hasil atau output. Dengan begitu, Anda pun bisa simpulkan bahwa algoritma dekripsi pada dasarnya adalah kebalikan algoritma enkripsi, sehingga cara kerjanya adalah membalik cara kerja algoritma enkripsi tersebut.

5. Kunci enkripsi.

Seperti yang sudah disinggung secara singkat sebelumnya, enkripsi merupakan sebuah proses untuk mengubah plaintext agar menjadi ciphertext dengan menerapkan algoritma tertentu, yang disebut sebagai algoritma enkripsi. Selain algoritma, proses enkripsi juga membutuhkan kunci alias key, yang disebut sebagai kunci enkripsi. Nah, kunci enkripsi ini merupakan value yang hanya diketahui atau dipegang oleh pengirim pesan maupun informasi. Ketika pengirim memasukkan kunci enkripsi ke dalam algoritma enkripsi bersamaan dengan plaintext, proses tersebut akan menghasilkan ciphertext.

6. Kunci dekripsi.

Dekripsi adalah proses yang berkebalikan dari enkripsi, di mana ciphertext diproses agar kembali menjadi plaintext alias pesan aslinya. Proses tersebut membutuhkan algoritma dekripsi serta kunci dekripsi. Dengan begitu, value dari kunci dekripsi ini hanya dipegang oleh penerima pesan. Meskipun proses enkripsi-dekripsi serta kunci enkripsi-kunci dekripsi saling berkaitan, keduanya tidak selalu sama atau identik. Pasalnya, kunci enkripsi dan kunci dekripsi yang sama hanya digunakan dalam enkripsi simetris. Sementara itu, dalam enkripsi asimetris, kunci enkripsi dan kunci dekripsi yang digunakan berbeda.

Jenis/Tipe Enkripsi

Enkripsi ini pada akhirnya berkembang menjadi berbagai jenis, seperti FPE, AES, RSA, dan sebagainya. Meski demikian, pada dasarnya jenis enkripsi bisa dikelompokkan hanya ke dalam dua jenis saja, yaitu enkripsi simetris dan enkripsi asimetris. Berikut penjelasannya.

Seperti yang sudah dibahas sekilas sebelumnya, enkripsi simetris menerapkan algoritma di mana kunci enkripsi dan kunci dekripsi yang digunakan adalah sama. Dengan demikian, hal ini berarti bahwa kunci tersebut perlu dibagikan sebelumnya di antara kedua belah pihak – pengirim dan penerima pesan – agar keduanya nanti sama-sama bisa langsung memproses pesan yang dikirimkan.

Sebagai contoh, A akan mengirimkan pesan yang terenkripsi kepada B. Apabila B belum mendapatkan kunci enkripsi yang digunakan A untuk mengenkripsi pesan, B tidak akan bisa memahami isi pesan yang ia terima, yang berarti ia tidak bisa mendekripsikan pesan tersebut.

Lebih lanjut lagi, enkripsi simetris ini masih bisa dipecah ke dalam beberapa jenis, yaitu FPE (Format-Preserving Encryption), AES (Advanced Encryption Standard), dan Twofish.

Sementara itu, enkripsi asimetris berarti masing-masing pihak – pengirim dan penerima pesan – memiliki sepasang kunci, yaitu kunci publik (public key) dan kunci privat (private key). Seperti yang ditunjukkan oleh namanya, kunci publik adalah kunci yang bisa dibagikan kepada khalayak umum. Sementara itu, kunci privat harus terjaga kerahasiaannya. Enkripsi asimetris sendiri juga sering dikenal dengan istilah kriptografi kunci publik (public-key cryptography).

Nah, dengan menggunakan ilustrasi di atas, A sebagai pengirim pesan akan menggunakan kunci publik milik B untuk mengenkripsi dan mengirimkan pesan tersebut. Hanya saja, yang dapat mendekripsikan pesan tersebut hanyalah si B dengan menggunakan kunci privatnya. Karena cara kerja enkripsi asimetris, jenis enkripsi yang satu ini merupakan metode kriptografi yang digunakan oleh berbagai teknologi, termasuk cryptocurrency dan blockchain seperti Bitcoin.

Sedangkan enkripsi asimetris dapat dikategorikan lagi ke dalam beberapa jenis, yaitu RSA (Rivest-Shamir-Adleman) dan Diffie-Hellman.

Perbedaan Enkripsi Simetris vs Asimetris

Sekarang, Anda barangkali sudah mendapatkan gambaran yang lebih jelas mengenai apa itu enkripsi simetris dan enkripsi asimetris, kan? Keduanya memang merupakan teknik enkripsi yang berbeda, terutama dari aspek kunci yang digunakan dalam proses enkripsi dan dekripsi pesan di antara kedua belah pihak.

Apabila dirangkum, berikut ini adalah beberapa poin penting dan enkripsi simetris, yaitu:

  • Algoritme kriptografi pada enkripsi simetris jauh lebih sederhana sehingga dapat dieksekusi dengan lebih cepat. Dengan alasan ini, enkripsi simetris lebih efektif jika digunakan untuk mengirimkan data dalam jumlah banyak.
  • Kunci yang digunakan untuk mengenkripsi dan mendekripsikan pesan adalah kunci yang sama. Oleh karena itu, baik pengirim maupun penerima pesan akan dapat saling mengirimkan kunci lewat sarana atau cara lain.
  • Dalam implementasinya di dunia nyata, beberapa algoritme enkripsi simetris yang umum digunakan misalnya AES-128, AES-192, dan AES-256.

Sementara itu, enkripsi asimetris mulai dikembangkan dan digunakan setelah enkripsi simetris, sehingga umur enkripsi asimetris lebih “muda” dibandingkan enkripsi simetris. Dan beberapa poin penting dari enkripsi asimetris adalah sebagai berikut:

  • Enkripsi asimetris mempergunakan dua kunci yang berbeda dalam mengenkripsi maupun mendekripsi pesan, sehingga dianggap lebih aman dibandingkan enkripsi simetris.
  • Kunci publik yang digunakan untuk enkripsi tersedia bagi siapa saja, tapi tidak untuk kunci privatnya.
  • Enkripsi asimetris adalah metode enkripsi yang digunakan sangat luas dalam komunikasi sehari-hari di internet pada saat ini.
  • Jika pesan dienkripsi menggunakan kunci publik, pesan tersebut hanya bisa didekripsi dengan kunci privat. Dan jika pesan dienkripsi menggunakan kunci privat, pesan tersebut hanya bisa didekripsi dengan kunci publik.
  • Penggunaan sertifikat digital (digital certificates) pada model client-server saat ini dapat dipergunakan untuk mendapatkan kunci publik.
  • Karena proses kriptografinya yang mempergunakan dua kunci berbeda, enkripsi asimetris membutuhkan waktu lebih lama saat pemrosesan dibandingkan enkripsi simetris.

Dengan lebih memahami deskripsi serta karakteristik dari masing-masing jenis enkripsi tersebut, Anda sebenarnya sudah bisa menyimpulkan apa perbedaan di antara keduanya. Nah, jika dirangkum ke dalam beberapa poin kunci, perbedaan utama antara enkripsi simetris dan enkripsi asimetris adalah sebagai berikut:

  • Enkripsi simetris merupakan teknik yang lebih tua, sementara enkripsi asimetris adalah teknik yang lebih baru.
  • Enkripsi asimetris membutuhkan waktu lebih lama untuk mengeksekusi proses kriptografi karena adanya logika yang lebih kompleks dalam pemrosesannya. Oleh karena itu, enkripsi simetris lebih praktis digunakan dalam proses pengiriman data yang berjumlah besar untuk menghemat waktu.
  • Dari segi keamanan, enkripsi asimetris lebih aman karena penggunaan dua jenis kunci yang berbeda pada proses enkripsi dan dekripsi pesan di antara kedua belah pihak.

Cara Kerja Enkripsi Simetris

Kedua belah pihak yang berkomunikasi melalui enkripsi simetris harus sama-sama sudah memegang kunci agar pihak penerima dapat segera mendekripsi pesan yang ia terima. Dengan menerapkan algoritma enkripsi simetris, pesan informasi diubah atau dikonversi ke dalam sebuah bentuk data yang tidak terbaca oleh orang lain, kecuali yang memiliki kunci untuk mendekripsikannya.

Begitu penerima yang sudah memegang kunci dekripsi mendapatkan data tersebut, algoritme akan membalik proses enkripsi – alias melakukan dekripsi – agar data tersebut akan kembali ke bentuk pesan aslinya, alias plaintext.

Nah, kunci yang digunakan oleh pengirim maupun penerima pesan bisa jadi berupa kode atau kata sandi yang spesifik. Atau, kunci tersebut bisa juga merupakan serangkaian angka atau huruf yang acak dan dihasilkan oleh generator angka acak yang aman.

Cara Kerja Enkripsi Asimetris

Sementara itu, pada enkripsi asimetris, terdapat dua kunci yang berbeda namun saling berkaitan – kunci publik untuk enkripsi, dan kunci privat untuk dekripsi. Masing-masing kunci tersebut dihasilkan oleh algoritma kriptografis, dan keduanya terhubung secara matematis.

Dalam proses komunikasi antara penerima dan pengirim di dalam enkripsi asimetris, masing-masing sudah memiliki pasangan kunci publik dan kunci privatnya sendiri-sendiri. Pertama, pengirim pesan informasi akan mendapatkan kunci publik milik penerima, dan kemudian mengenkripsi plaintext menjadi chiphertext. Chiphertext tersebut kemudian dikirim ke penerima, yang mendekripsinya menggunakan kunci privat agar chiphertext dapat kembali menjadi plaintext alias pesan informasi asli yang dapat terbaca.

Kelebihan dan Kekurangan

Apabila dibandingkan dengan enkripsi asimetris, enkripsi simetris unggul terutama dari segi kecepatan untuk memproses data yang jumlahnya besar. Meski demikian, enkripsi simetris juga lebih rentan dari segi keamanan karena penggunaan kunci yang sama untuk enkripsi dan dekripsi, sehingga kunci tersebut harus selalu dijaga kerahasiaannya. Terlebih jika proses enkripsi dan dekripsi dilakukan di dua lokasi yang berbeda, sehingga kunci rahasia tersebut harus dipindahkan dengan aman.

Sementara itu, enkripsi asimetrik unggul dari segi keamanan dan kerahasiaan data. Pasalnya, enkripsi asimetrik membutuhkan autentikasi pesan yang diperoleh penerima untuk benar-benar memastikan bahwa pesan tersebut dikirim oleh pengirim yang dimaksud. Selain itu, penggunaan sepasang kunci – kunci publik dan kunci privat – juga membuat metode enkripsi ini lebih praktis karena masing-masing pihak memiliki kunci publiknya sendiri. Dan karena kunci privat terjaga kerahasiaannya, alasan ini pula yang membuat enkripsi asimetris lebih unggul dari segi keamanan dan kerahasiaan pesan.

Hanya saja, enkripsi asimetris membutuhkan waktu yang lebih lama dibandingkan enkripsi simetris, sehingga tidak cocok digunakan untuk mendekripsi pesan berjumlah besar. Di samping itu, kunci publiknya tidak bisa selalu diautentifikasi. Dan jika Anda kehilangan kunci privat, dampaknya pesan pun jadi tidak bisa didekripsi sebagaimana mestinya. Hilangnya kunci privat, apalagi jika kunci ini bisa jatuh ke tangan peretas atau penyerang, juga meningkatkan risiko kebocoran keamanan dan privasi.

Fungsi Enkripsi dalam Sistem Komputerisasi Modern

Enkripsi maupun kriptografi secara umum sebenarnya diterapkan ke dalam kehidupan sehari-hari Anda saat ini, lho. Apalagi, di era modern dan digital sekarang ini, Anda pasti banyak melakukan aktivitas secara online, kan?

Beberapa contoh enkripsi dalam sistem komputerisasi modern misalnya sebagai berikut:

  • Time stamping.Time stamping adalah teknik untuk memastikan bahwa dokumen atau komunikasi elektronik tertentu benar-benar ada dan dikirimkan pada waktu tertentu. Time stamping mempergunakan model enkripsi yang disebut blind signature scheme, di mana pengirim dapat mengirimkan pesan ke penerima tanpa mengungkap informasi apapun tentang pesan tersebut kepada pihak lainnya. Dengan ini, pengirim mendapatkan bukti bahwa penerima telah mendapatkan dokumen tertentu. Time stamping sangat bermanfaat di zaman digital saat ini, di mana transisi dari dokumen cetak atau fisik ke dokumen elektronik – termasuk dokumen resmi seperti kontrak, pengajuan paten, dan sebagainya – menjadi lebih umum.
  • Transaksi uang elektronik atau uang digital. Secara umum, istilah ini mengacu pada transaksi yang dilakukan secara elektronik, di mana sejumlah uang dikirim dari satu orang ke orang lain, baik itu debit maupun kredit, transaksi anonim maupun transaksi teridentifikasi. Enkripsi digunakan dalam skema ini untuk melindungi data transaksi konvensional, seperti nomor rekening dan jumlah transaksi, tanda tangan digital, dan memberikan kerahasiaan lewat enkripsi asimetris.
  • Secure Socket Layer (SSL). Protokol kunci publik ini dikembangkan oleh Netscape untuk menyediakan keamanan data di antara TCP/IP dan protokol aplikasi. Dalam SSL, terdapat dukungan enkripsi data, otentikasi server, integritas pesan, dan otentikasi client untuk sambungan TCP/IP. Pada SSL Handshake Protocol, terdapat proses otentikasi masing-masing ujung sambungan – server dan client – meskipun otentikasi client bersifat opsional.

Secara garis besar, client meminta sertifikat server dan preferensi cipher, yang kemudian diterima oleh client. Lalu, client akan menghasilkan kunci master dan mengenkripsinya dengan kunci publik server, lalu mengirimkan kunci master terenkripsi tersebut kepada server. Server lantas akan mendekripsi kunci master dengan kunci privatnya, lalu mengotentikasi dirinya kepada client dengan mengirimkan pesan terenkripsi yang mengandung kunci master di dalamnya.

Kesimpulan dan Penutup

Itulah rangkuman informasi mengenai apa itu kriptografi secara umum, termasuk di dalamnya enkripsi, dekripsi, komponen kriptografi, dan ulasan tentang enkripsi simetris dan asimetris, termasuk contohnya dalam kehidupan sehari-hari.

Subscribe To Our Newsletter

Get updates and learn from the best

More To Explore