보안
보통
코딩
JWT 토큰 검증 구현
JWT 토큰의 서명을 검증하는 함수를 구현하세요
30분
100점
#3639
문제 설명
JWT(JSON Web Token)의 구조를 이해하고, 서명을 검증하는 함수를 구현하세요.
JWT 구조
header.payload.signature
- header: {"alg": "HS256", "typ": "JWT"} (Base64URL)
- payload: {"sub": "1234", "exp": 1234567890} (Base64URL)
- signature: HMAC-SHA256(header.payload, secret)
요구사항
- 토큰을 세 부분으로 분리
- 헤더와 페이로드를 Base64URL 디코딩
- 서명 검증 (HMAC-SHA256)
- 만료 시간(exp) 검증
- 유효하면 페이로드 반환, 아니면 예외 발생
제약 조건
- 알고리즘은 HS256만 지원
- 시간은 Unix timestamp 사용
힌트
힌트를 활용하세요
실행 버튼을 눌러 코드를 실행하세요.