Apa Itu Enkripsi?
Enkripsi adalah proses kriptografis yang mengubah informasi yang dapat dibaca menjadi bentuk yang tidak dapat dibaca, sehingga hanya pihak berwenang dengan kunci yang tepat yang dapat memulihkan data aslinya.Input yang dapat dibaca disebut plaintext, sedangkan output yang dilindungi disebut ciphertext.Dekripsi membalikkan proses tersebut dengan mengubah ciphertext kembali menjadi plaintext menggunakan kunci kriptografis yang diperlukan.Dalam mata uang kripto, enkripsi umum digunakan untuk melindungi kunci privat, file wallet, backup pemulihan, kredensial akun, pesan, koneksi API, dan informasi sensitif lainnya.Enkripsi merupakan bagian dari bidang kriptografi yang lebih luas, yang juga mencakup tanda tangan digital, hashing, pertukaran kunci, commitment, dan zero-knowledge proof.Ikhtisar kriptografi NIST menjelaskan bahwa kriptografi menggunakan teknik matematika untuk melindungi informasi dan komunikasi elektronik.
Enkripsi dapat memberikan kerahasiaan, tetapi tidak otomatis membuktikan siapa yang membuat data atau apakah data tersebut telah diubah.Karena itu, sistem yang aman menggabungkan enkripsi dengan autentikasi, pemeriksaan integritas, kontrol akses, backup, dan pengelolaan kunci yang cermat.Cara Kerja Enkripsi
Algoritma enkripsi menerima plaintext, kunci kriptografis, dan terkadang nilai tambahan seperti nonce atau initialization vector.Algoritma memproses input tersebut dan menghasilkan ciphertext yang seharusnya tampak tidak bermakna bagi siapa pun yang tidak memiliki kunci yang tepat.Algoritma dekripsi menggunakan kunci dan parameter yang sesuai untuk merekonstruksi plaintext.Keamanan enkripsi modern seharusnya bergantung pada kerahasiaan kunci, bukan kerahasiaan algoritma.Algoritma yang telah ditinjau secara luas umumnya lebih aman daripada algoritma privat yang belum dianalisis secara terbuka.Penyerang yang memperoleh kunci enkripsi mungkin dapat mendekripsi semua data yang dilindungi kunci tersebut.Karena itu, pembuatan, penyimpanan, akses, rotasi, backup, dan penghancuran kunci sama pentingnya dengan algoritma enkripsi itu sendiri.Apa Itu Kunci Enkripsi?
Kunci enkripsi adalah nilai rahasia atau terkendali yang digunakan algoritma kriptografis untuk mengenkripsi atau mendekripsi informasi.Kunci yang aman seharusnya memiliki entropi tak terduga yang memadai agar tahan terhadap serangan tebakan dan brute force.Kunci biasanya harus dibuat menggunakan generator angka acak yang aman secara kriptografis, bukan kata yang mudah diingat atau angka yang dapat diprediksi.Panjang kunci yang diperlukan bergantung pada algoritma dan target keamanan yang dipilih.Kunci yang lebih panjang tidak memperbaiki algoritma yang lemah, implementasi yang keliru, perangkat yang terekspos, atau password yang buruk.Panduan pengelolaan kunci kriptografis NIST mencakup pembuatan, penyimpanan, pembentukan, penggunaan, perlindungan, dan penghancuran materi kunci kriptografis.
Enkripsi Simetris
Enkripsi simetris menggunakan kunci rahasia yang sama, atau kunci rahasia yang berkaitan erat, untuk enkripsi dan dekripsi.Pengirim dan penerima harus memperoleh kunci rahasia tersebut melalui metode yang aman.Algoritma simetris umumnya efisien dan sesuai untuk melindungi file besar, backup wallet, database, lalu lintas jaringan, dan data aplikasi yang tersimpan.Tantangan utamanya adalah mendistribusikan dan menyimpan rahasia bersama tanpa mengeksposnya.Jika penyerang mencuri kunci simetris, ia mungkin dapat mendekripsi informasi yang dilindungi dan mungkin juga membuat ciphertext yang telah diubah tampak meyakinkan.Sistem aman sering menggabungkan enkripsi simetris dengan metode kunci publik untuk membentuk atau membungkus kunci simetris sementara.Advanced Encryption Standard
Advanced Encryption Standard, yang umum disebut AES, adalah block cipher simetris yang banyak digunakan.Standar NIST FIPS 197 saat ini menetapkan AES-128, AES-192, dan AES-256.
Versi-versi ini menggunakan kunci sepanjang 128, 192, atau 256 bit untuk memproses data dalam blok 128-bit.AES menjelaskan block cipher itu sendiri, bukan sistem enkripsi file yang lengkap.Perangkat lunak harus menggunakan AES melalui mode operasi yang aman serta mengelola kunci, nonce, tag autentikasi, dan error dengan benar.Sistem AES yang diimplementasikan dengan buruk dapat mengekspos data meskipun cipher dasarnya dianggap kuat.Enkripsi Terautentikasi
Enkripsi terautentikasi melindungi kerahasiaan sekaligus integritas.Enkripsi ini memungkinkan penerima mendeteksi apakah data terenkripsi telah diubah, rusak, atau dipalsukan.Enkripsi terautentikasi dengan data terkait juga dapat melindungi informasi yang tidak dienkripsi, seperti nomor versi, pengenal akun, atau jenis pesan.AES-GCM adalah salah satu konstruksi enkripsi terautentikasi yang banyak digunakan.Spesifikasi GCM NIST mendefinisikan Galois/Counter Mode untuk enkripsi terautentikasi dengan data terkait.
Konstruksi enkripsi terautentikasi umum lainnya menggabungkan ChaCha20 dengan Poly1305.Developer sebaiknya menggunakan pustaka kriptografi yang telah ditinjau, bukan menggabungkan algoritma enkripsi dan autentikasi pesan secara manual.Apa Itu Nonce atau Initialization Vector?
Nonce adalah nilai yang dimaksudkan untuk digunakan satu kali dengan kunci dan algoritma kriptografis tertentu.Initialization vector, atau IV, adalah nilai tambahan yang digunakan untuk menginisialisasi mode enkripsi tertentu.Beberapa sistem mengharuskan nonce tidak dapat diprediksi, sementara sistem lain terutama mensyaratkan nonce unik untuk setiap kunci.Penggunaan ulang nonce dalam mode yang mensyaratkan keunikan dapat mengekspos plaintext, mengungkap hubungan antarpesan, atau memungkinkan penyerang memalsukan data.Nonce sering disimpan bersama ciphertext karena biasanya tidak perlu dirahasiakan.Developer harus mengikuti persyaratan nonce yang tepat dari algoritma terpilih, bukan menerapkan satu aturan umum pada semua cipher.Enkripsi Asimetris
Enkripsi asimetris menggunakan kunci publik dan kunci privat.Informasi yang dienkripsi untuk penerima dengan kunci publik yang sesuai biasanya hanya dapat didekripsi dengan kunci privat pasangannya.Kunci publik dapat dibagikan secara terbuka, sedangkan kunci privat harus tetap rahasia.Enkripsi asimetris menyederhanakan distribusi kunci karena dua pihak tidak perlu berbagi rahasia yang sama terlebih dahulu.Namun, operasi kunci publik umumnya lebih lambat dan kurang sesuai untuk mengenkripsi file besar secara langsung.Sistem praktis biasanya menggunakan kriptografi asimetris untuk membentuk rahasia bersama sementara dan enkripsi simetris untuk melindungi data sebenarnya.Enkripsi Hibrida
Enkripsi hibrida menggabungkan kriptografi asimetris dan simetris.Pengirim membuat kunci simetris acak lalu menggunakannya untuk mengenkripsi pesan atau file secara efisien.Kunci simetris kemudian dilindungi melalui enkripsi kunci publik atau mekanisme enkapsulasi kunci.Penerima menggunakan kunci privat untuk memulihkan kunci simetris lalu mendekripsi data.Pendekatan ini menggabungkan distribusi kunci yang lebih mudah dari kriptografi kunci publik dengan kecepatan enkripsi simetris.Pesan terenkripsi, sistem berbagi file, alat backup, dan protokol jaringan umumnya menggunakan desain hibrida.Enkripsi vs. Kriptografi Kunci Publik dalam Mata Uang Kripto
Sistem mata uang kripto sangat mengandalkan kriptografi kunci publik, tetapi kriptografi kunci publik tidak selalu berarti enkripsi.Kunci privat wallet paling sering digunakan untuk membuat tanda tangan digital yang mengotorisasi transaksi.Kunci publik atau alamat terkait memungkinkan partisipan lain memverifikasi tanda tangan tersebut.Dokumentasi kunci Ethereum menjelaskan bahwa kunci privat menandatangani transaksi dan data, sedangkan informasi publik mendukung identitas dan verifikasi.
Transaksi bertanda tangan biasanya dapat dibaca oleh jaringan, meskipun pengguna tidak berwenang tidak dapat membuat tanda tangan valid atas nama pengirim.Karena itu, pengguna sebaiknya membedakan otorisasi transaksi dari kerahasiaan transaksi.Enkripsi vs. Tanda Tangan Digital
Enkripsi terutama dirancang untuk menyembunyikan informasi dari pembaca yang tidak berwenang.Tanda tangan digital terutama dirancang untuk membuktikan bahwa pemegang kunci privat mengotorisasi data tertentu.Enkripsi menggunakan kunci dekripsi untuk memulihkan konten yang disembunyikan.Verifikasi tanda tangan menggunakan informasi publik untuk mengonfirmasi keaslian dan integritas tanpa mengungkap kunci privat.Transaksi mata uang kripto umumnya ditandatangani agar partisipan jaringan dapat memverifikasinya.Transaksi tersebut umumnya tidak dienkripsi karena validator dan node harus membaca instruksi transaksi untuk mengeksekusi dan memverifikasinya.Satu sistem dapat menggunakan keduanya, misalnya mengenkripsi backup wallet sekaligus menandatangani transaksi on-chain.Enkripsi vs. Hashing
Enkripsi dapat dibalikkan jika kunci dekripsi yang tepat tersedia.Hashing kriptografis dirancang sebagai proses satu arah.Fungsi hash mengubah data dengan panjang praktis berapa pun menjadi digest dengan panjang tetap.Tidak ada kunci dekripsi biasa yang dapat merekonstruksi input asli dari hash yang aman.Blockchain menggunakan hash untuk pengenal blok, pengenal transaksi, commitment data, pembuatan alamat, sistem proof, dan pemeriksaan integritas.Password tidak seharusnya disimpan dengan enkripsi sederhana jika sistem hanya perlu memverifikasinya.Sistem password biasanya menggunakan fungsi hashing password atau derivasi kunci khusus dengan salt dan parameter kerja yang sesuai.Enkripsi vs. Encoding
Encoding mengubah data menjadi representasi lain agar perangkat lunak dapat menyimpan atau mengirimkannya dengan mudah.Contoh umum meliputi heksadesimal, Base64, dan format teks terstruktur.Encoding tidak memerlukan kunci rahasia dan tidak memberikan kerahasiaan.Siapa pun yang mengenali encoding biasanya dapat membalikkan prosesnya.Kunci privat yang ditulis dalam format heksadesimal tetap terekspos sepenuhnya meskipun tampak tidak terbaca bagi seseorang.Pengguna tidak boleh menganggap rahasia wallet yang di-encode sebagai backup terenkripsi.Apakah Transaksi Blockchain Dienkripsi?
Transaksi di banyak blockchain publik tidak dienkripsi secara default.Transaksi tersebut ditandatangani secara kriptografis, lalu didistribusikan kepada partisipan jaringan untuk diverifikasi.Dokumentasi transaksi Ethereum menjelaskan transaksi sebagai instruksi dari akun yang ditandatangani secara kriptografis.
Dokumentasi privasi Ethereum menyatakan bahwa transaksi yang tercatat di Ethereum secara default bersifat publik dan permanen.
Data transaksi publik dapat mencakup alamat pengirim dan penerima, nilai yang ditransfer, panggilan smart contract, event log, dan informasi aplikasi lainnya.Mengenkripsi data sebelum menempatkannya on-chain dapat menyembunyikan plaintext, tetapi ciphertext, pengirim, waktu, ukuran, dan interaksi kontrak mungkin tetap terlihat.Kebocoran kunci di kemudian hari dapat mengekspos data terenkripsi yang tersimpan secara permanen di blockchain publik.Mengapa Blockchain Publik Tidak Dapat Begitu Saja Mengenkripsi Semuanya
Node blockchain harus mencapai kesepakatan mengenai transaksi dan perubahan state yang valid.Dalam jaringan smart contract publik biasa, node harus dapat menjalankan instruksi kontrak yang sama dan memverifikasi hasil yang sama.Jika instruksi transaksi dan state dienkripsi dengan kunci yang tidak tersedia bagi validator, eksekusi biasa tidak akan mungkin dilakukan.Protokol yang berfokus pada privasi mengatasi masalah ini dengan konstruksi kriptografis khusus, bukan dengan menerapkan enkripsi file biasa pada seluruh blockchain.Konstruksi tersebut dapat mencakup zero-knowledge proof, commitment, secure multiparty computation, sistem trusted execution, threshold cryptography, dan homomorphic encryption.Setiap pendekatan memiliki kompromi berbeda terkait kepercayaan, performa, kompleksitas, dan ketersediaan data.Enkripsi Wallet
Enkripsi wallet biasanya berarti melindungi kunci privat atau materi seed yang tersimpan dengan kunci enkripsi turunan password.File wallet terenkripsi dapat disalin atau dicuri tanpa langsung mengungkap kunci privatnya.Pengguna harus memberikan password yang tepat sebelum wallet dapat mendekripsi dan menggunakan kunci tersebut.Dokumentasi wallet Bitcoin mencatat bahwa file wallet terenkripsi melindungi kunci privat saat tidak digunakan.
Dokumentasi tersebut juga menjelaskan bahwa enkripsi file tidak dapat melindungi kunci setelah malware memperoleh password atau membaca kunci yang telah didekripsi dari memori.Karena itu, enkripsi wallet melindungi dari beberapa bentuk pencurian data, bukan memberikan perlindungan lengkap terhadap perangkat yang telah disusupi.File Keystore Terenkripsi
File keystore adalah file terstruktur yang menyimpan kunci privat terenkripsi beserta parameter yang diperlukan untuk memperoleh kunci dekripsinya.File ini umumnya berisi ciphertext, salt, nonce atau IV, konfigurasi derivasi kunci, checksum atau nilai autentikasi, dan metadata identifikasi.Password itu sendiri seharusnya tidak disimpan di dalam file.Standar keystore ERC-2335 mendefinisikan format JSON terenkripsi yang digunakan untuk kunci privat BLS.
Metode derivasi kunci berbasis password yang didukungnya mencakup PBKDF2 dan scrypt.Keystore dapat disalin di antara alat yang kompatibel, tetapi jika file dan password lemah sama-sama terekspos, kunci tetap dapat dicuri.Pengguna sebaiknya memverifikasi kompatibilitas sebelum menghapus wallet asli atau memigrasikan kunci validator.Password dan Fungsi Derivasi Kunci
Password buatan manusia biasanya memiliki entropi yang jauh lebih rendah daripada kunci kriptografis yang dibuat secara acak.Fungsi derivasi kunci mengubah password dan salt menjadi materi kunci sekaligus membuat setiap tebakan password lebih mahal.PBKDF2, scrypt, dan Argon2 merupakan contoh metode derivasi berbasis password yang digunakan dalam sistem berbeda.Salt mencegah password yang sama otomatis menghasilkan kunci turunan yang sama pada file berbeda.Faktor kerja dan kebutuhan memori memperlambat tebakan offline jika penyerang mencuri file terenkripsi.Fungsi derivasi yang kuat tidak dapat sepenuhnya mengamankan password yang sangat lemah.Developer wallet sebaiknya memilih parameter yang telah ditinjau dan menyeimbangkan ketahanan terhadap serangan dengan kecepatan pembukaan kunci yang wajar pada perangkat yang didukung.Password Wallet vs. Frasa Pemulihan
Password wallet dan frasa pemulihan biasanya memiliki fungsi berbeda.Password wallet sering digunakan untuk membuka file terenkripsi yang tersimpan pada satu perangkat.Frasa pemulihan dapat membuat ulang kunci dasar wallet pada perangkat kompatibel lainnya.Mengubah atau melupakan password wallet lokal biasanya tidak mengubah frasa pemulihan.Penyerang yang memperoleh frasa pemulihan mungkin sama sekali tidak memerlukan password wallet lokal.Karena itu, pengguna harus melindungi frasa pemulihan secara terpisah dari file wallet terenkripsi.Menghapus aplikasi wallet terenkripsi tidak menghapus salinan frasa pemulihan yang disimpan di tempat lain.Passphrase BIP-39 dan Enkripsi
Passphrase BIP-39 bukan sekadar password yang mengenkripsi frasa pemulihan tertulis.Spesifikasi BIP-39 menggabungkan kalimat mnemonic dan passphrase opsional melalui proses derivasi untuk menghasilkan seed.
Setiap passphrase menghasilkan seed valid dan berpotensi menghasilkan rangkaian alamat wallet yang berbeda.Memasukkan passphrase yang salah dapat membuka wallet yang tampak kosong alih-alih menampilkan pesan kesalahan password yang jelas.Mnemonic tanpa passphrase opsional dapat menghasilkan wallet yang berbeda.Pengguna tidak sebaiknya menyebut passphrase BIP-39 sebagai enkripsi file biasa karena perilaku pemulihan dan kegagalannya berbeda.Hardware Wallet dan Enkripsi
Hardware wallet dirancang untuk menjaga operasi kunci privat tetap berada di dalam perangkat khusus.Perangkat tersebut mungkin mengenkripsi storage sensitif dan melindungi akses dengan PIN atau metode autentikasi lain.Manfaat keamanan utamanya adalah penandatanganan transaksi dapat dilakukan tanpa mengekspos kunci privat ke komputer yang terhubung.Panduan keamanan Ethereum menyarankan penyimpanan kunci privat secara offline untuk mengurangi paparan terhadap komputer terhubung internet yang telah disusupi.
Hardware wallet tidak membuat setiap transaksi aman karena pengguna tetap dapat menyetujui alamat, panggilan kontrak, izin, atau pesan berbahaya.Frasa pemulihan juga harus tetap dilindungi karena dapat digunakan untuk membuat ulang wallet tanpa perangkat aslinya.Backup Wallet Terenkripsi
Backup terenkripsi dapat melindungi data wallet yang disimpan di media lepas-pasang, komputer pribadi, atau layanan penyimpanan jarak jauh.Backup sebaiknya menggunakan enkripsi terautentikasi agar perubahan yang tidak berwenang dapat dideteksi.Password atau kunci dekripsi tidak boleh disimpan di samping file terenkripsi dalam bentuk yang tidak terlindungi.Pengguna sebaiknya menyimpan cukup banyak salinan independen untuk mengantisipasi kehilangan perangkat, kerusakan fisik, dan kegagalan storage.Backup yang belum pernah diuji mungkin tidak dapat digunakan akibat kerusakan, password yang salah, format yang tidak didukung, atau metadata yang hilang.Pengujian sebaiknya dilakukan tanpa mengekspos rahasia wallet ke lingkungan yang tidak tepercaya atau terhubung internet.Enkripsi dalam Transit
Enkripsi dalam transit melindungi data saat berpindah antarperangkat atau layanan.Wallet kripto menggunakan koneksi jaringan untuk berkomunikasi dengan node, layanan RPC, situs web, sistem penandatanganan, dan server aplikasi.Transport Layer Security, atau TLS, umum digunakan untuk melindungi koneksi internet tersebut.Standar TLS 1.3 dirancang untuk melindungi komunikasi dari penyadapan, manipulasi, dan pemalsuan pesan.
TLS dapat melindungi komunikasi wallet ke server, tetapi server penerima tetap dapat membaca plaintext setelah koneksi didekripsi.Karena itu, pengguna harus membedakan enkripsi transport dari enkripsi end-to-end dan kepercayaan terhadap operator layanan.Enkripsi RPC
Antarmuka remote procedure call memungkinkan wallet dan aplikasi meminta data blockchain serta mengirim transaksi.Koneksi RPC yang tidak terenkripsi dapat mengekspos permintaan, alamat, kredensial autentikasi, dan transaksi yang dikirim kepada pengamat jaringan.Akses RPC jarak jauh sebaiknya menggunakan transport terenkripsi dengan verifikasi sertifikat.Metode RPC administratif yang sensitif juga harus mewajibkan autentikasi, aturan firewall, dan akses jaringan terbatas.TLS tidak mencegah penyedia RPC melihat permintaan yang diprosesnya.Menjalankan node yang dikendalikan secara mandiri dapat mengurangi ketergantungan pada penyedia eksternal, tetapi node tersebut tetap harus dikonfigurasi dan diamankan dengan benar.Enkripsi saat Tersimpan
Enkripsi saat tersimpan melindungi data yang disimpan di perangkat, disk, database, media lepas-pasang, atau layanan backup.Enkripsi seluruh disk dapat melindungi data ketika komputer atau drive yang dimatikan dicuri.Enkripsi tingkat aplikasi dapat melindungi file wallet tertentu meskipun konten disk lainnya dapat dibaca.Enkripsi database dapat melindungi catatan pelanggan, kredensial API, kebijakan penandatanganan, dan rahasia operasional.Enkripsi saat tersimpan memberikan perlindungan lebih rendah setelah perangkat dibuka dan aplikasi dapat mengakses kunci dekripsi.Malware yang berjalan dalam sesi pengguna aktif mungkin dapat membaca data yang telah didekripsi.Enkripsi End-to-End
Enkripsi end-to-end berarti data dienkripsi untuk endpoint yang dituju dan biasanya tidak dapat didekripsi oleh layanan jaringan perantara.Server dapat meneruskan atau menyimpan ciphertext tanpa memiliki kunci dekripsi kontennya.Aplikasi kripto dapat menggunakan enkripsi end-to-end untuk pesan, permintaan transaksi, koordinasi pemulihan, dan data akun privat.Keamanan endpoint tetap penting karena data tersedia dalam bentuk yang dapat dibaca sebelum dienkripsi dan setelah didekripsi.Metadata seperti identitas pengirim, identitas penerima, ukuran pesan, waktu, dan frekuensi mungkin tetap terlihat.Sistem tidak boleh mengklaim privasi penuh hanya karena konten pesan dienkripsi.Enkripsi Tingkat Aplikasi
Enkripsi tingkat aplikasi melindungi data sebelum dikirim ke database, layanan cloud, jaringan penyimpanan terdesentralisasi, atau blockchain.Penyedia penyimpanan menerima ciphertext, bukan plaintext.Aplikasi harus menentukan pengguna mana yang dapat mendekripsi data serta cara distribusi atau pencabutan kunci mereka.Mengenkripsi satu file bersama untuk banyak pengguna menjadi lebih kompleks ketika keanggotaan berubah.Mencabut akses pengguna di masa depan tidak menghapus plaintext atau kunci lama yang sudah diperoleh pengguna tersebut.Developer sebaiknya menetapkan model akses dan pemulihan sebelum menempatkan konten terenkripsi secara permanen di penyimpanan terdistribusi.Data Terenkripsi di Blockchain Publik
Developer dapat menempatkan ciphertext dalam transaksi blockchain atau state smart contract.Hal ini dapat menyembunyikan plaintext secara langsung, tetapi tidak membuat transaksi menjadi tak terlihat.Pengamat mungkin tetap melihat pengirim, penerima, alamat kontrak, biaya transaksi, ukuran data, waktu, dan hubungan antarinteraksi yang berulang.Ciphertext dapat tetap tersedia selama riwayat blockchain disimpan.Jika kunci dekripsi kelak terekspos atau algoritma menjadi rentan, data historis dapat dibaca.Data pribadi sensitif umumnya tidak sebaiknya ditempatkan secara permanen on-chain hanya karena telah dienkripsi.Enkripsi dan Smart Contract
Smart contract publik biasa tidak dapat merahasiakan kunci dekripsi biasa dari semua partisipan jaringan sekaligus menggunakan kunci tersebut selama eksekusi publik.Bytecode kontrak, input, storage, dan hasil eksekusi umumnya dapat dilihat atau direproduksi oleh node.Menyimpan kunci dekripsi di storage kontrak tidak membuatnya privat.Menyamarkan kunci melalui encoding atau membaginya ke beberapa nilai yang terlihat juga tidak memberikan kerahasiaan yang andal.Privasi smart contract memerlukan protokol yang dirancang khusus untuk melindungi komputasi privat atau membuktikan hasil tanpa mengungkap semua input.Developer harus berasumsi bahwa rahasia apa pun yang dikirim langsung ke kontrak publik biasa dapat menjadi publik.Zero-Knowledge Proof vs. Enkripsi
Zero-knowledge proof memungkinkan satu pihak membuktikan bahwa suatu pernyataan benar tanpa mengungkap seluruh informasi privat yang mendasarinya.Enkripsi menyembunyikan data agar pihak berwenang dapat mendekripsinya nanti.Keduanya menyelesaikan masalah yang berbeda dan dapat digunakan bersama.Sistem transaksi privat dapat mengenkripsi data untuk pihak yang berwenang, sekaligus menggunakan zero-knowledge proof untuk menunjukkan bahwa transaksi tersembunyi mematuhi aturan protokol.Zero-knowledge proof tidak otomatis menyembunyikan metadata jaringan, alamat wallet, informasi browser, atau setiap input publik.Aplikasi privasi harus menganalisis seluruh aliran informasi, bukan hanya berfokus pada rangkaian proof.Homomorphic Encryption
Homomorphic encryption memungkinkan perhitungan tertentu dilakukan pada data terenkripsi tanpa terlebih dahulu mengungkap plaintext.Hasil yang didekripsi sesuai dengan perhitungan yang dilakukan pada informasi asli.Fully homomorphic encryption dirancang untuk mendukung komputasi luas atas ciphertext.Teknologi ini dapat mendukung analitik blockchain rahasia atau logika smart contract, tetapi masih membutuhkan komputasi besar untuk banyak penggunaan skala luas.Implementasi juga memerlukan pengelolaan kunci yang aman, kontrol akses, komputasi yang dapat diverifikasi, dan perlindungan terhadap kebocoran metadata.Homomorphic encryption tidak boleh dianggap sebagai pengganti sederhana untuk eksekusi blockchain biasa.Enkripsi Ambang
Threshold encryption membagi wewenang dekripsi di antara beberapa partisipan.Sejumlah partisipan tertentu harus bekerja sama sebelum data yang dilindungi dapat didekripsi.Tidak ada satu partisipan pun yang perlu memegang seluruh kemampuan dekripsi.Protokol kripto dapat menggunakan threshold encryption untuk sistem penawaran tertutup, pengungkapan tertunda, governance privat, atau pengurutan transaksi terlindungi.Desainnya harus menetapkan cara memilih partisipan, membuat kunci, menangani anggota yang offline, dan mengatasi share berbahaya.Threshold encryption berbeda dari wallet multisignature: yang pertama mengendalikan dekripsi, sedangkan yang kedua biasanya mengendalikan otorisasi transaksi.Enkripsi vs. Keamanan Multisignature
Wallet multisignature memerlukan beberapa persetujuan sebelum transaksi dapat diotorisasi.Enkripsi mengendalikan siapa yang dapat membaca informasi yang dilindungi.Wallet dapat menggunakan keduanya, tetapi keduanya tidak dapat saling menggantikan.Mengenkripsi satu kunci privat tidak menciptakan beberapa pemberi persetujuan transaksi yang independen.Kebijakan multisignature tidak otomatis mengenkripsi detail transaksi atau file backup.Sistem kustodi yang kuat memisahkan otorisasi, kerahasiaan, backup, pemulihan, dan tanggung jawab operasional.Enkripsi vs. Multiparty Computation
Multiparty computation memungkinkan beberapa pihak menghitung suatu hasil tanpa setiap partisipan mengungkap seluruh input privatnya.Sistem kustodi kripto dapat menggunakan teknik multiparty untuk membuat tanda tangan tanpa merekonstruksi satu kunci privat lengkap di satu perangkat.Hal ini tidak sama dengan mengenkripsi file kunci privat menggunakan password.Protokol multiparty memiliki asumsi tersendiri mengenai kejujuran partisipan, komunikasi, backup, ambang batas, dan kompromi perangkat.Pesan terenkripsi tetap dapat digunakan untuk melindungi komunikasi antarpartisipan.Pengelolaan Kunci
Pengelolaan kunci mencakup seluruh siklus hidup kunci kriptografis.Ini meliputi pembuatan, distribusi, penyimpanan, aktivasi, penggunaan, rotasi, backup, pemulihan, pencabutan, pengarsipan, dan penghancuran.Algoritma enkripsi yang kuat secara teknis tetap dapat gagal jika kuncinya disalin ke log, kode sumber, screenshot, tiket dukungan, atau repositori publik.Organisasi sebaiknya membatasi akses kunci hanya kepada sistem dan orang yang memerlukannya.Kunci penandatanganan dan enkripsi bernilai tinggi mungkin memerlukan perangkat keras khusus, pemisahan tugas, catatan akses, dan prosedur pemulihan yang telah diuji.Kunci enkripsi yang hilang dapat membuat data yang dienkripsi dengan benar tidak dapat diakses secara permanen.Rotasi Kunci
Rotasi kunci mengganti kunci kriptografis lama dengan yang baru.Rotasi dapat membatasi jumlah data yang terekspos jika satu kunci disusupi.Sistem dapat mengenkripsi catatan baru dengan kunci baru sambil mempertahankan akses terkendali ke kunci lama untuk dekripsi historis.Mengenkripsi ulang arsip besar dapat memerlukan banyak waktu dan penanganan kegagalan yang cermat.Aplikasi blockchain juga harus mempertimbangkan data immutable yang tidak dapat dihapus setelah perubahan kunci.Rencana rotasi kunci sebaiknya menetapkan pengenal versi, prosedur migrasi, aturan rollback, dan penghentian kunci lama secara aman.Enkripsi Envelope
Enkripsi envelope melindungi data menggunakan kunci enkripsi data yang dibuat secara acak.Kunci enkripsi kunci yang terpisah melindungi kunci enkripsi data tersebut.Setiap file atau catatan dapat memiliki kunci data yang berbeda, sementara kunci terpusat atau yang dilindungi perangkat keras mengelola akses ke kunci-kunci tersebut.Struktur ini dapat menyederhanakan rotasi karena sistem mungkin dapat membungkus ulang kunci data tanpa mengenkripsi ulang seluruh data dasarnya.Hilangnya kunci enkripsi kunci atau sistem aksesnya dapat memengaruhi banyak catatan yang dilindungi.Infrastruktur kripto sebaiknya menerapkan kontrol akses ketat dan backup pada setiap hierarki kunci.Enkripsi dan Keacakan
Enkripsi yang aman bergantung pada keacakan berkualitas tinggi untuk kunci, nonce, salt, dan rahasia sementara.Nilai acak yang dapat diprediksi dapat memungkinkan penyerang menebak kunci atau memulihkan informasi yang dilindungi.Fungsi acak biasa dalam bahasa pemrograman mungkin tidak sesuai untuk penggunaan kriptografis.Developer sebaiknya menggunakan sistem operasi atau pustaka kriptografi yang telah ditinjau dan menyediakan pembuatan angka acak yang aman.Virtual machine, perangkat tertanam, dan sistem yang baru dinyalakan perlu diperiksa untuk memastikan entropinya memadai.Pengguna tidak sebaiknya membuat kunci wallet dengan memilih kata, hasil dadu, tanggal, atau pola sendiri kecuali mengikuti metode pembuatan entropi yang telah ditinjau dengan cermat.Enkripsi Tidak Melindungi Endpoint yang Telah Disusupi
Enkripsi melindungi data selama penyerang tidak memiliki akses ke kunci dan plaintext yang diperlukan.Malware dapat mencuri informasi sebelum dienkripsi atau setelah didekripsi.Keylogger dapat merekam password wallet saat pengguna memasukkannya.Malware clipboard dapat mengganti alamat kripto meskipun file wallet terenkripsi.Malware perekam layar dapat merekam frasa pemulihan saat ditampilkan.Keamanan perangkat, pembaruan perangkat lunak, verifikasi transaksi, dan perlindungan fisik tetap diperlukan.Enkripsi dan Phishing
Situs phishing dapat menggunakan koneksi HTTPS terenkripsi yang valid.Ikon gembok menunjukkan bahwa koneksi terenkripsi ke domain yang ditampilkan, bukan bahwa situs web tersebut jujur.Penyerang dapat memperoleh sertifikat untuk domain yang menyesatkan dan mengirim permintaan approval atau tanda tangan berbahaya dengan aman melalui koneksi tersebut.Pengguna sebaiknya memverifikasi domain, prompt wallet, alamat kontrak, jaringan, aset, jumlah, dan izin sebelum melanjutkan.Enkripsi melindungi kanal komunikasi, tetapi tidak memvalidasi maksud finansial permintaan tersebut.Enkripsi dan Ketersediaan Data
Data terenkripsi hanya berguna jika pengguna berwenang dapat memperoleh ciphertext dan materi dekripsi yang diperlukan.File penyimpanan terdesentralisasi dapat hilang jika tidak ada partisipan yang terus menyimpannya.Perangkat keras dapat rusak saat menyimpan satu-satunya salinan kunci.Password dapat terlupakan atau partisipan berbagi kunci tidak lagi tersedia.Desain yang aman menyeimbangkan kerahasiaan dengan backup yang tangguh dan pemulihan.Membuat banyak salinan kunci tanpa perlindungan dapat meningkatkan ketersediaan sekaligus menghilangkan kerahasiaan.Enkripsi Pascakuantum
Komputer kuantum toleran terhadap kesalahan berskala besar dapat mengancam algoritma kunci publik yang banyak digunakan dan berbasis masalah faktorisasi atau logaritma diskret.Kriptografi pascakuantum menggunakan algoritma yang dirancang untuk menahan serangan komputer klasik maupun kuantum.NIST menyetujui tiga standar kriptografi pascakuantum pertamanya pada Agustus 2024.Pengumuman standar pascakuantum NIST mencakup FIPS 203 untuk pembentukan kunci ML-KEM serta FIPS 204 dan FIPS 205 untuk tanda tangan digital.
ML-KEM adalah mekanisme enkapsulasi kunci, bukan pengganti langsung untuk enkripsi data simetris.Sistem dapat menggunakannya untuk membentuk rahasia bersama, lalu mengenkripsi data dengan cipher simetris terautentikasi.Risiko Kuantum terhadap Mata Uang Kripto
Risiko kuantum memengaruhi enkripsi dan tanda tangan mata uang kripto dengan cara yang berbeda.Sistem tanda tangan kunci publik pada akhirnya mungkin perlu bermigrasi ke alternatif tahan kuantum.Enkripsi simetris juga terdampak teknik pencarian kuantum, tetapi penambahan ukuran kunci dapat memberikan perlindungan tambahan.AES-256 umumnya dianggap lebih konservatif daripada AES-128 untuk perlindungan jangka panjang terhadap kemungkinan peningkatan kemampuan pencarian kuantum.Jaringan kripto tidak dapat bermigrasi dengan aman hanya dengan mengubah satu aplikasi wallet karena format transaksi, aturan alamat, smart contract, node, dan sistem kustodi mungkin memerlukan koordinasi.Pengguna sebaiknya mengikuti panduan upgrade protokol resmi, bukan mentransfer aset berdasarkan klaim komputasi kuantum yang tidak didukung.Manfaat Enkripsi dalam Kripto
Enkripsi dapat melindungi rahasia wallet ketika perangkat penyimpanan atau file backup dicuri.Enkripsi dapat mengurangi paparan saat informasi sensitif dikirim melalui jaringan yang tidak tepercaya.Enkripsi dapat melindungi pesan privat, kredensial API, catatan akun, dan informasi pemulihan.Enkripsi dapat mendukung pembagian data terkendali dalam aplikasi blockchain.Enkripsi terautentikasi dapat mendeteksi perubahan tanpa izin sekaligus menyembunyikan konten.Desain hibrida dan ambang dapat membagi akses dengan lebih aman daripada satu rahasia plaintext bersama.Enkripsi dapat mengurangi risiko, tetapi tidak menjamin keamanan aset atau menggantikan pemeriksaan transaksi yang aman.Keterbatasan Enkripsi
Enkripsi tidak mencegah pengguna berwenang membagikan plaintext dengan sengaja.Enkripsi tidak menyembunyikan setiap jenis metadata.Enkripsi tidak melindungi data setelah kunci dekripsi dicuri.Enkripsi tidak dapat memulihkan aset yang ditransfer melalui transaksi valid tetapi berbahaya.Enkripsi tidak dapat membuat eksekusi smart contract publik menjadi rahasia tanpa teknologi privasi tambahan.Enkripsi tidak menjamin perangkat lunak bebas dari bug implementasi.Enkripsi juga dapat menyebabkan kehilangan data permanen jika satu-satunya kunci dekripsi atau password hilang.Cara Developer Menggunakan Enkripsi
Developer sebaiknya memulai dengan model ancaman yang jelas dan menentukan informasi mana yang memerlukan kerahasiaan.Developer sebaiknya menggunakan pustaka kriptografi yang terpelihara dan konstruksi enkripsi terautentikasi terstandardisasi.Kunci harus dibuat menggunakan keacakan yang aman dan tidak boleh ditanam langsung dalam kode sumber publik.Persyaratan nonce dan IV harus diikuti dengan tepat.Data yang dilindungi password sebaiknya menggunakan fungsi derivasi kunci bersalt yang sesuai dan parameter yang telah ditinjau.Pesan error tidak boleh mengungkap apakah bagian tertentu dari data rahasia benar.Developer sebaiknya menguji ciphertext yang rusak, password salah, nonce yang digunakan ulang, file terpotong, kunci kedaluwarsa, dan migrasi yang terputus.Peninjauan keamanan harus mencakup seluruh siklus hidup kunci, bukan hanya fungsi enkripsi.Cara Pengguna Kripto Menggunakan Enkripsi dengan Aman
Langkah pertama adalah memahami apakah password mengenkripsi file wallet lokal, mengubah derivasi wallet, atau mengendalikan akun online.Langkah kedua adalah menggunakan password yang kuat dan unik untuk data wallet terenkripsi.Langkah ketiga adalah melindungi frasa pemulihan secara terpisah karena enkripsi lokal mungkin tidak melindunginya.Langkah keempat adalah menyimpan backup aman dari ciphertext dan informasi pemulihan yang diperlukan.Langkah kelima adalah menguji pemulihan sebelum menyetorkan aset kripto dalam jumlah signifikan.Langkah keenam adalah menghindari memasukkan rahasia wallet ke situs web, pesan, atau formulir dukungan.Langkah ketujuh adalah memverifikasi detail transaksi pada layar tepercaya sebelum menandatangani.Langkah kedelapan adalah memperbarui perangkat lunak wallet, sistem operasi, browser, dan perangkat.Langkah kesembilan adalah menggunakan koneksi jaringan terenkripsi tanpa menganggap HTTPS sebagai bukti bahwa situs web sah.Langkah kesepuluh adalah merencanakan tindakan jika password, perangkat, atau pemegang kunci tidak lagi tersedia.Contoh Enkripsi Backup Wallet
Misalkan Alice membuat backup wallet yang berisi materi kunci sensitif.Wallet membuat salt acak dan memperoleh kunci enkripsi dari password Alice menggunakan fungsi derivasi kunci berbasis password.Wallet membuat nonce unik dan mengenkripsi backup dengan enkripsi terautentikasi.Wallet menyimpan ciphertext, salt, nonce, parameter derivasi, dan tag autentikasi dalam file terstruktur.Pencuri yang hanya mendapatkan file tersebut tetap harus menebak password Alice dan memverifikasi setiap tebakan melalui proses derivasi yang mahal.Password yang kuat dan parameter kerja yang sesuai dapat membuat serangan ini jauh lebih sulit.Alice menyimpan backup terenkripsi di lebih dari satu lokasi aman dan menyimpan password secara terpisah.Alice menguji prosedur pemulihan di lingkungan terkendali sebelum mengandalkan backup tersebut.Jika Alice lupa password dan tidak memiliki metode pemulihan alternatif, backup terenkripsi dapat menjadi tidak dapat digunakan secara permanen.Kesalahan Umum dalam Enkripsi
Kesalahan umum pertama adalah menganggap transaksi mata uang kripto bersifat privat karena menggunakan kriptografi.Kesalahan kedua adalah mencampuradukkan tanda tangan digital dengan enkripsi.Kesalahan ketiga adalah menganggap Base64, heksadesimal, atau format encoding lain sebagai enkripsi.Kesalahan keempat adalah menyimpan password dekripsi di samping file wallet terenkripsi.Kesalahan kelima adalah menggunakan password manusia yang lemah tanpa fungsi derivasi kunci yang sesuai.Kesalahan keenam adalah menggunakan ulang nonce dengan mode enkripsi yang mensyaratkan keunikan.Kesalahan ketujuh adalah mengenkripsi data tanpa mekanisme autentikasi.Kesalahan kedelapan adalah menempatkan data sensitif terenkripsi permanen di blockchain tanpa mempertimbangkan risiko kebocoran kunci di masa depan.Kesalahan kesembilan adalah menganggap hardware wallet terenkripsi menghilangkan risiko transaksi berbahaya.Kesalahan kesepuluh adalah tidak menguji pemulihan backup sebelum wallet asli hilang.FAQ
Apa arti enkripsi dalam mata uang kripto?
Enkripsi berarti mengubah data wallet, pesan, backup, atau informasi lainnya menjadi ciphertext yang memerlukan kunci berwenang untuk didekripsi.Apakah transaksi mata uang kripto dienkripsi?
Sebagian besar transaksi blockchain publik ditandatangani dan dapat diverifikasi secara publik, bukan dienkripsi.Mengapa transaksi blockchain ditandatangani, bukan dienkripsi?
Partisipan jaringan harus membaca dan memverifikasi instruksi transaksi, sedangkan tanda tangan membuktikan bahwa kunci berwenang menyetujuinya.Apa perbedaan enkripsi dan kriptografi?
Enkripsi adalah salah satu bagian kriptografi, sedangkan kriptografi juga mencakup hashing, tanda tangan, proof, commitment, dan metode pembentukan kunci.Apa perbedaan enkripsi dan hashing?
Enkripsi dapat dibalikkan dengan kunci yang sesuai, sedangkan hashing aman dirancang sebagai transformasi satu arah.Apa perbedaan enkripsi dan encoding?
Enkripsi memerlukan materi kunci yang dilindungi, sedangkan encoding hanya mengubah representasi data dan biasanya dapat dibalikkan oleh siapa pun.Apa itu enkripsi simetris?
Enkripsi simetris menggunakan kunci rahasia yang sama, atau kunci rahasia yang berkaitan erat, untuk mengenkripsi dan mendekripsi data.Apa itu enkripsi asimetris?
Enkripsi asimetris menggunakan kunci publik untuk enkripsi dan kunci privat pasangannya untuk dekripsi.Apa itu enkripsi hibrida?
Enkripsi hibrida melindungi data dengan kunci simetris dan melindungi kunci tersebut melalui mekanisme kunci publik.Apa itu AES?
AES adalah block cipher simetris terstandardisasi yang tersedia dengan kunci 128-bit, 192-bit, dan 256-bit.Apa itu enkripsi terautentikasi?
Enkripsi terautentikasi menyembunyikan plaintext dan mendeteksi perubahan data yang dilindungi tanpa izin.Apa itu nonce enkripsi?
Nonce adalah nilai tambahan yang harus memenuhi persyaratan keunikan atau ketakterdugaan dari metode enkripsi yang dipilih.Apakah password wallet sama dengan kunci privat?
Tidak. Password wallet dapat membuka file terenkripsi, sedangkan kunci privat secara langsung mengotorisasi transaksi untuk akun terkait.Apakah password wallet melindungi frasa pemulihan?
Belum tentu, karena frasa pemulihan dapat membuat ulang wallet secara terpisah dari file terenkripsi lokal.Apakah passphrase BIP-39 merupakan enkripsi biasa?
Tidak. Passphrase ini mengubah seed turunan dan membuat wallet berbeda, bukan sekadar mendekripsi file mnemonic yang tersimpan.Apa itu keystore terenkripsi?
Keystore terenkripsi adalah file terstruktur yang berisi materi kunci privat terenkripsi serta parameter yang diperlukan untuk memperoleh dan memverifikasi kunci dekripsinya.Dapatkah wallet terenkripsi diretas?
Ya. Penyerang dapat menebak password yang lemah, mengeksploitasi perangkat lunak wallet, merekam password, membaca memori yang telah didekripsi, atau menipu pengguna agar mengotorisasi transaksi berbahaya.Apakah hardware wallet menggunakan enkripsi?
Hardware wallet dapat mengenkripsi storage internal, tetapi tujuan utamanya adalah mengisolasi operasi kunci privat dari komputer yang terhubung.Apakah HTTPS membuat situs kripto aman?
Tidak. HTTPS mengenkripsi koneksi ke domain, tetapi tidak membuktikan bahwa situs web atau permintaan transaksi tersebut jujur.Dapatkah smart contract merahasiakan kunci enkripsi?
Smart contract publik biasa tidak dapat menyimpan dengan aman kunci rahasia yang harus tetap tersembunyi dari semua partisipan jaringan.Dapatkah data terenkripsi disimpan on-chain?
Ya, tetapi ciphertext dan metadata transaksi tetap publik, dan kebocoran kunci di masa depan dapat mengungkap plaintext yang tersimpan permanen.Apakah zero-knowledge proof merupakan enkripsi?
Bukan. Zero-knowledge proof membuktikan kebenaran suatu pernyataan tanpa mengungkap semua input privat, sedangkan enkripsi menyembunyikan data yang dapat dipulihkan.Apa itu threshold encryption?
Threshold encryption mengharuskan sejumlah partisipan tertentu bekerja sama sebelum data yang dilindungi dapat didekripsi.Dapatkah enkripsi memulihkan mata uang kripto yang dicuri?
Tidak. Enkripsi tidak dapat membalikkan transfer blockchain yang valid atau memulihkan aset yang dikirim kepada penyerang.Apa yang terjadi jika kunci enkripsi hilang?
Data yang dienkripsi dengan benar dapat menjadi tidak dapat diakses secara permanen jika tidak ada salinan kunci dekripsi atau metode pemulihan yang dapat digunakan.Apa itu enkripsi pascakuantum?
Enkripsi pascakuantum menggunakan sistem pembentukan kunci dan enkripsi yang dirancang untuk menahan serangan komputer kuantum di masa depan.Apakah kriptografi wallet saat ini tahan kuantum?
Banyak sistem tanda tangan mata uang kripto yang umum digunakan tidak dirancang untuk menahan komputer kuantum masa depan yang cukup kuat.Apakah enkripsi kuat menjamin keamanan kripto?
Tidak. Keamanan juga bergantung pada perangkat, perangkat lunak, pengelolaan kunci, backup, izin, pemeriksaan transaksi, dan perilaku pengguna.Kesimpulan
Enkripsi mengubah informasi yang dapat dibaca menjadi ciphertext yang dapat dipulihkan pihak berwenang dengan kunci kriptografis yang tepat.Dalam mata uang kripto, enkripsi melindungi file wallet, backup kunci privat, kredensial, pesan, catatan tersimpan, dan koneksi jaringan.Enkripsi tidak boleh disamakan dengan tanda tangan digital, hashing, atau encoding data.Transaksi blockchain publik umumnya ditandatangani dan terlihat oleh publik, bukan dienkripsi.Enkripsi simetris secara efisien melindungi data dalam jumlah besar, sedangkan kriptografi asimetris membantu membentuk kunci dan melindungi data untuk penerima tertentu.Sistem modern umumnya menggabungkan metode ini melalui enkripsi hibrida dan terautentikasi.Enkripsi wallet mengurangi risiko akibat file yang dicuri, tetapi tidak dapat melindungi rahasia setelah malware merekam password atau kunci yang telah didekripsi.Frasa pemulihan, password wallet lokal, dan passphrase BIP-39 harus dipahami serta dilindungi sesuai fungsi masing-masing.Developer harus menggunakan algoritma yang telah ditinjau, keacakan yang aman, nonce unik, derivasi kunci yang kuat, autentikasi, dan prosedur pengelolaan kunci yang lengkap.Pengguna harus memelihara backup yang telah diuji, memverifikasi detail transaksi, mengamankan endpoint, dan tidak menganggap HTTPS atau enkripsi hardware sebagai bukti bahwa aplikasi dapat dipercaya.Standar pascakuantum mulai menyediakan opsi baru untuk pembentukan kunci dan tanda tangan, tetapi migrasi mata uang kripto memerlukan koordinasi cermat antara wallet, protokol, dan infrastruktur.Memahami enkripsi membantu pengguna kripto membedakan kerahasiaan dari otorisasi transaksi serta mengambil keputusan yang lebih baik mengenai wallet, backup, privasi, dan keamanan aset jangka panjang.Anda Mungkin Juga Menyukai
ZK-Rollup
ZK-Rollup-as-a-Service
zk-SNARK
POPULER
Mata uang kripto yang sedang tren saat ini dan menarik perhatian pasar yang signifikan
Volume TERATAS
Mata uang kripto dengan volume trading tertinggi
Baru Ditambahkan
Mata uang kripto yang baru saja masuk listing dan tersedia untuk trading

