보안을 그리다, 훈이

[Cryptography] 스테가노그래피(Steganography) 기법 본문

Security/Cryptography

[Cryptography] 스테가노그래피(Steganography) 기법

HooNeee 2022. 1. 15. 16:25

 

스테가노그래피(Steganography)란?

 

전달하려는 기밀 정보를 JPEG, PNG, GIF, BMP 등의 이미지 파일이나 MP3 파일 등에 숨기는 심층암호 기법을 말한다.

 

 

이미지 파일을 활용한 스테가노그래피 기법 1 - 삽입

 

JPEG, PNG, GIF 등의 파일에는 파일의 끝을 알리는 푸터 시그니처 즉, EOI(End Of Image) byte가 존재한다.

EOI byte 뒤에 어떠한 값을 삽입하더라도 실제 파일을 열어보면 삽입된 데이터가 무시된 채 이미지가 출력된다.

즉, 원본 이미지 파일과 조작된 이미지 파일을 비교해보아도 차이가 나지 않는다.

따라서 EOI byte 뒤에 데이터를 숨길 수 있다.

예시) JPEG 파일의 EOI byte 'FF D9' 뒤에 전달하려는 기밀 정보를 숨길 수 있다.

 

또한, 파일의 헤더 중에는 이미지에 영향을 주지 않는 부분이 상당히 많기 때문에 헤더 영역에도 데이터를 삽입할 수 있다.

예시) JPEG 파일의 경우 파일 세부사항이 들어가는 공간이 존재하는데 이 영역에 전달하려는 기밀 정보를 숨길 수 있다.

 

 

이미지 파일을 활용한 스테가노그래피 기법 2 - 변조

 

가장 일반적인 방법은 LSB(최하위 비트, Least Significant Bit)를 변조하는 것이다.

 

Significant Bit

 

대표적으로 24bit 이미지 파일인 JPEG, BMP 파일에 적용된다.

이 기법은 실제 이미지에 영향을 주긴 하지만 24bit가 하나의 색을 표현하기 때문에 영향력이 큰 MSB(Most Significat Bit)와 달리 LSB가 변조되어도 사람의 눈으로 알아채기 힘들고 Hex Editor를 통해 분석해보면 알 수 있는 정도이다.

예시를 들어보면, 흰색을 나타내는 0xFFFFFF 값에 대하여 LSB 변조를 하면 FE가 된다.

FE의 LSB는 0이고 FF의 LSB는 1이며, 0과 1로 8자리 즉 char 값을 나타낼 수 있으므로 ASCII에 대응하는 문자열을 숨길 수 있다.

이는 결과적으로 흰색을 나타내는 값의 LSB를 1만큼 변조하여 사람의 눈으로는 알아차릴 수 없는 이미지 변화를 일으킬 수 있다.

 

'Security > Cryptography' 카테고리의 다른 글

[Cryptography] Vigenere Cipher (비즈네르 암호)  (0) 2021.12.15
Comments