CRC-32 계산기 (CRC-32 & CRC-32C)
개발
CRC-32는 32비트 순환 중복 검사로, zip·gzip 아카이브, PNG 청크, 이더넷 프레임 등 여러 파일 형식에서 우발적 손상을 탐지하는 빠른 비암호 체크섬입니다. 이 계산기는 표준 반사·테이블 기반 알고리즘(초기값 0xFFFFFFFF, 최종 XOR 0xFFFFFFFF)을 구현하며 잘 알려진 테스트 벡터 CRC-32("123456789") = 0xCBF43926과 일치합니다. iSCSI·SCTP·ext4 메타데이터·인텔 SSE4.2 CRC 명령어에서 쓰이는 CRC-32C(Castagnoli, 다항식 0x1EDC6F41)도 제공하며 "123456789"의 벡터는 0xE3069283입니다. UTF-8 텍스트나 원시 hex 바이트를 입력하면 소문자 hex·대문자 hex·부호 없는 32비트 10진수로 결과를 보여 줍니다. 게시된 CRC와 다운로드 대조, 직접 해싱하는 데이터 점검, 체크섬 불일치 디버깅에 사용하세요. 모든 처리는 로컬에서 실행되며 업로드되지 않습니다. 참고: CRC-32는 우발적 오류만 탐지하며 보안 해시가 아니므로, 신뢰할 수 없거나 적대적인 데이터 검증에는 절대 쓰지 마세요.
CRC-32는 우발적 손상을 탐지하며 변조 방지는 아닙니다. 보안엔 암호 해시(SHA-256)를 쓰세요.
사용법
- 변형 선택(CRC-32가 일반적; iSCSI/ext4/SSE4.2엔 CRC-32C).
- 입력이 UTF-8 텍스트인지 hex 바이트인지 선택.
- 입력·붙여넣고 hex 또는 10진수 결과 복사.
자주 묻는 질문
- 어떤 CRC-32인가요?
- 기본값은 표준 CRC-32/ISO-HDLC(IEEE 802.3, zlib의 crc32라고도 함) — 입출력 반사, 초기값 0xFFFFFFFF, 최종 XOR 0xFFFFFFFF, 다항식 0x04C11DB7(반사형 0xEDB88320)입니다. zip·gzip·PNG가 쓰는 그것이며 CRC-32("123456789") = 0xCBF43926과 일치합니다.
- CRC-32C는 어디에 쓰나요?
- CRC-32C는 Castagnoli 다항식(0x1EDC6F41)을 쓰며 오류 탐지 특성이 더 좋습니다. iSCSI·SCTP·Btrfs/ext4 메타데이터에서 쓰이고 인텔 SSE4.2 CRC32 명령어로 하드웨어 가속됩니다. "123456789"의 벡터는 0xE3069283입니다. 한 변형으로 계산한 CRC는 다른 변형과 일치하지 않습니다.
- 이진 데이터도 체크섬할 수 있나요?
- 네 — 입력 형식을 Hex로 바꾸고 바이트를 붙여넣으세요(예: 0xDEADBEEF 또는 'de ad be ef'). UTF-8 텍스트도 받아 바이트로 인코딩한 뒤 체크섬합니다. hex 모드에서는 공백과 선택적 0x 접두사는 무시됩니다.
- CRC-32는 안전한가요?
- 아니요. CRC-32는 무작위 전송·저장 오류를 잡기 위한 것이지 의도적 변조를 막지 못합니다 — 같은 CRC를 갖는 다른 입력을 만드는 건 매우 쉽습니다. 적대자에 대한 무결성에는 SHA-256 같은 암호 해시를 쓰세요.
관련 도구
Base64 ↔ 16진수 변환기
Base64 문자열을 16진수 바이트로, 16진수를 다시 Base64로 변환합니다. URL-safe 지원, 브라우저에서 동작합니다.
Quoted-Printable 인코더 & 디코더
텍스트를 MIME Quoted-Printable(RFC 2045)로 인코딩하거나 다시 디코딩 — =XX 이스케이프·소프트 줄바꿈·UTF-8 처리, 인코딩 시 76자 줄바꿈 — 브라우저에서.
해시 생성기 (SHA)
텍스트로 SHA-1·SHA-256·SHA-384·SHA-512 해시를 생성하세요.
URL 인코더 / 디코더
URL용으로 텍스트를 퍼센트 인코딩하거나, 인코딩된 URL을 디코딩하세요.
Base64 인코더 / 디코더
텍스트를 Base64로 인코딩하거나 다시 텍스트로 디코딩하세요.
JSON 포맷터 & 검증기
브라우저에서 바로 JSON을 포맷·정렬·압축·검증하세요.