Enkripsi & Dekripsi SM4
Enkripsi dan dekripsi teks dengan SM4, standar enkripsi nasional Tiongkok.
Anda akan membutuhkannya lagi untuk mendekripsi. Apa pun yang Anda ketik tidak keluar dari halaman ini.
Bawaan OpenSSL adalah 10.000. Angka berapa pun bisa dipakai: makin banyak, makin lambat kata sandi ditebak; dekripsi membutuhkan angka yang sama.
Pilihan umum dengan OpenSSL. Butuh IV; diberi padding hingga blok penuh.
openssl enc -sm4-cbc -pbkdf2 -iter 10000 -a -AOpenSSL akan meminta kata sandi; tempel teksnya ke sana, atau tambahkan file -in dan -out.
SM4, dulu bernama SMS4, adalah block cipher standar nasional Tiongkok (GB/T 32907-2016), dengan kunci 128 bit dan blok 16 byte; sejak 2021 ia juga menjadi bagian dari ISO/IEC 18033-3. Sistem yang mengikuti aturan kriptografi komersial Tiongkok memakainya di tempat sistem lain memakai AES, misalnya di sistem perbankan dan pemerintahan. Enkripsi dan dekripsi teks dengan SM4 di sini dalam mode CBC secara bawaan, atau ECB, CTR, CFB, maupun OFB, dengan kata sandi dalam format openssl enc -pbkdf2 atau kunci dan IV hex 32 digit milik Anda. SM4 berjalan di browser Anda, jadi teks dan kunci tidak pernah keluar dari perangkat, gratis, dan tanpa perlu mendaftar.
Cara mengenkripsi dan mendekripsi teks dengan SM4
- Pilih Enkripsi atau Dekripsi. Ketik teks yang ingin dienkripsi, atau tempel teks Base64 atau hex yang ingin didekripsi — formatnya dikenali otomatis.
- Masukkan kata sandi (tombol Buat menghasilkan kata sandi yang kuat), atau beralih ke Kunci & IV (hex) lalu masukkan atau buat kunci 32 digit dan IV 32 digit (ECB tidak memakai IV).
- Pilih mode — CBC, kecuali data dibuat dengan mode lain. Aktifkan Tanpa padding hanya jika data dienkripsi tanpa padding PKCS#7.
- Salin atau unduh hasilnya. Di bagian Sama dengan OpenSSL, halaman menampilkan perintah openssl yang melakukan hal yang sama, tanpa kata sandi Anda.
Fitur
- SM4 (GB/T 32907-2016) dengan kunci 128 bit
- Mode CBC, ECB, CTR, CFB, dan OFB; padding PKCS#7 atau tanpa padding
- Mode kata sandi dalam format openssl enc -pbkdf2, bisa dibaca oleh openssl enc -sm4-cbc
- Perintah openssl yang setara untuk setiap mode
- Mode Kunci & IV dengan kunci dan IV hex 32 digit, diketik atau dibuat otomatis
- Base64 atau hex untuk input dan output; salin, unduh, atau Tukar hasilnya
Apakah privasi terjaga?
Ya. SM4 berjalan dengan WebAssembly di dalam browser Anda, dan kata sandi diperkuat oleh Web Crypto milik browser; teks, kata sandi, dan kunci Anda tidak pernah diunggah atau disimpan.
Pertanyaan umum
Apakah SM4 aman?
Ya. Belum ada serangan praktis yang diketahui terhadap SM4 versi penuh 32 putaran, dan kunci 128 bit-nya memberi keamanan kurang lebih setara AES-128. Seperti cipher lain di sini, kata sandi adalah titik lemahnya — gunakan kata sandi acak yang panjang.
Bisakah saya mendekripsinya dengan OpenSSL?
Bisa, dengan OpenSSL 3: echo 'U2FsdGVkX1…' | openssl enc -d -sm4-cbc -pbkdf2 -iter 10000 -a -A (OpenSSL lalu meminta kata sandi). Pakai -sm4-ecb, -sm4-ctr, -sm4-cfb, atau -sm4-ofb untuk mode lainnya, dan -K <32 digit hex> -iv <32 digit hex> sebagai ganti -pbkdf2 -iter di mode Kunci & IV. Jika openssl Anda menolak sm4-cbc, berarti ia dibangun tanpa SM4.
Apakah SM4-GCM didukung?
Tidak. SM4 tersedia dalam mode CBC, ECB, CTR, CFB, dan OFB, yaitu mode yang dimiliki openssl enc; tidak satu pun mendeteksi perubahan pada teks. GCM tersedia di halaman AES.
Apakah halaman ini juga bisa SM2 atau SM3?
Tidak. SM2 adalah algoritma kunci publik dan SM3 adalah fungsi hash; halaman ini hanya melakukan enkripsi simetris SM4. Untuk hash, alat Hash menyediakan MD5 dan keluarga SHA, bukan SM3.