Dekripsi Stream Cipher Rabbit

Dekripsi data stream cipher Rabbit dari CryptoJS (Base64 Salted__ dengan frasa sandi) atau ciphertext mentah dengan kunci hex 128 bit dan IV 64 bit opsional.

Rabbit adalah stream cipher yang jarang dipakai, tanpa perlindungan integritas dan dukungan pustakanya minim. Untuk aplikasi baru, pilih AES-GCM.

Output memakai format OpenSSL "Salted__" dalam Base64 dengan kunci dan IV yang diturunkan dari frasa sandi – format yang sama dengan CryptoJS.Rabbit.encrypt(text, passphrase). OpenSSL sendiri tidak punya cipher Rabbit.

Berjalan sepenuhnya di browser Anda. Data Anda tidak pernah diunggah.

Apa itu Dekripsi Rabbit?

Mendekripsi data yang dienkripsi dengan stream cipher Rabbit, biasanya dihasilkan oleh CryptoJS.Rabbit.encrypt. Tempel string Base64 U2FsdGVkX1… beserta frasa sandinya, atau ciphertext mentah dengan kunci dan IV hex.

Cara menggunakan Dekripsi Rabbit

  1. Pilih Sumber kunci yang sama dengan saat enkripsi: Frasa sandi (kompatibel OpenSSL) untuk data U2FsdGVkX1… ("Salted__"), atau Kunci mentah + IV (hex) untuk ciphertext mentah.
  2. Masukkan frasa sandi atau kunci hex 16 byte (dan IV 8 byte jika dipakai).
  3. Tempel Ciphertext lalu klik Dekripsi.

Contoh

Masukan
U2FsdGVkX19PD1rihUsU44L3vJkKAmy580QhQw== (passphrase "secret")
Keluaran
Hello Rabbit

Ciphertext dari CryptoJS.Rabbit.encrypt("Hello Rabbit", "secret").

Kapan menggunakan Dekripsi Rabbit

Gunakan untuk membaca atau men-debug data dari aplikasi yang memakai CryptoJS Rabbit. Alat ini tidak bisa mendekripsi tanpa frasa sandi atau kunci yang benar.

Cara kerja Dekripsi Rabbit

Salt dibaca dari header Salted__, kunci 16 byte dan IV 8 byte diturunkan ulang (EVP_BytesToKey MD5 atau PBKDF2-SHA256), lalu keystream Rabbit di-XOR dengan ciphertext. Dalam mode mentah, kunci dan IV Anda dipakai langsung. Stream cipher tidak memiliki padding, sehingga kunci yang salah terlihat sebagai output UTF-8 yang tidak valid.

Kasus Penggunaan Umum

  • Mendekripsi nilai yang disimpan aplikasi web yang memakai CryptoJS.Rabbit
  • Memeriksa bahwa implementasi Rabbit Anda cocok dengan CryptoJS
  • Memulihkan data uji saat debugging
  • Memigrasikan data terenkripsi Rabbit ke AES

Catatan Keamanan

Belum ada pembobolan praktis yang diketahui terhadap Rabbit, tetapi cipher ini jarang dipakai, tidak memiliki perlindungan integritas bawaan, dan sedikit library yang mendukungnya. Gunakan AES-GCM untuk sistem baru.

Pertanyaan Umum

Mengapa saya mendapat galat "UTF-8 tidak valid"?

Kemungkinan besar frasa sandi atau kuncinya salah; Rabbit sendiri tidak bisa mendeteksinya. Jika data aslinya biner, ubah output ke Hex.

Ciphertext saya tidak diawali U2FsdGVkX1.

Berarti CryptoJS dipanggil dengan kunci dan IV eksplisit. Pilih Kunci mentah + IV (hex) lalu masukkan keduanya dalam hex.

Apakah mendukung RabbitLegacy?

Tidak, hanya varian standar CryptoJS.Rabbit.

Jelajahi kategori lainnya