네트워크 보안

이정인·2022년 3월 14일
0

컴퓨터 네트워크

목록 보기
11/11

네트워크 보안

  • confidentiality

    메시지를 교환할 때 해당 내용을 다른 사람이 확인할 수 없어야 함

  • authentication

    내가 메시지를 주고 받는 상대방에 대한 검증

  • message intergrity

    메시지 내용이 변하지 말아야 함

  • access and availability

Alice, Bob, Trudy

암호화

  • symmetric key

    암호화키와 복호화키가 동일함

    엘리스와 밥이 키를 미리 공유했어야 함

    • Diffie

      모든 사람이 public key, private key를 가지고 있어서 public key로 암호화 시키면 private key로 복호화할 수 있도록 함

      => RSA78

RSA

어떤 키를 먼저 적용시키던지 똑같은 결과가 나온다 .

Authentication

앨리스가 자기 자신을 인증할 때

밥은 앨리스에게 랜덤번호를 보낸다

앨리스는 자기 자신의 private key로 해당 번호를 암호화해서 보낸다.

밥은 앨리스의 public key로 메시지를 해독한다.

만약 메시지가 해독된다면 앨리스임을 인증하게 되는 것이다.

Message intergrity

메시지가 작성한 그대로인지

자기 자신의 private key로 메시지를 암호화하는 것을 digital signature이라고 하며 메시지 전체를 암호화하는 게 아니라 해시 값을 사용한다.

public key cryptography

Public key 에 대한 정보를 인증 기관의 private key로 암호화하여 저장되어 있다 그러면 인증 기관의 public key가 필요하다. 인증기관의 public key은 브라우저에 기본적으로 들어있다.

Secure e-mail

앨리스가 생성한 symmetric key를 bob의 public key로 암호화 해보낸다. 밥은 본인의 private key로 symmetric key를 해독한 후 메시지를 해독한다.

메시지를 해시한 것을 앨리스의 private key로 암호화해 보낸다. (digital signature)

Securing TCP connection : SSL

애플리케이션 계층에 HTTP 메시지가 들어왔을 때 TCP 소켓을 통해서 내려보내면 IP PKT은 링크 계층에서 여러 디바이스에서 확인할 수 있게 된다.

애플리케이션 메시지를 암호화 라이브러리를 거쳐서 TCP 소켓으로 내려가게 하기 위해서 생긴게 SSL 계층이다.

SSL(Secure Socket Layer = TLS)는 애플리케이션 메시지를 암호화시켜서 TCP 소켓으로 내려보내 준다.

HTTPS는 HTTP + SSL이다.

Simple handshake

TCP connectino이 생성된 상태에서 클라이언트는 SSL로 메시지를 보낸다. 서버는 클라이언트에게 자신의 공인 인증서를 넘겨준 다음 인증 과정을 거쳐서 Master key를 교환한다.

MAC : message authentication

  • 메시지에 키를 붙여서 해시 함수를 돌린다.

  • 데이터 순서가 바뀌는 것을 방지하기 위해서 시쿼스 넘버를 추가해서 같이 해시 함수를 돌린다.

  • TCP control message를 방어하기 위해서 SSL 필드에 type을 추가하고 close일 때만 1이 되도록 한다.

0개의 댓글