티스토리 뷰
파이썬 파일 해시 구하기
파일 해시란 파일의 내용을 고유한 문자열로 표현하는 방법입니다. 파일 해시를 사용하면 파일의 무결성을 검증하거나 파일을 비교하거나 중복을 제거할 수 있습니다. 파이썬에서는 hashlib 모듈을 사용하여 다양한 알고리즘으로 파일 해시를 구할 수 있습니다.
파일 해시를 구하는 방법은 다음과 같습니다.
hashlib 모듈을 임포트합니다.
원하는 알고리즘의 객체를 생성합니다. 예를 들어 MD5 알고리즘을 사용하려면 hashlib.md5()를 호출합니다.
파일을 바이너리 모드로 엽니다.
파일의 내용을 작은 덩어리로 읽어서 알고리즘 객체에 업데이트합니다. 예를 들어 1024 바이트씩 읽으면서 업데이트하려면 다음과 같이 반복문을 사용합니다.
with open("file.txt", "rb") as f: while True: chunk = f.read(1024) if not chunk: break md5.update(chunk)
파일을 다 읽었으면 알고리즘 객체의 hexdigest() 메서드를 호출하여 파일 해시를 16진수 문자열로 반환합니다.
file_hash = md5.hexdigest() print(file_hash)
이렇게 하면 파일의 해시 값을 구할 수 있습니다. 다른 알고리즘을 사용하려면 hashlib 모듈에서 제공하는 다른 객체를 생성하면 됩니다. 예를 들어 SHA-256 알고리즘을 사용하려면 hashlib.sha256()을 호출합니다.
파일 해시는 파일의 내용이 조금이라도 바뀌면 완전히 다른 값이 나오므로, 파일의 무결성을 확인하는 데 유용합니다. 예를 들어 웹사이트에서 다운로드한 파일의 해시 값을 제공한다면, 다운로드한 파일이 원본과 동일한지 확인할 수 있습니다.
파일 해시는 또한 파일을 비교하거나 중복을 제거하는 데도 사용할 수 있습니다. 예를 들어 여러 개의 파일 중에서 같은 내용의 파일이 있는지 확인하려면, 각 파일의 해시 값을 구하고 비교하면 됩니다. 만약 해시 값이 같다면, 파일의 내용도 같다고 볼 수 있습니다.
파일 해시는 간단하게 파이썬의 hashlib 모듈을 사용하여 구할 수 있으므로, 파일 관련 작업에 활용해 보세요.
'프로그래밍' 카테고리의 다른 글
파이썬(python)에서 파일 크기 알아오기 (0) | 2023.04.16 |
---|---|
파이썬(python) 파일 읽기 쓰기 (open) (0) | 2023.04.16 |
python import 총정리 (0) | 2023.04.16 |
Python으로 CSV 읽기 (0) | 2023.04.16 |
iOS swift로 파일 처리하기(FileManager) (0) | 2023.04.15 |
- Total
- Today
- Yesterday
- golang
- 주식
- 예제
- 파이썬
- HTML
- WinAPI
- JavaScript
- 유튜브
- Frontend
- Java
- reactjs
- 트렌드
- Windows
- CSS
- Python
- go
- 스핀락
- 부동산
- 생각
- 투자
- Backend
- ios
- 커널드라이버
- ChatGPT
- Linux
- react
- SWiFT
- Spring
- frida
- JSX
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |