리눅스 배포판 ISO처럼 용량이 큰 파일을 다운로드할 때는 파일이 오류 없이 온전히 받아졌는지, 그리고 허가받지 않은 변조가 없는지 반드시 검증해야 합니다.
ISO와 같은 대용량 파일의 개발자들은 완성된 이미지를 전용 프로그램에 통과시켜 MD5 암호화 파일을 생성합니다. 이 방식은 파일의 지문(fingerprint) 역할을 하는 고유한 체크섬(checksum)을 제공합니다.
ISO 파일을 다운로드한 후 해당 파일에 대한 MD5 체크섬을 생성하는 도구를 실행하면 됩니다. 이때 얻은 체크섬 값이 소프트웨어 개발자 웹사이트에 게시된 값과 일치해야 합니다.
MD5 체크섬이 제공되는 파일 다운로드하기
체크섬 검증 과정을 실습하려면 비교 기준이 될 수 있도록 MD5 체크섬이 이미 공개된 파일이 필요합니다.
대부분의 리눅스 배포판은 ISO 이미지에 대해 SHA 또는 MD5 체크섬을 제공합니다. 그중에서도 Bodhi Linux는 MD5 체크섬 방식으로 파일을 검증하는 대표적인 배포판입니다.
Bodhi Linux 공식 사이트에서 라이브(live) 버전을 다운로드하세요.
Bodhi Linux는 세 가지 버전을 제공합니다:
- Standard(표준)
- AppPack Release
- Legacy Release
두 개의 파일을 다운로드해야 합니다. 바로 다운로드 링크에서 받을 수 있는 Bodhi Linux ISO 파일과 MD5 파일입니다. MD5 파일에 적힌 체크섬 값과 셸 세션에서 직접 생성한 체크섬 값을 서로 비교하게 됩니다.
Standard Release 섹션 바로 아래의 Download 링크를 클릭하여 ISO 파일 자체를 내려받습니다.
MD5를 클릭해 MD5 체크섬 파일을 컴퓨터에 저장합니다.
MD5 파일을 텍스트 편집기로 열면 다음과 같은 내용이 표시됩니다:
ba411cafee2f0f702572369da0b765e2 bodhi-4.1.0-64.iso
Windows에서 MD5 체크섬 검증하기
Windows 환경에서 MD5 체크섬을 검증하는 절차는 다음과 같습니다:
명령 프롬프트(Command Prompt)를 실행합니다.
cd Downloads를 입력해 다운로드 폴더로 이동합니다. 파일을 다른 위치에 저장했다면 해당 경로로 이동하세요.
certutil -hashfile을 입력한 뒤 파일 이름을 붙이고 마지막에 MD5를 입력합니다.
명령이 반환한 값이 Bodhi 웹사이트에서 내려받아 메모장으로 열어본 MD5 파일의 값과 일치하는지 확인합니다.
두 값이 일치하지 않으면 파일이 유효하지 않은 것이므로 다시 다운로드해야 합니다.
Linux에서 MD5 체크섬 검증하기
리눅스 환경에서 MD5 체크섬을 검증하려면 다음 단계를 따르세요:
셸 세션을 연 뒤 파일을 다운로드한 디렉터리로 이동합니다.
md5sum 명령어 뒤에 파일 이름을 입력합니다.
md5sum 명령이 출력하는 값이 MD5 파일에 기록된 값과 일치하는지 확인합니다.
알아두어야 할 사항
md5sum을 이용한 파일 유효성 검증은 소프트웨어를 내려받는 사이트 자체가 안전할 때만 신뢰할 수 있습니다. 미러 사이트가 많은 경우에는 언제든 공식 웹사이트의 값과 대조할 수 있기 때문에 유용하게 작동합니다.
그러나 만약 누군가 메인 사이트를 해킹해 웹사이트에 게시된 체크섬 값을 변경했다면, 사용자는 원치 않는 파일을 다운로드하고 있을 가능성이 큽니다.
파일의 체크섬이 보조 다운로드 파일(MD5 파일)의 값과 일치하지 않는다면, 파일이 어떤 식으로든 손상되었다는 뜻입니다. 먼저 다시 다운로드를 시도하고, 여러 번 시도해도 계속 실패한다면 파일 소유자나 해당 사이트의 관리자에게 문의해 알려주는 것이 좋습니다.