Tools100% 로컬
← 도구 목록으로

이 도구들에 대해

각 도구의 기능과 사용 시점

이 도구들은 개발자, 운영자, 보안 담당자가 하루에 여러 번 손이 가는 작업 — API에서 돌려받은 토큰 디코딩, 빠른 UUID 생성, 정규식 더블체크, 방금 다운로드한 파일 해싱 — 을 위한 군더더기 없는 유틸리티 벨트입니다. 모든 처리는 네이티브 Web Crypto와 표준 DOM API를 사용해 브라우저 내에서 완전히 이루어지며 — 붙여넣거나 입력하거나 드롭한 어떤 것도 기기를 떠나지 않습니다.

Base64

일반 텍스트를 Base64(RFC 4648)로 인코딩하거나 다시 디코딩합니다. 디코딩이 기본 방향인 것은 일상 업무에서 훨씬 더 흔하기 때문입니다. data: URL을 살펴볼 때, Authorization 헤더로 들어온 JWT 세그먼트를 분해할 때, Slack에 누군가 붙여넣은 토큰을 읽을 때, 환경 변수에 박힌 비밀을 풀어낼 때 Base64 디코딩에 손이 갑니다. 인코딩은 바이너리 안전 텍스트를 URL이나 JSON 필드에 넣어야 할 때 사용합니다. 양방향 모두 Unicode(UTF-8)를 올바르게 처리합니다.

TOTP & HOTP — 일회용 비밀번호 생성기

TOTP / HOTP 전용 페이지 열기 →

Base32 인코딩된 공유 비밀이 주어졌을 때 인증 앱이 표시할 코드와 동일한 코드를 생성합니다. RFC 6238(시간 기반 TOTP)과 RFC 4226(카운터 기반 HOTP)을 모두 구현하며, 실제 2FA 배포에서 중요한 옵션 일체 — HMAC-SHA1 / SHA-256 / SHA-512, 6 / 7 / 8자리, 30 / 60초 윈도우, 명시적 HOTP 카운터 — 를 노출합니다. Google Authenticator, 1Password, Authy, FreeOTP, 기타 RFC 준수 클라이언트와 호환됩니다.

otpauth:// URI를 붙여넣으면 모든 옵션이 URI 매개변수에서 자동 채워집니다 — 사이드 채널로 받은 URI를 가져오기 전에 검사하고 싶을 때 유용합니다. 반대 방향으로는 QR로 보기 동작이 현재 구성을 QR 탭에 넘겨 핸드폰의 인증 앱으로 곧장 스캔할 수 있게 해줍니다. 인증 서버의 시계가 어긋난 경우를 위해 이전과 다음 윈도우의 코드도 화면에 유지됩니다.

QR 코드 생성기

QR 전용 페이지 열기 →

ISO/IEC 18004에 따라 임의의 텍스트나 URL을 QR 코드로 렌더링합니다. 여기서 가장 흔한 실용적 용도는 otpauth:// URI를 스캔 가능한 코드로 변환해 폰 기반 인증 앱에 넘기는 것이지만, Wi-Fi 자격 증명, 연락처 카드, 일회성 URL 등 어떤 짧은 텍스트에도 사용할 수 있습니다. 오류 정정 레벨 L / M / Q / H를 선택하세요 — 높을수록 얼룩과 접힘에 강하지만 코드는 더 조밀합니다. 결과는 벡터 SVG(어떤 크기에서도 선명) 또는 PNG로 다운로드할 수 있습니다.

URL 인코더 / 디코더

RFC 3986에 따라 URL 구성 요소를 퍼센트 인코딩 및 디코딩합니다. 디코딩이 기본인 것은 더 흔한 시나리오가 "로그에서 인코딩된 URL을 보고 읽고 싶다"이기 때문입니다. 두 가지 범위가 제공됩니다: 구성 요소는 입력을 단일 값으로 다루고 영숫자가 아닌 모든 것을 인코딩합니다 — 쿼리 매개변수 값을 위한 엄격 모드입니다; 전체 URL은 URL 구조 문자(:/?#[])를 보존해 완전한 URL이 클릭 가능하게 유지됩니다. 쿼리 문자열 값이나 경로 세그먼트를 개별적으로 다룰 때는 구성 요소, 전체 URL을 다룰 때는 전체 URL을 사용하세요.

JSON 포매터

JSON(ECMA-404)을 검증, 정렬 또는 압축합니다. 잘못된 입력의 경우 구문 오류의 정확한 행과 열이 강조 표시되어 깨진 문자로 바로 점프할 수 있습니다. 포매터는 2공백, 4공백, 탭 들여쓰기를 지원합니다. API에서 형식 없는 덩어리를 막 받았을 때, 깊게 중첩된 응답을 살펴봐야 할 때, 빌드 산출물에 포함하기 전 압축하고 싶을 때 유용합니다.

JWT 디코더 & 검증기

JWT 전용 페이지 열기 →

JSON Web Token(RFC 7519)을 디코딩하고 검사합니다. 토큰은 세 개의 Base64 인코딩 부분(헤더, 페이로드, 서명)으로 분할되고, 각 부분의 JSON 내용이 정렬되어 표시됩니다. 표준 시간 클레임 — iat, nbf, exp — 은 사람이 읽을 수 있는 타임스탬프로 표시되며, 토큰이 활성 상태일 때 라이브 카운트다운이 함께 표시됩니다.

서명 검증 박스에 키를 붙여넣으면 브라우저의 Web Crypto API를 통해 암호 검증이 로컬에서 실행됩니다. 지원 패밀리: HS256/HS384/HS512는 공유 비밀과 함께; RS256/RS384/RS512PS256/PS384/PS512는 PEM SPKI 형식의 RSA 공개키와 함께; ES256/ES384/ES512는 P-256 / P-384 / P-521 위의 EC 공개키와 함께. 비밀 또는 키는 검증 실행 동안만 메모리에 유지됩니다 — 서버로 전송되거나, 저장소에 기록되거나, 로그에 남지 않습니다.

해시

암호 해시(FIPS 180-4)를 계산합니다: SHA-1, SHA-256, SHA-384, SHA-512. 파일을 드롭하거나 텍스트를 붙여넣으세요; 다이제스트는 브라우저의 네이티브 Web Crypto 구현인 crypto.subtle.digest로 로컬에서 계산됩니다. 다운로드한 파일이 게시된 체크섬과 일치하는지 확인, 콘텐츠 주소 지정 스토리지를 위한 지문 생성, 페이로드를 더 처리하기 전 빠른 무결성 점검에 유용합니다.

Hex

텍스트와 16진 바이트 시퀀스를 상호 변환합니다. 디코딩이 기본 — hex(바이트 사이에 구분자가 있든 없든)를 붙여넣고 텍스트로 다시 읽습니다. hex dump 읽기, 바이너리 프로토콜 디버깅, 원시 바이트는 있지만 아직 읽기 좋은 형태가 아닌 저수준 인코딩 작업에 유용합니다. 구분자 옵션을 통해 인코딩 시 공백 구분, 콜론 구분, 연속 출력 사이를 전환할 수 있습니다.

HTML 엔티티

HTML 엔티티를 인코딩하고 디코딩합니다. 디코딩이 기본 — <, &, " 등으로 가득한 마크업을 붙여넣고 원래 문자를 읽습니다. 인코딩 모드는 사용자 제공 텍스트를 페이지에 포함하기에 적합한 HTML-안전 출력을 생성합니다. 입력 아래 참조 그리드에는 한두 개만 필요할 때 개별로 복사할 수 있는 일반 엔티티가 표시됩니다.

정규식 테스터

JavaScript 풍의 정규 표현식(ECMA-262)을 테스트합니다. 패턴을 입력하고, 플래그(g 전역, i 대소문자 무시, m 여러 줄, s 점-모두)를 토글하면, 테스트 텍스트에서 일치가 실시간으로 강조됩니다. 캡처 그룹은 색상으로 코딩되며, 전체 일치 목록과 그룹 내용이 아래에 표시됩니다. 코드에 붙여넣기 전 패턴을 시제품화하거나, 정규식이 예상대로 일치하지 않는 이유를 디버깅하거나, 정규식 구문을 대화형으로 학습하는 데 유용합니다.

비교

두 텍스트를 비교하고 추가는 녹색, 삭제는 빨강으로 줄별 차이를 표시합니다. 두 구성, 두 API 응답, 두 로그 발췌 사이의 변화 — 나란히 비교해야 하는 어떤 것에든 — 를 발견하는 데 유용합니다. 요약 줄에 합계가 표시되어 추가 및 제거된 줄 수를 한눈에 알 수 있습니다.

색상

색을 HEX, rgb() 또는 hsl()로 붙여넣으면 네 가지 표준 CSS 형식 — HEX, RGB, HSL, 지각적으로 균일한 OKLCH(CSS Color Module Level 4) — 가 나란히 표시됩니다. OKLCH 형식은 출력 전용으로 표시되며, 테마 팔레트 생성 시나 색조에 관계없이 명도가 시각적으로 일관된 색이 필요할 때 편리합니다.

UUID 생성기

암호학적 임의 UUID(RFC 4122 v4)를 생성합니다 — 데이터베이스, 분산 시스템, 큐 ID, API에서 사용되는 표준 128비트 식별자입니다. 임의 바이트는 crypto.getRandomValues에서 옵니다. 생성기 아래의 검증기는 붙여넣은 UUID가 잘 형성되었는지, 그리고 RFC 4122 어느 버전(v1~v5)을 주장하는지 알려줍니다.

비밀번호 생성기

NIST SP 800-63B 지침에 맞춘 암호학적 임의 비밀번호를 생성합니다. 길이와 포함할 문자 클래스(소문자, 대문자, 숫자, 기호)를 선택하면 설정 변경에 따라 라이브 엔트로피 추정이 갱신됩니다. 임의 소스는 crypto.getRandomValues로, 현대 브라우저가 TLS 관련 작업에 사용하는 것과 동일한 암호학적으로 안전한 RNG입니다. 계정이나 서비스용 새 강력한 비밀번호가 필요한데 비밀번호 관리자의 기본값에 의존하고 싶지 않을 때 유용합니다.

난수 생성기

난수 전용 페이지 열기 →

브라우저의 crypto.getRandomValues에서 암호학적 임의 정수 또는 소수를 추출합니다. 본 페이지는 거부 표본 추출로 균등 값을 그리므로 모듈로 편향이 없습니다 — Math.random()은 빠르지만 결정적이고 임의 범위로 스케일하면 미세하게 비균등합니다. 설정 가능: 범위(양수, 음수 또는 혼합), 한 번에 몇 개를 뽑을지(최대 10,000), 정수 vs. 소수 모드(0~15자리 정밀도), 고유 전용 모드(공정성을 위한 부분 Fisher–Yates 셔플 사용), 정렬 순서, 출력 구분자(줄바꿈, 쉼표, 공백, JSON 배열, CSV 행). 주사위 굴리기, 로또 추첨, 백분율, 임의 바이트, 0~1 소수에 대한 빠른 프리셋이 연결되어 있습니다.

동전 던지기

동전 전용 페이지 열기 →

진짜 3D 애니메이션을 가진 진짜 동전 던지기. 결과는 동전이 회전하기 전에 crypto.getRandomValues에서 뽑은 1비트로 결정되므로, 던지기는 순전히 장식이고 결과는 증명 가능한 50 / 50입니다. 양면 라벨을 사용자 지정(예 / 아니요, 머무름 / 떠남 등 어떤 이진이든), 던지기당 배치 크기를 1에서 1000까지 선택, 애니메이션 속도를 느림에서 즉시까지 선택, 그리고 던지면서 앞/뒷면 비율이 수렴하는 것을 볼 수 있습니다. 세션 로그는 최장 연속 추적과 함께 전체 기록을 보여줍니다 — 같은 면이 10번 이상 연속으로 나오는 것이 예상 빈도로 실제 발생함을 자기 눈으로 확인하는 데 유용합니다.

Unix 시간

Unix 타임스탬프(POSIX.1 — 1970-01-01 UTC 이후 초)를 읽기 좋은 날짜로, 그리고 그 반대로 변환합니다. 상단의 라이브 타임스탬프는 기기의 현재 시간(Date.now())이며 어떤 시계 서비스도 조회되지 않습니다. 두 번째 열에서 날짜를 선택하면 그 타임스탬프를, 첫 번째 열에 타임스탬프를 붙여넣으면 UTC, 로컬 시간, 사람-상대 형식("2시간 전")의 날짜를 봅니다. 로그 파일을 읽거나, 시간 관련 코드를 디버깅하거나, 단순히 1714363200이 실제 무엇을 의미하는지 알아내고 싶을 때 유용합니다.

전체 작동 방식

모든 작업은 브라우저에서 로컬로 실행됩니다. 해시, HMAC, 난수 생성, base 인코딩, 정규식 매칭, 폰트 렌더링 — 전부. 이 사이트는 어떤 서드파티 스크립트, 분석, 광고 프레임도 로드하지 않습니다. 초기 페이지 로드 후의 유일한 네트워크 요청은 정적 자산 자체(HTML, CSS, JS, 폰트, 아이콘)이며 처음 방문 시에만 발생 — 이후 Service Worker가 오프라인으로 제공합니다.

붙여넣거나 입력하거나 드롭한 어떤 것도 브라우저 탭 외부로 전송되거나 어디에도 저장되지 않습니다. 유일하게 지속되는 상태는 localStorage에 저장되는 몇 가지 사용자 환경설정(테마, 팔레트, 애니메이션 토글)뿐입니다. 전체 버전은 개인정보 처리방침을 참조하세요.

문의

질문, 버그 신고, 또는 추가하고 싶은 도구 제안이 있나요? [email protected]로 연락주세요.