CRC 계산기
텍스트나 파일에서 CRC-8, CRC-16, CRC-32, CRC-32C, CRC-64, Adler-32 체크섬을 계산합니다. 15가지 알고리즘, 16진수·10진수 출력, 큰 파일은 백그라운드 워커로 처리 — 모두 브라우저에서 로컬로.
CRC란 무엇인가요?
CRC(Cyclic Redundancy Check, 순환 중복 검사)는 데이터 바이트에 대한 다항식 나눗셈으로 구한 체크섬입니다. 전송이나 저장 중 단 하나의 비트만 뒤집혀도 받은 데이터의 CRC가 거의 항상 달라지므로 우발적인 손상을 감지할 수 있습니다. Modbus, HDLC, USB, 이더넷, ZIP 등이 모두 이에 의존합니다.
CRC와 SHA-256 같은 암호학적 해시의 차이는?
CRC는 오류 검출 코드이지 보안 기본 요소가 아닙니다. 빠르고 무작위 손상을 잡아내지만 되돌리기가 아주 쉬워, 누구든 원하는 CRC를 가진 데이터를 만들 수 있습니다. 따라서 진위 확인, 서명, 비밀번호 저장에는 절대 쓰면 안 됩니다. SHA-256 등은 단방향이고 충돌 저항성을 지니며 정확히 그 용도를 위해 설계되었습니다.
어떤 알고리즘이 포함되어 있나요?
15가지입니다: CRC-8/SMBUS, CRC-8/1-WIRE(Maxim), CRC-8/DVB-S2, CRC-16/IBM(ARC), CRC-16/CCITT-FALSE, CRC-16/KERMIT, CRC-16/XMODEM, CRC-16/MODBUS, CRC-24(OpenPGP), CRC-32, CRC-32/MPEG-2, CRC-32/JAMCRC, CRC-32C(Castagnoli), Adler-32, CRC-64/GO-ECMA. 임베디드, 네트워킹, 파일 포맷 작업에서 가장 많이 요구되는 변형들을 다룹니다.
같은 데이터인데 CCITT-FALSE, KERMIT, XMODEM 결과가 다른 이유는?
세 가지 모두 같은 다항식(0x1021)을 쓰지만 초기값, 비트 반사, 최종 XOR가 다릅니다. 그래서 "CRC-16"만으로는 모호합니다. 항상 프로토콜이나 장치가 지정하는 정확한 변형을 확인한 뒤 여기서 해당 항목을 고르세요.
UTF-8과 Latin-1 인코딩이 결과에 영향을 주나요?
네. CRC는 바이트에 대해 계산되고, 인코딩이 텍스트가 어떤 바이트가 될지 결정합니다. 순수 ASCII 입력은 양쪽이 같지만 é나 중 같은 문자는 다릅니다. UTF-8은 문자당 2~3바이트, Latin-1은 1바이트(중은 표현 자체가 불가)입니다. 받는 시스템이 기대하는 인코딩을 고르세요.
큰 파일은 어떻게 처리되나요?
파일 탭에서 파일을 웹 워커로 넘겨 메인 스레드 밖에서 청크 단위로 계산하고 진행 표시줄을 보여줍니다. 창이 멈추지 않고 수십 MB 파일도 순식간에 끝납니다. 파일은 절대 기기를 떠나지 않습니다.
16진수와 10진수를 둘 다 보여주는 이유는?
문서, 데이터시트, 디버거에서는 16진수가 관례("123456789"의 CRC-32는 CBF43926)이지만, 일부 직렬 프로토콜, PLC 도구, 로그 형식은 10진수 값을 그대로 요구합니다. 대문자 토글로 자료 표기에 맞출 수 있고 각 필드는 클릭 한 번으로 복사됩니다.
CRC는 검출만 되고 수정도 되나요?
특수한 구성에서만 가능합니다(Reed–Solomon 같은 오류정정부호가 비슷한 수학 위에 세워집니다). 일반 CRC는 데이터가 손상되었다는 사실만 알려줄 뿐 어디가 어떻게 고쳐야 하는지는 알려주지 않습니다. 복구에는 FEC나 패리티 파일 같은 중복 체계가 필요합니다.
서버로 업로드되는 데이터가 있나요?
아니요. 텍스트와 파일은 브라우저에서 JavaScript로 로컬 계산되며 네트워크 요청이 전혀 없습니다. 사적인 파일의 체크섬도 안심하고 계산할 수 있습니다. 다만 CRC는 보안 도구가 아니라는 점은 유의하세요.
프로젝트에는 어떤 CRC를 써야 하나요?
상대편이 이미 쓰는 것을 고르세요. 송신자와 수신자가 같은 변형을 계산해야만 CRC가 의미가 있습니다. 새 설계라면 CRC-32나 CRC-32C(검출력이 좋고 최신 CPU에 하드웨어 지원)가 무난하고, Modbus 장치는 CRC-16/MODBUS, HDLC/PPP는 규격이 지정한 CCITT-FALSE 또는 KERMIT를 쓰세요.
CRC 계산기 사용 방법
이 CRC 계산기는 15가지 널리 쓰이는 알고리즘으로 텍스트나 파일의 체크섬을 계산합니다: CRC-8/SMBUS, CRC-8/1-WIRE, CRC-8/DVB-S2, CRC-16/IBM (ARC), CRC-16/CCITT-FALSE, CRC-16/KERMIT, CRC-16/XMODEM, CRC-16/MODBUS, CRC-24 (OpenPGP), CRC-32, CRC-32/MPEG-2, CRC-32/JAMCRC, CRC-32C, Adler-32, CRC-64/GO-ECMA. 결과는 16진수와 10진수로 함께 표시되며 대문자 전환과 원클릭 복사를 지원합니다. 파일은 백그라운드 Web Worker에서 진행 표시줄과 함께 처리되고, 모든 작업은 브라우저에서 로컬로 이루어집니다.
- 텍스트 탭에서 내용을 입력하거나 붙여넣으세요. 체크섬이 입력에 맞춰 실시간으로 갱신됩니다.
- 문자 인코딩을 고르세요. 최신 텍스트는 UTF-8, 수신 장치가 문자당 1바이트를 기대하면 Latin-1(ISO-8859-1)을 쓰세요.
- 프로토콜이나 데이터시트가 지정한 알고리즘을 선택하세요. 기본값은 CRC-32입니다. 같은 데이터도 알고리즘마다 값이 다릅니다.
- HEX와 10진수 필드를 읽고, 대문자 스위치로 참조 문서의 표기와 맞춘 뒤 복사로 값을 가져오세요.
- 파일은 파일 탭으로 이동해 드롭 영역을 클릭하거나(또는 파일을 끌어다 놓고) 처리하세요. 해싱은 worker에서 실시간 진행 표시줄과 함께 돌고 파일은 기기에 그대로 있습니다.
자기 점검: ASCII 문자열 "123456789"의 CRC-32는 CBF43926(10진수 3421780262)입니다. 장치 결과가 일치하지 않으면 거의 확실히 다른 CRC 변형을 쓰고 있는 것입니다. 바이트를 탓하기 전에 정확한 다항식, 초기값, 리플렉션 설정을 확인하세요.
관련 도구
- 해시 생성기 브라우저에서 텍스트로 MD5, SHA-1, SHA-256, SHA-512 해시 즉시 생성
- Base58 인코더·디코더 Bitcoin 알파벳으로 텍스트를 Base58로 인코딩하거나 Base58을 텍스트로 디코딩합니다. Base58Check(버전 바이트 0x00/0x05)과 이중 SHA-256 체크섬 검증을 지원하며 모두 브라우저에서 실행됩니다.
- AES 암호화/복호화 AES 암호화/복호화 도구, CBC/CFB/CTR/OFB/ECB 모드, Pkcs7/ZeroPadding/NoPadding, 128/192/256비트 키, Base64 출력, 키/IV 형식 자동 감지
- 파일 해시 MD5, SHA-1, SHA-256, SHA-512 파일 해시 로컬 계산 및 검증
- Chmod 계산기 체크박스 포함 Linux 파일 권한을 시각화하고 계산하는 무료 온라인 chmod 계산기. 숫자(755, 644)와 기호 표기법(rwxr-xr-x)을 즉시 변환. setuid, setgid, sticky bit 같은 특수 권한 지원.
- ASCII 코드표 10진수, 16진수, 8진수, 2진수 코드, HTML 엔티티 및 문자 설명을 포함한 완전한 ASCII 문자 인코딩 참조. 즉시 검색 및 필터링.
- Hex 뷰어 검색, 오프셋 탐색 및 가상 스크롤링으로 파일 내용을 헥스 덤프 형식으로 보기
- MIME 유형 조회 파일 확장자로 MIME 유형을 즉시 찾거나 MIME 유형으로 확장자를 조회하세요. 1000개 이상의 항목을 담은 무료 온라인 참조 도구.