암호학 기초

crypto(비밀) + graphy(방법) — 핵심만 빠르게

왜 암호화가 필요한가?

인터넷으로 데이터를 주고받을 때 세 가지 위협이 존재한다.

  • 도청(Sniffing) — 전송 중인 데이터를 몰래 엿봄
  • 위·변조(Tampering) — 내용을 바꿔치기함
  • 도용(Identity Theft) — 다른 사람인 척 속임

정보보안 3요소 (CIA Triad)

요소의미달성 방법
Confidentiality (기밀성)남이 보지 못하게암호화 (Encryption)
Integrity (무결성)내용이 바뀌지 않았음을 보장해시 + 전자서명
Availability (가용성)필요할 때 언제든 사용 가능서버 안정성, DDoS 방어

+ 인증(Authentication): 권한 있는 사람만 접근 가능하게 함


세 가지 핵심 개념

개념설명방향
암호화 (Encryption)데이터를 읽을 수 없게 변환복호화(Decryption) 가능
해시 (Hash)입력값을 고정 길이 “지문”으로 변환단방향, 되돌릴 수 없음
전자서명 (Digital Signature)메시지에 서명을 붙여 발신자·위조 여부 검증비대칭키 기반

암호화 방식

타임라인

양방향 암호화

암호화 + 복호화 모두 가능 → 기밀성 목적

대칭키 방식

  • 암호화·복호화에 동일한 키 사용
  • 빠르지만, 키를 상대에게 안전하게 전달하는 문제가 있음
  • 대표 알고리즘: AES, Twofish, Blowfish, DES, 3DES

비대칭키 방식

  • 공개키(Public Key)비공개키(Private Key) 쌍 사용
  • 공개키로 암호화 → 비공개키로만 복호화 (반대도 성립)
  • 키를 공개해도 안전하게 통신 가능
  • 대표 알고리즘: RSA

[전자서명 흐름]

타임라인

전자서명: 발신자가 비공개키로 내용에 서명 → 수신자는 공개키로 서명을 복호화해 내용과 대조 → 일치하면 진본·발신자 확인


단방향 암호화 (해시)

복호화 불가 → 무결성 목적

  • 입력값이 조금만 달라져도 완전히 다른 해시값 출력
  • 비밀번호 저장, 파일 무결성 검증에 사용
  • 대표 알고리즘: SHA-256, SHA-512, MD5, SHA-1

실생활 적용

상황암호화 방식
HTTPS비대칭키로 세션키 교환 → AES(대칭키)로 데이터 암호화
비밀번호 저장해시(SHA 등)로 저장, 복원 불가 → 비교만 함
E2EE 메신저 (카카오 비밀채팅, WhatsApp)종단간 암호화, 서버 관리자도 내용 열람 불가
파일/USB 암호화AES 기반 대칭키 방식

핵심 요약

암호화 방식
├── 양방향 (복호화 가능) — 기밀성
│   ├── 대칭키: 같은 키 사용 → AES, DES
│   └── 비대칭키: 공개키/비공개키 쌍 → RSA, 전자서명
└── 단방향 (복호화 불가) — 무결성
    └── 해시: SHA-256, MD5

참고 영상: 생활코딩 암호학


© 2022 JeongHwan Yun.