본문 바로가기

인가2

[보안] JWT 토큰에 대해서 알아보자 0. 이 글을 쓰게된 이유 이번 프로젝트를 진행하면서 토큰을 이용한 인증/인가를 담당하게 되면서 jwt를 사용하게 되었다. 그 과정에서 알게된 jwt의 특성과 경험을 기록하기 위해 이 글을 쓰게 되었다. 1. JWT란? JWT는 JSON Web Token의 줄임말로, 두 개체(ex -> 서버와 서버) 사이에 정보를 안전하게 전송하기 위한 토큰 인증 방법이다. 이는 RFC 7519에 정의 되어있고 토큰 인증 방식에서 많이 사용되는 방법이라고 볼 수 있다. jwt가 안전한 이유는 jwt토큰 자체가 디지털 서명이 되어있기 때문이다. 비밀키를 알고있어야 jwt가 유효한지 알 수 있기 때문에 중간에 토큰이 오염이 되지 않았음을 보장할 수 있다. 2. JWT 토큰 구조 JWT는 Header, Payload, Sig.. 2023. 7. 21.
[CS] SHA-256 + Salt 0. 이 글을 쓰게 된 이유 프로젝트를 진행하며 SHA-256 단방향 암호화를 진행하면서 발생하는 문제점을 인식하고 해결한 과정에 대해 기록하고자 이 글을 쓰게되었다. 1. SHA-256이란? SHA-256은 SHA-2(Secure Hash Algorithm 2)의 한 형태로, 암호학적 해시 함수의 집합 중 하나이다. 여기서 256은 이 알고리즘이 생성하는 해시 값의 비트 길이이다. 암호학적 해시 함수란 임의의 크기를 입력 받아 그 길이의 고유한 문자열로 변환하는 함수이다. 암호학적 해시 함수는 다음과 같은 특징을 가지고 있다. Preimage resistance (원상 저항성): 해시 결과(해시 값)로부터 원래의 입력 값을 찾아내는 것이 불가능하다. 즉, 해시 값만 가지고는 원래 데이터를 알아낼 수 없.. 2023. 7. 13.