간단한 답
비교하려면 같은 알고리즘이 필요하므로 파일 배포자가 제공하는 알고리즘을 사용하세요. 새로운 작업에는 SHA-256이 호환성이 가장 높으며 SHA-512도 좋은 선택입니다. 자체 대용량 데이터에는 관련된 모든 시스템에서 도구를 사용할 수 있다면 BLAKE3가 가장 빠른 선택입니다. 현재 세 알고리즘 모두 안전한 것으로 여겨지며, 알려진 실용적인 공격은 없습니다.
알고리즘의 차이
SHA-256과 SHA-512는 NIST가 표준화한 SHA-2 계열에 속하며 규정 준수 요건에서 요구하는 경우가 많습니다. BLAKE3는 더 새롭고 NIST 표준이 아니므로 이런 요건을 충족하지 못할 수 있습니다. SHA-256과 기본 출력을 사용하는 BLAKE3는 256비트를 출력하며, 이는 약 128비트의 충돌 저항성을 뜻합니다. SHA-512는 512비트를 출력하고 약 256비트의 저항성을 제공합니다. 실제로는 두 수준 모두 실행 가능한 공격의 범위를 훨씬 넘어섭니다.
속도는 하드웨어에 따라 다름
BLAKE3는 여러 CPU 코어와 최신 벡터 명령어를 활용하도록 설계되어 대용량 파일에서 대체로 확실히 앞섭니다. SHA-2 변형 간의 결과는 달라집니다. 특수 명령어가 없는 64비트 CPU에서는 SHA-512가 더 빠른 경우가 많고, SHA 확장을 갖춘 CPU에서는 SHA-256이 빨라집니다. 캐시와 디스크가 결과에 영향을 주므로 자신의 컴퓨터에서 큰 파일로 측정하세요. b3sum은 별도로 설치해야 할 수 있습니다.
time sha256sum large.iso
time sha512sum large.iso
time b3sum large.iso체크섬이 증명하는 것
체크섬이 일치하면 파일이 해당 해시값을 계산한 원본 파일과 동일하다는 뜻입니다. 파일을 누가 만들었는지는 알려 주지 않습니다. 공격자가 다운로드 파일과 같은 페이지의 체크섬을 모두 바꿀 수 있다면 비교를 통과합니다. 출처를 확인하려면 별도의 신뢰할 수 있는 경로에서 얻은 해시값이나 GPG 같은 서명이 필요합니다.
sha256sum -c SHA256SUMS
gpg --verify SHA256SUMS.asc SHA256SUMS피해야 할 것
MD5와 SHA-1은 충돌 저항성이 깨졌으므로 의도적인 변조를 방어하는 데 사용해서는 안 됩니다. 오래된 매니페스트에 여전히 있을 수 있지만, 거기서는 우발적인 손상만 탐지합니다. CRC-32나 xxHash 같은 비암호학적 함수는 속도와 우발적인 오류 탐지를 위한 것이며, 보안을 위한 것이 아닙니다.
CH-J Server Manager의 체크섬
Hash & Checksum 모듈은 세 알고리즘을 모두 포함하며 SHA-256, SHA-512, BLAKE3를 권장으로, MD5와 SHA-1을 보안이 깨진 알고리즘으로 표시합니다. 해시값 계산, 파일 비교, 예상 값 확인이 가능합니다. 모듈은 예상 값 자체를 신뢰할 수 있는지 판단할 수 없으므로 신뢰하는 출처에서 가져오세요. 앱은 자체 업데이트를 SHA-512와 OpenPGP 서명을 함께 사용해 검증합니다.