Pengertian Enkripsi dan Dekripsi
Enkripsi adalah proses mengubah data atau informasi menjadi format yang tidak bisa dibaca atau dipahami tanpa menggunakan kunci tertentu. Tujuan utama dari enkripsi adalah untuk melindungi kerahasiaan data, sehingga hanya pihak yang memiliki kunci enkripsi yang dapat mengakses informasi tersebut.
Dekripsi adalah proses kebalikan dari enkripsi, yaitu mengubah data terenkripsi kembali ke bentuk aslinya yang dapat dibaca atau dipahami, menggunakan kunci dekripsi yang sesuai. Tanpa kunci yang benar, data yang terenkripsi tidak akan bisa diakses.
Jenis-Jenis Enkripsi
Enkripsi Simetris:
- Pengertian: Dalam enkripsi simetris, kunci yang sama digunakan untuk mengenkripsi dan mendekripsi data.
- Kelebihan: Cepat dan efisien dalam memproses data.
- Kekurangan: Masalah dalam distribusi kunci karena kunci yang sama harus diketahui oleh kedua belah pihak yang berkomunikasi.
- Contoh Algoritma: AES (Advanced Encryption Standard), DES (Data Encryption Standard).
Enkripsi Asimetris:
- Pengertian: Enkripsi asimetris menggunakan dua kunci yang berbeda tetapi berpasangan, yaitu kunci publik dan kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan untuk mendekripsinya.
- Kelebihan: Lebih aman dalam distribusi kunci karena kunci publik dapat dibagikan secara bebas.
- Kekurangan: Proses enkripsi dan dekripsi lebih lambat dibandingkan enkripsi simetris.
- Contoh Algoritma: RSA (Rivest-Shamir-Adleman), ECC (Elliptic Curve Cryptography).
Mengenal apa itu Ransomware
Penerapan Enkripsi dan Dekripsi
Komunikasi Data:
- Enkripsi digunakan untuk mengamankan komunikasi data melalui internet, seperti email, pesan instan, dan panggilan suara. Protokol seperti TLS (Transport Layer Security) dan SSL (Secure Sockets Layer) menggunakan enkripsi untuk melindungi data yang dikirimkan melalui jaringan.
Penyimpanan Data:
- Data yang disimpan di perangkat keras, seperti hard drive dan SSD, dapat dienkripsi untuk melindungi informasi sensitif. Contoh penerapan termasuk enkripsi disk penuh dengan perangkat lunak seperti BitLocker atau FileVault.
Keamanan Aplikasi Web:
- Sertifikat SSL/TLS digunakan untuk mengenkripsi data yang dikirimkan antara browser pengguna dan server web, memastikan bahwa informasi pribadi seperti data login dan detail kartu kredit terlindungi.
Transaksi Keuangan:
- Enkripsi sangat penting dalam transaksi keuangan online, seperti pembayaran kartu kredit dan perbankan online, untuk melindungi data keuangan pengguna dari penyadapan dan pencurian.
Perlindungan Data Pribadi:
- Aplikasi perpesanan seperti WhatsApp dan Signal menggunakan enkripsi end-to-end untuk memastikan bahwa hanya pengirim dan penerima pesan yang dapat membaca isi pesan, bahkan penyedia layanan tidak dapat mengaksesnya.
Contoh Sederhana Proses Enkripsi dan Dekripsi
Enkripsi Simetris
Mari kita gunakan algoritma sederhana untuk enkripsi simetris: Caesar Cipher.
Data Asli: 'HELLO'
Kunci Enkripsi/Deskripsi:3
(Caesar Cipher dengan pergeseran 3 huruf)
Proses Enkripsi:
- Setiap huruf dalam teks asli digeser 3 posisi ke kanan dalam alfabet.
- H -> K
- E -> H
- L -> O
- L -> O
- O -> R
Proses Dekripsi:
- Setiap huruf dalam ciphertext digeser 3 posisi ke kiri dalam alfabet.
- K -> H
- H -> E
- O -> L
- O -> L
- R -> O
Hasil Dekripsi (Plaintext): HELLO
Enkripsi Asimetris
Mari kita gunakan konsep dasar dari enkripsi asimetris dengan pasangan kunci publik dan kunci privat. Misalnya, untuk contoh yang sangat sederhana, kita anggap data asli adalah angka, dan enkripsi dilakukan dengan mengalikan angka tersebut dengan kunci publik, sedangkan dekripsi dilakukan dengan membagi hasilnya dengan kunci privat.
Data Asli: 42
Kunci Publik: 5
Kunci Privat: 5
Proses Enkripsi:
- Data asli (42) dikalikan dengan kunci publik (5).
- 42 * 5 = 210
Hasil Enkripsi (Ciphertext): 210
Proses Dekripsi:
- Ciphertext (210) dibagi dengan kunci privat (5).
- 210 / 5 = 42
Hasil Dekripsi (Plaintext): 42
Bagaimana Kunci Publik Dapat Mengubah Data
Dalam enkripsi asimetris yang sebenarnya, seperti RSA, kunci publik digunakan dalam proses matematika yang lebih kompleks daripada sekadar perkalian. Berikut adalah cara kerja dasar kunci publik dalam mengubah data:
Generasi Pasangan Kunci:
- Dua bilangan prima besar dipilih dan digunakan untuk menghasilkan kunci publik dan kunci privat.
- Kunci publik terdiri dari modulus (hasil perkalian kedua bilangan prima) dan eksponen enkripsi (seringkali bilangan kecil seperti 65537).
- Kunci privat terdiri dari modulus yang sama dan eksponen dekripsi yang terkait dengan eksponen enkripsi.
Enkripsi dengan Kunci Publik:
- Data asli diubah menjadi angka, dan kemudian angka tersebut dipangkatkan dengan eksponen enkripsi dan dimodulasi dengan modulus.
- Contoh sederhana: jika data asli adalah , eksponen enkripsi adalah , dan modulus adalah , maka ciphertext dihitung sebagai .
Dekripsi dengan Kunci Privat:
- Ciphertext dipangkatkan dengan eksponen dekripsi dan dimodulasi dengan modulus.
- Contoh sederhana: jika ciphertext adalah , eksponen dekripsi adalah , dan modulus adalah , maka plaintext dihitung sebagai .
Contoh RSA Sederhana
Data Asli (m): 7
Kunci Publik (n, e): n = 33 (hasil perkalian dua bilangan prima: 3 dan 11); e = 3
Kunci Privat (n, d): n = 33; d = 7 (karena 3 * 7 = 1 mod 20, dengan 20 adalah totient dari 33)
Proses Enkripsi:
Hasil Enkripsi (Ciphertext): 13
Proses Dekripsi:
Hasil Dekripsi (Plaintext): 7
Dalam contoh ini, kunci publik (3, 33) digunakan untuk mengenkripsi data asli 7 menjadi ciphertext 13, dan kunci privat (7, 33) digunakan untuk mendekripsi ciphertext 13 kembali menjadi data asli 7. Ini adalah contoh dasar yang menunjukkan bagaimana kunci publik dapat mengubah data dan bagaimana kunci privat digunakan untuk mengembalikan data tersebut ke bentuk aslinya.
Tidak ada komentar:
Posting Komentar