블라인드 워터마크 도구

어떤 사진에도 보이지 않는 텍스트나 이미지를 삽입합니다. 픽셀은 그대로 보이며, 같은 두 비밀번호로 다시 처리하면 메시지를 되찾을 수 있습니다. 모두 브라우저에서 실행되며 업로드하지 않습니다.

두 비밀번호는 실제로 무엇을 하나요?

어느 것도 이미지 자체를 암호화하지 않습니다 — 파일은 정상적으로 열립니다. 두 비밀번호는 알고리즘 내부의 두 독립 셔플을 제어합니다. 메시지를 되찾으려면 두 개 모두 정확히 일치해야 합니다.

이미지 비밀번호 → 비트를 사진의 어느 칸에 숨길지 결정.
워터마크 비밀번호 → 비트가 쓰이는 순서를 결정.
  1. 1. 4×4 블록으로 분할사진을 4×4 픽셀 블록으로 나눕니다. 각 블록이 숨길 후보 위치가 됩니다.
  2. 2. DCT → 이미지 비밀번호로 셔플각 블록을 주파수 영역으로 변환한 뒤, 이미지 비밀번호에서 파생한 시드로 블록 내 픽셀을 결정적으로 뒤섞습니다.
  3. 3. 워터마크 비밀번호로 비트 셔플메시지 비트를 두 번째 시드로 뒤섞은 뒤에 특이값에 씁니다.
  4. 4. 역변환으로 이미지 복원외관은 그대로. 다시 읽으려면 같은 두 비밀번호로 두 셔플을 역으로 실행해야 합니다.

비밀번호 오류 → 노이즈. 어느 한쪽만 1만 어긋나도 잘못된 칸에서 읽거나 순서를 잘못 읽어 순수 노이즈만 얻습니다 — 부분적으로 맞는 메시지는 절대 나오지 않습니다.

Robustness boundaries

Blind watermarks are useful for quiet ownership marks and internal review trails, but they are not magic DRM. Test the exact transformations your image will face before relying on it.

StrongBest case

PNG round trips, mild brightness changes, and controlled resize tests.

VariableNeeds testing

JPEG export, noise, platform recompression, screenshots, and heavy filters.

RiskyFragile

Large crop, rotation, severe downscaling, or edits that remove the marked region.

Use the extraction attack simulator below to rehearse resize, crop, rotation, brightness, and noise before shipping an image.

작동 방식

  1. 1. 사진 선택

    PNG 또는 JPG. 이미지가 클수록 더 긴 메시지를 숨길 수 있습니다.

  2. 2. 비밀 입력

    텍스트, URL 또는 작은 로고. 두 개의 숫자 비밀번호를 설정.

  3. 3. 결과 저장

    워터마크된 PNG를 다운로드. 원본과 구별되지 않습니다.

  4. 4. 나중에 추출

    같은 사진을 놓고 같은 비밀번호를 입력하면 내용이 나옵니다.

왜 필요할까요

자주 묻는 질문

블라인드 워터마크란?

이미지에 숨겨진 정보로, 사람 눈에는 보이지 않지만 프로그램은 원본 없이도 복구합니다.

편집을 견디나요?

네. DWT-DCT-SVD는 자르기, 축소, 회전, 밝기, 약한 노이즈에 강합니다.

이미지가 업로드되나요?

아니요. 모든 처리는 브라우저에서 WebAssembly로 이루어집니다.

얼마나 숨길 수 있나요?

이미지 크기에 따라. 1024×1024는 약 16,000 비트(≈2,000자).

왜 비밀번호가 두 개?

하나는 "어디에", 하나는 "어떤 순서로". 둘 다 맞아야 합니다.

Python blind-watermark와 호환되나요?

네. 동일 알고리즘과 매개변수 — 상호 추출 가능.