JWT 토큰 헤더 크기 계산기
JWT 헤더·페이로드·서명 바이트를 입력해 Base64URL 인코딩 후 예상 토큰 길이를 계산합니다.
JWT의 각 구성 요소를 Base64URL로 인코딩했을 때의 길이와 구분점 2개를 더해 예상 토큰 크기를 계산해요. 실제 토큰에는 클레임과 서명 알고리즘에 따라 길이가 달라질 수 있습니다.
JWT 토큰 헤더 크기 계산기
계산 공식 및 예시
예상 토큰 길이 = Base64URL 헤더 길이 + 구분점 1개 + Base64URL 페이로드 길이 + 구분점 1개 + Base64URL 서명 길이JWT 토큰 헤더 크기 계산기 사용법
JWT는 헤더, 페이로드, 서명을 각각 Base64URL로 인코딩한 뒤 마침표로 연결합니다. 이 계산기에 각 부분의 UTF-8 기준 바이트 수를 입력하면 패딩이 제거된 인코딩 길이와 구분점 2개를 포함한 예상 토큰 길이를 확인할 수 있습니다.
헤더와 페이로드는 JSON 문자열을 UTF-8로 변환한 바이트 수를 입력하고, 서명은 사용하는 알고리즘이 생성하는 서명 바이트 수를 입력하세요. 결과는 일반적으로 HTTP Authorization 헤더나 쿠키 크기를 검토할 때 활용할 수 있습니다.
계산 방법
Base64URL 인코딩 길이는 입력 바이트를 3개 단위로 처리한 뒤 마지막에 필요 없는 패딩 문자를 제거해 계산합니다. 최종 JWT 길이에는 헤더·페이로드·서명 사이의 구분점 2개가 추가됩니다.
계산 예시
- 상황 1: 헤더 27바이트, 페이로드 64바이트, 서명 256바이트인 경우 각각 36자, 86자, 342자로 인코딩됩니다. 구분점 2개를 더하면 예상 토큰 길이는 약 466바이트입니다.
- 상황 2: 헤더 20바이트, 페이로드 40바이트, 서명 32바이트인 경우 각각 27자, 54자, 43자로 인코딩됩니다. 구분점 2개를 포함하면 예상 토큰 길이는 약 126바이트입니다.
사용 시 주의사항 및 활용 팁
- 본 계산기 결과는 Base64URL 인코딩 규칙에 따른 단순 추정 참고용 수치입니다.
- 한글, 이모지 등 ASCII가 아닌 문자는 UTF-8에서 여러 바이트를 차지하므로 문자 수가 아닌 실제 바이트 수를 입력해야 합니다.
- RS256, ES256, HS256 등 서명 알고리즘에 따라 서명 바이트 수가 달라질 수 있습니다.
- 쿠키나 프록시, 웹 서버의 헤더 크기 제한을 검토할 때는 다른 쿠키와 HTTP 헤더가 차지하는 공간도 함께 고려하세요.
Q&A
자주 묻는 질문
Base64URL 인코딩 후 길이는 어떻게 계산하나요?
입력 바이트를 3개씩 묶어 4개의 문자로 변환하며, 마지막 그룹에 따라 패딩 문자를 제거합니다. 계산기는 패딩이 제거된 Base64URL 길이를 사용합니다.
JWT 토큰 길이에 구분점도 포함되나요?
네. 헤더, 페이로드, 서명 세 부분을 연결하는 구분점 2개를 포함해 실제 토큰 문자열의 예상 길이를 계산합니다.
입력한 바이트 수와 실제 JSON 문자열 길이가 다른 이유는 무엇인가요?
한글이나 이모지처럼 ASCII가 아닌 문자는 UTF-8에서 여러 바이트를 차지할 수 있습니다. 실제 JWT를 계산할 때는 인코딩 전 UTF-8 바이트 수를 입력해야 합니다.