키 회전이란 무엇인가요?
키 회전은 활성 상태의 암호화 키나 자격 증명을 정기적으로 새로 생성한 것으로 교체하고 기존 키를 폐기하거나 무효화하여, 유출 시 노출 시간 창을 제한하는 보안 관행이다.
다른 이름: credential rotation, secret rotation
모든 키에는 유효한 수명이 있다. 키가 오래 사용될수록 그 키로 암호화되는 데이터가 늘어나(암호 분석에 쓸 자료가 증가하고) 유출되거나 도난당할 기회도 많아지며, 유출됐을 때의 피해도 커진다. 키 회전은 하나의 키가 제한된 기간 동안 제한된 양의 데이터만 보호하도록 함으로써 이 노출을 줄인다.
회전 전략은 키 유형에 따라 다르다. 대칭 암호화 키는 사용량이나 시간에 따라 회전해야 하며, 많은 표준이 하나의 키가 2^32블록 이상을 암호화하기 전에 회전하도록 권장한다. API 키와 서비스 자격 증명은 보통 고정된 일정(30일, 60일, 90일)에 따라 회전하거나 유출이 의심될 때 즉시 회전한다. TLS 인증서에는 회전을 강제하는 만료일이 내장돼 있다.
효과적인 키 회전을 위해서는 이를 위해 설계된 시스템이 필요하다. 애플리케이션은 여러 활성 키를 동시에 지원해야 하며(기존 데이터를 복호화하고 새 데이터는 최신 키로 암호화하기 위해), 회전 과정은 수작업 오류를 피하기 위해 자동화해야 한다. 키 래핑과 봉투 암호화는 회전을 단순화한다. 마스터 키를 회전할 때 전체 데이터셋을 다시 암호화할 필요 없이 데이터 키만 다시 래핑하면 되기 때문이다.
Vaulted가 키 회전을 사용하는 방법
Vaulted의 일회성 설계는 전통적인 키 회전 문제를 우회한다. 각 비밀은 해당 비밀의 수명 동안에만 존재하는 고유한 AES-256-GCM 키를 받으므로, 회전해야 할 장기 키가 존재하지 않는다. 비밀이 스스로 파기되면(조회 제한 또는 만료로) 서버의 암호문과 공유 링크 속 키가 모두 무의미해진다. 비밀마다 키가 하나인 이 모델은 단일 키가 둘 이상의 비밀을 보호하는 일이 없으므로 주기적 회전보다 더 강력한 보장을 제공한다.