개인정보 마스킹 도구

현재 입력을 예제 데이터로 바꿉니다.

예상 결과: 8곳이 바뀝니다. 이메일 주소(두 번 모두 [EMAIL_1]), 전화번호, 카드 번호, IBAN, IP 주소, Bearer 토큰, 비밀번호입니다. 이름 Alice Smith는 AI 감지를 켜지 않으면 그대로 남습니다.

제한 사항: 패턴은 구조가 정해진 값만 알아봅니다. 이름, 주소, 각종 번호에는 선택 사항인 AI 감지가 필요하며, 라틴 문자 텍스트에서 가장 정확합니다. 공유하기 전에 반드시 결과를 확인하세요.

바꾸는 방식
찾을 항목

이 사이트에서 약 30 MB를 한 번만 내려받은 뒤 모두 기기에서 실행됩니다. 영어 등 라틴 문자 텍스트에서 가장 정확합니다.

출력

자동 감지는 놓치는 것이 있습니다. 공유하기 전에 결과를 읽어 보세요.

입력한 내용은 저장, 기록, 공유되지 않습니다.

로그, 문의 내용, AI에 보낼 프롬프트를 붙여 넣으면 그 안의 이메일 주소, 전화번호, 카드 번호, IP 주소, API 키를 공유 전에 바꿔 줍니다. 선택 사항인 기기 내 AI를 켜면 이름과 주소도 찾아냅니다.

사용 방법

  1. 공유할 텍스트를 붙여 넣습니다.
  2. 값을 바꾸는 방식과 찾을 항목을 고릅니다.
  3. 이름이나 주소가 들어 있다면 AI 감지를 켭니다.
  4. 강조 표시된 결과를 읽어 본 뒤 복사합니다.

두 단계: 패턴과 모델

민감한 값은 대부분 정해진 형식이 있고, 형식은 검증할 수 있습니다. 카드 번호는 Luhn 체크섬으로, IBAN은 ISO 13616 mod 97 검사로, IPv4 주소는 옥텟 단위로, IPv6 주소는 서브넷 계산기와 같은 파서로 확인합니다. API 키는 발급처가 공개한 접두사로 알아봅니다. GitHub, AWS, Stripe, Slack, Google, npm, 그리고 AI 서비스에서 쓰는 sk- 형식 키가 그렇고, 개인 키 블록, Authorization 헤더, DB_PASSWORD= 같은 설정값도 대상입니다. 이 단계는 입력할 때마다 실행되며 내려받을 것이 없습니다.

이름, 도로명 주소, 각종 번호에는 그런 형식이 없습니다. '하늘'이 사람 이름인지 그냥 하늘인지는 앞뒤 문맥으로만 알 수 있기 때문에 두 번째 단계는 패턴이 아니라 모델입니다. National Design Studio가 CC BY 4.0으로 공개한 작은 토큰 분류 모델 Rampart를 사용합니다. 6층 트랜스포머에 약 15 MB이며, 이름, 성, 도로명 주소, 납세자·여권·운전면허 번호 등을 구분하도록 학습되었습니다. 켰을 때만 기기의 백그라운드 워커에서 실행됩니다.

두 단계가 같은 글자를 두고 다르게 판단하면 패턴이 우선합니다. 체크섬을 통과한 번호는 모델의 추측보다 확실한 증거이기 때문입니다. 또한 값은 항상 통째로 바꿉니다. 이메일 주소의 절반만 남는 것은 어느 쪽 결과보다도 나쁩니다.

놓치는 것

자동 마스킹에 완벽한 것은 없고, 이 도구도 마찬가지입니다. 모델이 직접 공개한 평가에 따르면 라틴 문자 테스트 데이터에서의 재현율은 약 98%입니다. 학습 데이터와 비슷한 글이라도 개인정보 60건 가운데 1건 정도는 빠져나간다는 뜻입니다. 라틴 문자가 아닌 글자로 쓴 이름에는 훨씬 약해서, 모델 카드에 따르면 일본어 이름은 약 46%, 한국어는 15%, 중국어는 9%에 그칩니다. 패턴 단계는 어느 언어에서나 작동하지만 이름은 패턴이 아닙니다.

사람을 특정하는 정보가 늘 하나의 값 형태인 것은 아닙니다. 직함, 작은 동네 이름, 날짜만 있어도 가릴 단어 하나 없이 한 사람을 가리킬 수 있습니다. 또 다른 사각지대는 조직 내부 식별자입니다. 고객 번호, 사건 번호, 호스트 이름, 프로젝트 코드명은 그 조직 안에서만 의미가 있어 외부 도구는 알아볼 수 없습니다. 이런 것은 이 도구를 쓰기 전이나 후에 직접 바꿔 주세요.

그래서 결과에 강조 표시를 합니다. 바뀐 곳에는 모두 표시가 붙고, 모델이 찾은 부분은 일치가 아니라 판단이므로 점선으로 둘러싸입니다. 어디에 붙여 넣기 전에 반드시 읽어 보세요. 이 도구의 목적은 확인을 없애는 것이 아니라 확인을 빠르게 하는 것입니다.

바꾸는 방식 고르기

기본값은 번호 붙은 태그입니다. 텍스트를 읽을 수 있는 상태로 유지해 주기 때문입니다. 같은 값은 대소문자와 관계없이 항상 같은 태그를 받으므로 로그의 흐름이 남습니다. 예를 들어 '[EMAIL_1]이 로그인에 세 번 실패한 뒤 같은 [IP_1]에서 [EMAIL_2]가 성공했다'처럼 읽힙니다. 마스킹된 글을 읽는 AI 어시스턴트도 누가 무엇을 했는지 추론할 수 있습니다. 모든 주소가 같은 단어로 바뀌면 그럴 수 없습니다.

번호 없는 태그는 그 연결마저 지웁니다. 사고에 관련된 고객이 몇 명인지처럼 반복되는 양상 자체가 민감할 때, 혹은 남는 정보를 최소로 하고 싶을 때 쓰세요.

별표는 원래 길이와 배치를 그대로 두므로 고정폭 출력이나 스크린숏에 알맞습니다. 대신 길이 자체가 작은 단서가 됩니다. 두 글자 이름과 네 글자 이름은 여전히 구분됩니다.

'익명'이라는 말은 조심해서 써야 합니다. GDPR이나 한국의 개인정보 보호법에서는 눈에 띄는 식별자만 지운 데이터를 보통 가명정보로 보며, 여전히 개인정보로 다룰 수 있습니다. 이 도구는 태그에서 원래 값으로 되돌리는 대응표를 전혀 보관하지 않지만, 남은 문맥만으로도 누군가를 알아볼 수 있습니다.

텍스트는 어디로 가나요

어디로도 가지 않습니다. 패턴 단계는 페이지 안에서 실행됩니다. 모델은 켤 때 이 사이트에서 한 번만 내려받아 브라우저에 캐시합니다. 크기는 약 30 MB이며 ONNX Runtime WebAssembly 엔진과 모델 가중치로 이루어져 있습니다. 이후에는 Web Worker 안에서 실행되며, 텍스트도 결과도 기기 밖으로 나가지 않습니다. 브라우저 개발자 도구의 네트워크 탭에서 확인할 수 있습니다. 내려받은 뒤에는 감지를 실행해도 요청이 하나도 생기지 않습니다.

이 점은 다른 도구보다 여기서 더 중요합니다. 텍스트를 가리는 이유는 대개 그것이 다른 곳, 즉 AI 어시스턴트, 공개 이슈 트래커, 커뮤니티 게시글, 업체 고객 지원 창구로 갈 예정이기 때문입니다. 가리기 위해 가리기 전의 원문을 업로드하는 도구라면 존재 이유가 없습니다.

자주 묻는 질문

모든 개인정보를 찾아내나요?
아니요. 그런 자동 도구는 없습니다. 형식이 정해진 값은 확실히 찾고, 이름과 주소는 AI 감지를 켜면 대부분 찾지만, 간접적으로 사람을 특정하는 문맥은 찾지 못합니다. 공유하기 전에 강조 표시된 결과를 읽어 보세요.
이름이 바뀌지 않는 이유는 무엇인가요?
이름에는 맞춰 볼 형식이 없기 때문입니다. AI 감지를 켜면 이름, 주소, 각종 번호를 알아보는 작은 모델이 기기로 내려받아집니다. 끈 상태에서는 형식으로 판별할 수 있는 값만 바뀝니다.
이름 감지는 어떤 언어를 지원하나요?
영어, 스페인어, 프랑스어, 독일어, 이탈리아어, 포르투갈어, 네덜란드어이며 공개된 재현율은 약 98%입니다. 한국어, 일본어, 중국어 등 라틴 문자가 아닌 글자로 쓴 이름은 대부분 놓칩니다. 이메일, 카드 번호, 키, IP 주소 같은 패턴 감지는 언어와 상관없이 작동합니다.
AI는 정확히 무엇을 내려받나요?
이 사이트에서 약 30 MB를 내려받습니다. ONNX Runtime WebAssembly 엔진과 토크나이저를 포함한 Rampart 모델입니다. 제3자 서버에서는 아무것도 불러오지 않고, 파일은 캐시되며, 체크박스를 켰을 때만 다운로드가 시작됩니다.
주문 번호나 날짜가 그대로 남은 이유는 무엇인가요?
번호는 형식을 검증할 수 있을 때만 바꿉니다. 카드 번호는 Luhn을, IBAN은 mod 97을 통과해야 합니다. 긴 숫자를 모두 바꾸면 공유하려는 로그 자체를 읽을 수 없게 되기 때문입니다. 날짜는 그것만으로는 개인정보로 보지 않습니다. 조직 고유의 값은 직접 바꿔 주세요.
마스킹을 되돌릴 수 있나요?
아니요. 태그에서 원래 값으로 되돌리는 대응표는 설계상 어디에도 보관하지 않습니다. 원문이 필요하다면 따로 보관해 두세요.

마지막 업데이트:

문제 신고

진행 단계, 예상 결과, 실제 결과를 적어 주세요. 비밀 정보와 개인 정보는 삭제해 주세요.

관련 도구