이미지 스테가노그래피 — 그림 속에 텍스트 숨기기
LSB 스테가노그래피로 이미지 픽셀 안에 비밀 텍스트 메시지를 숨기고 나중에 다시 꺼내세요 — 모든 처리는 브라우저에서 이뤄지고 업로드되지 않으며 결과는 무손실 PNG입니다.
숨길 원본 이미지를 드롭하거나 클릭해 선택
결과는 항상 PNG로 저장됩니다. PNG는 무손실이라 숨긴 비트가 그대로 보존됩니다 — 절대 JPEG나 WebP로 다시 저장하지 마세요. 손실 압축이 픽셀을 다시 써서 메시지를 파괴합니다.
🔒 모든 처리는 브라우저에서 이뤄지며 이미지와 메시지는 업로드되지 않습니다.
이미지 안에 비밀 메시지 숨기기
이미지 스테가노그래피는 텍스트 메시지를 이미지의 빨강·초록·파랑 채널의 최하위 비트(LSB)에 담습니다. 각 픽셀의 색은 256단계 중 최대 한 단계만 바뀌어 눈에는 보이지 않지만, 수천 개의 픽셀에 걸치면 메시지 하나가 들어갈 공간이 생깁니다. 꺼내기로 전환해 해당 이미지를 다시 넣으면 숨겨진 텍스트가 그대로 읽힙니다. 그림은 완전히 평범해 보이므로 누군가 찾아보지 않는 한 메시지가 있다는 사실조차 알 수 없는, CTF와 프라이버시의 고전적인 기법입니다.
기본이 프라이버시, 그리고 PNG가 중요한 이유
모든 처리는 브라우저 안의 캔버스에서 이뤄지며 원본 이미지와 비밀 텍스트는 업로드되지 않습니다. 결과는 항상 무손실 PNG로 저장됩니다. 이것이 핵심입니다 — JPEG와 WebP는 손실 압축으로 픽셀을 다시 써서 숨긴 비트를 지워 버리기 때문입니다. PNG를 그대로 보관하고 공유하세요. 손실 형식으로 다시 저장하거나 편집하면 메시지가 파괴됩니다. 이는 암호화가 아니라 은닉입니다 — LSB 스테가노그래피를 의심하는 사람은 누구나 텍스트를 추출할 수 있으므로, 비밀이 중요하다면 민감한 내용은 먼저 암호화하세요.
자주 묻는 질문
메시지가 이미지에 어떻게 숨겨지나요?
각 문자는 비트로 바뀌고, 그 비트들은 완전히 불투명한 픽셀만 골라 빨강·초록·파랑 값의 최하위 비트에 순서대로 기록됩니다(투명도 채널은 건드리지 않으며, 조금이라도 비치는 픽셀은 건너뜁니다 — 브라우저 캔버스가 그 비트를 그대로 돌려주지 못하기 때문입니다). 마지막 비트만 바꾸므로 각 색은 256 중 최대 1만큼만 달라져 눈에 보이지 않지만, 정확한 패턴은 나중에 그대로 다시 읽어낼 수 있습니다.
왜 결과를 PNG로 유지해야 하나요?
PNG는 무손실이라 모든 픽셀, 따라서 숨겨진 모든 비트가 정확히 보존됩니다. JPEG와 WebP는 손실 형식이라 이미지를 다시 압축하며 픽셀 값을 바꾸는데, 이 과정에서 최하위 비트가 지워져 숨긴 메시지가 파괴됩니다. 절대 손실 형식으로 변환하거나 다시 저장하지 마세요.
이것은 암호화와 같은가요?
아니요. 스테가노그래피는 메시지의 존재를 숨길 뿐 내용을 뒤섞지는 않습니다. 이미지에 LSB로 숨긴 데이터가 있다고 의심하는 사람은 이런 도구로 추출할 수 있습니다. 내용이 민감하다면 먼저 암호화한 뒤 그 암호문을 숨기세요.
메시지는 얼마나 길게 숨길 수 있나요?
이미지 크기에 따라 다릅니다. 불투명한 픽셀당 3비트(빨강·초록·파랑 채널에 각 1비트)가 들어가고 작은 헤더를 빼면, 불투명한 1000×1000 이미지는 대략 375,000바이트의 텍스트를 담습니다. 투명한 부분은 아무것도 담지 못해 로고나 아이콘은 더 적게 들어가며, 카운터가 그 그림의 실제 수치를 보여줍니다. 입력하는 동안 사용량이 바이트 카운터로 표시되며, 들어가지 않을 메시지는 도구가 삽입을 거부합니다.