암호화에 대한 심층 사이버 보안 관점
Source: Dev.to
해당 텍스트를 번역하려면 실제 기사 내용이 필요합니다. 번역하고자 하는 전체 텍스트(코드 블록이나 URL을 제외한 본문)를 제공해 주시면, 요청하신 대로 한국어로 번역해 드리겠습니다.
암호화: 양방향 보호
암호화는 읽을 수 있는 데이터를 읽을 수 없는 암호문으로 변환합니다. 올바른 키가 있으면 이를 되돌릴 수 있습니다.
대칭 암호화
데이터를 암호화하고 복호화하는 데 단일 키를 사용합니다.
일반적인 사용 사례
- Wi‑Fi
- VPN
- 디스크 암호화
- TLS 세션
알고리즘
- AES – 현대적이고 빠르며 안전한 대칭 표준.
- DES – 오래된 암호; 키 크기가 너무 작아 더 이상 안전하지 않음.
- 3DES – 개선된 DES이지만 여전히 구식; AES보다 느리고 약함.
비대칭 암호화
공개 키로 암호화하고 개인 키로 복호화합니다.
일반적인 사용 사례
- HTTPS
- 디지털 서명
- 신원 확인
- 보안 이메일
알고리즘
- RSA – 잘 알려져 있고 신뢰할 수 있지만 최신 시스템보다 느리고 오래됨.
- ECC (타원곡선 암호화) – 더 작은 키를 사용하면서 동일한 강도를 제공하고 더 빠르고 가벼운 현대적인 비대칭 시스템.
암호 모드 (블록 암호화 작동 방식)
- CBC (Cipher Block Chaining) – 각 블록이 이전 암호문 블록과 결합됩니다. 패딩 오라클 공격에 취약하며, 구식으로 간주됩니다.
- GCM (Galois/Counter Mode) – 내장된 무결성 검사를 포함한 카운터 모드 암호화로, 기밀성, 무결성 및 인증을 제공합니다. 현대 TLS에서 표준으로 사용됩니다.
TLS 핸드쉐이크
TLS 핸드쉐이크는 데이터를 교환하기 전에 암호화를 안전하게 협상합니다.
- 암호화 알고리즘에 동의
- 공개 키 교환
- 인증서 검증
- 임시 대칭 세션 키 생성 (이후 모든 데이터에 사용)
암호 스위트
암호 스위트는 TLS 세션에서 사용되는 알고리즘(키 교환, 암호화, 해싱 등)을 지정하는 미리 정의된 “레시피”입니다.
전형적인 최신 스위트:
- ECDHE: 키 교환용
- AES‑GCM: 암호화용
- SHA‑256: 무결성 검증용
TLS, 인증서, 키, 신뢰
TLS (Transport Layer Security)
클라이언트와 서버 간에 암호화된 연결을 제공하며, AES, RSA/ECC, 인증서 및 키 교환을 결합합니다.
SSL
TLS의 이전 버전이며, 현재는 보안에 취약한 것으로 간주됩니다.
Key Exchange Methods
- DH (Diffie–Hellman) – 비보안 네트워크에서 비밀을 직접 전송하지 않고 공유 비밀을 생성합니다.
- ECDH (Elliptic Curve Diffie–Hellman) – 더 작은 키와 비트당 향상된 보안을 제공하는 동일한 개념입니다.
PKI (Public Key Infrastructure)
Components
- 인증서
- 인증 기관 (CAs)
- 신뢰 체인 (root → intermediate → server)
- OCSP (Online Certificate Status Protocol)
- CRL (Certificate Revocation List)
Key concepts
- Root Trust – 장치는 신뢰할 수 있는 CA 목록을 내장하고 저장하며, 신뢰된 CA가 발급한 모든 인증서를 허용합니다.
- EV Certificates – 확장 검증; 더 강력한 신원 확인을 제공하지만 암호 보안은 동일합니다.
- Certificate Pinning – 애플리케이션이 특정 인증서 또는 키만을 신뢰하도록 하여 위조 인증서를 방지합니다.
Key Lifecycle
- 생성
- 안전한 저장
- 교체
- 만료
- 안전한 파기
Code Signing
소프트웨어는 개인 키로 서명되며, 시스템은 실행 전에 서명을 검증하여 악성 코드 위장을 방지합니다.
인증 및 신원 보안
- Kerberos – Windows 네트워크용 인증 프로토콜.
- WPA3 – 최신 보안 Wi‑Fi 프로토콜.
- Password‑Based (PB) – 비밀번호 기반 시스템을 통칭하는 용어.
- SAML – 기존 기업 신원 프로토콜.
- OAuth 2 – 현대 애플리케이션을 위한 권한 부여 프레임워크.
- OIDC (OpenID Connect) – OAuth 2 위에 구축된 신원 계층.
- Identity Provider (IdP) – 사용자 신원을 확인하는 서비스.
- SSO (Single Sign‑On) – 한 번 로그인으로 여러 애플리케이션에 접근.
- JWT (JSON Web Token) – 웹 시스템에서 사용되는 토큰 형식.
- Access Tokens – API 접근을 위한 단기간 토큰.
- Federation – 시스템 간 신원 정보를 공유하는 것.
위협 모델링 및 위험 용어
- STRIDE – 위협 범주: 스푸핑, 변조, 부인 방지, 정보 공개, 서비스 거부, 권한 상승.
- DREAD – 오래된 위협 점수 모델.
- Attack Trees – 목표에 대한 공격자 경로를 시각화한 모델.
- Kill Chain – 공격 단계.
- MITRE ATT&CK – 공격자 기술 데이터베이스.
- Attack Surface – 공격자가 진입을 시도할 수 있는 모든 지점.
Vulnerabilities and Risk Metrics
- CVE – 알려진 취약점에 대한 공개 식별자.
- CVSS – 취약점의 심각도를 나타내는 점수 체계.
- NVD – 국가 취약점 데이터베이스; 취약점 기록의 공식 저장소.
- Threat Agents – 공격을 수행할 수 있는 주체.
- Risk Scoring – 상황이 얼마나 위험한지 평가.
인프라 및 접근 제어
- IAM (Identity and Access Management) – 사용자 신원 및 권한을 관리하는 프레임워크.
- ACLs (Access Control Lists) – 누가 어떤 리소스에 접근할 수 있는지 정의하는 목록.
- DMZ (Demilitarized Zone) – 공용 인터넷과 내부 네트워크를 분리하는 네트워크 구역.
재해 복구 용어
- RTO (Recovery Time Objective) – 허용 가능한 최대 다운타임.
- RPO (Recovery Point Objective) – 허용 가능한 최대 데이터 손실.
- DR Site – 재해 복구를 위한 백업 위치.
- Backup Testing – 백업이 올바르게 작동하는지 확인.
Encryption may seem overwhelming at first, but understanding how algorithms, keys, and trust layers interconnect makes the system comprehensible and provides a solid foundation for deeper cybersecurity concepts.