Apple 생태계에서 머신러닝과 동형 암호화 결합
요약
Apple은 사용자 프라이버시 보호를 위해 기기 내(on-device) 처리를 우선하며, 서버 기반 ML 기능을 도입할 때도 사생활을 지키는 기술 조합을 사용합니다. 핵심 기술로 동형 암호화(HE)를 활용하여, 서버가 데이터를 복호화하지 않고도 암호화된 상태에서 계산 및 데이터베이스 조회가 가능하게 합니다.
핵심 포인트
- 동형 암호화(HE)는 암호화된 데이터 위에서 계산을 가능케 함.
- Apple은 기기 내 처리와 HE를 결합하여 프라이버시를 강화함.
- BFV 방식을 사용하여 임베딩 벡터 연산에 적합한 고보안 HE 구현을 제공함.
- 개발자 커뮤니티를 위해 swift-homomorphic-encryption 라이브러리를 오픈 소스 함.
사진의 시각 검색을 향상시키기 위해 Private Nearest Neighbor Search를 사용합니다.

사진의 시각 검색을 향상시키기 위해 Private Nearest Neighbor Search를 사용합니다.
Apple 생태계에서 머신러닝과 동형 암호화 결합
사진의 시각 검색을 향상시키기 위해 Private Nearest Neighbor Search를 사용합니다.
사진의 시각 검색을 향상시키기 위해 Private Nearest Neighbor Search를 사용합니다.
Apple에서는 프라이버시가 기본적인 인권이라고 믿습니다. 사용자 프라이버시 보호를 위한 우리의 작업은 일련의 프라이버시 원칙에 의해 안내되며, 그 원칙 중 하나는 기기 내(on-device) 처리를 우선순위로 삼는 것입니다. 사용자의 장치에서 로컬로 계산을 수행함으로써, 우리는 Apple이나 다른 주체와 공유되는 데이터 양을 최소화하는 데 도움을 줍니다. 물론, 사용자는 서버에 호스팅된 글로벌 지식을 조회하여 풍부해질 수 있는 머신러닝(ML) 기반의 기기 내 경험을 요청할 수도 있습니다. 이러한 경험을 제공하면서도 프라이버시에 대한 약속을 지키기 위해, 우리는 서버 조회가 사적이고 효율적이며 확장 가능하도록 돕는 기술 조합을 구현했습니다.
우리가 이를 수행하는 데 사용하는 핵심 기술 중 하나는 동형 암호화(HE)입니다. 이는 암호화된 데이터 위에서 계산을 가능하게 하는 형태의 암호학입니다 (그림 1 참조). HE는 클라이언트 장치가 쿼리를 서버로 보내기 전에 암호화하고, 서버가 이 암호화된 쿼리 위에서 작동하여 암호화된 응답을 생성하며, 이를 클라이언트가 복호화하도록 설계되었습니다. 서버는 원래의 요청을 복호화하지 않으며 심지어 복호화 키에 접근할 수도 없으므로, HE는 프로세스 전반에 걸쳐 클라이언트 쿼리를 사적으로 유지하도록 설계되었습니다.
Apple에서는 HE를 다른 개인 정보 보호 기술과 결합하여 사적인 데이터베이스 조회 및 머신러닝(ML)을 포함한 다양한 기능을 구현합니다. 또한, 저희는 HE의 계산 오버헤드를 대규모 프로덕션 애플리케이션의 지연 시간 및 효율성 요구 사항과 균형 맞추기 위해 여러 최적화와 기술을 사용하고 있습니다. 본 기사에서는 사적인 정보 검색(PIR) 및 사적인 최근접 이웃 검색(PNNS)과 같은 기술들과 함께 HE를 어떻게 사용하는지에 대한 개요와, 사용자 프라이버시 보호를 유지하면서 사진의 향상된 시각 검색(Enhanced Visual Search for Photos) 기능을 구현하기 위해 이러한 기술들 및 기타 개인 정보 보호 기술들을 프로덕션 환경에서 결합하는 방법에 대해 자세히 설명합니다 (그림 2 참조).
HE를 Apple 생태계에 도입함으로써, 저희는 사적인 서버 조회로 온디바이스 경험을 풍부하게 만들 수 있는 프라이버시 보호 기능을 제공하며, 개발자 커뮤니티가 자신들의 애플리케이션에도 HE를 유사하게 채택하기 용이하도록 swift-homomorphic-encryption이라는 HE 라이브러리를 오픈 소스 했습니다. 더 자세한 정보는 이 게시물을 참조하십시오.
저희의 HE 구현은 ML 워크플로우에 공통적인 연산들이 높은 수준으로 효율적으로 실행될 수 있도록 해야 하며, 동시에 매우 높은 수준의 보안을 달성해야 합니다. 저희는 임베딩 벡터(embedding vectors)에서 수행되는 계산(예: 내적 또는 코사인 유사도)에 적합한 동형 연산을 지원하는 Brakerski-Fan-Vercauteren (BFV) HE 방식을 구현했습니다. 저희가 사용하는 BFV 매개변수는 양자 후(post-quantum) 128비트 보안을 달성하여, 고전적 공격과 잠재적인 미래의 양자 공격 모두에 대해 강력한 보안을 제공합니다 (이 게시물에서 이전에 설명된 바와 같이).
HE는 클라이언트가 서버에서 정보를 조회해야 하지만, 그 조회 계산을 암호화된 상태로 유지해야 하는 환경에서 탁월합니다. 먼저 HE만으로도 개인 정보 검색(PIR)과 함께 정확히 일치하는 항목에 대한 프라이버시 보존형 서버 조회가 어떻게 가능한지 보여주고, 그런 다음 근사치 매칭을 개인 최단 이웃 검색(PNNS)과 결합하여 ML을 사용하는 더 복잡한 애플리케이션에서 HE가 어떻게 활용될 수 있는지 설명합니다.
여러 사용 사례에서는 장치가 서버 데이터베이스에서 쿼리의 정확히 일치하는 항목을 비공개로 검색해야 합니다. 예를 들어, 받은 이메일과 함께 표시할 적절한 회사 로고 및 정보를 가져오는 경우(올해 후반 iOS 18의 Mail 앱에 추가될 기능), 수신 전화에 발신자 ID 정보를 제공하는 경우, 또는 URL이 성인 콘텐츠로 분류되었는지 확인하는 경우(부모가 자녀의 iPhone이나 iPad에 콘텐츠 제한을 설정했을 때 수행되는 방식) 등이 있습니다 (그림 2의 이미지 2C 참조). 프라이버시를 보호하기 위해 관련 정보는 쿼리 자체를 노출하지 않고 검색되어야 합니다. 예를 들어, 이 경우 사용자에게 이메일을 보낸 회사, 전화를 건 전화번호 또는 확인 중인 URL이 해당됩니다.
이러한 워크플로우를 위해 우리는 개인 정보 검색(Private Information Retrieval, PIR)을 사용하는데, 이는 일종의 개인 키워드-값 데이터베이스 조회 방식입니다. 이 과정을 통해 클라이언트는 사적인 키워드를 가지고 서버로부터 연관된 값을 검색하려고 하지만, 전체 데이터베이스를 다운로드하지는 않습니다. 키워드를 사적으로 유지하기 위해 클라이언트는 키워드를 암호화하여 서버로 전송합니다. 서버는 수신된 암호문과 자체 데이터베이스 간에 동형암호(Homomorphic Encryption, HE) 연산을 수행하고, 그 결과인 암호화된 값을 요청 장치로 다시 보내며, 이 장치가 이를 복호화하여 키워드와 관련된 값을 학습하게 됩니다. 이 과정 전반에 걸쳐 서버는 클라이언트의 사적인 키워드나 검색된 결과를 알지 못합니다. 왜냐하면 서버가 클라이언트의 암호문을 기반으로 작동하기 때문입니다. 예를 들어, 웹 콘텐츠 필터링의 경우 URL이 암호화되어 서버로 전송됩니다. 서버는 데이터베이스에 있는 URL들과 이 암호문 위에서 암호화 연산을 수행하며, 그 결과물 역시 암호문입니다. 이 암호화된 결과가 장치로 전송되고, 여기서 복호화되어 부모 통제 제한(parental restriction controls)에 따라 해당 웹사이트를 차단해야 하는지 여부를 식별하게 됩니다.
근사 일치가 필요한 사용 사례의 경우, 우리는 Apple의 개인 최단 이웃 검색(Private Nearest Neighbor Search, PNNS)을 사용하는데, 이는 벡터 임베딩에 대한 근사 매칭을 위한 효율적인 사적 데이터베이스 검색 프로세스로, 논문 'Scalable Private Search with Wally'에서 설명되었습니다. PNNS를 이용하면 클라이언트가 벡터 임베딩을 암호화하고 그 결과인 암호문을 서버로 쿼리로 전송합니다. 서버는 HE 연산을 수행하여 최단 이웃 검색(nearest neighbor search)을 진행하고, 그 결과인 암호화된 값들을 요청 장치로 다시 보내며, 이 장치가 이를 복호화하여 자신의 쿼리 임베딩에 가장 가까운 이웃을 학습하게 됩니다. PIR과 유사하게, 이 과정 전반에 걸쳐 서버는 클라이언트의 사적인 임베딩이나 검색된 결과를 알지 못합니다. 왜냐하면 서버가 클라이언트의 암호문을 기반으로 작동하기 때문입니다.
PIR 및 PNNS와 같은 기술을 HE 및 기타 기술과 결합하여 사용함으로써, 사용자 프라이버시를 보호하면서 대규모 서버 측 데이터베이스의 정보를 활용하는 온디바이스 경험을 구축할 수 있습니다.
사진에 대한 향상된 시각 검색(Enhanced Visual Search)은 랜드마크나 관심 지점 같은 특정 위치를 사용자의 사진 라이브러리에서 검색할 수 있게 해주어, ML과 HE 및 사설 서버 조회 기능을 결합하여 구동되는 유용한 기능의 예시입니다. PNNS를 사용하여, 사용자의 장치는 Apple이 유지 관리하는 인기 랜드마크 및 관심 지점의 글로벌 인덱스를 사적으로 조회하여 사진 라이브러리에 묘사된 장소에 대한 근사 일치 항목을 찾습니다. 사용자는 다음 경로에서 이 기능을 장치에 설정할 수 있습니다: 설정 → 사진 → 향상된 시각 검색.
이 과정은 주어진 사진을 분석하여 랜드마크를 포함할 수 있는 “관심 영역”(ROI)이 있는지 판단하는 온디바이스 ML 모델로 시작됩니다. 만약 모델이 “랜드마크” 도메인에서 ROI를 감지하면, 해당 이미지 영역에 대한 벡터 임베딩이 계산됩니다. 임베딩의 차원과 정밀도는 서버로 전송되는 암호화된 요청의 크기, HE 연산 요구 사항 및 응답 크기에 영향을 미치므로, 대규모 프로덕션 서비스의 지연 시간 및 비용 요구 사항을 충족하기 위해 임베딩은 8비트 정밀도로 양자화된 후 암호화됩니다.
클라이언트가 요청을 보낼 서버 데이터베이스는 임베딩 클러스터의 분리된 하위 구획, 즉 샤드(shards)로 나뉩니다. 이는 서버가 데이터베이스의 관련 부분에만 HE 연산을 집중할 수 있게 함으로써 계산 오버헤드를 줄이고 쿼리의 효율성을 높이는 데 도움이 됩니다. 클러스터 샤드의 중심점(centroids)을 포함하는 사전 계산된 클러스터 코드북이 사용자 장치에 제공됩니다. 이를 통해 클라이언트는 임베딩에 대한 가장 가까운 샤드를 식별하기 위해 로컬에서 유사성 검색을 실행할 수 있으며, 이 정보는 암호화된 쿼리에 추가되어 서버로 전송됩니다.
쿼리와 관련된 데이터베이스 샤드를 식별하는 것은 쿼리 자체에 대한 민감한 정보를 노출할 수 있으므로, 우리는 OHTTP 릴레이(relay)를 사용하는 차분 프라이버시(DP)를 익명화 네트워크로 사용합니다. 이 OHTTP 릴레이는 제3자가 운영하며, 요청이 Apple 서버 인프라에 도달하기 전에 기기의 소스 IP 주소를 숨깁니다. DP를 사용하면 클라이언트는 실제 쿼리와 함께 가짜 쿼리를 발행하므로, 서버는 어느 것이 진짜인지 알 수 없습니다. 또한 쿼리는 익명화 네트워크를 통해 라우팅되어 여러 요청을 동일한 클라이언트와 연결할 수 없도록 보장합니다. 향상된 시각 검색(Enhanced Visual Search)을 위한 PNNS 실행의 경우, 당사 시스템은 각 사용자의 사진 라이브러리에 대해 강력한 프라이버시 매개변수, 즉 (ε, δ)-DP를 적용하며, 이때 ε = 0.8, δ = 10⁻⁶입니다. 더 자세한 내용은 Scalable Private Search with Wally를 참조하십시오.
이러한 쿼리를 처리하는 서버군(fleet of servers)은 벡터 데이터베이스 형태의 글로벌 랜드마크 이미지 임베딩을 포함하여 Apple의 기존 ML 인프라를 활용하며, 이는 역색인(inverted index) 형태로 표현됩니다. 서버는 클라이언트 쿼리의 색인을 기반으로 관련 샤드를 식별하고, 이 암호화된 공간에서 임베딩 유사도를 계산하기 위해 HE를 사용합니다. 그런 다음 후보 랜드마크에 대한 암호화된 점수와 해당 메타데이터 세트(예: 랜드마크 이름)가 클라이언트로 반환됩니다.
서버-클라이언트 통신 효율성을 최적화하기 위해, 모든 유사도 점수는 지정된 응답 크기의 단일 암호문으로 병합됩니다.
클라이언트는 자신의 PNNS 쿼리에 대한 응답을 복호화하며, 이 응답에는 여러 후보 지표(landmark)가 포함될 수 있습니다. 이후 특화되고 가벼운 온디바이스 리랭킹 모델이 시각적 유사성 점수, 로컬에 저장된 지리 신호(geo-signals), 인기도, 그리고 지표의 인덱스 커버리지 등을 포함하는 고수준 멀티모달 특징 기술자(multimodal feature descriptors)를 사용하여 최적의 후보를 예측합니다. 모델이 일치 항목을 식별하면, 사진의 로컬 메타데이터가 해당 지표 레이블로 업데이트되고 사용자는 장치에서 이 지표 이름을 검색할 때 쉽게 해당 사진을 찾을 수 있습니다.
본 기사에서 볼 수 있듯이, Apple은 HE(동형 암호화)를 사용하여 사용자 프라이버시 보호에 대한 약속을 지키는 동시에, 서버 데이터베이스에서 사적으로 조회된 정보를 풍부하게 통합한 온디바이스 경험을 구축하고 있습니다. PIR 및 PNNS와 같은 프라이버시 보존 기술, 온디바이스 및 서버 측 ML 모델, 그리고 기타 프라이버시 보존 기법들을 결합하여 HE를 구현함으로써, 우리는 사용자 장치 콘텐츠나 활동에 대한 어떠한 정보도 서버에 노출하지 않으면서 향상된 시각 검색(Enhanced Visual Search)과 같은 기능을 제공할 수 있습니다. HE를 Apple 생태계에 도입하는 것은 이를 가능하게 하는 핵심 요소였으며, 또한 사용자 프라이버시를 보존하면서 온디바이스 ML 모델에 정보를 제공하는 데 유용한 글로벌 지식을 제공하는 데도 도움이 될 수 있습니다. 최근 오픈 소스화된 라이브러리 swift-homomorphic-encryption을 통해 개발자들은 이제 서버 측 데이터를 활용하면서 사용자 프라이버시를 보호하는 온디바이스 경험을 유사하게 구축할 수 있게 되었습니다.
이 논문은 대규모 데이터베이스에 대한 효율적인 의미론적(semantic) 및 키워드 검색 쿼리를 지원하는 개인 정보 보호 검색 시스템인 Wally를 제시합니다. 충분히 많은 클라이언트가 쿼리를 수행할 때, Wally의 성능은 이전 시스템보다 훨씬 우수합니다. 이전의 개인 정보 보호 검색 시스템에서는 각 클라이언트 쿼리에 대해 서버가 데이터베이스 항목당 최소한 하나의 비용이 많이 드는 암호화 연산을 수행해야 했습니다. 그 결과, 성능이 저하되었습니다...
AI 자동 생성 콘텐츠
본 콘텐츠는 Lobste.rs AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기