💐 Spring/Spring Security
3. JWT를 이해하기 전 CIA 대해 이해하기
iseunghan
2021. 10. 26. 16:37
반응형
이 포스트는 데어 프로그래밍님의 유튜브 강의를 듣고 나서 정리한 글입니다.
CIA
CIA(Confidentiality Integrity Availability)
- Confidentiality(기밀성)
- 개인정보, 민감한 정보 등을 인가된 사용자에게만 허가
- Integrity(무결성)
- 내용의 변경이나, 훼손없이 정확하게 보존
- Availability(가용성)
- 항상 정상적으로 신뢰성 있는 서비스를 할 수 있는 상태
예를 들어, A나라, B나라, C나라가 있다고 가정해봅시다.
- A나라가 B나라에게 문서를 전달하는데, 중간에서 C나라가 그 문서를 탈취했습니다. -> 기밀성이 깨짐
- A나라가 B나라에게 문서를 전달하는데, 이번에는 C나라가 위조된 문서를 전달시켰습니다. -> 무결성이 깨짐
- B나라는 A나라가 보내준 문서를 잘 받았습니다. (사실 C나라가 위조시킨 문서인데 말이죠 ,,) -> 가용성이 깨짐
가용성을 지키는 방법
- 문서를 보낼 때, 최고의 전사들과 함께 보내는 겁니다.
- 하지만, C나라에 더 강한 전사들이 있다면? C나라에게 탈취 당함
기밀성을 지키는 방법
- 문서를 A라는 열쇠로 잠그고(암호화) 보내주는 겁니다. -> 기밀성을 지킴
- 하지만, C나라가 문서를 열지 못할지 몰라도 그건 B나라도 마찬가지다. 열쇠 전달 문제가 발생!
누가 보낸거지..?
- A가 B에게 내일 10시에 보자고 보냈다.
- 그러자 B에게 알겠다고 응답이 왔다. 하지만 다음 날 B는 나오지 않았다.
- 왜?
B가 보낸거 맞아?
A가 보낸거 맞아?
누가 보냈는지에 대한 문제가 있다.
이 문제를 해결하기 위해 다음 시간에는 RSA에 대해서 배워보도록 하겠습니다.
반응형