https://www.fortinet.com/resources/cyberglossary/authentication-token
What Is an Authentication Token? | Fortinet
An authentication token is a secure device that allows access to protected resources. Learn how token-based authentication verifies user identity.
www.fortinet.com
번역 및 정리
1. Authentication Token이란 무엇인가?

Authentication Token은 마치 어떤 행사의 입장 도장을 받는 것과 비슷한 기능을 한다. 일단 신원확인절차를 마치고 도장을 받으면, 그 뒤로는 도장만을 확인할 뿐 신원확인절차를 반복하지 않는다.
이와 비슷하게 최초 로그인이 성공했을 때 서버는 token을 만들어 클라이언트와 공유한다. 일단 token이 공유되고 나면, 로그아웃을 하기전 까지는 다시 로그인을 하지 않아도 token을 통해 identity가 확인된다.
2. Token-based Authentication이란 무엇인가?
암호화된 security token을 생성하는 프로토콜이다. 5단계의 진행 프로세스로 진행된다.
- Request: 로그인 정보를 입력하여 서버에 request를 보낸다.
- Verification: 서버에서 로그인 정보를 바탕으로 id와 password 일치여부를 확인한다.
- Token submission: verification이 통과되면 서버에서 일정시간동안 사용할 수 있는 secure, signed authentication token을 생성한다.
- Storage: token은 브라우저로 전송되며, 나중에 다시 서비에 방문할 때마다 해당 token이 decode되어 인증된다.
- Expiration: token의 유효기간은 유저가 로그아웃할 때 만료된다.
3. Token-based Authentication 예시
Connected Token: 공인인증서Contactless Token: Microsoft's ring device TokneDisconnected Token: 모바일 기기를 통한 인증번호입력 two-factor authentication (2FA)Software Token: 2FA를 쉽게 해주는 mobile application. Connected Token의 불편함을 해결

- JSON Web Token (JWT): RFC 7519 기준에 따른 새 secure communication. 알고리즘을 이용한 digital signature와 pbulic and private key pairing을 이용하여 optimal security를 보장한다. 특히 HTTP를 통해 데이터가 전송될 때, 암호화를 통해 안전해진다.
4. Authentication Tokens을 사용하는 이유
- 위에서 언급했듯 편리함
- 기계가 암호화를 해주기 때문에 안전함
댓글