제로 지식 암호화란? 간단한 설명
제로 지식 암호화는 제공업체가 귀하의 데이터에 접근할 수 없음을 의미합니다.
영지식 암호화는 서비스가 저장된 사용자 콘텐츠를 해독하는 데 필요한 키를 보유하지 않도록 공급자를 제한하는 아키텍처입니다. 공급자가 콘텐츠 키를 제어하는 일반 클라우드 암호화와 달리, 클라이언트 측 암호화는 그 능력을 사용자 기기에 둘 수 있습니다. 그래도 법적 요청, 침해, 내부자로 인해 공급자가 보유한 암호문, 계정 기록, 트래픽 데이터 등 메타데이터는 노출될 수 있습니다. NIST의 키 관리 지침에 따르면 키 보관이 접근의 핵심이지만, 클라이언트 앱, 운영 체제, 잠금 해제된 기기는 여전히 신뢰 경계에 포함됩니다.
제로 지식 암호화의 작동 원리
가장 간단한 유추: 귀하만 조합을 설정하고 호텔은 알지 못하는 호텔 금고. 조합을 잊어버리면 호텔이 금고를 열어줄 수 없습니다. 이것이 설계의 결함이 아닙니다. 이것이 설계 자체입니다.
기술적으로 제로 지식 암호화는 세 단계로 작동합니다.
기기 내 키 파생. 사용자는 비밀번호, 암호 문구, 패턴 같은 자격 증명을 입력합니다. 비밀번호 기반 키 파생 함수는 이를 솔트와 결합해 사용자 기기에서 키를 만듭니다. 잘 분리된 설계에서는 모든 파일을 사람의 자격 증명으로 직접 암호화하지 않고, 그 키로 무작위 콘텐츠 암호화 키를 여는 방식을 씁니다.
전송 전 암호화. 모든 데이터가 파생된 키를 사용하여 기기에서 암호화된 후 클라우드 저장소나 백업을 위해 기기를 떠납니다. 암호화된 출력(암호문)이 업로드됩니다.
공급자는 일반 텍스트 콘텐츠 키를 받지 않습니다. 콘텐츠 키는 사용 중에는 클라이언트 메모리에 있을 수밖에 없으며, 인증된 암호화 봉투에 담겨 로컬이나 원격에 저장될 수도 있습니다. 공급자는 래핑된 키를 여는 데 필요한 사용자 비밀 없이 암호문과 래핑된 키를 저장할 수 있습니다. 계정, 트래픽, 기록 크기 및 타이밍 메타데이터는 계속 표시될 수 있습니다.
중요한 제약 조건: 사용자가 모든 유효한 자격 증명 및 복구 경로를 잃으면 암호화된 콘텐츠에 액세스할 수 없게 됩니다. 복구 수단은 여전히 있을 수 있지만, 키를 누가 보관하는지는 설명되어야 합니다. 이전 장치 승인, 복구 문구, 복구 키 또는 이에 상응하는 사용자 보유 비밀 없이 이메일 재설정만으로 읽을 수 있는 콘텐츠를 복원하는 경우 공급자는 일반 텍스트로 돌아가는 효과적인 경로를 유지한 것입니다.
제로 지식 암호화 vs 다른 유형의 암호화
"암호화"라는 용어는 거의 모든 클라우드 서비스의 마케팅 자료에 등장합니다. 유형 간의 차이는 상당합니다.
| 유형 | 키 보유자 | 제공업체의 데이터 읽기 | 제공업체 침해 생존 | 예시 |
|---|---|---|---|---|
| 암호화 없음 | 해당 없음 | 예 | 아니요 | Dropbox (표준 티어) |
| 전송 중 암호화 (TLS) | 제공업체 | 예 (서버에서 저장 중) | 아니요 | Google Photos |
| 서버 측 저장 중 암호화 | 제공업체 | 예 (복호화 키 보유) | 부분적 | iCloud (표준) |
| 플랫폼 종단 간 암호화 | 클라이언트 장치 및 계정 복구 시스템 | 정상적인 서비스 경로를 통하지 않음 | 클라이언트, 복구, 메타데이터 노출에 따라 다름 | iCloud 고급 데이터 보호 기능 |
| 공급자 블라인드 클라이언트 측 암호화 | 클라이언트 및 사용자 제어 복구 경로 | 공급자가 평문 콘텐츠 키를 보유하지 않습니다. | 콘텐츠는 암호화된 상태로 유지될 수 있습니다. 메타데이터와 암호문은 여전히 유출될 수 있습니다 | 암호화된 금고 및 백업 시스템 |
"저장 중 암호화"와 "제로 지식 암호화"의 구별이 가장 흔히 혼동됩니다. 저장 중 암호화에서 제공업체는 자신이 제어하는 키를 사용하여 서버의 데이터를 암호화합니다. 이것은 서버 하드웨어의 물리적 도난으로부터 보호합니다. 제공업체가 데이터를 읽는 것, 데이터와 키에 대한 정부 소환, 또는 내부 위협으로부터는 보호하지 않습니다. 제공업체는 복호화 능력을 가집니다.
제로 지식 암호화에서 제공업체는 복호화 능력을 전혀 가지지 않습니다.
제로 지식 암호화가 중요한 이유
데이터 침해는 매년 수십억 건의 기록을 노출시킵니다
신원 도용 리소스 센터(Identity Theft Resource Center)는 2023년 미국에서 데이터 유출 사고 3,205건이 발생해 약 3억 5,300만 명이 영향을 받았다고 보고했습니다. 공급자가 콘텐츠 키를 보유하면 한 번의 침해로 저장된 데이터와 그 데이터를 해독할 경로가 모두 노출될 수 있습니다. 공급자 블라인드 암호화는 이 두 자산을 분리합니다. 서버가 침해되면 암호문과 메타데이터는 여전히 노출될 수 있지만, 공급자가 보유한 일반 텍스트 콘텐츠 키는 노출되지 않습니다. 자격 증명 추측과 클라이언트 침해는 여전히 별개의 위험입니다.
법적 강압은 실제 위협입니다
제공업체는 보유하고 있는 데이터를 공개해야 할 수도 있습니다. 공급자 블라인드 설계에서는 공급자가 일반 텍스트 콘텐츠 키를 보유하지 않기 때문에 암호문 및 사용 가능한 계정, 트래픽, 청구 또는 서비스 메타데이터에 대한 응답을 제한할 수 있습니다. 다른 당사자가 사용자 자격 증명을 얻을 수 있는지, 클라이언트를 악용할 수 있는지 또는 공개를 강요할 수 있는지 여부는 별도의 질문입니다. Apple은 iOS 16.2에서 iCloud 데이터에 대한 종단 간 암호화를 선택적으로 확장하는 고급 데이터 보호를 도입했습니다.
"우리를 믿으세요"는 보안 아키텍처가 아닙니다
서버 측 암호화는 공급자가 제어하는 키와 정책을 씁니다. 공급자 블라인드 암호화는 키 보관 주체를 바꾸므로, 문서화된 서비스 경로에 일반 텍스트 콘텐츠 키가 없습니다. 이는 더 강한 아키텍처 경계이지만, 그 강도는 여전히 올바른 클라이언트 코드, 인증된 소프트웨어 배포, 건전한 복구, 안전한 기기, 사양과 일치하는 구현에 달려 있습니다.
암호화 뒤의 NIST 표준
AES-GCM은 미국 국립표준기술연구소(NIST)가 표준화했습니다. SP 800-38D (2007). AES 자체는 2001년 공개 경쟁을 거쳐 NIST가 선정했습니다. AES-256은 256비트 키를 뜻합니다. 균일한 무작위 키를 전수 탐색하는 것은 계산상 불가능하지만, 사람이 정한 비밀번호나 패턴은 키 파생 함수가 256비트를 출력하더라도 엔트로피가 훨씬 적을 수 있습니다.
PBKDF2(비밀번호 기반 키 파생 함수 2), RFC 8018, 반복되는 의사 난수 함수 호출로 사람이 정한 자격 증명을 고정 길이 키 자료로 바꿉니다. 반복이 많을수록 추측 하나의 비용이 커집니다. 예측 가능한 패턴이나 비밀번호에 엔트로피를 더하지는 않으므로, 자격 증명 선택과 오프라인 검증은 여전히 중요합니다.
Vaultaire가 공급자-키 분리를 구현하는 방법
Vaultaire는 제로 지식 아키텍처로 구축된 iPhone용 보관함 앱입니다. 각 레이어에서의 구현 방식은 다음과 같습니다.
볼테르는 iPhone용 클라이언트 측 암호화 금고입니다. 흔히 "제로 지식"이라고 홍보되는 의미에서 보면, 문서로 밝히는 더 좁은 주장은 Wraxle이 일반 텍스트 금고 콘텐츠나 이를 복호화하는 데 필요한 키를 받지 않는다는 것입니다. 각 계층에서 구현 및 나머지 신뢰 경계가 작동하는 방식은 다음과 같습니다.
키 파생. 사용자는 점 25개로 된 5x5 그리드에 패턴을 그립니다. PBKDF2-HMAC-SHA512가 그 순서를 기기 전체 Keychain 솔트 하나와 결합해 600,000회 반복하여 256비트 금고 키를 파생합니다. 금고 키는 암호화된 인덱스를 인증하고 별도의 무작위 256비트 마스터 키를 래핑합니다. 패턴을 포함한 복구 정보는 일반 텍스트 파일이나 Vaultaire 계정이 아니라 AES-GCM으로 암호화된 Keychain 데이터베이스에 있습니다.
파일 암호화. 가져온 파일은 모두 무작위 마스터 키로 AES-256-GCM 암호화됩니다. CryptoKit은 새 nonce로 인증된 봉인 상자를 만들고, 스트리밍 형식은 순서가 정해진 청크마다 고유한 nonce를 파생합니다.
메타데이터 암호화. 파일 이름, MIME 유형, 날짜, 색인 기록, 썸네일 데이터도 AES-256-GCM으로 보호됩니다. Vaultaire는 금고 메타데이터에 ChaCha20을 사용하지 않습니다.
키 관리. Vaultaire는 기기 솔트와 암호화된 복구 데이터베이스를 일반 iOS Keychain 비밀번호 항목으로 저장하며, 이 항목은 다음으로 보호됩니다. WhenUnlockedThisDeviceOnly 접근성 클래스로 보호됩니다. 패턴에서 파생된 금고 키와 무작위 마스터 키는 앱 메모리에서 CryptoKit으로 처리됩니다. 잠그면 활성 키 상태가 지워지지만, Swift와 iOS가 모든 임시 복사본을 덮어쓴다고 보장하지는 않습니다.
앱이 진정한 제로 지식 암호화를 사용하는지 확인하는 방법
1분도 안 걸리는 세 가지 테스트:
비밀번호 찾기 시험. 이메일 재설정만으로 읽을 수 있는 데이터를 복원하는 경우 유효한 콘텐츠 키를 복구한 공급자 보유 메커니즘이 무엇인지 물어보세요. 사용자 보유 복구 문구, 기존 장치 승인 및 공급자 제어 재설정은 서로 다른 디자인입니다.
새 기기 시험. 새 기기가 읽을 수 있는 콘텐츠를 복원한다면, 어떤 비밀이나 신뢰할 수 있는 기기가 그 기기를 승인했는지 확인하세요. 계정 로그인만으로 복원된다면 공급자가 제어하는 복구 경로가 있다는 뜻일 수 있습니다. 복구 문구와 암호화된 백업 레코드를 함께 쓰면 공급자와의 키 분리를 유지할 수 있습니다.
계정 테스트입니다. 이메일 주소나 전화번호는 ID를 서비스 메타데이터에 연결하지만, 그 자체로 공급자가 콘텐츠를 해독할 수 있음을 증명하지는 않습니다. 키 계층 구조, 복구 설계, 클라이언트 코드 또는 감사, 메타데이터 정책, 인증된 암호문이 오프라인 자격 증명 확인을 허용하는지 여부를 검사합니다.
이러한 테스트는 보안 증명이 아닌 필터입니다. 일관된 사양에서는 콘텐츠 키, 잠금 해제 키, 솔트, 파생 매개변수, 인증된 암호화 형식, nonce 규칙, 복구 봉투, 로컬 비밀 저장소, 클라우드 메타데이터 및 일반 텍스트 키가 존재하는 지점의 이름을 지정해야 합니다. 독립적인 리뷰는 제품 라벨보다 더 강력한 증거입니다.
자주 묻는 질문
제로 지식 암호화와 엔드투엔드 암호화는 같은가요?
겹치지만 동일하지는 않습니다. 엔드투엔드 암호화(E2EE)는 데이터가 발신자의 기기에서 암호화되어 수신자의 기기에서만 복호화됨을 의미합니다. 제로 지식 암호화는 제공업체가 데이터에 접근할 수 없음을 의미합니다. 제공업체가 키 생성 시점에 키에 접근했다면 E2EE이지만 제로 지식이 아닐 수 있습니다. 제로 지식 암호화가 더 엄격한 기준입니다.
제로 지식 암호화에서 패스워드를 잊어버리면?
유효한 자격 증명과 복구 봉투를 모두 잃으면 데이터에 영구적으로 접근할 수 없습니다. 공급자가 제어하는 재설정이나 마스터 키는 공급자 경계를 약하게 만들므로, 복구는 따로 설계해야 합니다. 볼테르는 서로 다른 9개 단어로 된 사용자 지정 문구를 생성하며, 이 문구에서 파생된 복구 키가 암호화된 금고 키 봉투를 엽니다. 이 문구는 키를 재생성하거나 인코딩하지 않으며, 새 기기에서 복원하려면 일치하는 암호화된 CloudKit 레코드도 필요합니다.
법 집행 기관이 제로 지식 암호화 데이터에 접근할 수 있나요?
공급자는 저장된 암호문과 계정, 트래픽, 결제, 서비스 메타데이터를 제출해야 할 수 있습니다. 공급자에게 일반 텍스트 콘텐츠 키가 없으면 일반 서비스 경로로는 콘텐츠를 복호화할 수 없습니다. 기기 취약점 공격, 자격 증명 확보, 복구 사본, 강제 공개는 별개의 경로이며, 합법성과 효과는 관할권과 사실관계에 따라 달라집니다.
제로 지식 암호화가 일반 암호화보다 느린가요?
AES-256-GCM의 성능은 누가 키를 보유하느냐와 무관합니다. 비밀번호 기반 파생은 잠금 해제 시 작업을 추가하며, 그 소요 시간은 알고리즘, 반복 횟수, 기기, 구현에 따라 달라집니다. 앱은 지원 하드웨어에서 이 비용을 측정해, 반응 속도와 오프라인 추측 한 번마다 부과되는 비용 사이의 균형을 맞춰야 합니다.
제로 지식이 앱이 데이터를 전혀 수집하지 않는다는 의미인가요?
반드시 그런 것은 아닙니다. 이 용어는 모든 데이터 흐름이 아닌 공급자의 콘텐츠 키 경계를 다룹니다. 앱은 계정 데이터, 분석, 충돌 보고서, IP 주소, 기록 크기, 타이밍 또는 기타 서비스 메타데이터를 계속 처리할 수 있습니다. Vaultaire에는 신원 계정이 필요하지 않습니다. 앱 분석 및 충돌 진단은 기본적으로 활성화되어 있으며 설정에서 “익명으로 오류 공유”를 사용하여 끌 수 있습니다. 문서화된 이벤트 정책에서는 저장소 내용, 패턴, 문구 및 암호 해독 키가 제외됩니다. 개인정보 보호정책에는 현재 수집 및 보관 규칙이 설명되어 있습니다.
제로 지식 암호화는 Apple의 고급 데이터 보호와 어떻게 비교되나요?
Apple의 ADP(고급 데이터 보호)는 iOS 16.2에서 도입되었으며, 엔드투엔드 암호화를 더 많은 iCloud 항목으로 확장하고 Apple 계정 복구 모델을 사용합니다. Vaultaire는 기기에서 금고 내용을 암호화하며 Vaultaire ID 계정이 필요 없습니다. 기본적으로 켜져 있는 iCloud 백업과 동기화 및 공유는 사용자의 Apple 계정에 있는 클라이언트 측 암호화 CloudKit 기록을 사용합니다. Vaultaire는 또한 패턴별로 분리된 저장소 접근과 협박 모드를 제공합니다. 저장과 복구의 한계는 다음 문서에 설명되어 있습니다: 그럴듯한 부인 가능성 문서.
요약
제로 지식 암호화는 암호화 키가 사용자의 기기를 절대 떠나지 않기 때문에 제공업체가 수학적으로 사용자 데이터에 접근할 수 없는 아키텍처입니다. 표준 암호화, 저장 중 암호화, 심지어 일부 형태의 엔드투엔드 암호화와 한 가지 중요한 점에서 다릅니다: 제공업체의 데이터 접근 불가는 정책이 아닌 수학으로 강제됩니다. 트레이드오프 — 키를 잃으면 데이터도 잃는다 — 는 결함이 아닙니다. 이것이 보장을 실제로 만드는 메커니즘입니다.
영지식 암호화는 공급자와 키의 분리에 관한 주장으로 이해하는 것이 가장 정확합니다. 즉, 서비스가 저장된 콘텐츠를 해독하는 데 필요한 일반 텍스트 키를 보유하지 않는다는 뜻입니다. 이는 공급자가 제어하는 키를 쓰는 서버 측 암호화보다 강력하지만, 키가 메모리에만 존재한다거나, 메타데이터가 사라진다거나, 클라이언트와 기기의 손상을 모두 막는다는 주장은 아닙니다. 제품은 키 계층 구조, 복구 설계, 구현, 독립적인 검토를 기준으로 판단하세요.