inblog logo
|
harimmon
    컴퓨터 사이언스

    [컴퓨터 사이언스] 4. 신뢰성 있는 통신

    백하림's avatar
    백하림
    Jan 27, 2025
    [컴퓨터 사이언스] 4. 신뢰성 있는 통신
    Contents
    신뢰성 있는 통신과 보안 개념 정리1. 신뢰성 있는 통신2. 신뢰성 있는 통신의 특징3. 보안의 3요소 (CIA)4. 보안 위협 및 해결 방법5. 보안 해결 방법6. 신뢰성 있는 통신 환경에서 계좌이체 예제
    notion image
    💡
    • 3-way handshake를 통한 TCP 통신 과정이 설명되어 있으며, 이는 전송 제어 프로토콜(Transmission Control Protocol)입니다.
    • Confidentiality (기밀성)
    • Integrity (무결성)
    • Availability (가용성)
    • 트랜잭션 : 일의 최소 단위
    💡

    신뢰성 있는 통신과 보안 개념 정리

    1. 신뢰성 있는 통신

    • A와 B 간 Byte Stream을 통한 데이터 전송.
    • TCP (Transmission Control Protocol) 사용하여 신뢰성을 보장.
    • 3-way handshake(3단계 핸드셰이크) 과정으로 연결 확립:
        1. 클라이언트(A) → 서버(B) : SYN 요청
        1. 서버(B) → 클라이언트(A) : SYN-ACK 응답
        1. 클라이언트(A) → 서버(B) : ACK 전송 후 연결 확립

    2. 신뢰성 있는 통신의 특징

    1. 순서 보장 (Ordered Delivery)
        • 패킷이 전송된 순서대로 도착하도록 순서 번호(Sequence Number) 사용.
    1. 데이터 손실 방지 (Reliability)
        • 수신 확인 응답(ACK, Acknowledgment) 메커니즘 사용.
        • 손실된 패킷이 감지되면 재전송 요청(Retransmission).
    1. 오류 검출 및 복구 (Error Detection & Correction)
        • 데이터가 손상되었는지 확인하는 체크섬(Checksum) 사용.
        • 오류 발생 시 재전송을 요청하여 데이터의 무결성 보장.
    1. 흐름 제어 (Flow Control)
        • 송신자가 너무 많은 데이터를 한 번에 보내는 것을 방지.
        • 윈도우 크기(Window Size) 조정을 통해 수신자의 처리 속도에 맞춤.
    1. 혼잡 제어 (Congestion Control)
        • 네트워크 과부하를 방지하기 위해 송신 속도를 조절.
        • TCP 슬라이딩 윈도우(Sliding Window) 방식 사용.

    3. 보안의 3요소 (CIA)

    • Confidentiality (기밀성): 데이터가 인가된 사용자만 접근 가능해야 함.
    • Integrity (무결성): 데이터가 변조되지 않고 원래 상태를 유지해야 함.
    • Availability (가용성): 필요한 순간에 데이터를 사용할 수 있어야 함.

    4. 보안 위협 및 해결 방법

    보안 위협
    영향 받는 요소
    해결 방법
    도청 (Eavesdropping)
    기밀성(C)
    암호화(Encryption) 사용
    데이터 변조 (Tampering)
    무결성(I)
    해시(Hash), 디지털 서명 활용
    서비스 거부 공격 (DoS)
    가용성(A)
    방화벽(Firewall), 트래픽 필터링 적용

    5. 보안 해결 방법

    (1) 암호화 기법

    • 공개키 암호화 (Public Key Cryptography)
      • RSA 알고리즘 사용.
      • A가 B에게 데이터를 보낼 때:
          1. B의 공개키(Public Key) 로 데이터를 암호화하여 전송.
          1. B는 자신의 개인키(Private Key) 로 복호화하여 데이터를 확인.

    (2) 데이터 무결성 보장

    • 메시지 다이제스트 (Message Digest): 해시 함수(SHA-256 등)로 데이터 변조 감지.
    • 디지털 서명 (Digital Signature): 전송된 데이터가 변조되지 않았음을 증명.

    6. 신뢰성 있는 통신 환경에서 계좌이체 예제

    • A가 B에게 800원을 전송한다고 가정.
      • A 계좌: 500 → 잔액 부족 (오류 발생)
      • B 계좌: 2000 → 변경 불가 (트랜잭션 롤백)

    트랜잭션 처리 (Transaction Processing)

    • 원자성 (Atomicity): 하나의 작업 단위가 완벽하게 실행되거나, 실패 시 전부 롤백.
    • 일관성 (Consistency): 데이터베이스의 일관성을 유지.
    • 격리성 (Isolation): 여러 트랜잭션이 독립적으로 수행.
    • 지속성 (Durability): 트랜잭션이 완료되면 결과가 저장됨.

    트랜잭션 처리 방식

    1. A의 계좌에서 800원 인출 요청.
    1. A 계좌의 잔액이 부족하면 거래 취소(rollback).
    1. 잔액이 충분하면 B의 계좌에 800원 입금 후 거래 확정(commit).
     
     
     
     
     
     
     
    AI가 정리해준 신뢰성 있는 통신
    AI가 정리해준 신뢰성 있는 통신
    Share article
    Contents
    신뢰성 있는 통신과 보안 개념 정리1. 신뢰성 있는 통신2. 신뢰성 있는 통신의 특징3. 보안의 3요소 (CIA)4. 보안 위협 및 해결 방법5. 보안 해결 방법6. 신뢰성 있는 통신 환경에서 계좌이체 예제

    harimmon

    RSS·Powered by Inblog