KR102532584B1 - 리플레이 공격의 검출 - Google Patents

리플레이 공격의 검출 Download PDF

Info

Publication number
KR102532584B1
KR102532584B1 KR1020207013324A KR20207013324A KR102532584B1 KR 102532584 B1 KR102532584 B1 KR 102532584B1 KR 1020207013324 A KR1020207013324 A KR 1020207013324A KR 20207013324 A KR20207013324 A KR 20207013324A KR 102532584 B1 KR102532584 B1 KR 102532584B1
Authority
KR
South Korea
Prior art keywords
signal
source
frequency component
microphone
location
Prior art date
Application number
KR1020207013324A
Other languages
English (en)
Other versions
KR20200066691A (ko
Inventor
존 폴 레쏘
Original Assignee
시러스 로직 인터내셔널 세미컨덕터 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB1803570.9A external-priority patent/GB201803570D0/en
Priority claimed from GBGB1804843.9A external-priority patent/GB201804843D0/en
Application filed by 시러스 로직 인터내셔널 세미컨덕터 리미티드 filed Critical 시러스 로직 인터내셔널 세미컨덕터 리미티드
Publication of KR20200066691A publication Critical patent/KR20200066691A/ko
Application granted granted Critical
Publication of KR102532584B1 publication Critical patent/KR102532584B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

보이스 생체인식 시스템에 대한 리플레이 공격을 검출하기 위해, 음성 신호가 적어도 제1 마이크로폰 및 제2 마이크로폰에서 수신된다. 음성 신호는 제1 및 제2 주파수들에서 컴포넌트들을 갖는다. 검출 방법은: 제1 및 제2 마이크로폰들에 대한, 관련된 음성 신호의 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계; 제1 및 제2 마이크로폰들에 대한, 음성 신호의 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계; 제1 주파수 컴포넌트의 소스의 위치와 제2 주파수 컴포넌트의 소스의 위치를 비교하는 단계; 및 만약 제1 주파수 컴포넌트의 소스의 위치가 제2 주파수 컴포넌트의 소스의 위치와 임계량보다 많이 다르다면 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정하는 단계를 포함한다.

Description

리플레이 공격의 검출
본 명세서에서 설명되는 실시예들은 보이스 생체인식 시스템(voice biometrics system)에 대한 리플레이 공격(replay attack)의 검출을 위한 방법들과 디바이스들에 관한 것이다.
보이스 생체인식 시스템들이 널리 사용되고 있다. 이러한 시스템에서, 사용자는 등록 페이즈(enrolment phase)동안 그들의 음성(speech)의 샘플들을 제공함으로서 시스템을 트레이닝시킨다. 후속 사용 시에, 시스템은 등록된 사용자와 미등록된 화자들(speakers) 사이를 구별할 수 있다. 보이스 생체인식 시스템들은 원칙적으로 광범위한 서비스들 및 시스템들에의 액세스를 제어하는 데 사용될 수 있다.
악의있는 자가 보이스 생체인식 시스템을 무력화시키고자 시도하는 하나의 방법은 등록된 사용자의 음성의 레코딩을 획득하고, 등록된 사용자를 가장하려는 시도에서 그 레코딩을 재생하고, 등록된 사용자로 제한되도록 의도된 서비스들에의 액세스를 얻는 것이다.
이것은 리플레이 공격, 또는 스푸핑 공격(spoofing attack)이라고 지칭된다.
본 발명의 제1 양태에 따르면, 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법이 제공되고, 이 방법은: 적어도 제1 마이크로폰 및 제2 마이크로폰에서 음성 신호(speech signal)를 수신하는 단계 - 이 음성 신호는 제1 주파수 및 제2 주파수에 있는 컴포넌트들을 가짐 - ; 제1 마이크로폰 및 제2 마이크로폰에 대한, 음성 신호의 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계; 제1 마이크로폰 및 제2 마이크로폰에 대한 음성 신호의 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계; 및 제1 주파수 컴포넌트의 소스의 위치와 제2 주파수 컴포넌트의 소스의 위치를 비교하는 단계를 포함한다. 만약 제1 주파수 컴포넌트의 소스의 위치가 제2 주파수 컴포넌트의 소스의 위치와 임계량(threshold amount)보다 많이 다르다면 음성 신호는 리플레이 공격에서 기인할 수 있다고 결정된다.
본 발명의 다른 양태에 따르면, 스피커 인식 시스템(speaker recognition system)에서 리플레이 공격을 검출하기 위한 시스템이 제공되고, 시스템은 제1 양태의 방법을 수행하기 위해 구성된다.
본 발명의 양태에 따르면, 다른 양태에 따른 시스템을 포함하는 디바이스가 제공된다. 이 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러(home automation controller) 또는 가정용 기기(domestic appliance)를 포함할 수 있다.
본 발명의 양태에 따르면, 컴퓨터 판독 가능 유형 매체(computer-readable tangible medium), 및 제1 양태에 따른 방법을 수행하기 위한 명령어들을 포함하는 컴퓨터 프로그램 제품이 제공된다.
본 발명의 양태에 따르면, 프로세서 회로에 의해 실행될 때, 프로세서 회로로 하여금 제1 양태에 따른 방법을 수행하게 하는, 컴퓨터 실행 가능 명령어들(computer-executable instructions)이 저장된 비일시적 컴퓨터 판독 가능 저장 매체(non-transitory computer readable storage medium)가 제공된다.
본 발명의 양태에 따르면, 이전 양태에 따른 비일시적 컴퓨터 판독 가능 저장 매체를 포함하는 디바이스가 제공된다. 이 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함할 수 있다.
본 발명의 제2 양태에 따르면, 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법이 제공되고, 이 방법은:
제1 마이크로폰에서 수신된 사운드(sound)로부터 제1 신호를 생성하는 단계;
제2 마이크로폰에서 수신된 사운드로부터 제2 신호를 생성하는 단계;
수신된 사운드의 명백한 소스(apparent source)의 위치를 결정하기 위해 제1 신호 및 제2 신호를 이용하는 단계; 및
만약 수신된 사운드의 명백한 소스가 분산(diffuse)되면 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정하는 단계
를 포함한다.
본 발명의 다른 양태에 따르면, 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하기 위한 시스템이 제공되고, 이 시스템은 위 방법을 수행하기 위해 구성된다.
본 발명의 양태에 따르면, 음성 인식 시스템, 예를 들어 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법이 제공되고, 이 방법은:
제1 마이크로폰에서 수신된 사운드로부터 제1 신호를 생성하는 단계;
제2 마이크로폰에서 수신된 사운드로부터 제2 신호를 생성하는 단계;
제1 신호와 제2 신호 사이의 상관관계에 기초하여 상관 함수(correlation function)를 결정하는 단계;
결정된 상관 함수의 중앙 로브(central lobe)의 폭을 계산하는 단계; 및
만약 결정된 상관 함수의 중앙 로브의 폭이 임계값(threshold value)을 초과하면 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정하는 단계
를 포함한다.
본 발명의 다른 양태에 따르면, 음성 인식 시스템, 예를 들어 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하기 위한 시스템이 제공되고, 이 시스템은 위 방법을 수행하기 위해 구성된다.
본 발명의 양태에 따르면, 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법이 제공되고, 이 방법은:
제1 마이크로폰에서 수신된 사운드로부터 제1 신호를 생성하는 단계 - 제1 신호는 제1 주파수에 있는 제1 컴포넌트 및 제2 주파수에 있는 제2 컴포넌트를 갖고, 제1 주파수는 제2 주파수보다 높음 - ;
제2 마이크로폰에서 수신된 사운드로부터 제2 신호를 생성하는 단계 - 제2 신호는 제1 주파수에 있는 제1 컴포넌트 및 제2 주파수에 있는 제2 컴포넌트를 가짐 - ;
제1 신호의 제1 컴포넌트와 제2 신호의 제1 컴포넌트 사이의 상관관계에 기초하여 제1 상관 함수를 결정하는 단계;
결정된 제1 상관 함수의 중앙 로브의 폭을 계산하는 단계;
제1 신호의 제2 컴포넌트와 제2 신호의 제2 컴포넌트 사이의 상관관계에 기초하여 제2 상관 함수를 결정하는 단계;
결정된 제2 상관 함수의 중앙 로브의 폭을 계산하는 단계; 및
만약 결정된 제2 상관 함수의 중앙 로브의 폭이 결정된 제1 상관 함수의 중앙 로브의 폭보다 임계값을 초과하여 넘어서면 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정하는 단계
를 포함한다.
본 발명의 다른 양태에 다르면, 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하기 위한 시스템이 제공되고, 이 시스템은 위 방법을 수행하기 위해 구성된다.
본 발명의 다른 양태에 따르면, 임의의 이전 양태에 따른 시스템을 포함하는 디바이스가 제공된다. 이 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함할 수 있다.
본 발명의 다른 양태에 따르면, 컴퓨터 판독 가능 유형 매체, 및 제2 양태에 따른 방법을 수행하기 위한 명령어들을 포함하는 컴퓨터 프로그램 제품이 제공된다.
본 발명의 다른 양태에 따르면, 프로세서 회로에 의해 실행될 때, 프로세서 회로로 하여금 제2 양태에 따른 방법을 수행하게 하는, 컴퓨터 실행 가능 명령어들이 저장된 비일시적 컴퓨터 판독 가능 저장 매체가 제공된다.
본 발명의 다른 양태에 따르면, 이전 양태에 따른 비일시적 컴퓨터 판독 가능 저장 매체를 포함하는 디바이스가 제공된다. 이 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함할 수 있다.
본 발명의 더 나은 이해를 위해, 그리고 이것이 어떻게 시행될 수 있는지 보여주기 위해, 이제 첨부 도면들이 참조될 것이다.
도 1은 스마트폰을 도시한다.
도 2는 스마트폰의 형태를 도시하는 개략도(schematic diagram)이다.
도 3은 리플레이 공격이 수행되고 있는 제1 상황(situation)을 도시한다.
도 4는 리플레이 공격이 수행되고 있는 제2 상황을 도시한다.
도 5는 도 4의 일부를 더 상세히 보여준다.
도 6은 도 5의 배열에서의 사운드 전송(sound transmission)을 도시한다.
도 7은 방법을 도시하는 흐름도(flow chart)이다.
도 8은 도 7의 방법을 수행하기 위한 시스템을 도시하는 블록도(block diagram)이다.
도 9는 도 7의 방법에서의 한 스테이지를 도시한다.
도 10은 도 7의 방법에서의 한 스테이지를 도시한다.
도 11은 도 7의 방법에서의 한 스테이지를 도시한다.
도 12는 도 7의 방법을 수행한 결과를 도시한다.
도 13은 도 7의 방법을 수행한 추가적인 결과를 도시한다.
도 14는 리플레이 공격이 수행되고 있는 제3 상황을 도시한다.
도 15는 도 14의 배열에서의 사운드 전송을 도시한다.
도 16은 방법을 도시하는 흐름도이다.
도 17은 도 16의 방법을 수행하기 위한 시스템을 도시하는 블록도이다.
도 18은 도 16의 방법을 수행한 제1 결과를 도시한다.
도 19는 도 16의 방법을 수행한 제2 결과를 도시한다.
이하의 설명은 본 개시내용에 따른 예시적인 실시예들을 제시한다. 추가의 예시 실시예들 및 구현들은 본 기술분야의 통상의 기술자들에게 명백할 것이다. 더 나아가서, 본 기술분야의 통상의 기술자들은 다양한 등가의 기술들이 아래에 논의되는 실시예들 대신에 또는 그와 함께 적용될 수 있고, 이러한 모든 등가물들은 본 개시내용에 의해 포함되는 것으로 간주되어야 한다는 것을 인식할 것이다.
본 명세서에서 설명되는 방법들은 광범위한 디바이스들 및 시스템들, 예를 들어 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기에 구현될 수 있다. 그러나, 일 실시예의 설명의 편의를 위해, 스마트폰에서 구현되는 실례가 설명될 것이다.
도 1은 주변 사운드들을 검출하기 위한 마이크로폰들(12, 12a, 12b)을 갖는 스마트폰(10)을 도시한다. 이 예시에서, 마이크로폰(12)은 당연히 스마트폰(10)을 들고 있는 사용자의 음성을 검출하기 위해 사용되는 반면, 마이크로폰들(12a, 12b)은 스마트폰(10)의 측면들의 상부에 제공되고, 따라서 도 1에서 분명하게 보이지 않는다.
도 2는 스마트폰(10)의 형태를 도시하는 개략도이다.
구체적으로, 도 2는 스마트폰(10)의 다양한 상호 연결된 컴포넌트들을 보여준다. 스마트폰(10)은 실제로 많은 다른 컴포넌트들도 포함하지만, 이하의 설명은 본 발명의 이해에 충분하다는 것이 이해될 것이다.
따라서, 도 2는 위에서 언급된 마이크로폰(12)을 보여준다. 특정한 실시예들에서, 스마트폰(10)은 복수의 마이크로폰들(12, 12a, 12b 등)과 함께 제공된다.
도 2는 또한 실제로 단일 컴포넌트 또는 복수의 컴포넌트들로 제공될 수 있는 메모리(14)를 보여준다. 메모리(14)는 데이터와 프로그램 명령어들의 저장을 위해 제공된다.
도 2는 또한 다시 실제로 단일 컴포넌트 또는 복수의 컴포넌트들로 제공될 수 있는 프로세서(16)를 보여준다. 예를 들어, 프로세서(16)의 일 컴포넌트는 스마트폰(10)의 어플리케이션 프로세서일 수 있다.
도 2는 또한 스마트폰(10)이 외부 네트워크들과 통신하는 것을 허용하기 위해 제공되는 트랜시버(transceiver)(18)를 보여준다. 예를 들어, 트랜시버(18)는 WiFi 로컬 영역 네트워크를 통해 또는 셀룰러 네트워크를 통해 인터넷 접속을 확립하기 위한 회로를 포함할 수 있다.
도 2는 또한 필요에 따라 마이크로폰(12)에 의해 검출된 오디오 신호들에 대한 동작들을 수행하기 위한 오디오 처리 회로(20)를 보여준다. 예를 들어, 오디오 처리 회로(20)는 오디오 신호들을 필터링하거나 다른 신호 처리 동작들을 수행할 수 있다.
도 2는 또한 적어도 하나의 센서(22)를 보여준다. 본 발명의 실시예들에서, 센서는 자기장을 검출하기 위한 자기장 센서이다. 예를 들어, 센서(22)는 세 직교 방향들에서의 자기장 세기의 분리된 측정들을 제공할 수 있는 홀 효과 센서(Hall effect sensor)일 수 있다. 사용될 수 있는 센서들의 추가적인 예시들은 전화 방향(phone orientation)을 결정하도록 동작할 수 있는 자이로 센서들(gyro sensors), 가속도계들(accelerometers) 또는 소프트웨어 기반 센서들을 포함할 수 있으며, 여기서 이러한 소프트웨어 기반 센서들은 Apple, Inc.에 의해 제공되는 FaceTime™ 시스템과 같은 소프트웨어 프로그램들과 결합하여 동작할 수 있다.
본 실시예에서, 스마트폰(10)은 보이스 생체인식 기능과 함께 및 제어 기능과 함께 제공된다. 따라서, 스마트폰(10)은 등록된 사용자로부터의 음성 명령들(spoken commands)에 반응하여 다양한 기능들을 수행할 수 있다. 생체인식 기능은 등록된 사용자로부터의 음성 명령들과, 다른 사람에 의해 말해질 때의 동일 명령들 사이를 구별할 수 있다. 따라서, 본 발명의 특정 실시예들은 스마트폰 또는 어떤 종류의 음성 동작성(voice operability)을 갖는 다른 휴대용 전자 디바이스, 예를 들어 태블릿 또는 랩톱 컴퓨터, 게임 콘솔(game console), 홈 컨트롤 시스템(home control system), 홈 엔터테인먼트 시스템(home entertainment system), 차량용 엔터테인먼트 시스템(in-vehicle entertainment system), 가정용 기기 또는 그 밖의 유사한 것의 동작에 관련하고, 여기서 보이스 생체인식 기능은 음성 명령을 수행하도록 의도된 디바이스에서 수행된다. 특정 다른 실시예들은 보이스 생체인식 기능이 스마트폰 또는 다른 디바이스에서 수행되고, 만약 보이스 생체인식 기능이 화자가 등록된 사용자였음을 확인할 수 있다면, 다음으로 그 스마트폰 또는 다른 디바이스가 별개의 디바이스로 명령들을 보내는 시스템들에 관한 것이다.
일부 실시예들에서, 보이스 생체인식 기능이 사용자와 가까이 위치한 스마트폰(10) 또는 다른 디바이스에서 수행되는 동안, 음성 명령들은 음성 명령들의 의미를 결정하는 리모트 음성인식 시스템(remote speech recognition system)으로 트랜시버(18)를 사용하여 전달된다. 예를 들어, 음성인식 시스템은 클라우드 컴퓨팅 환경(cloud computing environment) 안의 하나 이상의 리모트 서버(remote server)에 위치할 수 있다. 음성 명령들의 의미에 기초한 신호들은 다음으로 스마트폰(10) 또는 다른 로컬 디바이스로 리턴된다. 다른 실시예들에서, 음성인식 시스템은 또한 스마트폰(10) 상에 제공된다.
보이스 생체인식 시스템 또는 자동 음성인식 시스템을 속이기 위한 하나의 시도는 소위 리플레이 또는 스푸프 공격에서 등록된 사용자의 음성의 레코딩을 재생하는 것이다.
따라서, 본 명세서에서는 사운드가 인간 화자(human speaker)에 의해 생성되는 것이 아니라, 라우드스피커(loudspeaker)를 통해 재생되고 있을 때를 검출하는 것이 바람직한 일례를 참조하여 하나의 방법이 설명된다. 그러나, 이 방법은 사운드가 포인트 소스(point source)에서 오는지 또는 더 분산된 소스(diffuse source)에서 오는지를 검출하는 것이 유용한 다른 상황들에 동등하게 적용가능하다. 하나의 그러한 예는 자동 음성인식 시스템에 의해 수신된 사운드가 라우드스피커에 의해 발생된 때를 검출하는 것이 바람직한 경우일 수 있다.
도 3은 리플레이 공격이 수행되고 있는 상황의 예를 보여준다. 따라서, 도 3에서, 스마트폰(10)은 보이스 생체인식 기능을 구비한다. 이 예시에서, 스마트폰(10)은 적어도 일시적으로, 다른 스마트폰(30)을 가진 공격자의 소유에 있다. 스마트폰(30)은 스마트폰(10)의 등록된 사용자의 보이스를 녹음하기 위해 사용되었다. 스마트폰(30)은 스마트폰(10)의 마이크로폰 인렛(inlet)(12) 가까이 가져가지고, 등록된 사용자의 보이스의 레코딩이 재생된다. 만약 보이스 생체인식 시스템이 자신이 검출한 등록된 사용자의 보이스가 레코딩인 것을 검출할 수 없다면, 공격자는 오직 등록된 사용자에 의해서만 접근가능하도록 의도된 하나 이상의 서비스들에의 액세스를 얻게 된다.
스마트폰(30)과 같은 스마트폰들은 전형적으로 사이즈 제한들로 인해 상대적으로 낮은 퀄리티의 라우드스피커들을 구비하는 것으로 알려져 있다. 따라서, 그러한 라우드스피커를 통해 재생된 등록된 사용자의 보이스의 레코딩은 사용자의 보이스와 완벽한 일치를 이루지는 않을 것이고, 이러한 사실은 리플레이 공격들을 식별하는 데 사용될 수 있다. 예를 들어, 라우드스피커들은 어떤 주파수 특징들을 가질 수 있고, 만약 이러한 주파수 특징들이 보이스 생체인식 시스템에 의해 수신된 음성 신호에서 검출될 수 있다면, 음성 신호가 리플레이 공격으로부터 기인한 것이라고 생각될 수 있다.
도 4는 위에서 설명된 검출 방법을 극복하기 위한 시도로서, 리플레이 공격이 수행되고 있는 상황의 제2 예시를 보여준다. 따라서, 도 4에서, 스마트폰(10)은 보이스 생체인식 기능을 구비한다. 다시, 이 예에서, 스마트폰(10)은 적어도 일시적으로, 다른 스마트폰(140)을 가진 공격자의 소유에 있다. 스마트폰(140)은 스마트폰(10)의 등록된 사용자의 보이스를 녹음하는 데 사용되었다.
이 예시에서, 스마트폰(140)은 높은 퀄리티의 라우드스피커(150)에 연결된다. 다음으로, 스마트폰(10)은 라우드스피커(150)에 가까이 위치되고, 라우드스피커(150)를 통해 등록된 사용자의 보이스의 레코딩이 재생된다. 이전과 같이, 만약 보이스 생체인식 시스템이 자신이 검출한 등록된 사용자의 보이스가 레코딩인 것을 검출할 수 없다면, 공격자는 오직 등록된 사용자에 의해서만 접근가능하도록 의도된 하나 이상의 서비스들에의 액세스를 얻게 된다.
이 예시에서, 라우드스피커(150)는 라우드스피커를 통해 재생되는 등록된 사용자의 보이스의 레코딩이 사용자의 보이스와 신뢰성있게 구별되지 않을 정도로 충분히 높은 퀄리티를 가질 수 있고, 따라서 음성 신호의 오디오 특징들은 리플레이 공격을 식별하는 데 사용될 수 없다.
하지만, 많은 라우드스피커들, 및 특히 높은 퀄리티의 라우드스피커들은 전기적 오디오 신호가, 영구 자석들(permanent magnets)의 폴들(poles) 사이에 위치한 두 개의 보이스 코일들(voice coils) 중 하나 또는 양쪽 모두에 적용되어, 코일 또는 코일들이 앞뒤로 빠르게 움직이도록 야기하는 전자기적 라우드스피커들이라고 이해된다. 코일의 이러한 움직임은 코일에 부착된 각각의 다이어프램(diaphragm)이 앞뒤로 움직이도록 야기하여, 음파들을 생성한다.
도 5는 널리 사용되는 하나의 그러한 라우드스피커 디바이스(150)의 일반적인 형태를 도시한다. 구체적으로, 도시된 라우드스피커 디바이스(150)는 위에서 설명된 바와 같이, 각각 보이스 코일들 및 다이어프램들을 갖는 두 개의 라우드스피커들을 가진다. 이 라우드스피커들 중 첫 번째 것은 우퍼(woofer)(152)이고, 상대적으로 낮은 주파수 사운드들, 예를 들어 1kHz까지의 주파수들, 또는 2kHz까지의 주파수들을 재생하도록 의도된다. 이 라우드스피커들 중 두 번째 것은 트위터(tweeter)(154)이고, 상대적으로 높은 주파수 사운드들, 예를 들어 2kHz부터 적어도 20kHz에 있는 오디오 주파수 범위의 맨 위까지 재생하도록 의도된다.
상이한 주파수들을 재생하도록 의도된 두 개보다 많은 라우드스피커들을 포함하는 라우드스피커 디바이스들이 또한 존재한다는 것에 유의한다. 본 명세서에서 설명된 방법은 그러한 라우드스피커 디바이스들을 이용하는 리플레이 공격들을 식별하는 데 또한 사용될 수 있다.
도 6은 라우드스피커 디바이스(150)가 스마트폰(10)에 의해 검출된 음성을 리플레이하는 데 사용되는, 전형적인 배열을 보여준다. 따라서, 도 6은 우퍼(152)로부터의 사운드들이 스마트폰(10)의 아래쪽 끝에 위치한 마이크로폰(12)에 도달하고, 또한 스마트폰(10)의 위쪽 끝에 위치한 마이크로폰들(12a, 12b)에 도달하는 것을 보여준다. 도 6은 또한 트위터(154)로부터의 사운드들이 스마트폰(10)의 아래쪽 끝에 위치한 마이크로폰(12)에 도달하고, 또한 스마트폰(10)의 위쪽 끝에 위치한 마이크로폰들(12a, 12b)에 도달하는 것을 보여준다.
따라서, 도 6으로부터, 스마트폰(10)으로부터 보여지는 것과 같이, 우퍼(152)로부터의 저주파 사운드들의 소스의 위치는 트위터(154)로부터의 고주파 사운드들의 소스의 위치와 다른 것이 보여질 수 있다.
이 사실의 이해는 본 명세서에서 설명되는 방법에 사용된다.
도 7은 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법을 도시하는 흐름도이고, 도 8은 보이스 생체인식 시스템 내의 기능적 블록들을 도시하는 블록도이다.
따라서, 도 8은 검출된 주변 사운드들에 응답하여 하나 이상의 마이크로폰들(12, 12a, 12b)들에 의해 생성된 오디오 신호들이, 신호들에서 검출된 음성의 특징들을 획득하기 위해 특징 추출 블록(182)으로 전달되는, 보이스 생체인식 시스템(180)을 보여준다.
추출된 특징들은, 추출된 특징들이 등록된 사용자의 음성의 하나 이상의 모델의 특징들과 비교되는 모델 비교 블록(184)으로 전달된다. 예를 들어, 하나의 특정 디바이스(10)와 연관된 보이스 생체인식 시스템의 단 하나의 등록된 사용자만 있을 수 있다. 다음으로, 검출된 음성의 추출된 특징들은 검출된 음성이 등록된 사용자의 음성이라고 생각되어야 할지 결정하기 위해, 그 사용자의 음성의 모델과 비교된다.
도 7의 방법의 단계(170)에서, 음성 신호들은 적어도 제1 마이크로폰(12) 및 제2 마이크로폰(12a)으로부터 수신된다. 실제로, 마이크로폰들(12, 12a)에 의해 생성된 신호들은 보이스 액티비티 검출기(voice activity detector)로 전달될 수 있고, 신호들 중 음성을 포함하는 세그먼트들(segments)만이 더 처리될 수 있다.
마이크로폰(12)에 의해 생성된 음성 신호는 제1 필터 뱅크(186)로 전달되고, 마이크로폰(12a)에 의해 생성된 음성 신호는 제2 필터 뱅크(188)로 전달된다. 필터 뱅크들(186, 188)은 적어도 제1 및 제2 주파수들에서 음성 신호들의 컴포넌트들을 추출한다.
예를 들어, 필터 뱅크들(186, 188)은 제1 상대적으로 좁은 주파수 대역에서 및 제2 상대적으로 좁은 주파수 대역에서 컴포넌트들을 추출할 수 있다. 이 경우, 두 개의 주파수 대역들은 예를 들어 10-200Hz의 대역폭들을 가질 수 있다. 제1 주파수 대역은 100Hz - 1kHz의 범위 내에, 예를 들어 200Hz의 주파수에 중심을 둘 수 있다. 제2 주파수 대역은 2kHz - 15kHz의 범위 내에, 예를 들어 5kHz의 주파수에 중심을 둘 수 있다.
그 대신에, 필터 뱅크들(186, 188)은 제1 상대적으로 넓은 주파수 대역에서 및 제2 상대적으로 넓은 주파수 대역에서 컴포넌트들을 추출할 수 있다. 이 경우, 두 개의 주파수 대역들은 예를 들어 200Hz - 2kHz의 대역폭을 가질 수 있다. 다시, 제1 주파수 대역은 100Hz - 1kHz의 범위 내에, 예를 들어 200Hz의 주파수에 중심을 둘 수 있다. 제2 주파수 대역은 2kHz - 15kHz의 범위 내에, 예를 들어 5kHz의 주파수에 중심을 둘 수 있다.
다른 실시예들에서, 두 개보다 많은 주파수 컴포넌트들이 추출된다. 예를 들어, 열 개까지의 주파수 컴포넌트들 또는 그 이상도 추출될 수 있다. 필터 뱅크는 고속 푸리에 변환(FFT) 블록으로 구현될 수 있다.
도 7에서 보여지는 프로세스의 단계(172)에서, 추출된 주파수 컴포넌트들은 위치 정보 유도 블록(position information derivation block)(190)으로 전달된다. 위치 정보 유도 블록(190)은 제1 및 제2 마이크로폰들에 대한, 음성 신호의 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득한다.
도 7에서 보여지는 프로세스의 단계(174)에서, 위치 정보 유도 블록(190)은 제1 및 제2 마이크로폰들에 대한, 음성 신호의 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득한다.
일 실시예에서, 위치 정보 유도 블록(190)은 제1 및 제2 마이크로폰들에서 각각의 주파수 컴포넌트의 도래각(angle of arrival)을 결정함으로써 주파수 컴포넌트들의 소스들의 위치들에 관한 정보를 획득한다.
일반적으로, 두 개의 신호들 사이의 시간 차이를 결정하기 위해 상관관계 방법들(correlation methods)이 사용될 것이다. 바람직한 실시예에서, 임의적인 파형에 대한 시간 지연(time delay)을 측정하기 위해 위상 변환을 사용한 일반화된 교차-상관관계(generalised cross-correlation using phase transform, GCC-PHAT)라고 알려진 방법이 사용될 수 있다. 이 경우 GCC-PHAT는 상대적인 지연을 측정하기 위해 다른 주파수 대역들에 적용될 수 있다. 이러한 지연들은 다음으로 그 주파수 대역 내의 신호의 소스의 위치에 관한 정보를 제공하는 도래각으로 변환될 수 있다. 빔형성기들(beamformers)이 사용될 수 있다.
각각의 주파수 컴포넌트들의 소스들의 위치들을 결정하기 위한 방법은 아래에서 더 상세하게 설명된다.
도 6으로부터 볼 수 있는 것과 같이, 우퍼(152)로부터 방출되는 사운드들은 마이크로폰(12a)까지보다 마이크로폰(12)까지 더 짧은 경로를 가질 것이고, 따라서 그것들은 마이크로폰(12a)에 도달하기 전에 마이크로폰(12)에 도달할 것이다. 이 시간 차이는 우퍼(152)에 의해 생산되고 있는 음성 신호의 임의의 컴포넌트의 소스의 위치에 관한 소정의 정보를 제공하는 데 사용될 수 있다.
반대로, 트위터(154)로부터 방출되는 사운드들은 마이크로폰(12a)까지보다 마이크로폰(12a)까지 더 짧은 경로를 가질 것이고, 따라서 그것들은 마이크로폰(12)에 도달하기 전에 마이크로폰(12a)에 도달할 것이다. 이 시간 차이는 트위터(154)에 의해 생산되고 있는 음성 신호의 임의의 컴포넌트의 소스의 위치에 관한 소정의 정보를 제공하는 데 사용될 수 있다.
예를 들어, 각각의 경우에서, 각각의 시간 차이는 두 개의 마이크로폰들(12, 12a)에서 수신된 신호들 사이의 교차-상관관계를 계산함으로서 결정될 수 있다. 교차-상관관계 값에서의 피크(peak)는 두 개의 마이크로폰들에서의 관련된 주파수 컴포넌트의 도달 시간의 차이를 나타낼 것이다.
이 도시된 예시에서 우퍼(152)에서 방출되는 사운드들이 마이크로폰(12a)까지보다 마이크로폰(12)까지 더 짧은 경로를 가지게 되고, 트위터(154)에서 방출되는 사운드들이 마이크로폰(12a)까지보다 마이크로폰(12a)까지 더 짧은 경로를 가지게 되도록 디바이스(10)가 위치되어 있음에도 불구하고, 본 명세서에 설명된 방법은 스피커 디바이스(150)에 대한 디바이스(10)의 위치에 관한 어떠한 가정에도 의존하지 않는다는 것이 유의되어야 한다. 디바이스의 대부분의 위치들에 대해, 두 개의 마이크로폰들(12, 12a)에 도달하는 우퍼(152)로부터의 신호들 사이의 시간 차이는 두 개의 마이크로폰들(12, 12a)에 도달하는 트위터(154)로부터의 신호들 사이의 시간 차이와 다를 것이다.
도 9는 일 주파수 컴포넌트에 대한 교차-상관관계를 결정하기 위한 프로세싱의 형태를 도시한다. 구체적으로, 도 9는 위상 변환을 사용한 일반화된 교차 상관관계(GCC-PHAT)을 수행하기 위한 프로세싱의 형태를 보여준다. 이것은 가장 좁은 로브를 갖는 상관 함수를 계산하기 위해 스펙트럼 화이트닝 상태(spectral whitening state)와 변환-도메인 프로세싱(transform-domain processing)의 계산 효율(computational efficiency)을 조합한다.
두 개의 마이크로폰들(1110, 1112)로부터의 신호들은 각각의 고속 푸리에 변환(FFT) 블록들(1114, 1116)로 전달된다. 상이한 주파수 컴포넌트들의 소스들의 위치들이 결정되는 위에서 설명된 실시예들에서, FFT 블록들(1114, 1116)로 전달된 신호들은 마이크로폰들(1110, 1112)에 의해 생성된 신호들의 관련 주파수 컴포넌트들이다.
FFT 블록들(1114, 1116)의 출력들은 상관관계 블록(1118)으로 전달된다. 상관관계 블록(1118)의 출력은 노멀라이저(normaliser)(1120)로 전달되고, 정규화(normalisation)의 결과는 상관관계 결과를 주기 위해 역 고속 푸리에 변환(IFFT) 블록(1122)으로 전달된다.
따라서, IFFT 블록(1122)의 출력은 그 주파수 컴포넌트에 응답하여 제1 및 제2 마이크로폰들에 의해 생성된 신호들 사이의, 일 주파수 컴포넌트에 대한 교차-상관관계 결과이다. 두 개의 마이크로폰들에 의해 수신된 신호들은 전형적으로 동일할 것이지만, 두 개의 마이크로폰들에서의 신호의 도달 시간 차이에 의존하는 오프셋을 갖는다.
도 10은 교차-상관관계의 일반적인 형태(1128)를 보여준다. 교차-상관관계(1128)의 피크(1130)는 특정한 도달 시간 차이에 대응한 샘플 오프셋 값에서 발생한다. 그러나, 이것을 교차-상관관계(1128)로부터 직접적으로 획득하는 것은 단지 상관기(correlator)에 의해 사용되는 샘플 레이트의 스텝 사이즈에 의해 제한되는 최대 정확도로 결과가 얻어지는 것을 허용하고, 이는 상대적으로 큰 에러들을 낳을 수 있다.
결정의 정확도는 피크(1130)의 위치를 결정하기 위해 교차-상관관계(1128)를 보간(interpolating)함으로서 향상될 수 있다. 이를 위해 사용될 수 있는 한 방법은 상관관계 파형의 피크에 포물선 보간기(parabolic interpolator)를 적용하는 것이다. 즉, 피크(1130)와 가까운 포인트가 선택되고, 다음으로 그 최초 포인트의 양쪽에 있는 하나의 포인트가 또한 선택된다. 포물선 보간법은 피크의 실제 위치를 찾기 위해 수행된다.
포물선 보간법을 수행하기 위해, 이차다항식 보간법이, 3개의 포인트들: 0.8로 선택된 데이터의 왼쪽 및 오른쪽 교차(fleft 및 fright 주파수들), 및 중심 주파수 fmeas을 이용하여, 평활화된 파워 스펙트럼에 수행된다.
그러므로:
Figure 112020046883869-pct00001
여기에서 p2, p1, 및 p0는 다항식의 계수들이고, (Asel(fleft), fleft); (Asel(fmeas), fmeas); 및 (Asel(fright), fright)는 세 개의 선택된 포인트들이다.
그러므로 이 식을 푼다:
Figure 112020046883869-pct00002
다음으로, 이 수학식은 피크값이 발생하는 f의 값을 획득하기 위해 풀릴 수 있고, 이는 시간 차이로 다시 변환될 수 있다.
피크(1130)의 위치를 찾고, 그에 따라 두 개의 마이크로폰들에서 수신된 신호들 사이의 도달 시간 차이를 찾기 위한 대안적인, 아마도 더 강건한 방법은 파형의 위상을 쉬프트하기 위해 힐버트 변환(Hilbert transform)을 사용하는 것이다. 힐버트 변환된 파형의 허수부는 도 10에서 참조 번호(1132)로 보여진다. 파형(1128)의 피크(1130)는 파형(1132)이 제로 라인(zero line)을 교차하는 포인트에 현재 대응하고, 이는 제로 크로스 기반 보간법(zero cross based interpolation)을 사용하여 찾아질 수 있다. 이는 현재 서브샘플 방법이고 샘플 레이트의 정확도에 제한된다.
따라서, 수신된 사운드의 이러한 특정한 주파수 컴포넌트를 위해, 두 개의 마이크로폰들에서의 사운드의 도달 시간 차이를 찾는 것이 가능하다.
도 11은 사운드의 소스가 먼 필드(far field)에 있는 상황을 보여준다. 즉, 소스가 마이크로폰들로부터 충분히 멀어서 소스로부터 두 개의 마이크로폰들(1144, 1146)까지의 각각의 경로들(1140, 1142)이 평행하다고 생각될 수 있다. 도 11에서, d는 마이크로폰들(1144, 1146) 사이의 거리이고, θ는 소스로부터 마이크로폰들(1144, 1146)까지의 경로들(1140, 1142)의 접근 각도이다. 기하학에 의해, 마이크로폰(1146)까지의 경로와 비교하여, 마이크로폰(1144)까지의 경로에 의해 이동되는 여분의 거리 l은 l = d.sinθ에 의해 주어진다.
이 여분의 거리를 이동하는 데 걸리는 시간 Δt는 다음으로 수학식 l = c.Δt를 사용하여 찾아질 수 있고, 여기에서 c는 음속이다.
따라서, 접근 각도 θ는 θ = sin-1(c.Δt/d)에 의해 찾아질 수 있다.
두 개의 마이크로폰들에서의 사운드의 도달 시간 차이의 실제 계산은 잡음에 종속되고, 따라서 위에서 획득된 결과에 일부 불확실성이 존재할 수 있다. 한 가지 가능성은 노이즈에 의해 오류가 생긴 측정이 l이 d보다 커지는 물리적으로 불가능한 결과로 이어질 수 있다는 것이다. 그러한 측정들이 사용되는 것을 방지하기 위해, θ의 값을 계산하기 위한 시도로 진행하기 전에, (c.Δt/d)의 크기가 1(unity)보다 작음을 체크하는 것이 가능하다.
이 예시는 두 개의 마이크로폰들이 사용되는 것을 가정한다. 만약 두 개보다 많은 마이크로폰들이 사용된다면, 동일한 방법이 마이크로폰들의 상이한 쌍들을 위해 사용될 수 있고, 사운드의 그 주파수 컴포넌트의 소스의 위치가 삼각측량(triangulation)에 의해 결정될 수 있게 한다.
도 12는 수신된 입력 신호가 두 개의 주파수 컴포넌트들로 분할되는 예에 대해 얻어진 결과들을 도시한다. 구체적으로, 도 12는 주파수 f1에서의 접근 각도 θ1 및 주파수 f2에서의 접근 각도 θ2를 도시한다.
따라서, 비록 이 실시예에서 정보가 소스들의 위치들을 정밀하게 나타내지 못하더라도, 두 개의 마이크로폰들에서의 도달 시간들 사이의 시간 차이는 제1 주파수 컴포넌트의 소스의 위치 및 제2 주파수 컴포넌트의 소스의 위치에 관한 소정의 정보를 준다.
도 7에서 보여지는 방법의 단계(176)에서, 위치 정보는 제1 주파수 컴포넌트의 소스의 위치와 제2 주파수 컴포넌트의 소스의 위치의 비교를 위해 비교기(comparator) 블록(192)으로 전달된다.
구체적으로, 제1 주파수 컴포넌트의 소스의 위치가 제2 주파수 컴포넌트의 소스의 위치로부터 임계량보다 많이 다른지 결정된다. 위에서 설명된 도시된 실시예에서, 정밀한 위치 정보가 사용가능하지 않을 경우, 만약 접근 각도들 θ1 및 θ2 사이의 차이가 임계량을 초과하면, 제1 주파수 컴포넌트의 소스의 위치가 제2 주파수 컴포넌트의 소스의 위치로부터 임계량보다 많이 다르다고 결정될 수 있다.
만약 제1 주파수 컴포넌트의 소스의 위치가 제2 주파수 컴포넌트의 소스의 위치로부터 임계량보다 많이 다르다고 결정되면, 음성 신호가 라우드스피커에 의해 생성되었을 수 있고, 따라서 리플레이 공격에서 기인할 수 있다고 결정된다.
이 경우, 보이스 생체인식 시스템의 동작이 적응된다. 예를 들어, 도 8에서 보여지는 바와 같이, 모델 비교 블록(184)으로부터의 출력은 입력 신호가 리플레이 공격에서 기인할 수 있는 가능성에 관한 소정의 정보를 동반할 수 있다. 다음으로 이 정보는 수신된 음성 신호를 등록된 사용자로부터 온 것으로 다루고 여기에 대해 작용할지 여부를 결정하는 때 고려될 수 있다.
다른 실시예들에서, 만약 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정되면, 모델 비교 블록(184)의 동작은 적응되거나 심지어 금지될 수 있다.
지금까지 설명된 실시예는 수신된 음성 신호의 두 개의 주파수 컴포넌트들을 필터링하고, 그 두 개의 컴포넌트들의 소스들의 위치들에 대한 정보를 획득한다. 위에서 언급된 바와 같이, 두 개보다 많은 주파수 컴포넌트들이 수신된 음성 신호로부터 필터링될 수 있다. 그 경우, 우퍼 및 트위터를 포함하는 라우드스피커 디바이스에 의해 생성된 신호의 특성인 결과는, 모든 낮은 주파수 컴포넌트들이 하나의 소스 위치로부터 오는 것으로 발견되고, 모든 높은 주파수 컴포넌트들이 상이한 소스 위치로부터 오는 것으로 발견된다는 것이다.
도 13은, 위치 정보가 수신된 입력 신호의 주파수 컴포넌트의 접근 각도와 관련 있는 경우에서 이것을 도시한다. 이 예시에서, 여섯 개의 주파수 컴포넌트들이 추출되며, 접근 각도들 θ1 - θ6은 각각 주파수들 f1 - f6에 대응한다. 모든 접근 각도들 θ1 - θ3이 함께 군집되고, 접근 각도들 θ4 - θ6보다 매우 작게 되는 이러한 결과들은 주파수들 f1 - f3의 컴포넌트들이 주파수들 f4 - f6의 컴포넌트들과 다른 소스로부터 오고 있다는 것을 나타낸다. 이와 같은 경우, 주파수들 f1 - f3에 대한 결과들은 하나의 클러스터로 형성되고 평균될 수 있고, 주파수들 f4 - f6에 대한 결과들은 다른 클러스터로 형성되고 평균될 수 있고, 주파수들 f1 - f3에 대한 평균 결과는 주파수들 f4 - f6에 대한 평균 결과와 비교될 수 있다. 평균 접근 각도들은 제1 주파수 컴포넌트 및 제2 주파수 컴포넌트의 소스들의 위치들에 관한 정보를 준다고 고려될 수 있고, 다음으로 만약 제1 주파수 컴포넌트의 소스의 위치가 제2 주파수 컴포넌트의 소스의 위치로부터 임계량보다 많이 다르다면 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정될 수 있다. 대안으로, 접근 각도의 최댓값인 θ5가 접근 각도의 최솟값인 θ2와 비교될 수 있고, 다음으로 만약 접근 각도의 최댓값인 θ5를 갖는 주파수 컴포넌트의 소스의 위치가 접근 각도의 최솟값인 θ2을 갖는 주파수 컴포넌트의 소스의 위치로부터 임계량보다 많이 다르다면, 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정될 수 있다. 다른 예시에서, 접근 각도의 두번째로 큰 값인 θ4도 접근 각도의 두 번째로 작은 값인 θ1과 비교될 수 있고, 다음으로 만약 접근 각도의 두번째로 큰 값인 θ4를 갖는 주파수 컴포넌트의 소스의 위치가 접근 각도의 두 번째로 작은 값인 θ1을 갖는 주파수 컴포넌트의 소스의 위치로부터 임계량보다 많이 다르다면, 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정될 수 있다.
유사하게, 3개의 라우드스피커들을 포함하는 라우드스피커 디바이스에 의해 생성된 신호의 특성이 되는 결과는, 하나 이상의 저주파수 컴포넌트들이 하나의 소스 위치로부터 오는 것으로 발견되고, 하나 이상의 중간-주파수 컴포넌트들이 제2 소스 위치로부터 오는 것으로 발견되고, 하나 이상의 고주파수 컴포넌트들이 제3 소스 위치로부터 오는 것으로 발견된다는 것이다.
일반적으로, 제1 및 제2 마이크로폰들에 대해, 음성 신호의 두 개보다 많은 주파수 컴포넌트들의 소스들의 각각의 위치들에 관해 정보가 획득된다. 주파수 컴포넌트들의 소스의 위치들이 비교되고, 만약 하나의 주파수 컴포넌트의 소스의 위치가 적어도 하나의 다른 주파수 컴포넌트의 소스의 위치와 임계량보다 많이 다른 경우, 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정된다.
위에서 주어진 예시들에서, 오직 두 개의 마이크로폰들(12, 12a)로부터의 신호들만 사용된다.
다른 실시예들에서, 두 개보다 많은 마이크로폰들로부터의 신호들이 사용된다. 예를 들어, 만약 세 개의 마이크로폰들(12, 12a, 12b)로부터의 신호들이 모두 사용되고, 마이크로폰(12b)으로부터의 신호는 필터 뱅크(194)로 전달되고 결과되는 컴포넌트들 또한 위치 정보 유도 블록(190)으로 전달된다면, 더 정밀한 위치 정보가 획득될 수 있다. 원칙적으로, 신호들이 3개(또는 그 이상)의 마이크로폰들로부터 수신되는 경우, 각각의 컴포넌트의 소스의 정확한 위치는 삼각측량을 사용하여 유도될 수 있다.
그 경우, 소스 위치들의 분리는 사람 입의 사이즈와 관련된 임계값(사람 입의 사이즈를 초과하는 분리는 음성이 인간 화자로부터 오지 않았다는 것을 나타낸다는 것에 기초하여), 및/또는 전형적인 라우드스피커 디바이스의 사이즈와 관련된 임계치(전형적인 라우드스피커 디바이스의 사이즈에 대응하는 분리는 음성이 아마 그러한 라우드스피커 디바이스로부터 올 수 있다는 것을 나타낸다는 것에 기초하여)와 비교될 수 있다.
또 다른 실시예에서, 방법은 두 개의 마이크로폰들로부터의 신호들을 사용하여 위에서 설명된 바와 같이 진행된다. 그러나, 만약 제1 주파수 컴포넌트의 소스 및 제2 주파수 컴포넌트의 소스의 명백한 위치들이, 비교기 블록(192)이 음성 신호가 리플레이 공격에서 기인할 수 있는지에 관해 결론에 도달할 수 없게 하는 경우라면, 다음으로 제3 마이크로폰으로부터의 신호 또한 고려될 수 있다. 즉, 제3 마이크로폰으로부터의 신호는 관련된 주파수 컴포넌트들을 추출하기 위해, 각각의 필터 뱅크에 전달되고, 다음으로, 각각의 주파수 컴포넌트에 대해, 세 개의 마이크로폰들로부터의 신호들은 더 정밀한 위치 정보를 획득하기 위해 시험된다.
각각의 주파수 컴포넌트에 대한 이러한 더 정밀한 위치 정보는 다음으로 상이한 주파수 컴포넌트들이 상이한 소스 위치들로부터 오는지, 그러므로 음성 신호가 리플레이 공격에서 기인할 수 있는지를 결정하는 데 사용될 수 있다.
도 14는 위에서 설명된 검출 방법을 극복하기 위한 시도로서, 리플레이 공격이 수행되고 있는 상황의 제3 예시를 보여준다. 따라서, 도 14에서, 스마트폰(10)은 보이스 생체인식 기능을 구비한다. 다시, 이 예시에서, 스마트폰(10)은, 적어도 일시적으로, 다른 스마트폰(240)을 가진 공격자의 소유에 있다. 스마트폰(240)은 스마트폰(10)의 등록된 사용자의 보이스를 녹음하는 데 사용되었다.
이 예시에서, 스마트폰(240)은 고성능 라우드스피커(2150)에 연결된다. 다음으로, 스마트폰(10)은 라우드스피커(2150)에 가까이 위치되고, 등록된 사용자의 보이스의 레코딩은 라우드스피커(2150)를 통해 재생된다. 이전과 같이, 만약 보이스 생체인식 시스템이 자신이 검출한 등록된 사용자의 보이스가 레코딩인 것을 검출할 수 없다면, 공격자는 오직 등록된 사용자에 의해 접근가능하도록 의도된 하나 이상의 서비스들에의 액세스를 얻을 것이다.
이 예시에서, 라우드스피커(2150)는 라우드스피커를 통해 재생되는 등록된 사용자의 보이스의 레코딩이 사용자의 보이스와 확실하게 구별되지 않을 정도로 충분히 높은 퀄리티일 수 있고, 따라서 음성 신호의 오디오 특징들은 리플레이 공격을 식별하는 데 사용될 수 없다.
이 예시에서, 라우드스피커(2150)는 Quad® ESL과 같은 정전형 라우드스피커(electrostatic loudspeaker)이거나, 밸런스드 모드 라디에이터 라우드스피커(balanced mode radiator loudspeaker)이거나, 벤딩 모드(bending mode) 또는 벤딩 웨이브(bending wave) 라우드스피커, 또는 플랫 패널(flat panel) 라우드스피커의 임의의 다른 타입이다.
많은 그러한 라우드스피커들의 한 가지 특징은 사운드의 명백한 소스가 하나의 포인트가 아니라 분산된다는 것, 즉 라우드스피커 전반에 분포된다는 것이다.
도 15는 라우드스피커 디바이스(2150)가 스마트폰(10)에 의해 검출된 음성을 리플레이하기 위해 사용되고 있는 전형적인 배열을 보여준다. 따라서, 도 15는 스마트폰(10)의 아래쪽 끝에 위치한 마이크로폰(12)에 도달하고 스마트폰(10)의 위쪽 끝에 위치한 마이크로폰들(12a, 12b)에 또한 도달하는, 라우드스피커(2150)의 하부의 한 점(2152)으로부터의 사운드들을 보여준다. 도 15는 또한 스마트폰(10)의 아래쪽 끝에 위치한 마이크로폰(12)에 도달하고 스마트폰(10)의 위쪽 끝에 위치한 마이크로폰들(12a, 12b)에 또한 도달하는, 라우드스피커(2150)의 상부의 한 점(2154)으로부터의 사운드들을 보여준다.
따라서, 도 15로부터, 스마트폰(10)으로부터 볼 때, 그것이 검출하는 사운드들은 고도로 분산된 소스로부터 오는 것으로 보여질 수 있다.
이것은 사람이 말하고 있을 때, 사운드들이 비교적 작은 면적, 사람 입을 예로 들면 약 5-8cm의 최대 턱 가동범위(range of motion, ROM) 또는 최대 마우스 오프닝(maximum mouth opening, MMO)으로부터 올 때의 상황과 대조적이다.
이 사실의 이해는 본 명세서에서 설명되는 방법에 사용된다.
도 16은 보이스 생체인식 시스템에 대한 리플레이 공격 검출 방법을 도시하는 흐름도이고, 도 17은 보이스 생체인식 시스템 내의 기능적 블록들을 도시하는 블록도이다.
구체적으로, 도 16에서, 단계(2170)에서, 제1 신호는 제1 마이크로폰에서 생성된다. 예를 들어, 제1 마이크로폰은 스마트폰(10)의 아래쪽 끝에 위치한 마이크로폰(12)일 수 있다. 이 마이크로폰은 수신된 사운드에 응답하여 신호를 생성한다. 유사하게, 단계(2172)에서, 제2 신호가 제2 마이크로폰에서 생성된다. 예를 들어, 제2 마이크로폰은 스마트폰(10)의 위쪽 끝에 위치한 마이크로폰들 중 하나(12a)일 수 있다. 다시, 이 마이크로폰은 수신된 사운드에 응답하여 신호를 생성한다.
스마트폰의 경우, 제1 및 제2 마이크로폰들은 5-20cm의 범위의 거리로 간격이 두어질 수 있다.
생체인식 동작의 부분으로, 제1 및 제2 신호들은 알려진 방법으로 오디오 신호들의 특징들을 추출하는 특징 추출 블록(2190)으로 전달된다. 한 예시에서, 오디오 신호들의 특징들은 MFCC들(Mel Frequency Cepstral Coefficients)일 수 있다. 이러한 특징들은 그것들이 등록 프로세스 동안에 사용자의 음성으로부터 추출된 대응하는 특징들과 비교되는, 모델 비교 블록(2192)에 전달된다. 비교에 기초하여, 검출된 음성이 등록된 사용자의 음성인지 결정된다.
한편, 제1 및 제2 신호들은 위치 정보 유도 블록(2194)으로 또한 전달된다.
단계(2174)에서, 위치 정보 유도 블록(2194)은 수신된 사운드의 명백한 소스의 위치를 결정하기 위해 제1 및 제2 신호들을 사용한다.
더 구체적으로, 한 예시에서, 단계(2176)에서, 위치 정보 유도 블록(2194)은 제1 신호 및 제2 신호에 대해 상관관계 동작을 수행하고, 상관 함수를 결정한다.
상관관계 동작은 시간 오프셋들의 범위에 대해, 제1 신호와 제2 신호 사이의 교차-상관관계 Rxy를 위한 값을 결정한다. 따라서, 이 예시에서, 제1 및 제2 신호들은 동일한 수신된 사운드에 반응한다. 그러나, 상관관계 값은 수신된 사운드의 소스의 위치에 의존한다. 예를 들어, 만약 사운드가 제2 마이크로폰 전에 제1 마이크로폰에 도달하면, 신호들은 그들 사이의 일치를 성취하기 위해 한 방향에서 서로에 관하여 오프셋될 필요가 있을 것이다. 이것은 그 방향에서의 오프셋과 함께 상관 함수에서 높은 값을 초래한다. 만약 사운드가 제1 마이크로폰 전에 제2 마이크로폰에 도달하면, 신호들은 그들 사이의 일치를 성취하기 위해 다른 방향에서 서로에 관하여 오프셋될 필요가 있을 것이다. 이것은 그 다른 방향에서의 오프셋과 함께 상관 함수에서 높은 값을 초래한다.
이것은 수신된 사운드의 소스가 포인트 소스인 것을 가정한다. 그러나, 실제로는, 소스가 유한한 폭을 가지고, 따라서 계산되는 전체 상관 함수는 포인트 소스들로부터 오는 수신된 사운드들 사이의 이러한 상관관계들의, 소스의 전체 폭에 걸친 적분이다.
구체적으로, 사운드의 소스의 유한한 폭 안의 임의의 포인트에 대해, 그 포인트로부터 두 개의 마이크로폰들까지의 사운드의 비행 시간들은 τ 및 τΡ로 계산될 수 있다. 이러한 두 개의 시간들 사이의 차이는 그 소스로부터의 사운드가 두 개의 마이크로폰들을 포함하는 평면을 만날 때의 각도에 의존할 것이다. 만약 사운드의 소스가 폭의 방향에서 -wO로부터 wO까지 늘어진, 분산된 소스라면, 다음으로 상관관계 결과는 소스의 폭에 걸친 상관관계들의 적분이다:
Figure 112020046883869-pct00003
따라서:
Figure 112020046883869-pct00004
그러므로, 이 함수의 중앙 로브의 폭은 사운드의 소스의 폭에 의존한다.
도 15에서 도시된 상황에서, 스마트폰(10)으로부터 라우드스피커(2150)의 그럴듯한 거리를 가정함으로써(예를 들어, 공격자는 스마트폰을 라우드스피커로부터 0.10 및 1.0 미터 사이에 위치할 확률이 높음), 알맞은 임계값이 설정될 수 있다. 만약 사운드의 소스가 사실 사람 입이었다면, 이 임계치는 예상되는 중앙 로브의 최대 폭을 대표할 수 있다. 만약 중앙 로브의 폭이 이 임계값을 초과하면, 사운드의 소스가 라우드스피커일 확률이 높다고 결정될 수 있다.
도 18은 사운드가 제1 및 제2 마이크로폰들로부터 같은 거리로 위치된 좁은 소스로부터 제1 및 제2 마이크로폰들에 도달하고 있는 예시 상황을 도시한다. 따라서, 상관 함수의 중앙 로브가 제로에 도달하는 포인트들 사이의 폭 W1와 함께, 상관 함수 Rxy의 중앙 로브 내의 피크는 상대적으로 뾰족하고, 제로 오프셋에 위치된다.
대조적으로, 도 15에서 보여지는 것과 유사하게, 도 19는 분산된 소스로부터 제1 및 제2 마이크로폰들에 사운드가 도달하고 있는 예시 상황을 도시한다. 따라서, 소스의 일부 부분들(예를 들어 라우드스피커(2150)의 하부에 있는 포인트(2152))은 스마트폰(10)의 위쪽 끝에 위치된 마이크로폰(12a)까지보다 스마트폰(10)의 아래쪽 끝에 위치된 마이크로폰(12)까지 더 가깝다.
따라서, 포인트(2152), 및 다른 유사한 포인트들로부터의 사운드는 마이크로폰(12a)에 도달하기 전에 마이크로폰(12)에 도달한다. 그러므로, 위에서 논의된 바와 같이, 이러한 포인트들로부터의 사운드들은 한 특정 방향에서의 오프셋과 함께 상관 함수에서 높은 값을 초래한다.
반대로, 소스의 다른 부분들(예를 들어 라우드스피커(2150)의 상부에 있는 포인트(2154))은 스마트폰(10)의 아래쪽 끝에 위치된 마이크로폰(12)까지보다 스마트폰(10)의 위쪽 끝에 위치된 마이크로폰(12a)까지 더 가깝다.
따라서, 포인트(2154), 및 다른 유사한 포인트들로부터의 사운드는 마이크로폰(12)에 도달하기 전에 마이크로폰(12a)에 도달한다. 그러므로, 위에서 논의된 바와 같이, 이러한 포인트들로부터의 사운드들은 포인트(2152)와 같은 포인트들로부터의 사운드들에 대해 반대 방향에서의 오프셋과 함께 상관 함수에서 높은 값을 초래한다.
따라서, 도 19에서, 상관 함수의 중앙 로브가 제로에 도달하는 포인트들 사이의 폭 W2와 함께, 상관 함수 Rxy의 중앙 로브 내의 피크는 도 18에서보다 훨씬 덜 뾰족하다.
도 16에서 보여지는 프로세스의 단계(2178)에서, 상관 함수의 중앙 로브의 이러한 폭이 계산된다.
도 16에서 보여지는 프로세스의 단계(2180)에서, 상관 함수의 중앙 로브의 이러한 계산된 폭은 결정 블록(2196)으로 전달되고, 만약 수신된 사운드의 명백한 소스가 분산된다면, 수신된 사운드가 리플레이 공격에 기인할 수 있다고 결정된다. 예를 들어, 수신된 사운드의 명백한 소스는 만약 이것이 사람 입보다 크다면, 예를 들어 만약 이것이 5cm의 지름을 초과하면, 분산된다고 생각될 수 있다.
따라서, 단계(2182)에서 보여지는 바와 같이, 만약 상관 함수의 중앙 로브의 폭이 임계값을 초과한다면, 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정된다. 그 임계값은 만약 수신된 사운드의 소스가 약 5-8cm의 지름을 초과한다면 상관 함수의 중앙 로브의 폭이 임계값을 초과하도록 선택될 수 있다.
일부 실시예들에서, 정보는 스마트폰의 사용 모드에 대해 획득될 수 있다. 예를 들면, 예를 들어 초음파 또는 광학적 근접 탐지 기능을 이용하여, 수신된 사운드의 소스로부터 스마트폰까지의 거리에 관한 정보가 획득될 수 있다. 그러면, 임계값은 수신된 사운드의 소스로부터 스마트폰까지의 거리에 기초하여 설정될 수 있다.
만약 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정되면, 보이스 생체인식 시스템의 다음 기능으로 출력 플래그(flag) 또는 신호가 송신된다. 예를 들어, 모델 비교 블록(2192)의 출력이 멈출 수 있고, 또는 후속 프로세싱 블록이 음성이 등록된 화자의 것이었다는 것을 나타내는 출력에 더 적은 가중치(또는 가중치가 전혀 없음)를 주도록 변경될 수 있다.
위의 예시에서, 두 개의 마이크로폰으로부터의 신호들은 수신된 사운드의 소스가 분산되는지를 결정하는 데 사용되었다. 다른 예시들에서, 검출된 사운드의 소스의 공간 다양성(spatial diversity)에 관한 더 많은 정보를 획득하기 위해 셋 이상의 마이크로폰들로부터의 신호들이 교차-상관될 수 있다(예를 들어 쌍들의 각각 서로에 대해 교차-상관됨).
위에서 주어진 예시들에서, 두 개의 마이크로폰으로부터의 신호들은 수신된 사운드의 소스가 분산되는지를 결정하는 데 사용되었다. 이것의 추가적인 전개는 적어도 특정 라우드스피커들에 대해, 라우드스피커의 명백한 폭이 주파수와 함께 변할 것이라는 것에 유의함으로써 아이디어가 확장될 수 있다는 인식에 기초한다. 더 구체적으로, 라우드스피커는 높은 주파수들보다 낮은 주파수들에서 더 넓게 보일 것이다.
이것을 활용하기 위해, 위치 정보 유도 블록(2194)은 수신된 신호의 각각의 주파수 대역들을 추출하기 위한 둘 이상의 대역 통과 필터들을 포함한다. 위에서 설명된 방법은 다음으로 이 두 개의 주파수 대역들에 대해 따로따로 수행된다. 더 구체적으로, 제1 마이크로폰은 수신된 사운드로부터 제1 신호를 생성하고, 여기서 제1 신호는 제1 주파수에서 제1 컴포넌트 및 제2 주파수에서 제2 컴포넌트를 가지고, 여기서 제1 주파수는 제2 주파수보다 높다. 제2 마이크로폰은 수신된 사운드로부터 제2 신호를 생성한다.
다음으로, 제1 상관 함수는 제1 신호의 제1 컴포넌트와 제2 신호의 제1 컴포넌트 사이의 상관관계에 기초하여 결정된다. 그 제1 상관 함수의 중앙 로브의 폭이 계산된다. 제2 상관 함수는 제1 신호의 제2 컴포넌트와 제2 신호의 제2 컴포넌트 사이의 상관관계에 기초하여 결정된다. 그 제2 상관 함수의 중앙 로브의 폭이 계산된다.
두 개의 폭들이 다음으로 비교되고, 만약 결정된 제2 상관 함수의 중앙 로브의 폭이 결정된 제1 상관 함수의 중앙 로브의 폭을 임계값보다 크게 초과한다면, 수신된 사운드가 라우드스피커에 의해 생성되었다고, 그리고 예를 들어 리플레이 공격에서 기인할 수 있다고 결정된다.
그러므로 가능한 리플레이 공격을 검출하기 위해 사용될 수 있는 방법들 및 시스템들이 개시된다.
통상의 기술자는 전술한 장치 및 방법들의 일부 양태들이 프로세서 제어 코드로서, 예를 들어 디스크, CD-ROM 또는 DVD-ROM과 같은 비휘발성 캐리어 매체, 읽기 전용 메모리(펌웨어)와 같은 프로그래밍된 메모리, 또는 광학 또는 전기 신호 캐리어와 같은 데이터 캐리어 상에 구현될 수 있다는 것을 인식할 것이다. 많은 응용들에 대해, 본 발명의 실시예들은 DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit) 또는 FPGA(Field Programmable Gate Array) 상에서 구현될 것이다. 따라서, 코드는 종래의 프로그램 코드 또는 마이크로코드, 또는 예를 들어 ASIC 또는 FPGA를 설정 또는 제어하기 위한 코드를 포함할 수 있다. 코드는 또한 재프로그래밍가능한 로직 게이트 어레이들과 같은 재구성가능한 장치들을 동적으로 구성하기 위한 코드를 포함할 수 있다. 유사하게, 코드는 Verilog TM 또는 VHDL(Very high speed integrated circuit Hardware Description Language)과 같은 하드웨어 기술 언어에 대한 코드를 포함할 수 있다. 통상의 기술자가 이해하는 바와 같이, 코드는 서로 통신하는 복수의 결합된 컴포넌트들 사이에 분산될 수 있다. 적절한 경우, 실시예들은 또한 아날로그 하드웨어를 구성하기 위해 필드-(재)프로그래밍가능 아날로그 어레이 또는 유사한 디바이스 상에서 실행되는 코드를 사용하여 구현될 수 있다.
본 명세서에서 사용되는 바와 같이 모듈(module)이라는 용어는, 사용자 정의된 회로와 같은 전용 하드웨어 컴포넌트들에 의해 적어도 부분적으로 구현될 수 있고/있거나, 하나 이상의 소프트웨어 프로세서들 또는 적절한 범용 프로세서 상에서 실행되는 적절한 코드 또는 그와 유사한 것에 의해 적어도 부분적으로 구현될 수 있는 기능 유닛 또는 블록을 지칭하는데 사용될 것이라는 점에 유의한다. 모듈은 그 자체가 다른 모듈들 또는 기능 유닛들을 포함할 수 있다. 모듈은 공동 위치될 필요가 없는 다수의 컴포넌트들 또는 서브 모듈들에 의해 제공될 수 있고, 상이한 집적 회로들 상에 제공될 수 있고/있거나 상이한 프로세서들 상에서 실행될 수 있다.
실시예들은 호스트 디바이스, 특히 모바일 컴퓨팅 디바이스, 예를 들어 랩톱 또는 태블릿 컴퓨터, 게임 콘솔, 리모트 컨트롤러 디바이스, 홈 자동화 제어기, 또는 가정 온도 또는 조명 제어 시스템을 포함하는 가정용 기기, 장난감, 로봇과 같은 머신, 오디오 플레이어, 비디오 플레이어, 또는 모바일 전화, 예를 들어 스마트폰과 같은 휴대용 및/또는 배터리 전력공급형 호스트 디바이스에서 구현될 수 있다.
전술한 실시예들은 본 발명을 제한하기보다는 예시하고, 본 기술분야의 통상의 기술자는 첨부된 청구항들의 범위로부터 벗어나지 않고 많은 대안적인 실시예들을 설계할 수 있을 것이라는 점에 유의해야 한다. "포함하는(comprising)" 이라는 단어는 청구항에 열거된 것들 이외의 요소들 또는 단계들의 존재를 배제하지 않고, "a" 또는 "an"은 복수를 배제하지 않고, 단일 피처(feature) 또는 다른 유닛은 청구항들에 기재된 여러 유닛들의 기능들을 수행할 수 있다. 청구항들에서의 임의의 참조 번호들 또는 라벨들은 그들의 범위를 제한하도록 해석되어서는 안된다.

Claims (33)

  1. 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법으로서,
    적어도 제1 마이크로폰 및 제2 마이크로폰에서 음성 신호를 수신하는 단계 -상기 음성 신호는 제1 및 제2 주파수들에서 컴포넌트들을 가짐 - ;
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계;
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계;
    상기 제1 주파수 컴포넌트의 소스의 위치와 상기 제2 주파수 컴포넌트의 소스의 위치를 비교하는 단계; 및
    만약 상기 제1 주파수 컴포넌트의 소스의 위치가 상기 제2 주파수 컴포넌트의 소스의 위치와 임계량보다 많이 다르다면 상기 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계는:
    상기 제1 주파수 컴포넌트를 획득하기 위해, 수신된 음성 신호를 필터링하는 단계; 및
    상기 제1 및 제2 마이크로폰들에서 상기 제1 주파수 컴포넌트의 도래각을 결정하는 단계
    를 포함하고,
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계는:
    상기 제2 주파수 컴포넌트를 획득하기 위해, 상기 수신된 음성 신호를 필터링하는 단계; 및
    상기 제1 및 제2 마이크로폰들에서 상기 제2 주파수 컴포넌트의 도래각을 결정하는 단계
    를 포함하는, 방법.
  3. 제2항에 있어서, 상기 제1 및 제2 마이크로폰들에서 각각의 주파수 컴포넌트의 도래각을 결정하는 단계는:
    상기 제1 마이크로폰에서 수신된 음성 신호의 각각의 컴포넌트와 상기 제2 마이크로폰에서 수신된 음성 신호의 상기 각각의 컴포넌트 사이의 교차-상관관계를 계산하는 단계; 및
    계산된 교차-상관관계의 피크의 위치로부터 상기 도래각에 관한 정보를 획득하는 단계
    를 포함하는, 방법.
  4. 제1항에 있어서, 상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계는:
    상기 제1 주파수 컴포넌트를 획득하기 위해, 수신된 음성 신호를 필터링하는 단계; 및
    상기 제1 및 제2 마이크로폰에서의 상기 제1 주파수 컴포넌트의 도달 사이의 시간 차이를 결정하는 단계
    를 포함하고,
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하는 단계는:
    상기 제2 주파수 컴포넌트를 획득하기 위해, 수신된 음성 신호를 필터링하는 단계; 및
    상기 제1 및 제2 마이크로폰에서의 상기 제2 주파수 컴포넌트의 도달 사이의 시간 차이를 결정하는 단계
    를 포함하는, 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 제1 주파수 컴포넌트는 1kHz 아래의 범위의 주파수들을 포함하는, 방법.
  6. 제5항에 있어서, 상기 제1 주파수 컴포넌트는 100Hz - 1kHz의 범위의 주파수들을 포함하는, 방법.
  7. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 제2 주파수 컴포넌트는 1kHz 위의 범위의 주파수들을 포함하는, 방법.
  8. 제7항에 있어서, 상기 제2 주파수 컴포넌트는 2kHz - 15kHz의 범위의 주파수들을 포함하는, 방법.
  9. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 두 개보다 많은 주파수 컴포넌트들의 소스들의 각각의 위치들에 관한 정보를 획득하는 단계;
    상기 주파수 컴포넌트들의 소스의 위치들을 비교하는 단계; 및
    만약 하나의 주파수 컴포넌트의 소스의 위치가 적어도 하나의 다른 주파수 컴포넌트의 소스의 위치와 임계량보다 많이 다르다면 상기 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정하는 단계
    를 더 포함하는, 방법.
  10. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 제1 주파수 컴포넌트의 소스의 위치 및 상기 제2 주파수 컴포넌트의 소스의 위치를 비교한 후, 만약 비교 결과가 불확정적이라면:
    제3 마이크로폰에서 상기 음성 신호를 수신하는 단계;
    상기 제1, 제2 및 제3 마이크로폰들에 대한, 상기 음성 신호의 상기 제1 주파수 컴포넌트의 소스의 위치에 관한 추가적인 정보를 획득하는 단계;
    상기 제1, 제2 및 제3 마이크로폰들에 대한, 상기 음성 신호의 상기 제2 주파수 컴포넌트의 소스의 위치에 관한 추가적인 정보를 획득하는 단계; 및
    상기 추가적인 정보에 기초하여 상기 제1 주파수 컴포넌트의 소스의 위치와 상기 제2 주파수 컴포넌트의 소스의 위치를 비교하는 단계
    를 더 포함하는, 방법.
  11. 스피커 인식 시스템에서 리플레이 공격을 검출하기 위한 시스템으로서,
    적어도 제1 마이크로폰 및 제2 마이크로폰으로부터 음성 신호를 수신하기 위한 입력을 포함하고, 프로세서를 포함하고,
    적어도 제1 마이크로폰 및 제2 마이크로폰에서 음성 신호를 수신하고 - 상기 음성 신호는 제1 및 제2 주파수들에서 컴포넌트들을 가짐 - ;
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제1 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하고;
    상기 제1 및 제2 마이크로폰들에 대한, 상기 음성 신호의 상기 제2 주파수 컴포넌트의 소스의 위치에 관한 정보를 획득하고;
    상기 제1 주파수 컴포넌트의 소스의 위치와 상기 제2 주파수 컴포넌트의 소스의 위치를 비교하고;
    만약 상기 제1 주파수 컴포넌트의 소스의 위치가 상기 제2 주파수 컴포넌트의 소스의 위치와 임계량보다 많이 다르다면 음성 신호가 리플레이 공격에서 기인할 수 있다고 결정하도록
    구성되는, 시스템.
  12. 제11항에 따른 시스템을 포함하는, 디바이스.
  13. 제12항에 있어서,
    상기 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함하는, 디바이스.
  14. 제1항 내지 제4항 중 어느 한 항에 따른 방법을 수행하기 위한 명령어들을 포함하는, 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램.
  15. 프로세서 회로에 의해 실행될 때, 상기 프로세서 회로로 하여금 제1항 내지 제4항 중 어느 한 항에 따른 방법을 수행하게 하는 컴퓨터 실행 가능 명령어들이 저장된, 비일시적 컴퓨터 판독 가능 저장 매체.
  16. 제15항에 따른 비일시적 컴퓨터 판독 가능 저장 매체를 포함하는, 디바이스.
  17. 제16항에 있어서, 상기 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함하는, 디바이스.
  18. 삭제
  19. 삭제
  20. 음성 인식 시스템, 예를 들어 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법으로서,
    제1 마이크로폰에서 수신된 사운드로부터 제1 신호를 생성하는 단계;
    제2 마이크로폰에서 상기 수신된 사운드로부터 제2 신호를 생성하는 단계;
    상기 제1 신호와 제2 신호 사이의 상관관계에 기초하여 상관 함수를 결정하는 단계;
    결정된 상관 함수의 중앙 로브의 폭을 계산하는 단계; 및
    만약 상기 결정된 상관 함수의 중앙 로브의 폭이 임계값을 초과한다면 상기 수신된 사운드가 리플레이 공격에서 기인한다고 결정하는 단계
    를 포함하는, 방법.
  21. 제20항에 있어서,
    상기 제1 및 제2 마이크로폰들로부터 사운드 소스의 거리에 관한 정보를 획득하는 단계; 및
    상기 거리에 기초하여 상기 임계값을 설정하는 단계
    를 더 포함하는, 방법.
  22. 제21항에 있어서,
    상기 제1 및 제2 마이크로폰들로부터 사운드 소스의 거리에 관한 정보를 획득하는 단계는:
    상기 제1 및 제2 마이크로폰들을 포함하는 디바이스의 사용 모드를 결정하는 단계를 포함하는, 방법.
  23. 제20항 내지 제22항 중 어느 한 항에 있어서, 상기 제1 및 제2 마이크로폰들은 5-20cm의 거리로 간격이 두어지는, 방법.
  24. 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하는 방법으로서,
    제1 마이크로폰에서 수신된 사운드로부터 제1 신호를 생성하는 단계 - 상기 제1 신호는 제1 주파수에서 제1 컴포넌트 및 제2 주파수에서 제2 컴포넌트를 가지고, 상기 제1 주파수는 상기 제2 주파수보다 높음 - ;
    제2 마이크로폰에서 상기 수신된 사운드로부터 제2 신호를 생성하는 단계 -상기 제2 신호는 상기 제1 주파수에서 제1 컴포넌트 및 상기 제2 주파수에서 제2 컴포넌트를 가짐 - ;
    상기 제1 신호의 제1 컴포넌트와 상기 제2 신호의 제1 컴포넌트 사이의 상관관계에 기초하여 제1 상관 함수를 결정하는 단계;
    결정된 제1 상관 함수의 중앙 로브의 폭을 계산하는 단계;
    상기 제1 신호의 제2 컴포넌트 및 상기 제2 신호의 제2 컴포넌트 사이의 상관관계에 기초하여 제2 상관 함수를 결정하는 단계;
    결정된 제2 상관 함수의 중앙 로브의 폭을 계산하는 단계; 및
    만약 상기 결정된 제2 상관 함수의 중앙 로브의 폭이 상기 결정된 제1 상관 함수의 중앙 로브의 폭을 임계값보다 크게 초과하는 경우 상기 수신된 사운드는 리플레이 공격에서 기인할 수 있다고 결정하는 단계
    를 포함하는, 방법.
  25. 삭제
  26. 스피커 인식 시스템에서 리플레이 공격을 검출하기 위한 시스템으로서,
    적어도 제1 마이크로폰 및 제2 마이크로폰으로부터 음성 신호를 수신하기 위한 입력을 포함하고, 프로세서를 포함하고,
    상기 제1 마이크로폰에서 수신된 사운드로부터 제1 신호를 생성하고;
    상기 제2 마이크로폰에서 상기 수신된 사운드로부터 제2 신호를 생성하고;
    상기 제1 신호와 상기 제2 신호 사이의 상관관계에 기초하여 상관 함수를 결정하고;
    결정된 상관 함수의 중앙 로브의 폭을 계산하고;
    만약 상기 결정된 상관 함수의 중앙 로브의 폭이 임계값을 초과하면 상기 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정하도록
    구성되는, 시스템.
  27. 보이스 생체인식 시스템에 대한 리플레이 공격을 검출하기 위한 시스템으로서,
    적어도 제1 마이크로폰 및 제2 마이크로폰으로부터 음성 신호를 수신하기 위한 입력을 포함하고, 프로세서를 포함하고,
    상기 제1 마이크로폰에서 수신된 사운드로부터 제1 신호를 생성하고 - 상기 제1 신호는 제1 주파수에서 제1 컴포넌트 및 제2 주파수에서 제2 컴포넌트를 가지고, 상기 제1 주파수는 상기 제2 주파수보다 높음 - ;
    상기 제2 마이크로폰에서 상기 수신된 사운드로부터 제2 신호를 생성하고 -상기 제2 신호는 상기 제1 주파수에서 제1 컴포넌트 및 상기 제2 주파수에서 제2 컴포넌트를 가짐 - ;
    상기 제1 신호의 제1 컴포넌트와 상기 제2 신호의 제1 컴포넌트 사이의 상관관계에 기초하여 제1 상관 함수를 결정하고;
    결정된 제1 상관 함수의 중앙 로브의 폭을 계산하고;
    상기 제1 신호의 제2 컴포넌트 및 상기 제2 신호의 제2 컴포넌트 사이의 상관관계에 기초하여 제2 상관 함수를 결정하고;
    결정된 제2 상관 함수의 중앙 로브의 폭을 계산하고;
    만약 상기 결정된 제2 상관 함수의 중앙 로브의 폭이 상기 결정된 제1 상관 함수의 중앙 로브의 폭을 임계값보다 크게 초과하면 상기 수신된 사운드가 리플레이 공격에서 기인할 수 있다고 결정하도록
    구성되는, 시스템.
  28. 제26항 또는 제27항 중 어느 한 항에 따른 시스템을 포함하는, 디바이스.
  29. 제28항에 있어서, 상기 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함하는, 디바이스.
  30. 제20항, 제21항, 제22항 및 제24항 중 어느 한 항에 따른 방법을 수행하기 위한 명령어들을 포함하는, 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램.
  31. 프로세서 회로에 의해 실행될 때, 상기 프로세서 회로로 하여금 제20항, 제21항, 제22항 및 제24항 중 어느 한 항에 따른 방법을 수행하게 하는 컴퓨터 실행 가능 명령어들이 저장된, 비일시적 컴퓨터 판독 가능 저장 매체.
  32. 제31항에 따른 비일시적 컴퓨터 판독 가능 저장 매체를 포함하는, 디바이스.
  33. 제32항에 있어서, 상기 디바이스는 모바일 전화기, 오디오 플레이어, 비디오 플레이어, 모바일 컴퓨팅 플랫폼, 게임 디바이스, 리모트 컨트롤러 디바이스, 장난감, 머신, 또는 홈 오토메이션 컨트롤러 또는 가정용 기기를 포함하는, 디바이스.
KR1020207013324A 2017-10-13 2018-10-11 리플레이 공격의 검출 KR102532584B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201762571959P 2017-10-13 2017-10-13
US62/571,959 2017-10-13
US201762585721P 2017-11-14 2017-11-14
US62/585,721 2017-11-14
GBGB1803570.9A GB201803570D0 (en) 2017-10-13 2018-03-06 Detection of replay attack
GB1803570.9 2018-03-06
GBGB1804843.9A GB201804843D0 (en) 2017-11-14 2018-03-26 Detection of replay attack
GB1804843.9 2018-03-26
PCT/GB2018/052906 WO2019073234A1 (en) 2017-10-13 2018-10-11 REPRODUCTIVE ATTACK DETECTION

Publications (2)

Publication Number Publication Date
KR20200066691A KR20200066691A (ko) 2020-06-10
KR102532584B1 true KR102532584B1 (ko) 2023-05-12

Family

ID=66100457

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207013324A KR102532584B1 (ko) 2017-10-13 2018-10-11 리플레이 공격의 검출

Country Status (4)

Country Link
KR (1) KR102532584B1 (ko)
CN (1) CN111194445A (ko)
GB (1) GB2581595B (ko)
WO (1) WO2019073234A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3566228B1 (en) * 2017-01-03 2020-06-10 Koninklijke Philips N.V. Audio capture using beamforming
CN112151038B (zh) * 2020-09-10 2022-12-16 达闼机器人股份有限公司 语音重放攻击检测方法、装置、可读存储介质及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015191076A (ja) 2014-03-28 2015-11-02 セコム株式会社 音声識別装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9767817B2 (en) * 2008-05-14 2017-09-19 Sony Corporation Adaptively filtering a microphone signal responsive to vibration sensed in a user's face while speaking
KR101166612B1 (ko) * 2009-08-19 2012-07-18 엘지전자 주식회사 단말기에서의 음원 처리 방법 및 이를 적용한 단말기
WO2013058728A1 (en) * 2011-10-17 2013-04-25 Nuance Communications, Inc. Speech signal enhancement using visual information
US8676579B2 (en) * 2012-04-30 2014-03-18 Blackberry Limited Dual microphone voice authentication for mobile device
US10516657B2 (en) * 2014-04-24 2019-12-24 Mcafee, Llc Methods and apparatus to enhance security of authentication
GB2541466B (en) * 2015-08-21 2020-01-01 Validsoft Ltd Replay attack detection

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015191076A (ja) 2014-03-28 2015-11-02 セコム株式会社 音声識別装置

Also Published As

Publication number Publication date
GB2581595B (en) 2021-09-22
GB202004478D0 (en) 2020-05-13
CN111194445A (zh) 2020-05-22
KR20200066691A (ko) 2020-06-10
GB2581595A (en) 2020-08-26
WO2019073234A1 (en) 2019-04-18

Similar Documents

Publication Publication Date Title
US10839808B2 (en) Detection of replay attack
US11276409B2 (en) Detection of replay attack
US10770076B2 (en) Magnetic detection of replay attack
US11704397B2 (en) Detection of replay attack
CN111316668B (zh) 扬声器回放的检测
US9706305B2 (en) Enhancing audio using a mobile device
US9226076B2 (en) Evacuation of liquid from acoustic space
CN105210389B (zh) 用于确定麦克风的位置的方法和装置
CN104041075A (zh) 音频源位置估计
CN106659936A (zh) 用于确定增强现实应用中音频上下文的系统和方法
US9591405B2 (en) Automatic audio enhancement system
EP2795930A1 (en) Automated user/sensor location recognition to customize audio performance in a distributed multi-sensor environment
KR102532584B1 (ko) 리플레이 공격의 검출
WO2019060137A1 (en) DETECTION OF PERSISTENT INTERFERENCE
CN107079219A (zh) 面向用户体验的音频信号处理
US20140152503A1 (en) Direction of arrival estimation using linear array
US20240169982A1 (en) Natural speech detection

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant