Bantuan teknis
Base64 bukan enkripsi: apa yang sebenarnya dilakukannya
Base64 adalah pengodean, bukan enkripsi. Mengapa tidak menyembunyikan kata sandi, mengapa ukurannya membesar, dan cara mendekodenya.
Base64 adalah pengodean, bukan enkripsi. Ia mengubah data biner menjadi bentuk teks yang bisa disimpan atau dikirim sistem berorientasi teks.
Siapa pun yang punya teks Base64 biasanya bisa mendekodenya. Tidak perlu kata sandi atau kunci rahasia.
Jangan memakai Base64 untuk melindungi kata sandi, kunci API, token akses, pesan pribadi, atau rahasia lain. Ini alat representasi, bukan mekanisme keamanan.
Jika string tampak acak, itu tidak berarti terenkripsi. Base64 hanya mengubah cara byte ditulis sebagai teks.
Apa yang sebenarnya dilakukan Base64?
Base64 mengodekan data biner dengan himpunan ASCII terbatas: A–Z, a–z, 0–9, +, dan /. Padding = bisa muncul agar panjang keluaran kelipatan 4. Padding tidak selalu ada—masukan pendek bisa memakai satu atau dua =, dan beberapa format menghilangkannya.
Hello
Hello
Base64
SGVsbG8=
Dekode SGVsbG8= dan Anda mendapat Hello lagi. Perjalanan bolak-balik itu tidak butuh kunci.
- Data asli
- Hello
- Encode Base64
- SGVsbG8=
- Dekode Base64
- Hello
Base64 vs enkripsi: apa bedanya?
Base64 untuk representasi dan kompatibilitas. Ia tidak menyembunyikan isi. Enkripsi untuk kerahasiaan dan memakai bahan kunci kriptografi. Mendekode Base64 bukan mendekripsi. Sistem kunci publik juga memakai kunci; katakan “kunci kriptografi yang sesuai”, bukan “satu rahasia bersama untuk setiap jenis enkripsi”. Hashing adalah gagasan ketiga: digest, bukan pengodean yang dapat dibalik.
- Pengodean
- Tanpa kunci rahasia
- Dapat dibalik siapa pun
- Enkripsi
- Perlindungan kriptografi
- Butuh kunci yang tepat untuk dekripsi
Tiga pekerjaan berbeda:
| Metode | Tujuan utama | Rahasia diperlukan |
|---|---|---|
| Base64 | Mengodekan data sebagai teks | Tidak |
| Enkripsi | Melindungi kerahasiaan | Ya / bahan kunci |
| Hashing | Digest satu arah | Tanpa dekripsi |
Apakah Base64 aman?
Base64 sendiri tidak memberi kerahasiaan. Teks bisa tampak buram, tetapi itu bukan fitur keamanan. Dekoder biasa mengembalikan byte. Itu tidak berarti “Base64 tidak aman” sebagai teknologi. Ini pengodean biasa. Bukan mekanisme keamanan. Keamanan bergantung pada sistem dan kontrol di sekitarnya.
Bisakah Base64 dipakai menyembunyikan kata sandi atau kunci API?
Tidak, bukan sebagai perlindungan. Mengodekan kata sandi, kunci API, token akses, atau data pribadi sebagai Base64 tidak melindunginya. Siapa pun yang mendapat string terode biasanya bisa mendekodenya. Pakai penyimpanan rahasia sungguhan dan enkripsi jika kerahasiaan penting.
Mengapa Base64 dipakai jika bukan enkripsi?
Sistem yang mengharapkan teks sering tidak bisa membawa biner mentah. Base64 dipakai untuk merepresentasikan biner dalam format teks, menanam sumber biner kecil, memindahkan byte lewat saluran khusus teks, membangun Data URL, muncul di beberapa konteks email/MIME, dan mengisi muatan API saat skema meminta Base64. API tidak memakai Base64 “demi keamanan”. Mereka memakainya demi kompatibilitas.
Mengapa Base64 membuat data lebih besar?
Base64 terpadding standar memetakan 3 byte masukan ke 4 karakter. Panjangnya 4 × ceil(n / 3), n adalah jumlah byte masukan. Tiga byte menjadi 4 karakter; enam menjadi 8. Itu kira-kira 33% lebih besar—sekitar sepertiga—untuk muatan mentah besar. Masukan kecil bisa tampak berbeda karena padding: satu byte menjadi QQ== (4 karakter). Tanda kutip JSON, awalan Data URL, kompresi, atau pengodean transport tambahan bisa mengubah ukuran tersimpan atau terkirim. Base64 tidak mengompres data.
Apa itu Base64URL?
Base64URL adalah varian aman untuk URL dan nama berkas dari pengodean yang sama—bukan enkripsi. + menjadi -, / menjadi _, dan padding sering dihilangkan. Encode dan decode Base64 dapat mengodekan dan mendekode Base64 standar serta Base64URL. Aturan padding bergantung pada spesifikasi. Alat ini bukan dekoder JWT.
Bisakah Base64 mengodekan gambar dan berkas?
Ya. Gambar, PDF, dan berkas biner lain bisa diubah menjadi representasi teks Base64. Base64 tidak mengompres berkas itu. Teks terode biasanya lebih besar daripada byte mentah.
Apa itu Data URL Base64?
Data URL dapat menampung jenis media, penanda pengodean, dan byte terode dalam satu string:
data:image/png;base64,...
Nyaman untuk aset kecil. Memasukkan berkas besar ke Data URL tidak selalu ide bagus: string memanjang dan halaman bisa lebih lambat. Anggap sebagai kompromi, bukan bawaan.
Pengodean vs enkripsi vs hashing
Pengodean (termasuk Base64) untuk representasi dan dapat dibalik tanpa rahasia. Enkripsi untuk kerahasiaan dan melibatkan bahan kunci kriptografi. Hashing menghasilkan digest yang umumnya dirancang satu arah. Panjang keluaran bergantung pada algoritma—SHA-256 dan SHA-512 tidak sama ukurannya. Buat hash dapat menampilkan digest itu; ia tidak mengenkripsi atau menggantikan Base64.
Kesalahan umum Base64
Menganggap Base64 sebagai enkripsi
Hanya mengubah tampilan byte sebagai teks.
Menyimpan rahasia sebagai Base64 polos
Nilai terode bisa didekode siapa pun yang memilikinya.
Mengira Base64 mengompres data
Tidak. Bentuk teks biasanya lebih besar.
Lupa kenaikan ukuran
Rencanakan kira-kira sepertiga lebih pada muatan mentah besar.
Membingungkan Base64 dengan Base64URL
Alfabetnya berbeda. Dekoder bisa menolak varian yang salah.
Mendekode dengan pengodean karakter yang salah
Base64 mengembalikan byte. Teks masih butuh pengodean yang cocok, biasanya UTF-8.
Mengira = selalu muncul
Padding dipakai saat diperlukan. Beberapa string tidak punya.
Mengapa teks Unicode bisa bermasalah dengan Base64?
Base64 bekerja pada byte, bukan karakter. Teks harus dijadikan byte dulu—biasanya UTF-8. Korea, Jepang, Arab, dan emoji butuh langkah itu. btoa() browser pada string Unicode bisa gagal. Encode dan decode Base64 mengodekan byte UTF-8, jadi teks itu bolak-balik. Jika didekode dengan charset salah, Base64 bisa sah tetapi huruf tetap tampak salah.
Base64 tidak memberi kerahasiaan. Siapa pun yang punya nilai terode biasanya bisa mendekodenya. Jangan anggap teks yang tampak acak sebagai rahasia terlindungi.
Encode atau dekode Base64 di peramban
NEXNARA Encode dan decode Base64 mengubah teks UTF-8 dan berkas secara lokal.
Anda dapat mengodekan atau mendekode Base64 standar dan Base64URL, mengubah berkas menjadi Base64 mentah atau Data URL, dan mengembalikan Base64 atau Data URL menjadi unduhan. Masukan tidak sah ditolak, bukan merusak. Spasi diabaikan; padding yang hilang dilengkapi.
Berkas di atas 10 MB bisa memperlambat tab. Berkas di atas 32 MB tidak diproses di peramban.
Pemrosesan Base64 sendiri terjadi di peramban Anda. Teks atau berkas tidak dikirim ke server NEXNARA untuk alat ini. Iklan dan fitur situs lain tetap memakai jaringan; itu terpisah dari pemrosesan.
Perlu mengodekan atau mendekode Base64? Buka Encode dan decode Base64 lalu tempel teks atau jatuhkan berkas.
FAQ
Apakah Base64 enkripsi?
Tidak. Base64 adalah pengodean. Ia mengubah representasi. Ia tidak melindungi kerahasiaan.
Apakah Base64 aman?
Base64 bukan mekanisme keamanan. Ini pengodean biasa. Siapa pun yang punya teks biasanya bisa mendekodenya. Keamanan bergantung pada sisa sistem.
Bisakah Base64 didekode tanpa kata sandi?
Ya. Dekoder standar cukup. Base64 sendiri tidak butuh kata sandi atau kunci rahasia.
Mengapa Base64 menambah ukuran berkas?
Setiap 3 byte menjadi 4 karakter pada Base64 terpadding standar (panjang 4 × ceil(n / 3)). Itu kira-kira 33% lebih untuk muatan mentah besar. Padding bisa mengubah rasio pada masukan sangat kecil.
Apa beda Base64 dan Base64URL?
Base64URL memakai - dan _ sebagai ganti + dan /, dan sering menghilangkan padding =. Keduanya pengodean. Encode dan decode Base64 mendukung kedua alfabet.
Bisakah Base64 mengodekan gambar dan berkas?
Ya. Hasilnya teks, bukan berkas yang lebih kecil. Pakai mode Berkas di Encode dan decode Base64 untuk Base64 mentah atau Data URL. Berkas tetap di peramban.