-
HTTPS와 SSL인증서 (1)HTTPS, SSL, TLS, 대칭키생활코딩 WEB 2022. 11. 28. 00:25
---
http://opentutorials.org/course/228/4894
HTTPS와 SSL 인증서 - 생활코딩
HTTPS VS HTTP HTTP는 Hypertext Transfer Protocol의 약자다. 즉 Hypertext 인 HTML을 전송하기 위한 통신규약을 의미한다. HTTPS에서 마지막의 S는 Over Secure Socket Layer의 약자로 Secure라는 말을 통해서 알 수 있듯이
opentutorials.org
---
https://youtube.com/playlist?list=PLCZ-8rvakaqbplQZAoUku8uuxUgbLQm-1
생활코딩 - HTTPS와 SSL 인증서
www.youtube.com
---
---
썸네일에 ROUTE 53 마크뭐지
https://aws.amazon.com/ko/route53/features/ : 유래 : 서비스의 이름(Route 53)은 DNS 서버가 포트 53에서 쿼리에 반응하며 최종 사용자를 인터넷 상의 애플리케이션으로 경로를 지정해 준다는 의미에서 유래한 것입니다.
---
HTTPS, SSL, SSL인증서
복잡한 메커니즘으로 동작하는 정보보호수단
얘네를 적용하는건 검색해서 하란대로 따라가는게 어렵진 않지만,
문제가 발생했을 때 문제를 해결하기 위해 원리를 잘 따져보자! HTTPS, SSL이 어떻게 동작하는가, 이런 원리를 잘 모르면 HTTPS를 제공하는 과정에서 문제가 생겼을 때 문제를 해결하는데 시간이 너무 많이 걸릴 수 있어. 본질적인 부분을 모르고 있기 때문에 돌아가고 있구나 생각이 든다.
▽근데 이고잉님 이렇게 원리를 본질적으로 꿰뚫으면서 강의를 만드시는데 어떻게 본질을 꿰뚫으시는지 궁금하네요 영어를 잘해야 하나요?ㅠㅠ
HTTPS, SSL이라는 기술을 구현하기 위해 중간에 암호화, 인증서 같은 기술들이 복합적으로 들어가 있다
충분히 익혀둘만한 것들
---
수업전에 용어 정리부터
Hypertext : 문서와 문서가 링크로 연결돼있는 형태의 문서, 문서체계. 가장 중요한 문서 양식은 HTML.
HTTP : HTML을 전송하기 위해 만들어진 통신규약
여러분이 URL을 입력할 때
http://도메인
을 적는데
그것은 그 도메인에 해당되는 컴퓨터와 통신을 할건데 http프로토콜을 이용할 것이다 라는 뜻
---
opentutorials.org 둘다 똑같이 HTTP, html문서를 전송하기 위한 방식인데, S가 Over Secure Socket Layer의 약자이고, Secure라는 말이 중요해. 보안장치가 결합돼 있는 형태의 통신방식이라고~~
---
HTTP를 통해서 데이터를 전송하면 전송하는 과정에서 내가 보내고 내가 받는 데이터가 제3자가 감청, 조작, 자신인척 할 수 있어
HTTPS는 그런것을 방지하기위한 포괄적인 기술체계
HTTP에서 보안적인 약점을 보강한 것. 오고가는 데이터가 암호화된다
---
로그인 페이지 누르기 전
그리고 로그인 페이지 누르면
없었던 https://가 생겼다
로그인을 하는 과정에서 id, pw를 입력할건데, 이게 노출되면 이 사이트에 로그인할 수 있는 권한이 도둑질 당한 것(만약 다른 사이트도 똑같은 id, pw라면 거기도다. ▽해커는 다 시도해볼테니)
그래서 로그인하는 페이지에서는 https로 프로토콜이 변경되는 걸 볼 수 있다
그래서 여기서 id, pw를 입력하고 로그인을 하면 서버로 https를 이용해서 전송이 된다
▽로그인 페이지에서 부터 https라고 나와야해? 무슨 원리가 있겠지
서비스가 비밀정보를 전송하는 맥락에서 https를 안쓰고 있다면 신뢰도가 많이 떨어지는 서비스라는걸 인지하고 있어야 한다
---
HTTPS & SSL
포괄적으로 보면 같고 디테일하게 보면 다른 것
SSL위에서 HTTPS가 동작한다
네트워크통신을 할 땐 계층적으로 Layer라고 하는것이 구성돼 있어
저희 엄마는 컴퓨터, MS windows, 웹브라우저, Daum(특정서비스)을 다 똑같은걸로 생각하십니다
사실 다 다르다. 계층적인 관계를 갖고 있어
SSL이라는 통신방법이 더 포괄적인 것이고, 그 위에서 동작하는 서비스 중에 하나가 HTTP
HTTP가 SSL이라는것을 이용하게되면 HTTPS가 되는 것
---
SSL & TLS
같은 것이다.
네스케이프가 인터넷상에서 사용자의 정보를 더 안전하게 주고받기 위해 고안한게 SSL
SSL이라는것이 보편화되면서, 표준화기구인 IETF로 관리가 이관됨. 그때 TLS라는 이름으로 바뀜
역사적인 이름 SSL
정식명칭 TLS
---
본론(SSL 인증서)을 이해하기 위해 필요한 일종의 부품 먼저. 결론이 나올때까지 모르는 상태를 좀 견뎌야 해
근데 부품들이 SSL인증서가 아니래도 그 자체가 알고있을 때의 가치가 커
---
일단 SSL 디지털 인증서 개론(일단 기계적으로 되새겨보기)
제 3자가 뭔지는 뒤에
공증과 같은 상호간의 신뢰관계를 형성한다
---
일단 저 장점 3가지 중,
'통신 내용이 공격자에게 노출되는 것을 막을 수 있다'라는 부분부터 살펴볼게요
그러려면 암호화가 필요하겠죠?
암호화 : 내가 원하는 사람만 해석할 수 있게 하는 것
중간에 가로챈 사람은 이해 못하고
받은 사람은 이해할 수 있게 해야해
---
LOVE라는 단어를 전하려고
MPZF라고 보낸대
각각의 알파벳이 그 다음알파벳으로 치환된다는 사실을 알고 있으면? LOVE -> MPZF 라는 사실을 알 수 있어, 암호화
그럼 그 반대로 MPZF -> LOVE는 복호화 라고 한다
암호화와 복호화를 할 때 기준이 되는 열쇠가 되는 데이터를 key라고 한다
key를 갖고 있어야 암호화할 수 있고, 복호화를 할 수 있다
key가 없는 사람은 원래의 내용을 알 수 없도록 하는 것이 암호화의 기본적인 메커니즘
이런 방식의 암호화 기법을 대칭키 방식이라고 부른다
---
암호화를 하는 쪽과 복호화를 하는 쪽이 양쪽 다 동일한 키를 갖고 있어야 한다는 의미에서 대칭키라는 이름!
openssl이라는 소프트웨어를 이용해서 암호화하고 복호화하는걸 보여드려보면
우분투 배포판에서 실행할거야(다른 운영체제는 그것에 맞는 소프트웨어로 따라할 수 있다)
---
텍스트를 .txt파일로 만드는 명령
openssl를 이용해서 암호화를 하겠다.
enc -e -des3 : des3라는 방식으로 암호화를 하겠다. 대칭키 암호화 기법 중 하나. ssl에서 사용되는 암호화 기법
-salt : 지금 안중요
-in : 들어온다(~ 파일을 갖고와서)
-out : 나온다(~로 암호화 하겠다) ▽.bin확장자?
패스워드 두번 입력하는건 내가 입력하는 것 111111. 이게 key야
cat해보면 이상하게 나와
▽풀 때 key입력하라고 나오네
https://customer.gabia.com/manual/cloud/8201/8202
---
남에게 보내줄 때 탈취 당해도 괜찮기 위해 암호화를 했어.
근데 받은 사람이 이걸 복호화를 하려면 key값인 111111을 알아야 하잖아. 111111은 어떻게 전송해?
이게 대칭키 방식의 결점
*ssl은 대칭키와 공개키 둘다 혼합돼서 사용된다
'생활코딩 WEB' 카테고리의 다른 글
HTTPS와 SSL인증서 (3)SSL 통신과정, startssl (0) 2022.11.28 HTTPS와 SSL인증서 (2)공개키, CA, SSL 인증서 내용, 인증서 신뢰 (0) 2022.11.28 WEB3 - HTTP Cache (0) 2022.11.11 WEB2 - DNS (5)DNS record & CNAME, Github pages에 도메인 입히기 (0) 2022.07.12 WEB2 - DNS (4)실제로 해보기 (0) 2022.07.11