본문 바로가기

웹 엔지니어 면접 질문/컴퓨터 네트워크4

TLS(HTTPS)의 동작 원리와 과정 이번 글에선 HTTPS가 무엇인지, HTTPS를 사용하는 이유는 무엇인지, 그리고 HTTPS의 전체적인 동작에 대해서 알아보려고 한다. 웹 보안을 이해하는 데 있어 중요한 개념이기 때문에 꽤 세세하게 다뤘다. 참고사항! * 이 글을 제대로 이해하기 위해선 네트워크 레이어에 대한 약간의 배경지식이 필요합니다. * 비전공자와 전공자 둘 다 도움이 될 수 있는 지식을 전달하고자 했습니다. * 키 생성 알고리즘에 대해 자세히 설명하지 않습니다. HTTPS는 HyperText Transfer Protocol Secure의 줄임말이다. 말에서 알 수 있듯 HTTP의 보안을 강화한 버전이다. HTTPS는 처음 발표된 것이 1994년인데, 약 30년이 지난 지금까지도 활용되고 있는 프로토콜이다. 일단 HTTPS를 설명.. 2023. 4. 24.
HTTP에서 GET과 POST의 차이점 Q: HTTP에서 GET 메소드와 POST 메소드의 차이점이 무엇인가요? 둘의 컨셉은 정말 간단하다. 하나는 데이터를 가져오기 위해서, 하나는 보내기 위해서 사용한다. 기본기 테스트에 가깝다. RESTful API를 이용할 때 이 둘을 모르면 문제가 있다. 그렇기 때문에 실제 대답을 할 땐 디테일한 차이점을 언급해주는 것이 좋을 것 같다. GET 메소드 GET 메소드는 데이터를 가져오기 위해 사용한다. URL을 통해 데이터를 전송하며, 데이터는 URL에 쿼리 스트링 형태로 전달한다. 보안성이 떨어지고 전송 데이터에 길이 제한이 있다. 데이터들은 브라우저에서 캐싱이 가능하기 때문에, 동일한 요청이 반복될 경우 캐시를 이용하여 빠르게 처리할 수 있다. POST 메소드 POST 메소드는 데이터를 전송하기 위해.. 2023. 4. 5.
브라우저에 google.com을 쓰면 일어나는 일 Q: 브라우저 주소창에 google.com을 치면 무슨 일이 일어날까요? 길게 말하면 밑도 끝도 없이 말할 수 있는 부분이다. 주 목적은 컴퓨터 네트워크 전반에 대한 이해를 평가하기 위함인 것 같다. 추가적인 질문으로 ‘웹 브라우저에서 HTML문서가 렌더링 되는 과정’에 대해 물어보기 좋아보인다. 전략: OSI 5 layer를 중심으로 설명하기. 클라이언트의 입장 뿐만 아니라 서버의 입장에서도 설명해보기. 웹 브라우저가 보내는 데이터는 Application layer, Transport layer, Network layer, Link layer, physical layer를 중심으로 차례대로 설명할 수 있다. 이 때 Link layer랑 physical layer에 대한 부분은 구체적으로 설명하려들면 뇌.. 2023. 4. 5.
DNS 동작 과정 웹 브라우저가 웹 페이지를 불러올 때 먼저 하는 일 중 하나가 소켓통신을 위해 서버의 IP를 찾는 일이다. 웹 문서를 어떤 과정을 거쳐 불러오는지를 평가하는 것 같다.또한 웹페이지를 리디렉션 해야할 때, 직접 DNS를 만져야 하는 일이 생기므로 이에 대한 것도 물어볼 수 있다. *관련 레이어: Application Layer DNS(Domain Name System)는 네트워크 호스트의 도메인 이름과 실제 IP 주소를 매칭시켜주는 시스템이다. 인터넷에 접속된 모든 호스트들은 IP 주소를 부여받게 되고 이를 통해서 다른 호스트들과 데이터를 주고받는다. DNS의 동작과정 전반적인 컨셉은 계층적인 네임 서버를 놓는 것부터 시작한다. 상위 계층의 네임 서버는 바로 아래 계층의 네임서버의 IP를 갖고있다. 상위 .. 2023. 4. 4.