Masukan
Menyiapkan ruang kerja Anda…
Cara menggunakan
- Pilih enkripsi atau dekripsi, format ciphertext dan pengaturan AES yang sesuai.
- Masukkan data, kunci atau frasa sandi, IV, salt serta parameter autentikasi yang diperlukan.
- Jalankan tindakan dan simpan parameter yang diperlukan untuk dekripsi.
Enkripsi / Dekripsi AES
Enkripsi atau dekripsi dengan mode, kunci, IV, dan encoding yang cocok. GCM adalah mode terautentikasi bawaan.
Simpan IV, salt, dan pengaturan yang cocok bersama ciphertext. Kunci dan frasa sandi masukan tidak diekspor.
Mengolah masukan
Gunakan tepat 16, 24, atau 32 byte untuk AES-128, AES-192, atau AES-256. Kunci tidak diisi atau dipotong otomatis.
GCM: 12–64 byte (12 disarankan). CBC, CTR, CFB: tepat 16 byte. ECB tidak menggunakan IV. Secara default setiap enkripsi menghasilkan IV dan salt acak baru, sehingga plaintext yang sama dapat memberi hasil berbeda. Nilai manual berguna untuk kompatibilitas; ikuti persyaratan IV/nonce mode tersebut.
Plaintext: Hello, encrypted world! 🌐
Passphrase: DevToolsy-demo-passphrase{
"format": "devtoolsy-aes",
"version": 2,
"mode": "GCM",
"keyBits": 256,
"keySource": "passphrase",
"padding": "none",
"iv": "EBESExQVFhcYGRob",
"ciphertext": "QdSMophe/cqRY/7qS1tHMemEKsgTwgzhEdCmOixECYc6+/X/mfq9f9Wq0CE=",
"kdf": {
"name": "PBKDF2",
"hash": "SHA-256",
"iterations": 600000,
"salt": "AAECAwQFBgcICQoLDA0ODw=="
},
"authentication": {
"tagLength": 128,
"aad": ""
}
}Hanya data contoh. Jangan gunakan rahasia contoh sebagai kredensial yang sebenarnya.
Perilaku dan batas
GCM mendukung tag 96/104/112/120/128-bit, AAD, serta tag gabungan atau terpisah. CBC/ECB mendukung PKCS#7 atau NoPadding, yang memerlukan blok lengkap 16 byte. CFB memakai segmen 128-bit; CTR mendukung penghitung 1–128-bit. Plaintext dibatasi 1 MiB. Hasil biner dapat dilihat sebagai Hex/Base64 atau diunduh sebagai byte mentah; UTF-8 tidak valid dilaporkan sebagai error.
Mode ini tidak mengautentikasi data. Kunci yang salah dapat menghasilkan keluaran tanpa error. Gunakan GCM untuk mendeteksi perubahan.
ECB untuk kompatibilitas lama: blok teks yang sama menghasilkan blok ciphertext yang sama.
Menyalin dan menggunakan kembali
JSON v2 menyimpan parameter nonrahasia dan membaca v1 dengan AES-256-GCM / PBKDF2-SHA256 / 600.000 iterasi. JSON adalah wadah, tidak menambah autentikasi. Memakai hasil sebagai masukan membawa parameter sebenarnya; kembali ke enkripsi memulihkan IV/salt acak.
Mode kunci mentah dapat bertukar data dengan Node.js, Python atau OpenSSL jika mode, byte kunci, IV, padding, encoding dan tag/AAD GCM sama. Pembungkus OpenSSL Salted__ atau frasa sandi CryptoJS tidak diurai otomatis: gunakan kunci turunan dan IV sebenarnya. Simpan IV, salt, dan pengaturan yang cocok bersama ciphertext. Kunci dan frasa sandi masukan tidak diekspor.
Masukan: 1 MiB; Kunci rahasia: 64 KiB; File: 1 GiB; Kata sandi: 4–128 (Panjang), 1–100 (Jumlah); bcrypt: 1–72 byte UTF-8 · biaya 4–14 · default 10; AES: Teks asli 1 MiB, Frasa sandi 1 KiB, GCM / CBC / CTR / CFB / ECB, 128/192/256-bit; PBKDF2 / HKDF: Kata sandi / byte masukan 64 KiB, Salt / info 1 KiB, Panjang keluaran (byte) 1–256; 1–256 byte keluaran · hingga 2.000.000 iterasi PBKDF2 · masukan tetap di perangkat; Waktu: 30 s; File: 120 s.
Pertanyaan umum
Apa yang diperlukan untuk mendekripsi nanti?
Simpan IV, salt, dan pengaturan yang cocok bersama ciphertext. Kunci dan frasa sandi masukan tidak diekspor.
Mengapa hasil enkripsi selalu berbeda?
Secara default setiap enkripsi menghasilkan IV dan salt acak baru, sehingga plaintext yang sama dapat memberi hasil berbeda. Nilai manual berguna untuk kompatibilitas; ikuti persyaratan IV/nonce mode tersebut.
Apakah masukan saya dikirim ke DevToolsy?
Tidak. Alat ini memproses data secara lokal. Rahasia, nama file, dan hasil tidak dimasukkan ke URL halaman atau disimpan dalam riwayat alat.
Apa yang dihapus oleh Hapus?
Hapus mengosongkan nilai kerja yang terlihat. Tindakan ini tidak menjamin penghapusan memori secara aman; salinan papan klip dan file unduhan dikelola secara terpisah oleh perangkat Anda.
Bisakah alat ini mendekripsi sembarang keluaran OpenSSL atau CryptoJS?
Mode kunci mentah dapat bertukar data dengan Node.js, Python atau OpenSSL jika mode, byte kunci, IV, padding, encoding dan tag/AAD GCM sama. Pembungkus OpenSSL Salted__ atau frasa sandi CryptoJS tidak diurai otomatis: gunakan kunci turunan dan IV sebenarnya.
Mode mana yang sebaiknya dipilih?
Enkripsi atau dekripsi dengan mode, kunci, IV, dan encoding yang cocok. GCM adalah mode terautentikasi bawaan. Mode ini tidak mengautentikasi data. Kunci yang salah dapat menghasilkan keluaran tanpa error. Gunakan GCM untuk mendeteksi perubahan. ECB untuk kompatibilitas lama: blok teks yang sama menghasilkan blok ciphertext yang sama.