DevToys Web Pro iconDevToys Web Pro블로그
평가하기:
브라우저 확장 프로그램을 사용해 보세요:

Base62 인코더 / 디코더

모드

텍스트

  • Base62

  • 기술적 세부 정보

    Base62 인코더/디코더가 작동하는 방식

    도구가 하는 일

    Base62는 62개의 영숫자 문자(0-9, A-Z, a-z)를 사용해 바이너리 데이터를 인코딩하고, Base62 문자열을 다시 텍스트 또는 hex로 디코딩합니다. 출력에는 패딩이 없고 '+', '/', '=' 기호도 없으며 URL 안전 문자만 포함하므로, 퍼센트 인코딩 없이 URL과 쿼리 파라미터에 바로 포함할 수 있습니다.

    개발자들이 흔히 사용하는 사례

    URL 단축 서비스(bit.ly, t.co, 과거의 goo.gl)는 증가하는 정수 ID를 작고 공유하기 좋은 슬러그로 인코딩하기 위해 Base62를 사용합니다. 백엔드 개발자는 소셜 게시물, 트윗, 업로드된 자산을 위한 짧고 불투명한 식별자를 생성합니다. 마케터는 Base64보다 더 깔끔해 보이는 Base62 인코딩 UTM 파라미터로 캠페인을 추적합니다.

    데이터 형식, 타입 또는 변형

    이 도구는 가장 일반적인 Base62 알파벳 순서를 사용합니다: 숫자 0-9, 그다음 대문자 A-Z, 그다음 소문자 a-z. 구현에 따라 순서가 다를 수 있으며(일부는 소문자를 대문자보다 앞에 둡니다), 시스템 간에 인코딩된 데이터를 공유하기 전에 항상 알파벳 호환성을 확인하세요. 출력은 UTF-8 텍스트 입력과 원시 hex 바이트 입력 모두에 대해 표시됩니다.

    흔한 함정과 엣지 케이스

    Base62는 표준화되어 있지 않습니다 — 라이브러리마다 알파벳 순서가 다릅니다(이 도구는 npm `base-x` 관례에 맞춰 0-9, A-Z, a-z를 사용합니다). 바이너리 데이터의 선행 0 바이트는 인코더가 보존하지만, '0'으로 시작하는 Base62 문자열은 '0'이 없는 문자열과 같은 값으로 디코딩됩니다 — 정규(캐노니컬) 형태가 없습니다. 언어 간 상호 운용성을 위해 사용한 정확한 알파벳을 문서화하세요.

    코드 대신 이 도구를 사용해야 하는 경우

    URL 슬러그나 짧은 ID를 디버깅할 때 1회성 인코딩/디코딩에는 브라우저 도구를 사용하세요. 코드에서는 `base-x` npm 패키지(JavaScript), `pybase62` 또는 직접 작성한 변환(Python), 또는 `Base62.io` Java 구현을 선호하세요 — 그리고 향후 리팩터링으로 인코딩이 조용히 바뀌지 않도록 테스트에서 항상 알파벳을 고정(pinning)하세요.