JWT (JSON Web Token)

Gyus·2021년 7월 22일
0

서버구축 프로젝트

목록 보기
6/11

JWT (JSON Web Token)

JWT란?

사용자정보를 JSON객체에 담아 이를 암호화하고 해싱작업을 거쳐 문자열 토큰을 생성하는 기술. 사용자 정보와 권한을 명시해준다.

  • 클라이언트는 이 토큰을 HTTP Header에 추가하여 요청을 보냄으로 사용자 인증을 얻게 된다. 이로인해 보안성이 증가한다.

  • 서버에 저장되지 않기에 서버에 부하를 일으키지 않으며, 해싱을 통해 데이터의 무결성을 보장하는 인증방식

JWT 구조

JWT는 Header(헤더) Payload(내용) Signature(서명)의 구조로 이루어져있다.

  • 헤더 (header)
    헤더에는 typ과 alg 속성을 명시 한다.

    • typ - 토큰 의 타입
    • alg - 해싱알고리즘 명시, 서버에서 토큰검증시에 signature에서 사용.
  • 내용 (payload)
    토큰에 대한 데이터를 작성해준다. ex)userIdx, userId 등...

  • 서명 (signature)
    서명에서는 헤더(header)의 인코딩 값과 내용(payload)의 인코딩 값을 연결하여 비밀키로 해싱해준다. 암호화 작업

profile
푸로구래머

0개의 댓글