컴퓨터 보안 기말고사 정리

Diffie–Hellman key exchange

Man-in-the-middle attack (Key exchange)

Man in the middle attack

Hash Functions

긴 데이터를 암호화하는 과정은 많은 컴퓨팅 파워가 필요하기 때문에 긴 데이터의 해쉬값을 구해서 짧은 데이터를 암호화하여 적은 컴퓨팅 파워로 높은 보안성을 얻을 수 있다.

Man-in-the-middle attack (Hash)

Man in the middle attack

Hash functions message authentication

Hash functions message authentication

Message Authentication Code (MAC)

Digital signature

properties
  • 송신자를 식별할 수 있어야 한다.
  • 전자 서명을 작성한 시간을 알아야 한다.
  • 메세지의 내용을 인증해야 한다.
  • 제 3자가 입증할 수 있어야 한다. (송/수신이 되었는지에 대해)
Requirments
  • 메세지 내용에 의존한다.
  • 송/수신자에 대한 고유한 값에 의존한다.
  • 전자 서명은 쉽게 작성되어야 한다.
  • 상대는 전자 서명을 신뢰할 수 있어야 한다.
  • 메세지를 위조할 수 없어야 한다.
  • 전자 서명은 저장에 문제가 없어야 한다.

Simplified examples of Digital signatures

  • (a) 메세지의 해쉬값만 Private key로 암호화하여 송신한다. (전자서명의 가장 간단한 형태)
  • (b) 해쉬값을 Private key로 암호화하고 메세지와 함께 대칭키로 한번 더 암호화하여 송신한다.

Birthday Attacks

생일 공격(birthday attack)은 암호학적 해시 함수의 해시 충돌을 찾아내는 암호해독 공격으로, 생일 문제의 확률적 결과를 기반으로 한다. 생일 문제에 따르면 해시 함수의 입력값을 다양하게 할수록 해시 값이 같은 두 입력값을 발견할 확률은 빠르게 증가한다. 따라서 모든 값을 대입하지 않고도 해시 충돌을 찾아낼 확률을 충분히 크게 만들 수 있다. - 위키백과, 우리 모두의 백과사전

Message Authentication Codes

Basic uses of message encryption

  • (a) 기밀성과 사용자 인증
  • (b) PU/PR key 암호화를 통한 기밀성
  • (c) 인증과 서명 (가장 간단한 전자 서명의 형태)
  • (d) 기밀과 인증, 서명 *

MACs based on Hash functions: HMAC

암호학에서 HMAC(keyed-hash message authentication code, hash-based message authentication code)는 암호화 해시 함수와 기밀 암호화 키를 수반하는 특정한 유형의 메시지 인증 코드(MAC)이다. 여느 MAC처럼 메시지의 데이터 무결성과 진본 확인을 동시에 수행하기 위해 사용할 수 있다. - 위키백과, 우리 모두의 백과사전

Key management

Centralized key distribution

개인과의 키 교환 과정에서 국가가 신뢰하는 기관을 통해 공통된 Session key를 획득하는 시나리오

Key distribution scenario

  • (1) 송신자는 인증된 기관에게 (송신자id/수신자id/Nonce)를 요청한다.
  • (2) 기관은 송신자를 인증하고 요청에 대한 응답을 송신자와 약속된 Key를 통해 암호화한다.
    • 이 시점에 송신자는 Session key를 구함.
  • (2-3) 송신자는 기관으로부터 받은 블랙박스 데이터(기관이 수신자와의 Key로 암호화한 내용)을 수신자에게 전달한다.
  • (3) 수신자는 전달받은 데이터에서 Session key를 얻을 수 있다.
    • 수신자는 송신자가 기관으로부터 받은 데이터를 전달했다고 알 수 있음
    • 송신자와 동일한 Session key를 구함
  • (4, 5) 서로는 데이터를 무사히 받았다는 확인 절차를 수행한다.

CA hierarchy

서로 다른 CA를 사용하는 사용자들 사이를 통신하기 위한 과정

CA hierarchy

  • X <<W>>
  • W <<V>>
  • V <<Y>>
  • Y <<Z>>
  • Z <<B>>

Replay Attacks

공격자가 대상의 트래픽을 기록해 반복적으로 보내는 공격 기법

Approaches to coping with replay attacks

  • Sequence number to each message
    • 많은 메세지가 생기면 overflow가 발생할 수 있음
  • Timestamps
    • 송/수신측의 시간을 동기화할 필요가 있지만 어려움
  • Challenge/response
    • 상대측에게 서로 약속된 질문을 통해 인증하는 방법

Kerberos

커버로스는 티켓을 기반으로 동작하는 컴퓨터 네트워크 인증 암호화 프로토콜

Requirements

  • Secure
  • Reliable
  • Scalable
  • Transparent
    • 사용자에게 불필요한 과정을 숨겨서 사용을 단순화할 수 있어야 한다.

Overview

Overview of kerberos

  • 사용자는 Kerberos system으로 티켓을 요청
    • Kerberos system은 요청한 사용자를 인증된 사람인지 검사한다.
  • Kerberos system은 사용자에게 TGS통신을 위한 티켓(1)과 세션키(1)를 사용자의 비밀번호로 암호화해 보낸다.
  • 사용자는 Kerberos system에게 받은 티켓(1)을 세션키(1)로 암호화하여 TGS(Ticket granting server)에게 보낸다
  • TGS는 받은 데이터를 확인하고 정상적이면 메일 서버와 통신하기 위한 티켓(2)와 세션키(2)를 보낸다.
  • 사용자는 메일 서버에 티켓(2)와 세션키(2)를 통해 통신한다.

Transport-Level Security

Relative location of security facilities in the TCP/IP Protocol stack

SSL(Secure Sockets Layer)

SSL protocol

Handshake protocol action

Handshake protocol action

  • Phase1
    • Client : 클라이언트는 자신에게 가장 적절한 암호 알고리즘, 데이터양, 세션 아이디등을 서버에게 알린다.
  • Phase2
    • Server : 서버는 본인이 신뢰할 수 있는 서버임을 증명하기 위해 인증서와 key등을 전송하고 상대측에도 인증을 요구한다.
  • Phase3
    • Client : 클라이언트 요청된 인증서와 키를 서버측에 보내며 인증을 한다.
  • Phase4
    • Handshake를 종료한다.

E-Mail security

Pretty Good Privacy (PGP)

PGP cryptographic functions

Share