모의해킹 스터디 3주차 과제(2) - 리눅스 환경에서 PHP로 JWT 구현
·
모의해킹/모의해킹 스터디
이번 과제는 이전에2024.10.28 - [모의해킹/모의해킹 스터디] - 모의해킹 스터디 2주차 과제(2) - 로그인 모의해킹 스터디 2주차 과제(2) - 로그인2024.10.27 - [모의해킹/모의해킹 스터디] - 모의해킹 스터디 2주차 과제(1) - 회원가입에 이어서 로그인 기능을 개발한 것에 대하여 정리해 보겠다.개발우선 해당 코드는 중복으로 사용되어서 한 파it-techlog.tistory.com개발한 로그인 로직을 JWT를 적용시키는 과제였다. 우선 PHP에서 JWT를 사용하려면 먼저 JWT 라이브러리를 설치해야 한다. 여러 가지 JWT 라이브러리가 있지만, firebase/php-jwt 라이브러리를 사용해보려고 한다.개발firebase/php-jwt 라이브러리를 설치하기 위해선 아래의 명령어로..
JWT(JSON Web Token)란?
·
Web
토큰 기반 인증 정의사용자가 인증을 받은 후, 서버가 발급한 토큰을 사용하여 클라이언트가 요청을 인증하는 방식.클라이언트는 서버의 상태를 유지하지 않고, 토큰을 통해 인증 정보를 전달. 특징자체 포함성: 토큰이 필요한 모든 정보를 포함하므로, 서버가 클라이언트의 상태를 유지하지 않음.비교적 간단한 구현: 다양한 프로그래밍 언어와 프레임워크에서 쉽게 지원되어 구현이 간단함.서버 간 인증 지원: 마이크로서비스 아키텍처에서 각 서비스가 독립적으로 인증을 수행할 수 있도록 지원함.상태 비저장 (Stateless): 서버가 클라이언트의 세션 정보를 저장하지 않기 때문에, 서버 재시작 시에도 문제가 발생하지 않음.다양한 클라이언트 지원: 웹, 모바일, IoT 등 다양한 클라이언트에서 사용 가능함.토큰 만료 및 갱신..
쿠키 (Cookie) vs 세션 (Session)
·
Web
1. 쿠키 (Cookie) 정의쿠키는 웹 서버가 클라이언트(브라우저)에 저장하는 작은 데이터 조각키-값 쌍으로 구성되어 있음 쿠키의 HTTP 헤더  Cookie클라이언트가 서버에 요청을 보낼 때 포함되는 헤더클라이언트에 저장된 모든 쿠키가 이 헤더에 포함되어 전송목록 내 쌍들은 세미콜록과 공백('; ')으로 구분GET /sample_page.html HTTP/1.1Host: www.example.orgCookie: yummy_cookie=choco; tasty_cookie=strawberry  Set-Cookie서버가 클라이언트에 쿠키를 설정할 때 사용하는 헤더HTTP/1.0 200 OKContent-type: text/htmlSet-Cookie: yummy_cookie=chocoSet-Cookie: t..