네트워크 보안 암호화에서 '키(K)'란 무엇일까요?
네트워크 보안에서 암호화 키(Key)는 데이터를 잠그고 여는 열쇠 역할을 하는 핵심 요소입니다. 같은 알고리즘이라도 어떤 키를 사용하느냐에 따라 결과물이 완전히 달라지며, 키가 유출되면 아무리 강력한 암호화라도 무용지물이 됩니다. 이 글에서는 일상에서 접하는 암호화의 종류부터 DEK·KEK 같은 전문 용어까지 차근차근 정리해 드립니다.
가장 많이 쓰이는 세 가지 암호화 방식: DES, AES, RSA
세상에는 수많은 암호화 알고리즘이 존재하지만, 우리가 매일 사용하는 대표적인 세 가지는 DES, AES, RSA입니다. 이 세 가지만 이해해도 현대 암호화 기술의 큰 흐름을 파악할 수 있습니다.
DEK와 KEK란 무엇인가?
DEK(Data Encryption Key, 데이터 암호화 키)는 실제 데이터를 암호화하고 복호화하는 데 직접 사용되는 키입니다. 데이터가 여러 번 암호화·복호화되더라도 최소 한 번 이상의 암호화와 복호화를 수행하도록 설계되어 있으며, 암호화 엔진을 통해 생성할 수 있습니다.
KEK(Key Encryption Key, 키 암호화 키)는 이런 DEK를 다시 한번 감싸서 보호하는 상위 키로, '키를 위한 키'라고 이해하면 됩니다. 키를 이중으로 관리하면 키 자체가 노출될 위험을 크게 줄일 수 있습니다.
DES는 어디에 사용되었나?
DES(Data Encryption Standard)는 미국 국립표준국(NBS, 현재 NIST)의 인증을 받아, 미국 정부의 비밀로 분류되지 않은(unclassified) 데이터를 보호하기 위한 표준으로 채택되었습니다. 이후 컴퓨터 시스템, 네트워크, 클라우드 환경에서 2진 코드(binary-coded) 데이터를 저장하고 전송하기 위한 정부용 데이터 보호 프로그램에 널리 활용되었습니다.
암호화 키의 종류
암호화와 관련된 키는 크게 네 가지 이름으로 불립니다.
- 대칭 키(Symmetric Key): 암호화와 복호화에 같은 키를 사용합니다.
- 비대칭 키(Asymmetric Key): 서로 다른 두 개의 키 쌍을 사용합니다.
- 공개 키(Public Key): 누구에게나 공개할 수 있는 키입니다.
- 개인 키(Private Key): 소유자만 접근할 수 있는 비밀 키입니다.
앞의 두 가지는 '키가 어디에 쓰이는지'를 설명하고, 뒤의 두 가지는 '누가 그 키에 접근할 수 있는지'를 나타냅니다.
암호화의 두 가지 기본 유형
데이터 암호화는 크게 대칭(symmetric)과 비대칭(asymmetric) 두 가지로 나뉩니다.
- 대칭 암호화: 하나의 (비밀)키를 통신 당사자 모두가 공유하여 사용합니다. 처리 속도가 빨라 대량 데이터 암호화에 적합합니다.
- 비대칭 암호화: '공개 키 암호화'라고도 하며, 서로 다른 두 개의 키를 사용합니다. 하나로 암호화한 데이터는 다른 하나로만 복호화할 수 있습니다.
네 가지 기본 암호화 시스템
- AES(Advanced Encryption Standard): 128비트 단위의 고정 블록 데이터를 한 번에 암호화하는 대칭 암호화 알고리즘으로, 고유한 문자열을 생성해 파일을 보호합니다.
- RSA(Rivest-Shamir-Adleman): 공개 키 기반의 대표적인 비대칭 암호화 알고리즘입니다.
- Triple DES: 기존 DES 알고리즘을 세 번 적용해 보안성을 높인 방식입니다.
- Twofish: AES 표준 경선에 참여했던 강력한 대칭 블록 암호 알고리즘입니다.
암호학의 세 가지 기본 연산
암호학(cryptography)의 핵심 원리는 암호화(Encryption), 복호화(Decryption), 해싱(Hashing) 세 가지입니다. 암호화는 정보를 숨기고, 복호화는 원래 상태로 되돌리며, 해싱은 데이터가 변조되지 않았는지 무결성을 검증하는 데 사용됩니다.
KEK 생성 방법: vSAN 예시
VMware vSAN 환경에서 새로운 KEK를 생성하는 과정은 다음과 같습니다.
- 클러스터 목록에서 vSAN 호스트 클러스터를 선택합니다.
- '구성(Configuration)' 탭을 클릭합니다.
- vSAN 메뉴에서 'vSAN 서비스(vSAN Services)'를 찾습니다.
- 암호화 키 생성기(Encryption Key Generator)로 새 암호화 키를 생성합니다.
- '적용(Apply)'을 누르면 새 KEK가 발급되며, 기존 DEK들이 이 새 키로 다시 암호화(re-encryption)됩니다.
암호화 키 생명주기의 세 단계
- 준비 단계(Pre-operational): 본격적인 암호화 작업에 들어가기 전에 키 자료(keying material)를 배포하고 설정하는 단계입니다.
- 운영 단계(Operational): 키 자료가 활성화되어 평소처럼 실제 암호화 작업에 사용되는 단계입니다.
- 사후 운영 단계(Post-operational): 더 이상 사용하지 않는 키 자료가 필요에 따라 보관·접근될 수 있는 단계입니다.
암호화 키의 예시
대칭 암호화 알고리즘은 송신자와 수신자가 동일한 비밀 키(암호화 키)를 공유해 메시지를 암호화하고 복호화합니다. 간단한 예로, 키 값이 '2'라면 "A"는 "C"로, "B"는 "D"로 변환되는 식입니다.
암호화에는 몇 개의 키가 사용될까?
오늘날 널리 쓰이는 암호화는 크게 대칭과 비대칭 두 종류입니다. 암호화와 복호화에 같은 비밀 키를 사용하면 이를 '공유키(shared key)' 방식이라고 부릅니다.
반면 공개 키 암호화(public key cryptography)는 두 개의 키를 사용합니다. 하나는 암호화용, 다른 하나는 복호화용입니다. 공개 키는 자유롭게 배포해도 개인 키가 유출될 위험이 없습니다. 예를 들어 친구의 공개 키로 메시지를 암호화하면, 오직 친구의 개인 키로만 그 내용을 확인할 수 있습니다.
마무리
정리하면, 네트워크 보안의 'k(키)'는 데이터 보호의 심장부입니다. 대칭·비대칭 방식의 이해, DEK와 KEK의 역할 구분, 키 생명주기 관리까지 제대로 갖춰야 안전한 암호화 체계를 구축할 수 있습니다.