https의 탄생
http는 html같은 문서를 웹 브라우저가 웹 서버에 요청하는 프로토콜이다. 단순하게 보면 텍스트를 교환하는 것이라고 할 수 있다.
따라서 네트워크 안에서 내가 보낸 텍스트를 누군가가 가로챈다면 그 내용이 그대로 보이게 된다. 예를들어 A가 메일을 읽고 있는 도중에 B가 그 신호를 가로챈다면 B가 A의 메일을 읽을 수 있게 된다.
그래서 나온 것이 https이다.
https는 http + secure로, 공개키 암호화 방식을 사용하여 텍스트를 암호화하는 프로토콜이다.
그렇다면 왜 아직까지 http 방식을 사용하는 사이트가 많을까?
https 암호화를 하면 웹 서버에 부하가 생기기 때문이다. 따라서 우리나라같은 경우 보안이 철저하게 이루어져야 할 금융사이트 등에서 많이 사용한다.
이외의 다른 이유들도 있는데, 아래 링크를 참조하면 좋을 것 같다.
출처 - http://kmj1107.tistory.com/entry/Http-vs-Https-Http%EC%99%80-Https%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90
html의 form에서 submit할 경로를 지정할 때 https 프로토콜을 사용하는 url로 지정하는 것도 가능하다.
이것을 사용하면 폼 자체가 안정하지 않은 페이지에 https를 이용해서 접근하는 곳에 호스트된 경우 데이터는 나머지 요청들과 함께 암호화된다.
반면 만약 폼이 보안 페이지에서 호스트된 경우라도 action 속성에서 안정하지 않은 http url을 지정하면 모든 브라우저는 데이터가 암호화되지 않았기 때문에 데이터를 보낼 때마다 보안 경고를 출력할 것이다.
출처 - https://developer.mozilla.org/ko/docs/Learn/HTML/Forms/Sending_and_retrieving_form_data
페이지 이동
https -> http 의 이동은 문제 없이 가능하지만, http -> https 의 이동은 할 수 없다. 이것은 크로스 도메인의 문제로, 다른 글의 주제로 포스팅했다.
'웹' 카테고리의 다른 글
[web server / was]아파치와 톰캣 (0) | 2018.06.07 |
---|---|
[CORS-크로스 도메인]프로토콜 문제 (0) | 2018.06.05 |
[jQuery Ajax]생활코딩>클라이언트>JavaScript>웹브라우저 자바스크립트>jQuery Ajax (0) | 2018.05.31 |
[Ajax]생활코딩>클라이언트>JavaScript>웹브라우저 자바스크립트>Ajax (0) | 2018.05.31 |
[java] if문에서 break와 return의 차이 (0) | 2018.05.29 |