2022-03-31 TIL

이창호·2022년 3월 31일
0

프로그래머스 백엔드 데브코스 11일차

DB

JOIN 종류

  • INNER JOIN -> 두 테이블의 교집합만 포함
  • FULL OUTER JOIN -> 두 테이블의 전부를 포함 ( MYSQL은 지원 X )
  • CROSS JOIN(CARTESIAN JOIN) -> 두 테이블의 모든 조합을 포함
  • LEFT JOIN, RIGHT JOIN -> 해당 위치에 있는 테이블만 포함
  • SELF JOIN -> 스스로를 포함

JOIN시 고려해야할 것

  • 중복 레코드가 없어야 하고 Primary Key(기본키)의 uniqueness(유일성)가 보장되어야함.

도널드님 HTTPS 특강

HTTPS란?

  • HTTP는 패킷을 통해 정보를 주고 받을 때, 패킷이 보여지게 되면 모든 내용들이 보인다. 이런 문제를 해결하기 위해 패킷을 암호화한 것이 HTTPS다.
  • 요즘엔 TLS(Transport Layer Scurity)라 불러야 하는데, 아직도 SSL이라 불리고 있다.

암호화 알고리즘

  • 메시지 다이제스트(Message Digest)
  • 대칭 키 암호화
  • 공개 키 암호화
  • 전자 서명(DSA, Digital Signature Algorithm)

암호화되지 않은 통신망에서 키 교환

  • 공개 키 암호화 방식을 사용하여 대칭 키를 공유
  • 받은 대칭 키(공개 키로 암호화)를 개인 키로 복호화 하여 대칭 키를 얻는다.
  • 이 과정에서 대칭 키를 세션 키라고 부른다.

중간자 공격 막기

  • 중간자 공격이란 전송하는 공개 키를 자신의 공개 키로 바꾸는 것이다.
  • 이것을 방어하기 위해 인증서를 사용한다.
  • 이제 인증 기관의 인증서(공개 키)로 상대방이 보낸 인증서의 서명 값을 검증한다.
  • 받은 인증서에 포함 된 공개 키로 암호화해서 보낸다.
  • 이런 암호화 알고리즘들은 서로 약속이 되어야 한다.
  • 세션으로 첫번째 접근으로 키 공유할 땐 공개키를 사용하고 두번째 부턴 대칭키를 사용한다.

암호 모음

  • 안전한 통신 채널을 만들기 위한 암호 알고리즘 모음을 뜻한다.
  • 키교환(kx) - 서명 인증(Au) - 대칭 키 암호화 (Enc) - 메시지 다이제스트 (Mac)

전송 계층 보안

  • 과거엔 SSL, 지금은 TLS이라 불리며 HTTPS의 S(secure)를 담당한다.

TSL

  • SSL을 보완하여 나온 것이 TSL다.
  • 레코드 프로토콜, 핸드쉐이크 프로토콜로 구성되어있다.
profile
이타적인 기회주의자

0개의 댓글