A. 필요한 장비 및 자료
데스크톱(Windows 또는 Mac)
Fixity Pro (소프트웨어)
•
Fixity 사용자 가이드 버전 1.1 (2018-05-17)
•
Fixity Pro 문서
B. 학습 안내
1. 학습 목표
1) 목적
•
참가자들에게 체크섬의 개념과 디지털 보존에서의 역할을 소개하고, Fixity Pro 소프트웨어를 사용하여 체크섬을 생성하고 분석하는 실습 기회를 제공한다.
2) 실습 목표
•
이 세션이 끝날 때까지 참가자들은 다음을 수행할 수 있다.
•
체크섬 개념과 디지털 보존에서의 중요성을 이해한다.
•
Fixity Pro 인터페이스를 탐색하고 새 프로젝트를 생성한다.
•
체크섬을 생성할 파일 및 폴더를 선택한다.
•
적절한 체크섬 알고리즘을 선택하고 적용한다.
•
선택한 파일의 체크섬을 생성한다.
•
체크섬 보고서를 해석하고 그 의미를 이해한다.
•
체크섬이 파일 무결성을 유지하는 데 어떻게 활용되는지 인식한다.
2. 실습 절차
1. 고정성(Fixity) 및 체크섬 개념 이해 (10분)
2. Fixity Pro 소개 및 설정 (30분)
3. 기본 체크섬 생성 실습 (30분)
4. 결과 분석 및 토론 (30분)
3. 고정성과 체크섬
1) 고정성(Fixity)
•
•
적용 대상: 고정성은 단순한 파일뿐만 아니라 디지털 객체 내부의 모든 비트스트림에 적용될 수 있다. 예를 들어, 오디오-비디오 객체의 이미지나 영상, ZIP 파일 내부의 개별 파일, XML 구조 내의 메타데이터, 데이터베이스 내의 레코드, 오브젝트 저장소의 객체 등에 적용될 수 있다.
•
고정성 검증 방법: 체크섬을 활용하여 파일의 고정성을 확인하고 모니터링할 수 있다.
2) 체크섬(Checksum)
•
정의: 체크섬은 파일의 ‘디지털 지문’과 같다. 파일의 아주 작은 변화도 체크섬 값을 완전히 바꾼다.
•
생성 도구: 일반적으로 암호화 기술을 활용하여 생성되며, 다양한 오픈소스 도구를 통해 만들 수 있다.
•
한계: 체크섬은 파일 내용이 변경되었는지를 감지할 수 있지만, 어디에서 변경이 발생했는지는 알려주지 않는다.
3) 디지털 보존에서의 활용
•
여러 사본에 대한 체크섬 활용: 정기적으로 각 파일 사본의 고정성을 모니터링하고, 손상된 사본을 변경되지 않은 사본으로 교체 (데이터 정리).
•
변경 사항 감지 및 관리: 체크섬을 활용해 원치 않는 변경 사항을 감지할 수 있으며, 의도적인 변경 후에는 새로운 체크섬이 필요하다.
•
정기적인 체크섬 검증: 저장 방식, 유지보수 수준, 사용 빈도에 따라 체크섬 검증 주기를 결정.
•
체크섬 저장 방식: PREMIS 레코드, 데이터베이스 또는 파일과 함께 매니페스트(manifest) 파일로 저장.
•
체크섬을 지원하는 도구: md5sum, md5deep 등과 같은 디지털 보존 도구에서 널리 지원됨.
•
체크섬 알고리즘: MD5와 SHA-256 같은 알고리즘은 강도가 다르며, MD5는 빠르게 손상 감지를 할 수 있고, SHA-256은 보안성이 높음.
•
NDSA 보존 수준: NDSA 권장사항에 따라 여러 사본을 유지하여 한 사본이 손상될 경우 복구할 수 있도록 함.
4. Fixity Pro 소개 및 설정 (30분)
1) Fixity Pro란?
•
AVP가 디지털 보존 커뮤니티를 위해 개발한 소프트웨어.
•
Windows 및 Mac에서 사용 가능하며, 소액의 월 구독료가 필요함.
•
Fixity Pro의 이전 버전인 Fixity는 무료로 다운로드할 수 있지만, 기술 지원이 제공되지 않음.
2) Fixity Pro를 사용하는 이유
•
디지털 보존을 고려하여 설계되었으며, 추가적인 보존 기능 제공.
•
일정에 따라 자동으로 무결성 검사를 수행하며, 오류가 발생했을 때만 직원이 개입하도록 설계됨.
•
결과를 쉽게 해석할 수 있는 보고서로 저장하고, 이메일 전송 기능 제공.
3) Fixity Pro의 작동 방식
•
프로젝트 기반 무결성 검사: 프로젝트 단위로 폴더를 모니터링하며, 일일/주간/월간 주기로 검사를 수행하도록 설정 가능.
•
자동 무결성 검사 및 보고: 자동으로 검사 후 결과를 지정된 폴더에 저장하고, 이메일로 결과 전송.
•
결과 유형: Fixity Pro는 파일 상태를 “확인됨”, “변경됨”, “새로운 파일”, “삭제됨”, “이동됨 및/또는 이름 변경됨”으로 표시함.
4) Fixity Pro 무결성 검사 결과
•
Fixity Pro는 각 파일을 검사한 후 다음 상태를 보고합니다: "확인됨"(변경 없음), "변경됨"(파일 내용 변경됨), "신규 파일", "삭제됨", "이동됨 또는 이름 변경됨".
•
Fixity Pro 사용자 매뉴얼에 따르면, Fixity Pro는 네 가지 주요 기준을 기반으로 파일의 상태를 결정합니다.
5) Fixity Pro 다운로드 및 설치 (무료 체험판)
•
Fixity Pro의 30일 무료 체험판은 AVP 웹사이트에서 다운로드할 수 있습니다: Fixity Pro 다운로드
•
설치 및 활성화 튜토리얼은 여기에서 확인할 수 있습니다: Fixity Pro 설치 가이드
•
‘Register & Download’ 버튼을 클릭하면 이름, 기관, 이메일 주소를 입력하라는 요청이 표시됩니다. 입력 후 확인 이메일이 발송되며, 해당 이메일의 링크를 클릭하면 Fixity Pro 다운로드 페이지로 이동합니다.
•
다운로드한 파일을 실행하여 설치를 진행하며, 활성화 코드를 입력해야 설치가 완료됩니다. 활성화 코드는 별도로 이메일로 발송됩니다.
•
무료 체험 기간이 만료되면 월별 또는 연간 구독을 통해 계속 사용해야 합니다.
6) 발신 이메일 설정 (생략해도 됨)
•
SMTP(Simple Mail Transfer Protocol) 설정
◦
Fixity Pro가 무결성 검사 결과를 이메일로 전송할 수 있도록 이메일 계정을 연결해야 합니다. 이 작업은 SMTP 연결 또는 Gmail API를 통해 수행할 수 있습니다.
◦
SMTP 연결 설정 방법:
1.
SMTP 서버 주소 입력 (예: smtp.office365.com)
2.
이메일 주소 입력 (예: sharon.mcmeekin@dpconline.org)
3.
이메일 계정 비밀번호 입력
4.
연결할 포트 번호 입력
5.
암호화 방식 선택 (SSL, TLS 또는 없음)
◦
위 정보 중 1), 4), 5)번 항목을 모를 경우 IT 담당자에게 문의하거나 이메일 제공업체의 설정 정보를 검색해야 합니다.
•
Gmail 설정
◦
Gmail 계정 연결은 간단합니다. 다음 단계를 따르세요:
1.
"Google API를 사용하여 이메일 보내기" 옵션 선택
2.
"연결" 버튼 클릭
3.
Gmail 계정 로그인
4.
Fixity Pro가 이메일을 전송할 수 있도록 "허용" 버튼 클릭
◦
이메일 연결을 테스트하려면 "테스트" 버튼을 클릭하세요. 만약 이메일이 도착하지 않는다면 스팸함을 확인하세요.
◦
설정을 저장하려면 "저장" 버튼을 클릭하세요. 현재 이메일 설정을 초기화하려면 "재설정" 버튼을 사용할 수 있습니다.
7) 기타 설정
•
프로젝트 가져오기(Import Project)
◦
Fixity에서 생성된 프로젝트 파일을 가져와 사용할 수 있습니다.
◦
지원 파일 형식:
▪
이전 Fixity 버전에서 생성된 .fxy 파일
▪
최신 Fixity 버전에서 생성된 .tsv 파일
◦
프로젝트 가져오기 시 포함되는 정보:
▪
디렉토리 목록
▪
수신자 이메일 주소
▪
파일 경로
▪
체크섬 값
▪
파일 시스템 인덱스 위치
▪
스케줄링 정보
▪
체크섬 알고리즘(.tsv 파일만 해당, .fxy 파일은 수동 설정 필요)
▪
필터 파일 정보(.tsv 파일만 해당, .fxy 파일은 개별 프로젝트에서 수동 설정 필요)
◦
프로젝트 가져오기 시 포함되지 않는 정보:
▪
발신 이메일 설정(이 설정은 전역 수준에서 관리됨)
◦
프로젝트 가져오기를 통해 이전 검사 기록(.tsv 파일)을 불러와 특정 시점으로 복원할 수도 있습니다.
•
디버깅 설정 (Debugging On/Off)
◦
디버깅을 활성화하면 Fixity는 문제 해결을 위한 로그 파일을 생성합니다.
◦
Windows에서는 실행 파일이 있는 폴더에서 로그 파일을 찾을 수 있으며, Mac에서는 실행 파일을 우클릭하여 "패키지 내용 보기 > Java"에서 찾을 수 있습니다.
◦
디버깅을 비활성화하면 로그 기록이 중단됩니다.
•
보고서 저장 위치 (Reports Location)
◦
체크 결과 보고서를 저장할 폴더를 선택할 수 있습니다. 기본 저장 위치는 "문서(Documents)" 폴더입니다.
5. 기본 체크섬 생성 실습 (30분)
1) Fixity Pro에서 새 프로젝트 생성
•
Fixity Pro 실행
•
“New Project” 버튼 클릭
•
프로젝트 이름 입력 (예: “Checksum 실습”)
•
“Create” 클릭하여 프로젝트 생성
2) 체크섬 생성할 파일/폴더 선택
•
“Add Directories to Scan” 섹션에서 “Add Directory” 클릭
•
팝업 창에서 ‘internal’ 선택 후 “Save” 클릭
•
‘test-files’ 폴더 선택 후 “Choose” 클릭
3) 체크섬 알고리즘 선택 (MD5 또는 SHA-256)
•
“Preferences” > “Checksum Algorithm” 이동
•
MD5 또는 SHA-256 선택 (이 실습에서는 SHA-256 사용)
•
“Save” 클릭하여 설정 저장
4) 초기 체크섬 생성
•
Fixity Pro 메인 인터페이스에서 “지금 검사(Scan Now)” 버튼을 클릭하여 체크섬 생성 프로세스를 시작
•
팝업 메시지가 나타나면 ‘허용(Allow)’ 버튼을 클릭하여 Fixity Pro가 내 PC의 디렉터리에 접근
•
진행 상태 표시줄이 나타나며, 체크섬 생성 진행 상태를 보여줍니다.
•
프로세스가 완료될 때까지 기다립니다. 파일의 수와 크기에 따라 몇 분 정도 걸릴 수 있습니다.
3. 완료 후 “View Reports” 클릭하여 결과 확인
5) 생성된 체크섬 확인
•
프로세스가 완료되면, Fixity Pro 메인 인터페이스의 오른쪽에 ‘마지막 검사(완료)’ 결과가 표시됩니다.
•
자세한 결과를 보려면 ‘마지막 검사’ 아래의 파란색 "보고서 보기(View Reports)"를 클릭합니다.
•
로컬 디렉터리에 저장된 .tsv 파일을 열면, 모든 파일과 해당 SHA-256 체크섬 목록을 확인할 수 있습니다.
6. 결과 분석 및 토론 (30분)
1) 일반 개요
•
위치(Location): Fixity Pro는 두 가지 유형의 보고서를 생성합니다: Fixity 보고서 및 기록(History) 보고서. 기본적으로 이 보고서는 "문서(Documents)" 폴더에 저장됩니다. 보고서 위치는 "설정 > 보고서 위치 변경"을 통해 변경할 수 있습니다.
•
이메일 전송(Emailing): Fixity 보고서는 검사 실행 시 지정된 이메일 주소로 전송할 수 있습니다. 메인 Fixity Pro 창에서 "보고서 이메일 전송 대상" 항목을 통해 이메일 주소를 설정할 수 있습니다. "경고 또는 실패 시에만 이메일 전송" 옵션을 선택하면, 검사 결과가 부분적이거나 불완전하거나, 파일 상태가 "확인됨"이 아닐 때만 보고서가 전송됩니다.
•
Fixity Pro가 이메일을 보내려면 "설정 > 발신 이메일 설정"을 통해 이메일을 구성해야 합니다. 자세한 설정 방법은 사용자 가이드의 "일반 설정 및 구성" 섹션을 참고하세요.
2) Fixity 보고서 열기 및 분석
•
Fixity 보고서는 검사 실행 시 보고서 폴더에 저장되며, 프로젝트에서 지정된 이메일 주소로 전송됩니다. (단, "경고 또는 실패 시에만 이메일 전송" 옵션이 선택된 경우 제외)
•
Fixity 보고서는 다음과 같은 정보를 포함합니다:
◦
Fixity 보고서: 해당 보고서가 Fixity 보고서임을 나타냅니다.
◦
프로젝트 이름: 보고서가 생성된 프로젝트의 이름을 제공합니다.
◦
프로젝트 상태: 프로젝트 검사가 완료(Complete), 부분 완료(Partial), 또는 불완전(Incomplete)한지 여부를 표시합니다.
▪
완료(Complete): 프로젝트에 지정된 모든 디렉터리를 스캔하고 보고서를 생성함.
▪
부분 완료(Partial): 일부 디렉터리는 스캔했지만, 외부 드라이브 또는 네트워크 드라이브에 있는 디렉터리는 액세스할 수 없었음.
▪
불완전(Incomplete): 응용 프로그램이 충돌하거나, 프로젝트 내 모든 디렉터리가 외부 드라이브/네트워크 드라이브에 위치하여 Fixity Pro가 검사할 수 없었음.
◦
사용된 알고리즘(Algorithm Used): 스캔된 파일의 체크섬을 계산하는 데 사용된 해시 알고리즘을 나타냅니다.
◦
생성 날짜(Date): yyyy-mm-dd 형식으로 보고서가 생성된 날짜를 표시합니다.
◦
총 파일 수(Total Files): 삭제된 파일을 제외하고 스캔된 총 파일 수입니다.
◦
확인된 파일(Confirmed Files): 이전 검사 이후 변경되지 않은 파일 수입니다.
◦
이동 또는 이름 변경된 파일(Moved or Renamed Files): 프로젝트 내에서 다른 위치로 이동되었거나 이름이 변경된 파일을 나타냅니다.
◦
신규 파일(New Files): 이번 검사에서 새롭게 감지된 파일의 수입니다.
◦
변경된 파일(Changed Files): 이전 검사 이후 변경된 파일의 수입니다.
◦
삭제된 파일(Removed Files): 이전 검사에서 존재했지만 이번 검사에서 존재하지 않는 파일의 수입니다.
◦
스캔되지 않은 파일(Not Scanned): 이전 검사에서는 존재했지만, 이번 검사에서는 외부 드라이브/네트워크 드라이브 문제로 인해 스캔할 수 없었던 파일 목록입니다.
◦
"스캔되지 않은 파일(Not Scanned)" 아래에는 각 파일의 경로와 해당 파일의 상태가 포함됩니다. "파일 필터링" 설정을 통해 제외된 파일은 목록에 나타나지 않습니다.
3) 체크섬 보고서 열기 및 분석
•
기록(History) 보고서는 검사 실행 시마다 기록 폴더에 저장됩니다. 보고서 파일명은 "projectname_yyyy-mm-dd-hhmmss.tsv" 형식으로 저장됩니다.
•
이 보고서는 시간이 지남에 따라 파일 상태의 변화를 추적하며, Fixity 보고서에서 특정 파일 상태가 어떻게 보고되었는지 이해하는 데 도움을 줍니다.
•
또한, Fixity 프로젝트를 다른 컴퓨터로 이전하거나 특정 시점의 검사 기록으로 되돌리는 데 사용할 수도 있습니다.
•
기록 보고서는 다음 정보를 포함합니다:
◦
프로젝트 이름
◦
Fixity Pro 버전
◦
프로젝트에 포함된 디렉터리 경로
◦
보고서를 생성한 프로젝트의 상태
◦
보고서 수신 이메일 주소 목록
◦
프로젝트의 스캔 일정 정보
◦
보고서가 생성된 날짜 및 시간(군사 시간 형식 hh:mm:ss)
◦
프로젝트에서 설정된 기본 설정
◦
스캔 시 사용된 체크섬 알고리즘
◦
각 파일의 체크섬 값, 파일 경로, 파일 인덱스 값, 마지막으로 스캔된 날짜 및 시간 등이 포함됩니다.
4) 체크섬 값 이해하기
•
서로 다른 파일의 체크섬 값을 확인합니다.
•
SHA-256의 경우 각 체크섬 값은 고유한 64자 문자열입니다.
•
파일이 조금이라도 변경되면 체크섬 값이 완전히 달라집니다.
5) 유사한 파일의 체크섬 비교
•
동일한 파일의 다른 버전(예: 문서의 다른 버전)의 체크섬을 비교합니다.
•
파일의 미세한 변경도 완전히 다른 체크섬 값을 생성한다는 것을 확인합니다.
6) 파일 유형별 체크섬 패턴 식별
•
다양한 파일 유형(.txt, .jpg, .pdf 등)의 체크섬을 비교합니다.
•
동일한 유형의 파일에서 유사한 패턴이 나타나는지 확인합니다.
7) 토론 주제
•
체크섬을 사용하여 파일 무결성을 장기적으로 유지하는 방법은?
•
SHA-256이 MD5보다 갖는 이점은 무엇인가?
•
디지털 보존 워크플로우에서 체크섬을 어떻게 활용할 수 있을까?
•
파일 무결성 검사의 한계는 무엇인가?
C. 추가 참고사항
•
Fixity Pro의 가격, 오픈소스로 제공되지 않는 이유, 다른 컴퓨터에서 사용하는 방법 등에 대한 자세한 내용은 ‘Fixity Pro 문서’를 참조하세요.
D. 참고문헌
•
Anonymous. (2018, July 31). Digital Archiving at the University of York: Checksum or Fixity? Which tool is for me? Digital Archiving at the University of York. https://digital-archiving.blogspot.com/2018/07/checksum-or-fixity-which-tool-is-for-me_70.html
•
Archives, T. N. (n.d.). The National Archives—2. Ingest [Text]. Archives Sector; The National Archives. Retrieved November 1, 2024, from https://www.nationalarchives.gov.uk/advice-and-guidance/managing-your-collection/preserving-digital-collections/digital-preservation-workflows/2-ingest/
•
Fixity and checksums—Digital Preservation Handbook. (n.d.). Retrieved October 29, 2024, from https://www.dpconline.org/handbook/technical-solutions-and-tools/fixity-and-checksums
•
•
Fixity Pro | AVP | Aviary. (n.d.). Retrieved November 1, 2024, from https://weareavp.aviaryplatform.com/collections/1229
•
Kussmann, C. (n.d.). Research Guides: Digital Preservation Tool Guides: Checksum tools. Retrieved October 29, 2024, from https://libguides.umn.edu/dp-tool-guides/checksum
•
Which checksum algorithm should I use? (2020). Digital Preservation Coalition. https://doi.org/10.7207/twgn20-12
•
Wyk, C. S.-V. (n.d.). LibGuides: Digital preservation: Fixity. Retrieved October 29, 2024, from https://ufs.libguides.com/c.php?g=1113411&p=8118678