
Ciphertext adalah informasi yang telah diubah dari bentuk aslinya yang dapat dibaca (plaintext) menjadi format tidak terbaca melalui proses enkripsi. Plaintext adalah data mentah yang dapat dibaca manusia sebelum proses enkripsi. Hubungan antara ciphertext dan plaintext berkaitan erat dengan proses enkripsi dan dekripsi yang memungkinkan data dikonversi bolak-balik.
Ciphertext dapat diibaratkan sebagai “file terkunci”: mekanisme penguncian adalah algoritma enkripsi, sedangkan kuncinya adalah cryptographic key. Hanya pihak yang memiliki kunci yang benar yang dapat membuka ciphertext dan mengembalikan plaintext aslinya.
Dalam ekosistem blockchain, data on-chain secara default bersifat publik. Untuk menjaga privasi dalam lingkungan yang transparan ini, plaintext biasanya dienkripsi menjadi ciphertext sebelum dicatat di blockchain atau disimpan di sistem penyimpanan terdesentralisasi.
Ciphertext dihasilkan melalui kombinasi algoritma enkripsi dan cryptographic key. Algoritma menentukan langkah-langkah enkripsi, sementara key berperan sebagai “kata sandi” yang dapat dibaca mesin. Tanpa key yang tepat, proses dekripsi tidak dapat dilakukan.
Enkripsi simetris menggunakan satu key yang sama untuk enkripsi dan dekripsi—bagaikan satu kunci pintu untuk keluar-masuk ruangan. Algoritma populer antara lain AES, yang cocok untuk enkripsi file atau pesan secara cepat.
Enkripsi asimetris melibatkan dua key: public key yang dibagikan secara terbuka dan private key yang disimpan secara pribadi. Data yang dienkripsi dengan public key hanya dapat didekripsi dengan private key yang bersangkutan, seperti surat yang hanya dapat dibuka penerima. Algoritma yang umum digunakan meliputi RSA dan skema berbasis elliptic curve.
Langkah 1: Tentukan use case. Untuk pesan privat, gunakan enkripsi simetris untuk perlindungan pesan yang cepat; untuk berbagi key dengan aman, enkripsi dengan public key penerima.
Langkah 2: Buat key menggunakan angka acak yang aman (setara komputer dengan melempar dadu), memastikan baik key maupun initialization vector (IV) benar-benar acak.
Langkah 3: Lakukan enkripsi. Masukkan plaintext ke algoritma, gunakan key dan IV untuk menghasilkan ciphertext. Untuk deteksi manipulasi, gunakan mode enkripsi terotentikasi seperti AES-GCM.
Ciphertext berfungsi menyembunyikan konten di jaringan publik dan umum digunakan dalam komunikasi wallet, pembayaran privasi, voting, dan penyimpanan data.
Saat mengakses situs exchange (misal Gate), browser Anda menggunakan TLS untuk mengenkripsi permintaan menjadi ciphertext sebelum dikirim melalui internet—menjaga detail akun dan perintah tetap aman dari penyadapan.
Protokol pembayaran privasi mengkodekan penerima dan jumlah ke dalam ciphertext serta menggunakan mekanisme pembuktian untuk memvalidasi keabsahan transaksi tanpa mengungkap detail sensitif.
DAO sering menggunakan ciphertext untuk voting anonim sementara: suara dienkripsi on-chain sebagai ciphertext dan hanya didekripsi saat penghitungan agar tidak ada pengaruh sebelum waktunya.
Metadata privat NFT biasanya disimpan sebagai ciphertext di IPFS atau platform penyimpanan terdesentralisasi lain; hanya pemegang atau pihak berwenang yang dapat mendekripsi dan mengakses gambar resolusi tinggi atau konten unlockable.
Ciphertext bersifat “reversibel”—dengan key yang benar, dapat didekripsi kembali menjadi plaintext. Sebaliknya, hash adalah “sidik jari yang tidak dapat dibalik” yang hanya memungkinkan perbandingan tanpa bisa mengungkap data asli.
Digital signature membuktikan asal (“siapa pengirimnya”) dan integritas (“tidak dimodifikasi”). Biasanya, signature dibuat atas hash dari pesan untuk efisiensi dan ketahanan. Signature dan ciphertext sering digunakan bersamaan: Anda dapat melakukan hash dan menandatangani plaintext sebelum mengenkripsinya menjadi ciphertext, atau menandatangani ciphertext itu sendiri untuk menjamin keaslian selama transmisi.
Verifikasi signature on-chain biasanya memerlukan akses ke plaintext atau hash-nya. Jika hanya ciphertext yang disimpan, smart contract tidak dapat langsung membaca konten—sehingga manajemen signature dan proses dekripsi dilakukan di application layer.
Ciphertext dapat disimpan langsung sebagai data byte di storage smart contract, namun file berukuran besar dapat menimbulkan biaya gas yang tinggi. Cara umum adalah menyimpan file ciphertext besar di IPFS atau Arweave, dan hanya menyimpan content identifier serta informasi validasi penting di on-chain.
Pertimbangan penyimpanan on-chain meliputi: melampirkan metadata penting (algoritma yang digunakan, mode, IV, versi) untuk memastikan dekripsi di masa mendatang; jangan pernah menyimpan key di on-chain—manajemen key harus tetap aman dan off-chain.
Distribusi key dapat menggunakan enkripsi hybrid: konten dienkripsi dengan symmetric key yang dihasilkan secara acak, lalu key tersebut dienkripsi dengan public key penerima untuk kecepatan dan keamanan.
Keamanan ciphertext bergantung pada algoritma yang terpercaya, randomisasi yang kuat, dan prosedur yang tepat. Ikuti langkah berikut:
Langkah 1: Pilih algoritma dan mode yang telah diaudit secara menyeluruh (misal, AES-256). Gunakan mode terotentikasi (seperti GCM) untuk mendeteksi manipulasi.
Langkah 2: Hasilkan angka acak yang kuat dari sumber yang kriptografis aman untuk key dan IV—hindari timestamp atau nilai yang mudah ditebak.
Langkah 3: Key derivation. Jika membuat key dari password, gunakan KDF (seperti Argon2 atau PBKDF2) untuk mengubah password menjadi key yang kuat dengan iterasi dan penggunaan memori yang cukup.
Langkah 4: Enkripsi plaintext menjadi ciphertext sambil menghasilkan authentication tag (untuk memverifikasi integritas saat dekripsi).
Langkah 5: Paketkan ciphertext dengan metadata yang jelas tentang algoritma, IV, tag, dan versi untuk menghindari inkompatibilitas di masa depan.
Langkah 6: Simpan dan backup key secara aman—jaga private key tetap offline dengan backup di lingkungan terpisah; jangan pernah mengunggah key ke web server atau log.
Langkah 7: Uji secara menyeluruh dengan data sampel di berbagai platform dan library untuk memastikan kompatibilitas.
Ciphertext menyembunyikan konten, sedangkan zero-knowledge proof memungkinkan Anda membuktikan sesuatu tanpa mengungkap detail dasar. Keduanya sering digunakan bersamaan—ciphertext menyimpan data sensitif, sedangkan proof memastikan kepatuhan.
Misalnya, pembayaran privasi dapat mencatat detail transaksi dalam ciphertext sambil menggunakan zero-knowledge proof untuk membuktikan jumlah dalam rentang, saldo mencukupi, dan tidak ada double-spending. Smart contract hanya memvalidasi proof—tanpa perlu membaca ciphertext—sehingga privasi dan validitas tetap terjaga.
Walaupun ciphertext mencegah pembacaan langsung terhadap konten, metadata seperti timestamp atau pola interaksi bisa membocorkan informasi. Untuk privasi yang lebih kuat, pertimbangkan juga penggunaan mixnet, commitment, dan zero-knowledge proof secara bersamaan.
Risiko utama berasal dari manajemen key dan detail implementasi. Key yang hilang berarti data tidak dapat didekripsi; key yang bocor membuat ciphertext dapat dibaca seperti plaintext.
Penyebab umum meliputi: randomisasi lemah sehingga key atau IV mudah ditebak; mode tidak aman (seperti ECB) menghasilkan pola yang mudah dikenali; penggunaan password mentah sebagai key tanpa proses KDF; key tidak sengaja terekam di log frontend atau laporan error; dan penanganan error yang tidak tepat hingga menyebabkan padding oracle attack.
Perhatian ekstra diperlukan untuk keamanan finansial: mengenkripsi detail transaksi tidak menjamin privasi absolut karena interaksi on-chain dapat mengungkap koneksi. Jangan pernah mengunggah private key ke situs web atau tools pihak ketiga—lakukan dekripsi dan signing secara offline kapan pun memungkinkan.
Seiring berkembangnya aplikasi privasi, ciphertext akan semakin terintegrasi dengan commitment, zero-knowledge proof, threshold key, dan teknologi lain—meningkatkan privasi sekaligus tetap patuh regulasi.
Terkait post-quantum security, algoritma public key yang umum digunakan (seperti RSA dan beberapa skema elliptic curve) terancam oleh kemajuan quantum computing. Algoritma simetris seperti AES menjadi lebih kuat dengan penambahan ukuran key. Industri bergerak ke arah post-quantum cryptography (seperti pertukaran key dan signature berbasis lattice). Pada 2025, blockchain dan ekosistem wallet masih dalam tahap evaluasi—migrasi akan membutuhkan periode transisi antara algoritma lama dan baru.
Ciphertext mengubah data yang dapat dibaca menjadi format tidak terbaca menggunakan algoritma dan cryptographic key, sehingga memungkinkan transmisi dan penyimpanan aman di jaringan publik. Memahami hubungan antara ciphertext dan plaintext, membedakan ciphertext dari hash, serta memahami bagaimana signature bekerja bersama enkripsi merupakan dasar pengelolaan privasi yang efektif di Web3. Dalam praktiknya, pilih algoritma yang kuat, sumber randomisasi yang andal, mode terotentikasi, terapkan manajemen key yang ketat, dan kombinasikan dengan teknologi seperti zero-knowledge proof untuk memaksimalkan privasi dan kepatuhan.
Plaintext adalah informasi asli yang dapat dibaca manusia; ciphertext adalah bentuk terenkripsinya—rangkaian karakter tidak bermakna yang dihasilkan oleh algoritma enkripsi. Contohnya, private key Anda adalah plaintext; setelah dienkripsi menjadi ciphertext. Keuntungan ciphertext adalah meskipun dicegat pihak lain, isinya tetap tersembunyi—melindungi privasi Anda.
Di Web3, aset Anda terhubung langsung dengan private key (yang sering disimpan sebagai ciphertext). Jika ciphertext Anda bocor atau berhasil diretas, peretas dapat langsung mentransfer aset kripto Anda—menyebabkan kerugian yang tidak dapat dikembalikan. Berbeda dengan akun internet tradisional yang password-nya bisa di-reset, kebocoran private key di blockchain merupakan ancaman permanen.
Tidak. Enkripsi simetris menggunakan satu key untuk enkripsi dan dekripsi; enkripsi asimetris menggunakan dua key—public key untuk enkripsi dan private key untuk dekripsi (dan sebaliknya). Fungsi satu arah ini memastikan meski public key Anda terekspos, tidak ada yang dapat menggunakannya untuk mendekripsi informasi privat Anda.
Ciphertext yang aman harus memenuhi tiga kriteria: 1) algoritma enkripsi yang kuat (misal, AES-256); 2) key yang cukup kompleks dan hanya diketahui oleh Anda; 3) lokasi penyimpanan yang aman (seperti hardware wallet). Selalu pastikan Anda tidak menggunakan key yang sama di banyak platform—ini adalah kerentanan yang sering terjadi.
Benar—kebocoran ciphertext berarti seluruh riwayat transaksi dan kepemilikan Anda dapat dilacak dan dianalisis; privasi Anda bisa sepenuhnya terekspos. Peretas juga dapat menyamar sebagai Anda untuk menipu orang lain atau menargetkan kontak Anda—menyebabkan kerugian lebih luas.


