JWT (Json Web Token)
- Json 포맷을 이용하여 사용자에 대한 속성을 저장하는 Claim 기반(사용자 정보 기반)의 Web Token
- 토큰 자체를 정보로 사용하는 self-Contained 방식
JWT 구조
- 문자열을 ‘.’을 구분자로 하여
Header, Payload, Signature
로 나뉜다.
- 헤더.페이로드.서명
- 헤더, 페이로드는 알려주는 데이터(인코딩만 됨)고 서명이 이 둘을 비밀키로 암호화한 것. 비밀키는 서버만 알고 있음.
- 그러므로 비밀키로 서명의 암호를 풀었을 때 헤더, 페이로드와 일치하면 서버가 발급한 토큰으로 인증 통과
헤더
{
"typ": JWT
"alg": "HS256",
}