목록인증 & 보안 (2)
백엔드 개발 블로그
JSON Web Token RFC 7519 표준 흔히 로그인 데이터 등을 주고 받는 데에 사용된다. JSON 형태의 데이터에 서명 정보를 추가하여 데이터의 위변조 여부를 검사할 수 있다. 서명에는 HMAC, RSA 등의 암호화 기법이 사용된다. HMAC 참고: https://blog.honeybomb.kr/7 HMAC 이란? API 통신 등을 할 때, 보안 등의 이유로 통신되는 메시지의 위변조를 막아야 할 경우가 있다. 이 때 어떠한 토큰을 사용하여 메시지가 위변조가 되지 않았는지 검증하는 기법이 주로 사용되는데, blog.honeybomb.kr 데이터 구조 "헤더.페이로드.서명"의 형태이다. 헤더에는 서명에 사용된 알고리즘과 타입을 담고 있는 JSON이 Base64 URL 형태로 인코딩된다. 페이로드는..
API 통신 등을 할 때, 보안 등의 이유로 통신되는 메시지의 위변조를 막아야 할 경우가 있다. 이 때 어떠한 토큰을 사용하여 메시지가 위변조가 되지 않았는지 검증하는 기법이 주로 사용되는데, 이 때 사용되는 토큰을 MAC(Message Authentication Code)라고 한다. 그 중 HMAC(Hash-based MAC)은 SHA256 등의 해시 함수 기반으로 안전하게 MAC을 생성하는 것을 이른다. HTTPS, JWT 등 다양한 레벨의 보안 통신 프로토콜에서 사용된다. 단순히 해시함수만을 사용할 때의 취약점 패스워드와 같이 원본 데이터는 알 수 없되 그 값의 동일성만 비교하는 경우, H(password || salt || secretKey)와 같이 암호화 후에 DB에 저장하는 것이 보편적이다. ..