CS/Security 3

[Security] JWT(JSON Web Token)의 구조와 구성 요소

WeeklyPaper: JWT(JSON Web Token)의 구조와 각 구성 요소가 어떤 역할을 하는지 구체적으로 설명하세요.JWT (Json Web Token)은 웹 표준으로, 온라인 네트워크에서 정보를 안젆게 통신할 때 사용하는 인터넷 표준 토큰이다. 간결하고, URL에 안전하게 사용할 수 있다는 장점이 있다. JWT의 구성JWT는 3가지로 구성되어있다: 헤더(header), 페이로드 (payload), 서명 (Signature).세 가지 주요 요소로 구성되고 각 구성은 . 마침표를 구분자로 사용한다.헤더 (header)일단적으로 토큰의 유형 (JWS,JWE)과 서명 알고리즘을 명시한다.이 JSON 객체는 Base64Url로 인코딩되어 JWT의 첫 번째 부분을 형성한다.일반적으로 두 가지 정보로 구성..

CS/Security 2025.09.30

[Security] OAuth 2.0의 주요 컴포넌트와 Authorization Code Grant 흐름

WeeklyPaper: OAuth 2.0의 주요 컴포넌트와 Authorization Code Grant 흐름을 설명하세요.OAuth 2.0OAuth 2.0은 인증(Authentication)을 위한 프로토콜이 아니라, 권한 허가(Authorization)를 위한 산업 표준 프레임워크다. 사용자가 특정 애플리케이션(제3자 앱)에게 자신의 비밀번호 같은 민감한 자격 증명을 직접 제공하지 않으면서, 자신이 소유한 자원(Resource)에 접근할 수 있는 제한된 권한을 위임(Delegate)하는 방법을 정의한다. 호텔에 비유하면 이해하기 쉽다. 우리는 호텔방에 들어가기 위해 마스터키를 복사해서 주차 관리원에게 주지 않는다. 대신, 프런트 데스크(권한 서버)에 가서 신원을 확인받고, 주차 관리원이 '주차장 출입'..

CS/Security 2025.09.25

[Security] 세션 기반 인증과 토큰 기반 인증

WeeklyPaper: 세션 기반 인증과 토큰 기반 인증의 차이점과 각각의 보안 고려사항에 대해 설명하세요.배경로그인 후 유저의 인증 상태를 유지하기 위해 세션 또는 토큰 방식을 사용한다.이렇게 해야 하는 이유는 HTTP 프로토콜의 속성 때문이다.기본적으로 서버는 각 HTTP 요청을 독립적 사건으로 취급한다. 그래서 이전 요청의 맥락 (로그인 여부, 유저 정보 등)을 자동으로 기억하지 않는다.HTTP 1.1에서 keep-alive가 있어도, 이는 TCP 소켓 재사용일 뿐 응용 계층의 인증상태를 보장하지 않는다. 또한, 실제 서비스는 로드 밸런서, 다수의 서버, 캐시, 프록시가 개입한다. 서버 로컬 메모리에만 의존한다면 다른 서버로 라우팅되는 순간 인증 상태를 잃어버린다. 중앙 저장소 (세션 스토어)나, ..

CS/Security 2025.09.25