인코딩 | 디코딩 | 압축

> 인코딩 | 디코딩 | 압축 <

// URL 안전하고 컴팩트한 데이터 표현을 위한 Base62 인코딩

[보안]

로컬 처리

100% 클라이언트측 Base62 인코딩. 데이터가 브라우저를 떠나지 않습니다.

[컴팩트]

URL 안전

+, /, = 같은 특수 문자가 없습니다. URL과 파일명에 완벽합니다.

[무료]

양방향

인코딩과 디코딩 기능 모두. 가역적 데이터 변환.

// BASE62 인코딩 정보

Base62 작동 방식:

Base62는 62개 문자(0-9, A-Z, a-z)를 사용하여 데이터를 표현합니다. 바이너리 데이터를 특수 문자 없이 컴팩트하고 URL 안전한 문자열로 변환합니다.

예시:

"안녕하세요" → 5TP3P3v

Base62를 사용하는 이유:

  • >인코딩 없이 URL 안전
  • >특수 문자 없음 (+, /, =)
  • >16진수보다 짧음
  • >데이터베이스 키에 완벽
  • >사람이 읽기 쉬운 형식

>> 자주 묻는 질문

Q: Base62 인코딩이란 무엇인가요?

A: Base62 인코딩은 62개 문자(0-9, A-Z, a-z)를 사용하여 데이터를 표현합니다. Base64와 유사하지만 특수 문자(+, /, =)가 없어 URL 안전하고 파일명 친화적입니다.

Q: Base62는 Base64와 어떻게 다른가요?

A: Base62는 62개 문자를 사용하고 Base64는 64개를 사용합니다. Base62는 특수 문자를 피하여 인코딩 없이도 URL 안전합니다. Base64는 더 컴팩트하지만 URL 인코딩이 필요합니다.

Q: 언제 Base62를 사용해야 하나요?

A: URL 슬러그, 파일명, 데이터베이스 키, 또는 특수 문자 없이 컴팩트하고 URL 안전한 인코딩이 필요한 상황에서 Base62를 사용하세요.

Q: Base62 인코딩은 가역적인가요?

A: 네, Base62 인코딩은 완전히 가역적입니다. 인코딩된 데이터는 손실 없이 원래 형태로 디코딩할 수 있습니다.

Q: Base62 인코딩의 효율성은 어떤가요?

A: Base62는 Base64보다 약 20% 크지만 URL 인코딩의 필요를 없애줍니다. 웹 애플리케이션에서는 전체적으로 더 효율적인 경우가 많습니다.

// RELATED ARTICLES

// 빠른 참조

DECHEXBase36Base62
0000
613d1pz
623e1q10
10003e8rsG8
12345678975bcd1521i3v98M0kX
4294967295ffffffff1z141z34gfFC3

// 코드 예제

Alphabet  0-9 A-Z a-z                 (0-9A-Za-z, no official RFC)
Capacity  62^6 = 56,800,235,584     62^7 = 3,521,614,606,208
Python    A="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
          while n: s = A[n % 62] + s; n //= 62
JS        npm i base62     base62.encode(123456)

>> 더 많은 질문

Q: Base62에 표준이 있나요?

A: 아니요, Base62에는 RFC가 없습니다. 라이브러리마다 문자 순서가 다르며, 가장 흔한 것은 0-9A-Za-z(이 도구와 동일)이고 0-9a-zA-Z나 A-Za-z0-9도 있습니다. 값은 같은 알파벳으로만 디코딩할 수 있습니다.

Q: Base62는 대소문자를 구분하나요?

A: 네. A와 a는 서로 다른 기호이며 값도 다르기 때문에 Base36보다 기호 수가 두 배입니다. DNS 레이블처럼 대소문자를 구분하지 않는 값이 필요하면 Base36을 쓰세요.

Q: 6자 또는 7자로 몇 개의 단축 URL을 만들 수 있나요?

A: 6자는 62⁶ = 56,800,235,584가지(약 568억), 7자는 62⁷ = 3,521,614,606,208가지(약 3.5조)입니다. 그래서 링크 단축 서비스는 보통 6~8자면 충분합니다.