현재 위치: > 최신 기사 목록> 문자열의 CRC 점검을 구현하기 위해 str_split과 결합합니다

문자열의 CRC 점검을 구현하기 위해 str_split과 결합합니다

M66 2025-05-28

데이터 검증을 처리 할 때 CRC (순환 중복성 검증)가 일반적인 검증 방법입니다. CRC 검증은 일반적으로 전송 중에 데이터가 변경되었는지 확인하는 데 사용됩니다. 이 기사에서는 간단한 CRC 체크 알고리즘과 함께 PHP의 str_split 함수를 사용 하여이 기능을 달성하는 방법에 대해 논의 할 것입니다.

CRC 확인이란 무엇입니까?

CRC Verification은 데이터 무결성을 검증하는 데 사용되는 알고리즘입니다. 데이터에 대한 특정 수학 작업을 수행하여 "체크 코드"(일반적으로 숫자)를 생성합니다. 수신기는 동일한 알고리즘을 사용하여 확인 코드를 다시 계산할 수 있습니다. 계산 된 값이 전송 된 체크 코드와 일치하는 경우 데이터에 오류가 없음을 의미합니다.

실제 응용 프로그램에서 CRC 검증은 일반적으로 파일 전송, 네트워크 프로토콜 및 기타 시나리오에 사용되어 데이터 전송의 무결성을 보장합니다.

CRC 검증을 구현하기 위해 PHP의 STR_SPLIT 기능과 결합합니다

PHP의 str_split 함수는 문자열을 여러 하위 문자로 분할 할 수 있습니다. CRC 점검을 수행 할 때는 입력 문자열을 계산을 위해 작은 부품으로 나눌 수 있습니다. 간단한 구현이 있습니다.

1. CRC 체크 기능을 정의하십시오

비트 작업 및 str_split 함수를 사용하여 간단한 CRC 점검 기능을 정의하여 데이터 검사를 구현할 수 있습니다.

 <?php
function crc_check($data) {
    $crc = 0xFFFF; // 초기화 CRC 값
    $dataArray = str_split($data); // 데이터 문자열을 문자 배열로 분할하십시오
    
    foreach ($dataArray as $char) {
        $byte = ord($char); // 캐릭터를 얻으십시오 ASCII 값
        $crc ^= $byte; // 할 것이다 CRC 현재 바이트와의 독점 또는 작동

        // 오른쪽 CRC 값지휘하다位移处理
        for ($i = 0; $i < 8; $i++) {
            if ($crc & 0x0001) {
                $crc >>= 1;
                $crc ^= 0xA001; // 가장 낮은 위치가 있다면1,지휘하다 XOR 작동하다
            } else {
                $crc >>= 1;
            }
        }
    }

    return strtoupper(dechex($crc)); // 16 진수로 돌아갑니다 CRC 값
}

// 샘플 데이터
$data = "Hello, world!";
// 부르다 CRC 검증 기능
$crcResult = crc_check($data);
echo "CRC 확인 결과: " . $crcResult;
?>

2. 코드 설명

  • str_split ($ data) : 입력 데이터 $ 데이터를 단일 문자 배열로 나눕니다.

  • Ord ($ char) : 문자의 ASCII 값을 반환합니다.

  • 비트 작동 부품 : CRC 알고리즘의 핵심 부분은 XOR 작동 및 변위 계산을 통해 구현됩니다. 이 프로세스는 각 바이트를 처리하고 일련의 XOR 및 변위 작업을 통해 최종 CRC 체크 값을 생성합니다.

  • DECHEX ($ CRC) : 최종 CRC 체크 값을 16 진수 표현으로 변환합니다.

위의 단계를 통해 입력 문자열의 CRC 점검 코드를 얻을 수 있습니다.

3. 사용 사례 데모

문자열 "Hello, World!"에서 CRC Verification을 수행하면 코드가 CRC 확인 코드를 반환합니다. 반환 값이 e8b7be43 이라고 가정하십시오.

 $crcResult = crc_check("Hello, world!");
echo "CRC 확인 결과: " . $crcResult;

요약

PHP의 str_split 함수와 CRC Verification 알고리즘을 결합하면 문자열의 무결성 검증을 간단히 구현할 수 있습니다. STR_SPLIT 기능은 문자열을 단일 문자로 분류하는 데 도움이되므로 CRC 계산 바이트 바이트를 수행 할 수 있습니다.

이 기사가 PHP를 사용하여 CRC 검증을 구현하는 방법을 더 잘 이해하는 데 도움이되기를 바랍니다. 더 많은 질문이 있으시면 언제든지 질문하십시오!