JSON 웹 토큰
JSON 웹 토큰(JSON Web Token, JWT)은 클레임(사용자 정보)을 안전하게 표현하기 위한 인터넷 표준(RFC 7519)이다.
JWT 구조
헤 더 |
{ "alg" : "HS256", "typ" : "JWT" } |
서명 생성을 위해 어떤 알고리즘을 사용할지 식별한다. 토큰의 타입을 지정한다. |
페 이 로 드 |
{ "loggedInAs" : "admin", "iat" : 1422779638 } |
iat )과 사용자 지정 클레임(loggedInAs )을 보여준다. |
서 명 |
HMAC-SHA256( base64urlEncoding(header) + '.' + base64urlEncoding(payload), secret ) |
서명은 Base64url 인코딩을 이용하여 헤더와 페이로드를 인코딩하고 이 둘을 점(.) 구분자로 함께 연결시킴으로써 계산된다. 해당 문자열은 그 뒤 헤더에 규정된 암호화 알고리즘(이번 경우에는 HMAC-SHA256)에 유입된다. Base64url 인코딩은 base64와 비슷하지만 각기 다른 영숫자를 사용하며 패딩(padding)은 제외한다. |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsb2dnZWRJbkFzIjoiYWRtaW4iLCJpYXQiOjE0MjI3Nzk2Mzh9.qGQsbhR55bCg9Itm9hk_LHayO87LXusqa9_21u1sAwQ
Base64url 인코딩을 적용한 값 헤더.페이로드.서명 에 해당한다.
JWT Debugger에 Encoded 값을 위의 값으로 변경하면, 정보를 확인할 수 있다(JWT 토큰을 생성, 검증할 수 있는 디버거 서비스이다).
# 참조
JWT.IO
JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.
jwt.io
JSON 웹 토큰 - 위키백과, 우리 모두의 백과사전
JSON 웹 토큰상태인터넷 표준최초 출판일2010년 12월 28일 (2010-12-28)마지막 버전RFC 75192015년 5월조직IETF약어JWT JSON 웹 토큰(JSON Web Token, JWT, "jot”[1])은 선택적 서명 및 선택적 암호화를 사용하여 데
ko.wikipedia.org