Studioworkslab

Ruang percobaan

Delapan perkakas untuk mengubah, menyandikan, dan meringkas teks. Semuanya dihitung di perangkat Anda dengan JavaScript murni dan Web Crypto API — tidak ada permintaan jaringan, tidak ada yang disimpan.

Tanpa serverTanpa pustaka Web Crypto APIUntuk belajar
Perkakas
01 / Substitusi

Caesar cipher

Menggeser setiap huruf sejauh n posisi dalam alfabet. Sandi tertua yang tercatat dipakai Julius Caesar, dan paling mudah dipecahkan: cukup coba 25 kemungkinan.

3
Hasil
02 / Substitusi

ROT13

Caesar dengan pergeseran tetap 13. Karena alfabet Latin punya 26 huruf, proses menyandikan dan membuka sandinya identik — dipakai di forum lama untuk menyembunyikan spoiler, bukan untuk keamanan.

ROT13

Jalankan dua kali untuk kembali ke teks semula.

03 / Pengodean

Base64

Mengubah data biner menjadi 64 karakter ASCII yang aman dikirim lewat teks — dipakai di data URI, lampiran surel, dan token. Ini pengodean, bukan enkripsi: siapa pun bisa membalikkannya.

Hasil

Mendukung karakter non-ASCII lewat UTF-8 (TextEncoder / TextDecoder).

04 / Pengodean

URL encode

Mengganti karakter yang tidak aman di alamat web menjadi bentuk persen, misalnya spasi jadi %20. Berguna saat menyusun parameter kueri atau tautan mailto: dengan subjek panjang.

Hasil

“Encode komponen” menyandikan juga & ? / : — pakai ini untuk isi parameter, bukan untuk URL utuh.

05 / Ringkasan

Hash SHA

Fungsi hash memampatkan masukan apa pun menjadi sidik jari dengan panjang tetap dan satu arah. Ubah satu huruf saja, seluruh hasilnya berubah total — dipakai untuk verifikasi berkas dan tanda tangan digital.

SHA-1
SHA-256
SHA-384
SHA-512

SHA-1 ditampilkan untuk perbandingan saja — sudah dianggap tidak aman sejak tabrakan praktis ditemukan pada 2017. Perlu koneksi HTTPS agar Web Crypto aktif.

06 / Simetris

XOR cipher

Setiap byte teks di-XOR dengan byte kunci yang diulang. Operasi yang sama dipakai untuk membuka sandinya. Kalau kuncinya sepanjang pesan dan benar-benar acak, ini menjadi one-time pad; kalau pendek dan berulang, mudah dianalisis.

Hasil sandi ditampilkan sebagai heksadesimal agar tetap bisa disalin sebagai teks.

Hasil
07 / Konversi

Biner & heksadesimal

Melihat teks sebagaimana mesin menyimpannya: deretan byte UTF-8 dalam basis dua atau basis enam belas. Berguna untuk memahami kenapa satu emoji bisa memakan empat byte.

Hasil

08 / Utilitas

Pembangkit sandi

Menghasilkan sandi acak memakai crypto.getRandomValues() — sumber acak kriptografis bawaan browser, bukan Math.random(). Entropi dihitung dari panjang dikali logaritma dua ukuran himpunan karakter.

20
Himpunan karakter
Hasil

Sandi dibuat lokal dan tidak pernah meninggalkan peramban. Tetap simpan di pengelola sandi, jangan di catatan biasa.

Tersalin