Python Forensics-Python 이미징 라이브러리
사용 가능한 리소스에서 귀중한 정보를 추출하는 것은 디지털 포렌식의 중요한 부분입니다. 사용 가능한 모든 정보에 액세스하는 것은 적절한 증거를 검색하는 데 도움이되므로 조사 프로세스에 필수적입니다.
데이터를 포함하는 리소스는 데이터베이스와 같은 단순한 데이터 구조이거나 JPEG 이미지와 같은 복잡한 데이터 구조 일 수 있습니다. 간단한 데이터 구조는 간단한 데스크톱 도구를 사용하여 쉽게 액세스 할 수 있으며 복잡한 데이터 구조에서 정보를 추출하려면 정교한 프로그래밍 도구가 필요합니다.
Python 이미징 라이브러리
Python Imaging Library (PIL)는 Python 인터프리터에 이미지 처리 기능을 추가합니다. 이 라이브러리는 다양한 파일 형식을 지원하며 강력한 이미지 처리 및 그래픽 기능을 제공합니다. 다음에서 PIL의 소스 파일을 다운로드 할 수 있습니다.http://www.pythonware.com/products/pil/
다음 그림은 PIL의 이미지 (복잡한 데이터 구조)에서 데이터를 추출하는 전체 흐름도를 보여줍니다.
예
이제 실제 작동 방식을 이해하는 프로그래밍 예제를 살펴 보겠습니다.
Step 1 − 정보를 추출해야하는 위치에서 다음 이미지가 있다고 가정합니다.
Step 2− PIL을 사용하여이 이미지를 열면 먼저 다양한 픽셀 값을 포함하는 증거를 추출하는 데 필요한 포인트가 표시됩니다. 다음은 이미지를 열고 픽셀 값을 기록하는 코드입니다.
from PIL import Image
im = Image.open('Capture.jpeg', 'r')
pix_val = list(im.getdata())
pix_val_flat = [x for sets in pix_val for x in sets]
print pix_val_flat
Step 3 − 우리 코드는 이미지의 픽셀 값을 추출한 후 다음 출력을 생성합니다.
제공된 출력은 RGB 조합의 픽셀 값을 나타내며 증거에 필요한 데이터를 더 잘 보여줍니다. 가져온 데이터는 배열 형식으로 표시됩니다.