Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
StegaStamp — 물리적 사진 속 보이지 않는 하이퍼링크 | Kitploit
도구/GitHubGitHub/tancik/stegastamp
SteganographyMachine Learning
GitHubtancik/stegastamp

StegaStamp

물리적 사진 속 보이지 않는 하이퍼링크

저장소 보기웹사이트
872225102년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

StegaStamp: 실제 사진 속의 보이지 않는 하이퍼링크 [프로젝트 페이지]

CVPR 2020

Matthew Tancik, Ben Mildenhall, Ren Ng 캘리포니아 대학교 버클리

소개

이 저장소는 여기에서 확인할 수 있는 ArXiv 보고서의 코드 릴리스입니다. 이 프로젝트는 지각적 유사성을 유지하면서 이미지에 데이터를 숨기는 방법을 탐구합니다. 우리의 기여는 인코딩된 이미지(StegaStamp)가 인쇄되고 카메라로 촬영된 후에도 데이터를 추출할 수 있는 능력입니다(이 단계에서는 이미지 손상이 발생합니다). 이 저장소에는 논문에 제시된 결과를 재현하기 위한 코드와 사전 훈련된 모델이 포함되어 있습니다. 또한, 인코더와 디코더 모델을 훈련하는 데 필요한 코드도 포함되어 있습니다.

인용

본 연구가 유용하다고 생각되신다면 다음을 인용해 주시기 바랍니다:

root@kitploit:~
    @inproceedings{2019stegastamp,
        title={StegaStamp: Invisible Hyperlinks in Physical Photographs},
        author={Tancik, Matthew and Mildenhall, Ben and Ng, Ren},
        booktitle={IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
        year={2020}
    }

설치

  • 저장소를 클론하고 서브모듈 설치
root@kitploit:~
git clone --recurse-submodules https://github.com/tancik/StegaStamp.git
cd StegaStamp
  • 텐서플로우 설치 (tf 1.13에서 테스트)
  • Python 3 필요
  • 종속성 다운로드
root@kitploit:~
pip install -r requirements.txt

훈련

인코더 / 디코더

  • train.py에서 데이터셋 경로 설정
root@kitploit:~
TRAIN_PATH = DIR_OF_DATASET_IMAGES
  • 모델 훈련
root@kitploit:~
bash scripts/base.sh EXP_NAME

훈련은 train.py에서 수행됩니다. 여러 하이퍼파라미터가 있으며, 대부분은 증강 파라미터에 해당합니다. scripts/bash.sh는 좋은 시작점을 제공합니다.

검출기

검출기 모델(StegaStamp를 분할하는 데 사용)의 훈련 코드는 이 저장소에 포함되어 있지 않습니다. 논문에서 사용된 모델은 여기에 공개된 BiSeNet 모델을 사용하여 훈련되었습니다. CROP_WIDTH와 CROP_HEIGHT는 1024로 설정되었으며, 다른 모든 파라미터는 기본값으로 설정되었습니다. 데이터셋은 왜곡된 StegaStamp를 더 큰 이미지에 임의로 배치하여 생성되었습니다.

텐서보드

훈련을 시각화하려면 다음 명령을 실행하고 브라우저에서 http://localhost:6006으로 이동하세요.

root@kitploit:~
tensorboard --logdir logs

메시지 인코딩

encode_image.py 스크립트를 사용하여 이미지나 이미지 디렉토리에 메시지를 인코딩할 수 있습니다. 기본 모델은 7자 이하의 utf-8 인코딩된 비밀을 예상합니다(100비트 메시지 -> ECC 후 56비트).

이미지에 메시지 인코딩:

root@kitploit:~
python encode_image.py \
  saved_models/stegastamp_pretrained \
  --image test_im.png  \
  --save_dir out/ \
  --secret Hello

이렇게 하면 StegaStamp와 원본 이미지에 적용된 잔차(residual)가 모두 저장됩니다.

메시지 디코딩

decode_image.py 스크립트를 사용하여 StegaStamp에서 메시지를 디코딩할 수 있습니다.

사용 예:

root@kitploit:~
python decode_image.py \
  saved_models/stegastamp_pretrained \
  --image out/test_hidden.png

검출 및 디코딩

detector.py 스크립트를 사용하여 이미지에서 StegaStamp를 검출하고 디코딩할 수 있습니다. 이는 여러 개의 StegaStamp가 있거나 StegaStamp가 이미지 프레임을 채우지 않는 경우에 유용합니다.

검출기를 사용하려면 설치 섹션에 설명된 대로 검출기 모델을 다운로드해야 합니다. 권장 입력 비디오 해상도는 1920x1080입니다.

root@kitploit:~
python detector.py \
  --detector_model detector_models/stegastamp_detector \
  --decoder_model saved_models/stegastamp_pretrained \
  --video test_vid.mp4

--save_video FILENAME 플래그를 추가하면 결과를 저장합니다.

--visualize_detector 플래그를 사용하여 검출기 네트워크의 출력을 시각화할 수 있습니다. 마스크는 분할 마스크에 해당하며, 색상이 지정된 다각형은 일련의 휴리스틱을 사용하여 이 분할 마스크에 적합합니다. 검출기 출력은 노이즈가 있을 수 있으며 stegastamp의 크기에 민감합니다. 검출 네트워크의 추가 최적화는 이 논문에서 다루지 않습니다.

도구 다운로드