Kalkulator CRC
Checksum CRC-8, CRC-16, dan CRC-32 dari teks atau byte heksadesimal, dengan preset umum dan polinomial kustom
Memuat alat…
Menghitung CRC dari teks, byte hex, atau file dengan 34 algoritma CRC-8, CRC-16, dan CRC-32 bernama atau dengan parameter Anda sendiri, misalnya untuk memeriksa frame Modbus atau mencari tahu CRC mana yang dipakai sebuah perangkat.
Cara pakai
- Pilih "Teks", "Byte hex", atau "File" lalu masukkan datanya.
- Pilih "Algoritma", misalnya CRC-16/MODBUS. CRC ditampilkan dalam heksadesimal, desimal, dan biner.
- "Byte yang ditambahkan ke frame" menunjukkan urutan pengiriman byte CRC.
- Untuk mengenali CRC yang tidak diketahui, ketik nilai yang diharapkan di "Cari nilai CRC".
- Untuk algoritma yang tidak tercantum, buka "Parameter" dan atur lebar, polinomial, nilai awal, refleksi, dan XOR akhir.
Cara kerja
- Preset dan nilai cek mengikuti RevEng Catalogue of parametrised CRC algorithms; setiap preset diuji terhadap nilai ceknya, yaitu CRC dari teks ASCII 123456789.
- Algoritma tercermin (reflected) seperti MODBUS biasanya dikirim dengan byte rendah lebih dulu, yang lain dengan byte tinggi lebih dulu.
- File dibaca di perangkat ini dan tidak diunggah. Sum, XOR, LRC, Fletcher-16, dan Adler-32 juga ditampilkan.
Pertanyaan umum
- Berapa CRC-16 Modbus dari 01 03 00 00 00 0A?
- Hasilnya 0xCDC5. Modbus RTU menambahkan byte rendah lebih dulu, jadi frame diakhiri dengan C5 CD.
- Apa beda CRC-16/CCITT-FALSE, XMODEM, dan KERMIT?
- Semuanya memakai polinomial 0x1021. CCITT-FALSE dimulai dari 0xFFFF, XMODEM dari 0, dan KERMIT dari 0 dengan bit tercermin. Untuk 123456789 hasilnya 0x29B1, 0x31C3, dan 0x2189.
- Kenapa hasil CRC-32 saya berbeda dengan program lain?
- Periksa dulu byte masukannya: UTF-8 dan Latin-1 mengodekan teks yang sama secara berbeda. CRC-32 standar (ISO-HDLC) menghasilkan 0xCBF43926 untuk 123456789; MPEG-2 dan BZIP2 memakai pengaturan lain.
- Apakah CRC cukup aman untuk mendeteksi data yang dimanipulasi?
- Tidak. CRC menangkap kesalahan yang tidak disengaja, tetapi siapa pun bisa mengubah data lalu menghitung ulang CRC-nya. Gunakan hash kriptografis seperti SHA-256.