Code&Data Insights

[새싹 성동 2기] 241130 러닝메이트 스터디 - <웹 보안의 핵심 개념: Hash, Encryption, Cookie, Session, Token> 본문

Cyber Security/[새싹+SK쉴더스] 생성형 AI 활용 클라우드&보안 전문가 과정

[새싹 성동 2기] 241130 러닝메이트 스터디 - <웹 보안의 핵심 개념: Hash, Encryption, Cookie, Session, Token>

paka_corn 2024. 12. 1. 14:57

 

수업을 들으며 AWS SAA를 준비하는 스터디(러닝메이트)를 하고 있긴 하지만, 

한주동안 공부한걸 공유하고, 복습하는 스터디에 들으면

새롭게 배우는 다양한 주제에 대한 이해도가 높아질 것 같아서 기존 스터디 팀원 분들에게 양해를 구하고 들어가게 되었다! 

 

프로젝트 때문에 정신 없었던 한주이지만, 

웹 보안에서 핵심적인 개념들이기에 정리하고 공유하면 좋겠다는 생각으로 이 주제를 선정했다. 

 

프로젝트 하면서도 많이 접하는 개념들이라 

퀴즈로 복기하면 좋을 것 같다는 생각에 퀴즈도 넣고, 세션과 쿠키의 작동방식이 잘 이해되지 않아 추가적으로 더 정리해 보았다.

 

 

=> 예시) Instagram에서 다중 로그인한 다른 기기 강제 로그아웃, Netflix에서 요금제별로 프로필 부여(다중 접속 가능한 유저수 제한)

=> 세션을 이용하기 위해선 세션정보를 저장하기 위한 DB가 필요함

=> 주로 사용되는 DB : Redis

 

=> 로그인 유저 인증, QR 코드 인증 (토큰 유효시간)

 

==> 유저 인증을 위해 JWT(토큰 방식)이나 세션 방식을 사용할 수 있음 (세션 방식은 DB가 따로 꼭 필요하다는것이 특징!)

 

 

 

=> 정답은 2번!

1) 해싱은 데이터를 복원할 수 없는 단방향 암호화이고, 암호화는 키를 사용하여 복호화가 가능한 양방향 암호화이다

 

3) 해시 함수는 키 없이 동작하고, 암호화에서는 암호화, 복호화를 위해 대칭키, 비대칭키가 필수적이다. 

 

4) 해싱은 단방향, 암호화는 양방향 방식이다

 

 

 

=> 정답은 4,5번!

4) 세션은 민감한 정보를 처리하기에 적합하며, 사용자 인증에 자주 사용

쿠키는 대량의 데이터를 저장하는 데 적합하지 X - 쿠키는 용량 제한이 있으며, 서버에서 대량 데이터를 처리하거나 저장해야 할 경우 보통 데이터베이스와 세션을 결합하여 사용

 

5) 쿠키는 HTTP 요청마다 자동으로 전송

-> 브라우저는 쿠키에 설정된 도메인과 경로에 맞는 요청이 있을 때, 해당 쿠키를 자동으로 서버로 전송

-> 이를 통해 서버는 클라이언트의 상태를 추적할 수 있음!

 

세션은 클라이언트와 서버 간의 연결 상태를 유지하기 위해 사용

-> 세션 자체가 전송되는 것이 아니라, 세션 ID가 쿠키 또는 URL 파라미터를 통해 전송!

-> 서버는 세션 ID를 기반으로 세션 데이터에 접근하여 사용자 정보를 처리할 수 있음

 

 

Comments