CRC-16 Hash Generator
Handleiding voor de CRC-16 Hash Generator
Doel van de tool
De CRC-16 Hash Generator is een gratis online tool die checksumwaarden genereert voor elke gegeven invoerreeks. Het is ontworpen om een eenvoudige en efficiënte manier te bieden om een checksum te genereren met behulp van het CRC-16 algoritme.
Voordelen en voordelen
Het gebruik van de CRC-16 Hash Generator biedt verschillende voordelen en voordelen, zoals:
- Het is online en gratis, zonder systeem- en softwareafhankelijkheden.
- Kan wissen, kan kopiëren en heeft een voorbeeld voor gebruiksgemak.
- De gegenereerde checksum is beveiligd en kan alleen lokaal worden berekend, waardoor de gegevensbeveiliging wordt gegarandeerd.
Hoe de tool te gebruiken
- Bezoek de CRC-16 Hash Generator webpagina in uw browser.
- Voer de te controleren reeks in in het invoerveld.
- Klik op de Genereren knop om de checksumwaarde te berekenen.
- De berekende checksumwaarde wordt weergegeven in het uitvoerveld.
- U kunt deze waarde kopiëren naar het klembord of de invoer- en uitvoervelden wissen door op de Wissen knop te klikken.
Implementatie in verschillende programmeertalen
Hieronder vindt u voorbeeldcodes en beschrijvingen over hoe u de CRC-16 Hash Generator kunt implementeren in Python, Java, JavaScript, Golang, Ruby en PHP.
Python
import binascii
def crc16(data: bytes) -> int:
crc = 0xFFFF
for i in range(len(data)):
crc ^= data[i] << 8
for j in range(8):
if crc & 0x8000:
crc = (crc << 1) ^ 0x1021
else:
crc <<= 1
return crc & 0xFFFF
input_str = "Free Online Tools"
input_bytes = input_str.encode('utf-8')
checksum = crc16(input_bytes)
print(hex(checksum)[2:].zfill(4)) # Uitvoer: "2dd2"
Java
import java.util.zip.CRC32;
public class CRC16HashGenerator {
public static void main(String[] args) {
String inputStr = "Free Online Tools";
byte[] inputBytes = inputStr.getBytes();
CRC32 crc32 = new CRC32();
crc32.update(inputBytes);
System.out.println(Long.toHexString(crc32.getValue() & 0xFFFF));
}
}
JavaScript
function crc16(str) {
let crc = 0xffff;
for (let i = 0; i < str.length; i++) {
crc ^= str.charCodeAt(i) << 8;
for (let j = 0; j < 8; j++) {
if (crc & 0x8000) {
crc = (crc << 1) ^ 0x1021;
} else {
crc <<= 1;
}
}
}
return (crc & 0xffff).toString(16).padStart(4, "0");
}
let inputStr = "Free Online Tools";
let checksum = crc16(inputStr);
console.log(checksum); // Uitvoer: "2dd2"
Golang
package main
import (
"hash/crc32"
"fmt"
)
func main() {
inputStr := "Free Online Tools"
inputBytes := []byte(inputStr)
crcTable := crc32.MakeTable(0x1021)
checksum := crc32.Update(0xFFFF, crcTable, inputBytes)
fmt.Printf("%04x\n", checksum)
}
Ruby
def crc16(str)
crc = 0xFFFF
str.each_byte do |b|
crc ^= b << 8
for j in 0..7
if (crc & 0x8000) != 0
crc = ((crc << 1) ^ 0x1021)
else
crc = (crc << 1)
end
end
end
crc & 0xFFFF
end
input_str = "Free Online Tools"
checksum = crc16(input_str).to_s(16).rjust(4, '0')
puts checksum # Uitvoer: "2dd2"
PHP
function crc16($str) {
$crc = 0xFFFF;
for ($i = 0; $i < strlen($str); $i++) {
$crc ^= ord($str[$i]) << 8;
for ($j = 0; $j < 8; $j++) {
if ($crc & 0x8000) {
$crc = (($crc << 1) ^ 0x1021);
} else {
$crc = $crc << 1;
}
}
}
return str_pad(dechex($crc & 0xFFFF), 4, "0", STR_PAD_LEFT);
}
$input_str = "Free Online Tools";
$checksum = crc16($input_str);
echo $checksum; // Output: "2dd2"
Conclusie
De CRC-16 Hash Generator is een eenvoudige maar krachtige tool die u kan helpen bij het genereren van checksumwaarden voor uw invoerreeksen. Door gebruik te maken van deze tool kunt u ervoor zorgen dat uw gegevens veilig zijn en dat de berekende checksumwaarde alleen lokaal beschikbaar is. Met de meegeleverde implementatiecodes kunt u deze tool eenvoudig integreren in uw projecten en toepassingen.