Pengodean vs Enkripsi vs Pencincangan
Bedakan dengan jelas ketiga konsep ini dan pahami kapan masing-masing digunakan.
Pengodean vs Enkripsi vs Pencincangan adalah pelajaran Cryptology Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cryptology Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cryptology Academy mencakup 4 pelajaran total.
Tiga Operasi yang Berbeda
Pengodean, enkripsi, dan pembuatan hash merupakan tiga operasi yang pada dasarnya berbeda dan memiliki tujuan yang berbeda. Ketiganya sering tertukar, tetapi memahami perbedaannya sangat penting untuk merancang sistem yang aman.
Pengodean mengubah format data tanpa memberikan keamanan. Enkripsi melindungi kerahasiaan. Pembuatan hash menghasilkan sidik jari dengan panjang tetap untuk memverifikasi integritas.
Pengodean: Transformasi Format
Pengodean mengubah data dari satu format ke format lain untuk keperluan kompatibilitas atau transmisi. Proses ini selalu dapat dibalik dan tidak memerlukan kunci. Siapa pun yang mengetahui skema pengodeannya dapat menguraikan data tersebut.
Contohnya mencakup Base64 (biner ke ASCII), pengodean URL (%20 untuk spasi), entitas HTML (& untuk &), dan pengodean heksadesimal. Tujuannya adalah kompatibilitas, bukan keamanan.
Enkripsi: Kerahasiaan dengan Kunci
Enkripsi mengubah teks biasa menjadi teks sandi menggunakan kunci. Operasi ini hanya dapat dibalik oleh seseorang yang memiliki kunci yang benar. Tanpa kunci tersebut, teks sandi secara komputasional tidak layak untuk didekripsi.
Algoritma enkripsi mencakup AES (simetris), RSA (asimetris), dan ChaCha20. Kuncilah yang memberikan keamanan. Algoritmanya sendiri merupakan pengetahuan publik.
Pembuatan Hash: Intisari Satu Arah dengan Panjang Tetap
Fungsi hash kriptografis menerima masukan dengan panjang sembarang dan menghasilkan keluaran dengan panjang tetap (intisari atau hash). Fungsi ini bersifat deterministik (masukan yang sama selalu menghasilkan keluaran yang sama), tetapi memang dirancang agar tidak dapat dibalik.
SHA-256 selalu menghasilkan keluaran 256 bit, baik masukannya berukuran 1 bita maupun 1 gigabita. Fungsi hash digunakan untuk pemeriksaan integritas, penyimpanan kata sandi, dan tanda tangan digital.
Base64 NOT Enkripsi
Kesalahan penting yang sering terjadi: data yang dikodekan dengan Base64 NOT terenkripsi. Penguraian Base64 hanya memerlukan pengetahuan bahwa data tersebut menggunakan Base64, yang sering kali terlihat jelas dari pengisi "==" atau kumpulan karakternya.
Jika Anda mengodekan kata sandi sebagai "cGFzc3dvcmQ=" (Base64 untuk "password"), penyerang dapat menguraikannya dalam hitungan detik. Base64 dalam konteks keamanan hanya berguna untuk kompatibilitas transmisi, bukan untuk menyembunyikan data.
MD5 pada Kata Sandi adalah Hash, Bukan Enkripsi
Membuat hash kata sandi dengan MD5 menyimpannya sebagai intisari satu arah. Anda tidak dapat "mendekripsi" hash MD5 untuk mendapatkan kembali kata sandinya. Namun, MD5 bukan fungsi hash yang sesuai untuk kata sandi karena prosesnya terlalu cepat.
Penyerang dapat menghitung miliaran hash MD5 per detik menggunakan GPU, sehingga serangan brute force dan tabel pelangi menjadi praktis. Penyimpanan kata sandi memerlukan fungsi yang lambat dan membutuhkan banyak memori seperti bcrypt, scrypt, atau Argon2.
AES-GCM adalah Enkripsi Terautentikasi
AES-GCM (Mode Galois/Penghitung) menyediakan kerahasiaan (enkripsi) sekaligus integritas (autentikasi). AES digunakan dalam mode penghitung untuk enkripsi, sedangkan GHASH digunakan untuk autentikasi.
Tag autentikasi yang dihasilkan AES-GCM mendeteksi perubahan apa pun pada teks sandi. Hal ini menjadikannya skema Enkripsi Terautentikasi dengan Data Terkait (AEAD), standar emas untuk enkripsi modern.
SHA-256 adalah Fungsi Hash
SHA-256 (Algoritma Hash Aman 256 bit) adalah fungsi hash kriptografis yang distandardisasi oleh NIST. Fungsi ini menghasilkan intisari 256 bit dan dianggap aman terhadap semua serangan yang diketahui, termasuk serangan kolisi dan pracitra.
SHA-256 digunakan dalam sertifikat TLS, penambangan Bitcoin (bukti kerja), autentikasi pesan HMAC, dan skema tanda tangan digital seperti RSA-SHA256 dan ECDSA.
Kesalahan Umum Pengembang
Kesalahan keamanan umum yang muncul akibat kebingungan antara ketiga hal ini meliputi menyimpan kata sandi dalam bentuk terenkripsi, bukan dalam bentuk hash (kunci enkripsi menjadi kerentanan yang sebenarnya), menggunakan pengodean alih-alih enkripsi untuk data sensitif, menggunakan hash cepat (MD5, SHA-1) untuk penyimpanan kata sandi, serta menganggap bahwa sesuatu pasti aman hanya karena menggunakan Base64.
Kesalahan lainnya adalah menggunakan fungsi yang sama untuk berbagai tujuan, misalnya menggunakan fungsi hash sebagai MAC tanpa konstruksi HMAC, yang rentan terhadap serangan perluasan panjang.
Kapan Menggunakan Masing-Masing Operasi
Gunakan pengodean ketika Anda perlu mengirimkan data biner melalui protokol teks, menyimpan bita dalam kolom teks, atau menyematkan data dalam URL. Gunakan pembuatan hash untuk menyimpan kata sandi (dengan bcrypt/Argon2), memverifikasi integritas data (checksum), dan menghasilkan pengenal dengan panjang tetap dari data yang panjangnya berubah-ubah.
Gunakan enkripsi ketika Anda perlu menyimpan atau mengirimkan data sensitif yang harus dapat dipulihkan dengan kunci yang tepat. Gabungkan pembuatan hash dan enkripsi (AEAD) untuk memperoleh integritas sekaligus kerahasiaan saat data sedang dikirimkan.
Menggabungkan Ketiganya dalam Praktik
Sistem autentikasi yang dirancang dengan baik menggunakan ketiganya: kata sandi dibuat hash-nya dengan Argon2 (pembuatan hash), hash tersebut disimpan dalam kolom basis data dengan enkripsi kolom AES-256 (enkripsi), dan token API yang dikembalikan setelah masuk dikodekan dengan Base64url (pengodean).
Setiap operasi memiliki tujuan yang berbeda. Mengenali operasi yang tepat untuk setiap kasus penggunaan merupakan keterampilan dasar dalam kriptografi terapan dan perancangan sistem yang aman.
Kuis Pengodean vs Enkripsi
Uji pemahaman Anda tentang pengodean, enkripsi, dan pembuatan hash.
Kesimpulan Utama: Pengodean vs Enkripsi vs Pembuatan Hash
Pengodean (Base64, heksadesimal) adalah transformasi format tanpa keamanan. Enkripsi (AES-GCM) menyediakan kerahasiaan yang dapat dibalik dan memerlukan kunci. Pembuatan hash (SHA-256, Argon2) menghasilkan intisari dengan panjang tetap yang tidak dapat dibalik.
Jangan pernah menggunakan pengodean untuk keamanan. Gunakan hash lambat (Argon2/bcrypt) untuk kata sandi. Gunakan enkripsi terautentikasi (AEAD) untuk data sensitif saat dikirimkan atau disimpan. Kebingungan antara kategori-kategori ini merupakan salah satu sumber kerentanan keamanan yang paling umum.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pengodean vs Enkripsi vs Pencincangan” gratis?
Ya — teks lengkap “Pengodean vs Enkripsi vs Pencincangan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cryptology Academy, upgrade ke CoddyKit PRO. Kursus Cryptology Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Pengodean vs Enkripsi vs Pencincangan”?
Bedakan dengan jelas ketiga konsep ini dan pahami kapan masing-masing digunakan. Kamu berlatih Cryptology Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Cryptology Academy?
Tidak diperlukan pengalaman sebelumnya. Cryptology Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Pengodean vs Enkripsi vs Pencincangan” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Cryptology Academy ini?
Ya. Setiap pelajaran Cryptology Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Pengodean Base64: Cara Kerjanya
- ASCII, Unicode, dan Representasi Teks
- Heksadesimal dalam Keluaran Kriptografis
- Pengodean vs Enkripsi vs Pencincangan