JWT(JSON Web Token)이란?
- 토큰 기반 인증 시스템에서 사용하는 토큰 작성 기술
- 인증에 필요한 정보들을 암호화 시킨 토큰
- JSON객체를 사용하여 데이터를 생성
- Base64 URL Encode를 통해 직렬화
- 위변조 방지를 위한 비밀키를 이용한 Signature(전자서명)이 포함
- 서버는 전자서명의 검증만 하여 결과를 응답
- JWT의 목적은 정보보호가 아닌 위변조방지
JWT의 구조
- 헤더(Header), 내용(Payload), 서명(Signature) 로 구성
- 각각의 구분문자는 콤마(.)
- 예) Header.Payload.Signature eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c