ETRI-Knowledge Sharing Plaform

KOREAN
기술이전 검색
Year ~ Transaction Count Keyword

Detail

Privacy-Preserving Face Recognition Library

Manager
Seon Ho Oh
Participants
Transaction Count
0
Year
2026
Project Code
본 이전기술은 단일 영상 또는 연속 프레임에서 얼굴을 검출하고 인식 특징(임베딩)을 추출하여 1:1 비교 및 1:N 갤러리 검색을 수행하는 개인정보보호형(Privacy-Preserving) 얼굴 인식 라이브러리 이다. 공공안전·금융 신원확인(e-KYC)·출입 인증 등 생체정보를 처리하는 응용 환경에서, GDPR 및 개인정보보호법의 법적 요구사항을 응용 레이어가 아닌 라이브러리 레벨에서 직접 충족하도록 설계한 점이 핵심 차별점이다. 얼굴 검출·정렬·인식 파이프라인과 대용량 1:N 갤러리 검색에 더해, 개인정보보호 기능을 SDK 내부에 내장하였다. 추론 백엔드로 ONNX Runtime을 사용하여 다양한 하드웨어 환경에 대응하며, OpenCV 등 외부 영상처리 라이브러리에 의존하지 않아 엣지 단말 환경의 독립 배포가 가능하다.
개인정보보호 기능을 라이브러리 레벨에서 통합적으로 제공하면서, 대용량 갤러리 실시간 검색 성능과 엣지 배포 독립성을 동시에 만족하는 얼굴 인식 SDK가 시장에 필요함
본 기술은 GDPR 대응 기능을 라이브러리 레벨에서 내장하여, 수요처가 응용 레이어에서 별도 구현할 필요 없이 SDK 호출만으로 법적 요구를 충족할 수 있도록 지원한다. 기존 상용·오픈소스 얼굴 인식 SDK가 인식 기능에만 집중하여 GDPR 대응을 별도 구현해야 했던 구조적 한계를 해결한 것이 핵심 차별점이다. 주요 특징 및 장점은 다음과 같다.

GDPR 조항 내장 대응: 의무 조항 3건(Art. 17 삭제권, Art. 25 설계기반 보호?가명처리 기법, Art. 32 보안 조치)과 기본 원칙 2건(Art. 5(2) 책임성, Art. 5(1)(f) 무결성·기밀성) 등 5개 조항을 직접 구현하고, 갤러리 메타데이터(purpose)·TTL 정책으로 Art. 5(1)(b)(목적 제한)·5(1)(e)(보관 기간) 2개 조항을 간접 지원한다.
Vector Salting(임베딩 가명화, Art. 25): 512×512 랜덤 직교 행렬(Box-Muller + HouseholderQR)을 키로 사용하여 임베딩을 가명처리한다. 갤러리 DB가 탈취되어도 키 없이는 원본 임베딩 복원이 수학적으로 불가능(키 분리에 의한 정보이론적 가명화)하면서 코사인 유사도는 완전 보존된다. 기존 상용·오픈소스 SDK에는 동등 기능이 존재하지 않는다.
Secure Memory Zeroing(보안 메모리 초기화, Art. 5(1)(f)): 임베딩 해제 시 컴파일러 최적화로도 제거되지 않는 플랫폼별 보안 초기화(Windows SecureZeroMemory, C11 memset_s, 기타 volatile 루프)를 자동 수행하여, 메모리 덤프·콜드부트 공격으로부터 물리 메모리 수준의 임베딩 잔류 위협을 차단한다.
대용량 1:N 실시간 검색: HNSW O(log N) 인덱스 기반 1:N 검색을 제공하여, 10만 건 이상 규모의 갤러리에서도 실시간 검색이 가능하다.
외부 의존성 완전 제거: 리사이즈·아핀 와핑·정규화·크롭 등 이미지 처리 전량을 헤더 온리 내부 구현으로 제공하여 OpenCV 등 외부 영상처리 라이브러리 의존성을 제거하였으며, 엣지 디바이스·키오스크·단말 환경에 적합한 독립 배포가 가능하다(외부 영상처리 라이브러리 무의존 검증 완료).
C ABI 안정성: Opaque Handle 패턴 C 공개 API로 내부 C++ 구현을 은닉하여 ABI 안정성을 보장하며, Python 바인딩 외에 Java/C#/Rust 등 다양한 언어로의 추가 바인딩 확장이 안전하다.
다중 백엔드 지원: 추론 백엔드로 ONNX Runtime을 사용하여 OpenVINO(Intel CPU)·CUDA·TensorRT(NVIDIA GPU) 등 다양한 Execution Provider를 수요처 하드웨어 환경에 맞게 자유롭게 선택할 수 있으며, Intel CPU 환경에서는 OpenVINO 적용을 통한 추가 가속이 가능하다.
모델 교체 호환성: ONNX 모델 파일을 외부 파일로 분리하여 SDK 재컴파일 없이 검출·인식 모델 가중치만 교체할 수 있으며, 공개 가중치 또는 자체 학습 모델을 자유롭게 적용할 수 있다(ONNX 형식 모든 검출·인식 모델과 호환).
본 기술이전은 (A) 외부 ONNX 모델과 결합하여 동작하는 모델 호출·전후처리 인프라, (B) 모델과 무관하게 SDK가 직접 제공하는 고유 알고리즘·자료구조, (C) 개인정보보호(GDPR) 내장 보호 기능, (D) 인터페이스 및 배포 형태 ? 4개 범주로 구성됨. 분류 기준은 (A) 모델 호출과 직접 결합된 처리(모델 출력 형식·차원에 의존), (B) 모델 출력을 입력으로 받을 수 있으나 독립적 수학·자료구조 알고리즘으로 작동(모델 교체 시에도 코드 변경 불요) 이며, (C)·(D)는 모델과 무관한 SDK 자체 기능에 해당함.

- 모델 호출·전후처리 인프라 (외부 ONNX 모델과 결합 동작)
. ONNX 검출 모델 호출 및 결과 후처리 ? NMS·bbox decode·5점 랜드마크(양쪽 눈·코·양쪽 입꼬리) decode
. 검출 신뢰도 임계값 필터링 및 최대 검출 수 제한 (post-processing)
. ONNX 인식 모델 호출 및 임베딩 L2-정규화 처리
. 다수 얼굴 일괄 처리를 위한 배치 호출 wrapper
. 추론 백엔드로 ONNX Runtime 사용 ? Intel CPU OpenVINO EP, NVIDIA GPU CUDA·TensorRT EP 등 다양한 Execution Provider 활용 가능 (수요처 하드웨어 환경에 따라 백엔드 선택)
. ONNX 모델 교체 가능 구조 ? SDK 재컴파일 없이 검출·인식 모델 파일만 교체
- SDK 고유 알고리즘·자료구조 (모델과 무관하게 SDK가 직접 제공)
. 얼굴 정렬 ? 유사 변환 기반 affine warp (SDK 내장 수치해법)
※ 정렬 알고리즘 자체는 모델 무관하나, 입력으로 받는 5점 랜드마크 좌표 및 기준점 좌표는 검출/인식 모델의 출력·모델별 상수에 의존함
. 이미지 처리 (전·후처리) ? 리사이즈·아핀 와핑·정규화·크롭 전량을 헤더 온리 내부 구현으로 제공 (OpenCV 등 외부 영상처리 라이브러리 무의존, 의존성 검증 통과)
. 유사도 비교 ? 두 임베딩 간 코사인 유사도 계산 및 임계값 기반 동일인 판정
. 갤러리 관리 ? 등록·조회·삭제·저장·로드 및 메타데이터(purpose, subject_id, TTL) 관리
. 1:N 갤러리 검색 ? HNSW O(log N) 인덱스 기반 상위 K개 유사 임베딩 및 유사도 반환
. 만료 항목 자동 정리 ? prune_expired 기능 (GDPR Art. 5(1)(e))
. 얼굴 품질 평가 ? 8개 품질 지표 산출
- 개인정보보호(GDPR) 내장 기능 (SDK 고유)
. AES-256-GCM 알고리즘 기반 갤러리 파일 및 임베딩 직렬화 버퍼 암호화·복호화 (SFR.401, GDPR Art. 32)
. 생체정보 처리 16종 이벤트 감사 콜백: ENROLL, DELETE, SEARCH, SAVE, LOAD, COMPARE, SERIALIZE, DESERIALIZE, ERASE, EXTRACT, CLEAR, PRUNE, SALT_CONFIGURED, DETECT, QUALITY, DESTROY (GDPR Art. 5(2))
. 데이터 주체 ID 기반 갤러리 항목 일괄 삭제 및 영속 파일 재호출 절차 (GDPR Art. 17)
. Vector Salting ? 512×512 랜덤 직교 행렬(Box-Muller + HouseholderQR) 기반 임베딩 가명화 (GDPR Art. 25)
. Secure Memory Zeroing ? 임베딩 해제 시 컴파일러 최적화로도 제거되지 않는 플랫폼별 보안 메모리 초기화 (GDPR Art. 5(1)(f))
- 인터페이스 및 배포 형태 (SDK 패키징)
. C 공개 API(face_sdk.h) ? Opaque Handle 패턴으로 내부 C++ 구현 은닉, ABI 안정성 보장
. Python 바인딩(pyface_sdk, pybind11 기반) ? C API 전 기능 동일 노출
- 개인정보보호형 얼굴 인식 라이브러리 요구사항 정의서 v1.1
- 개인정보보호형 얼굴 인식 라이브러리 시험절차 및 결과서 v1.1
- 개인정보보호형 얼굴 인식 라이브러리 측정 환경 명세서 v1.1
- 개인정보보호형 얼굴 인식 라이브러리 HNSW 갤러리 검색 성능 보고서 v1.0
- 개인정보보호형 얼굴 인식 라이브러리 ONNXRuntime 추론 성능 보고서 v1.1.2
- 개인정보보호형 얼굴 인식 라이브러리 v1.0 (소스코드 및 바이너리)
본 기술은 GDPR 또는 개인정보보호법 적용 대상의 얼굴 인식 시스템 전반에 활용 가능하며, 특히 다음 3가지 응용 환경에서 직접적인 가치를 제공함
- 공공안전 시스템: 다중 CCTV 환경, 군중 모니터링, 범죄 용의자/실종자 검색 인프라 등 10만 건 이상 규모 갤러리 실시간 검색이 요구되는 환경
- e-KYC / 비대면 신원확인: 비대면 금융·행정 인증, 모바일 앱 본인 확인 등 1:1 정밀 비교 + 법적 감사 로그 + 갤러리 암호화가 요구되는 환경
- 출입 게이트 / 단말 인증: 오피스·공항 게이트, 키오스크, 엣지 디바이스 등 저지연 1:N 검색 + 외부 의존성 없는 독립 배포가 요구되는 환경