피드로 돌아가기
rPPG chaos: a noisy signal's unexpected role
Dev.toDev.to
Security

rPPG 신호 노이즈를 활용한 Anti-spoofing 탐지 로직 구현

rPPG chaos: a noisy signal's unexpected role

EmoPulse2026년 5월 1일2intermediate

Context

WebAssembly 기반 on-device rPPG 구현 중 발생하는 심박수 신호의 높은 변동성과 노이즈로 인한 데이터 정밀도 저하 문제 발생. 단순한 데이터 결함으로 간주되던 신호의 불완전성을 보안 관점의 특징점으로 전환하여 Liveness Detection 성능을 강화함.

Technical Solution

  • MediaPipe facial landmarks(478개) 및 ARKit blendshapes(52개)를 통한 47종의 생체 및 행동 신호 추출 설계
  • WebAssembly를 활용한 Browser-side on-device 연산으로 레이턴시 최소화 및 프라이버시 보호
  • rPPG 신호의 BPM Standard Deviation이 12 BPM을 초과하는 지점을 Spoofing 탐지 Primitive로 정의
  • Gaze stability 및 Micro-expression count 등의 Penalty signal을 결합한 복합 Liveness Scoring 시스템 구축
  • 서버 사이드에서 Session당 최근 5 Ticks의 Sliding Window를 적용하여 실시간 상태 벡터 분석 및 판정

1. 데이터의 변동성이 클 경우 단순 제거 전, 해당 노이즈가 공격자의 조작(Spoofing) 시 발생하는 특이 패턴인지 분석할 것

2. 단일 지표의 임계치 설정보다 여러 Penalty Signal을 조합한 Scoring 모델을 설계하여 오탐률을 낮출 것

3. 실시간 분석 시 전체 데이터셋 대신 Sliding Window를 적용하여 최신 상태의 유효성을 검증할 것

원문 읽기