JWT란 무엇인가
JWT(JSON Web Token)는 서버와 클라이언트 간에 인증 정보를 전달하기 위한 토큰 기반 인증 방식입니다.
기존 세션 기반 인증과 비교했을 때 JWT는 다음과 같은 특징을 가집니다.
- 서버가 세션 상태를 직접 저장하지 않아도 됩니다.
- 토큰 자체에 인증 정보가 포함됩니다.
- 여러 서비스 간 인증 전달에 유리합니다.
- 모바일 앱, SPA, API 서버 구조에서 자주 사용됩니다.
하지만 편리하다고 해서 무조건 안전한 것은 아닙니다. 구조를 정확히 이해하고, 저장 방식과 검증 흐름까지 제대로 설계해야 실제 운영에서 문제를 줄일 수 있습니다.
JWT의 기본 구조
JWT는 아래와 같은 3개 파트로 구성됩니다.
HEADER.PAYLOAD.SIGNATURE각 영역은 . 으로 구분되며, 각각 Base64Url 형식으로 인코딩됩니다.
1. Header
Header에는 토큰의 타입과 어떤 알고리즘으로 서명했는지가 들어갑니다.
{
"alg": "HS256",
"typ": "JWT"
}주요 필드:
alg: 서명 알고리즘typ: 토큰 타입
2. Payload
Payload에는 실제로 전달하고 싶은 데이터가 들어갑니다.


Comments
댓글
댓글을 남기려면 로그인이 필요해요. (네이버 · 구글 계정)
댓글 불러오는 중…