Can I Hear Your Face? Pervasive Attack on Voice Authentication Systems with a Single Face Image
Nan Jiang, Bangjie Sun, and Terence Sim, National University of Singapore; Jun Han, KAIST
๋ ผ๋ฌธ ์์ฝ: Foice๋ ๋จ์ผ ์ผ๊ตด ์ด๋ฏธ์ง๋ง์ ์ฌ์ฉํด ํผํด์์ ์์ฑ ์ํ ์์ด๋ ์์ฑ์ ํฉ์ฑํ์ฌ WeChat, Microsoft Azure, Siri ๋ฑ ์์ฑ ์ธ์ฆ ์์คํ ์ ์์ด๋ ์๋ก์ด ๋ฅํ์ดํฌ ๊ณต๊ฒฉ ๊ธฐ๋ฒ์ด๋ค. ์ผ๊ตด๊ณผ ์์ฑ์ ์๋ฌผํ์ ์๊ด๊ด๊ณ๋ฅผ ํ์ฉํ๋ฉฐ, ์์ ๋ฏธ๋์ด์์ ์ฝ๊ฒ ์ป์ ์ ์๋ ์ผ๊ตด ์ด๋ฏธ์ง๋ฅผ ์ด์ฉํด ๊ณต๊ฒฉ์ ํ์ฅ์ฑ๊ณผ ์ํ์ฑ์ ๋์ธ๋ค. Foice๋ Train Phase์์ ์ ๊ฒฝ๋ง์ ํ์ตํ๊ณ , Attack Phase์์ ํฉ์ฑ ์์ฑ์ ์์ฑํด ์ธ์ฆ ์์คํ ์ ์ฐํํ๋ค.
์ธ๋ถ ๋ด์ฉ
1. Train Phase
Train Phase์์๋ ์ ๊ฒฝ๋ง์ ํ์ต์์ผ ์ผ๊ตด ์ด๋ฏธ์ง์์ ์์ฑ ํน์ง์ ์ถ์ถํ๊ณ ํฉ์ฑํ ์ ์๋ ๋ชจ๋ธ์ ๊ตฌ์ถํ๋ค. ๊ตฌ์ฑ: Data Processing โ Face-dependent Voice Feature Extractor โ Face-independent Voice Feature Generator
Data Processing
์ค๋ช : ์จ๋ผ์ธ ๊ณต๊ฐ ๋ฐ์ดํฐ์ (VoxCeleb1, VoxCeleb2 ๋ฑ)์ ์ ์ฒ๋ฆฌํ๋ค.
Face Processing:
Face Cropping & Normalization: ์ผ๊ตด์ ํ์งํด ํฌ๋กญํ๊ณ , ๋์ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ํฌ๊ธฐ์ ๋ฐฉํฅ์ ์ ๊ทํํ๋ค.
Blurriness Assessment: Sobel edge detection์ผ๋ก ์ด๋ฏธ์ง ์ ๋ช ๋๋ฅผ ํ๊ฐํ๋ฉฐ, ํ์ง ์ ์๊ฐ 100 ๋ฏธ๋ง์ธ ํ๋ฆฐ ์ด๋ฏธ์ง๋ ์ ์ธํ๋ค. ๋จ, Foice๋ ์ ํด์๋ ์ด๋ฏธ์ง์์๋ ํจ๊ณผ์ ์ด๋ค(ยง5.5.3).
Voice Processing:
Speaker Encoder๋ฅผ ์ฌ์ฉํด ์์ฑ ๋ น์์์ voice feature vector(F_GT)๋ฅผ ์ถ์ถํ๋ค.
NISQA ๋ชจ๋ธ๋ก ์์ง์ ํ๊ฐํด ๊ณ ํ์ง ์์ฑ๋ง ์ ๋ณํ๋ฉฐ, ์ด๋ F_GT๋ก ์ฌ์ฉ๋์ด Face-dependent Voice Feature Extractor์ Face-independent Voice Feature Generator์ ํ์ต์ ํ์ฉ๋๋ค(ยง5.2.2).
์์ :
์๋ฌธ์์ "์ด๋ ๊ฒ ์ป์ด๋ธ feature vector๋ deep-learning model์ ground truth(f_gt) ์ญํ "์ ๋ง์ง๋ง, F_GT๊ฐ Face-dependent Voice Feature Extractor์ Face-independent Voice Feature Generator์์ ๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ป๊ฒ ์ฌ์ฉ๋๋์ง ๋ช ์ํด์ผ ํ๋ค.
Voice Processing์ ๋จ์ํ feature vector ์ถ์ถ๋ฟ ์๋๋ผ ์์ง ํํฐ๋ง(NISQA)์ ํฌํจํ๋ค.
๊ฐ์ ์ (๋ณด์):
์๋ฌธ์ ์ ์(์์ฑ ๋ ธ์ด์ฆ ์ ๊ฑฐ)์ ์ ์ ํ๋ฉฐ, ์ด๋ SV2TTS์ ๋ ธ์ด์ฆ ๋ฏผ๊ฐ์ฑ ๋ฌธ์ ๋ฅผ ํผํ ์ ์๋ Foice์ ์ฅ์ ๊ณผ ์ฐ๊ฒฐ๋๋ค(ยง5.2.1).
์ถ๊ฐ๋ก, ๋ฐ์ดํฐ์ ์ ๋ค์์ฑ(์: ๋ค์ํ ์ธ์ด, ์ต์)์ ํ๋ณดํ๋ฉด ๋ชจ๋ธ์ ์ผ๋ฐํ ์ฑ๋ฅ์ด ํฅ์๋ ์ ์๋ค.
Face-dependent Voice Feature Extractor
์ค๋ช :
์ผ๊ตด ์ด๋ฏธ์ง(Img_face)์์ ์์ฑ๊ณผ ์๊ด๋ ํน์ง(F_dep)์ ์ถ์ถํ๋ค: F_dep = C_f->v(E_face(Img_face)).
E_face: ResNet ๊ฐ์ CNN์ผ๋ก, ์ฑ๋ณ, ๋์ด, ์ ์ ๋ชจ์ ๋ฑ ์์ฑ๊ณผ ๊ด๋ จ๋ ์ผ๊ตด ํน์ง(F_face)์ ์ถ์ถํ๋ค.
C_f->v: F_face๋ฅผ ์์ฑ ํน์ง(F_dep)์ผ๋ก ๋ณํํ๋ค.
ํ์ต์ F_dep์ ground truth ์์ฑ ํน์ง(F_GT) ๊ฐ์ ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ loss ํจ์(Err(F_dep, F_GT))๋ฅผ ์ต์ํํ๋ฉฐ, E_face์ C_f->v๋ฅผ ๊ณต๋์ผ๋ก ํ๋ จํ๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก, ์ฑ๋ณ(์: ๋จ์ฑ์ ๋ฎ์ ํผ์น), ๋์ด(์: ๊ณ ๋ น์์ ์์ ์์ฑ) ๋ฑ ์ผ๊ตด๊ณผ ์๊ด๋ ์์ฑ ํน์ง์ ์ถ์ถํ๋ค(Observation 1, ยงA.2.1).
์คํ์ ์ผ๋ก, Foice๋ ์ฑ๋ณ ์ ๋ณด๋ฅผ 90% ์ด์ ์ ํ๋๋ก ์ถ์ถํ๋ค(ยงA.2.1, Figure 17).
์ ์ , ํฑ์ ๋ฑ ํน์ ์ผ๊ตด ํน์ง์ด ํผ์น์ ํฌ๋จผํธ ์ฃผํ์์ ์ํฅ์ ๋ฏธ์น๋ค(ยง5.6).
Face-independent Voice Feature Generator
์ค๋ช :
์ผ๊ตด๋ก ์ถ๋ก ํ ์ ์๋ ์์ฑ ํน์ง(F_indep)์ ์์ฑํ๊ณ , F_dep์ ๊ฒฐํฉํด ์์ ํ ์์ฑ ํน์ง(F_recon)์ ์ฌ๊ตฌ์ฑํ๋ค.
F_indep ์์ฑ: Bottleneck(B(ยท))์ F_GT๋ฅผ ์ ๋ ฅ๋ฐ์ F_indep๋ฅผ ์ถ๋ ฅํ๋ค(F_indep = B(F_GT)). F_indep๋ ์ฑ๋, ๋น๊ฐ ๊ตฌ์กฐ ๋ฑ ์ผ๊ตด๊ณผ ๋ฌด๊ดํ ํน์ง๋ง ํฌํจํด์ผ ํ๋ฏ๋ก, bottleneck dimension(์ต์ : 48)์ ์กฐ์ ํด F_dep๋ฅผ ํํฐ๋งํ๋ค(Observation 2, ยงA.2.2).
F_recon ์์ฑ: Reconstructor(R(ยท,ยท))๋ F_indep์ F_dep๋ฅผ ๊ฒฐํฉํด F_recon์ ์์ฑํ๋ค(F_recon = R(F_indep, F_dep)).
ํ์ต: ๋ ๊ฐ์ง loss๋ฅผ ์ต์ํํ๋ค:
Reconstruction error: F_recon๊ณผ F_GT์ ์ฐจ์ด(Err(F_recon, F_GT))๋ฅผ ์ต์ํ.
KL-divergence loss: F_indep๊ฐ ํ์ค ์ ๊ท๋ถํฌ(๐ฉ(0, I))๋ฅผ ๋ฐ๋ฅด๋๋ก ์ ๋ํด ์ฐ์์ ์ธ search space๋ฅผ ์์ฑ. ์ด๋ ํ์ต ๋ฐ์ดํฐ์ ์๋ ํผํด์์ F_indep๋ ํฌํจํ๋ค.
2. Attack Phase
์ค๋ช :
ํผํด์์ ์ผ๊ตด ์ด๋ฏธ์ง ํ ์ฅ์ ์ฌ์ฉํด ์์ฑ ์ธ์ฆ ์์คํ ์ ๊ณต๊ฒฉํ๋ค.
F_dep ์์ฑ: ํ์ต๋ E_face์ C_f->v๋ก Img_face์์ F_dep๋ฅผ ์ถ์ถํ๋ค.
F_indep ์ํ๋ง: ํ์ค ์ ๊ท๋ถํฌ(๐ฉ(0, I))์์ N๊ฐ์ F_indep๋ฅผ ๋ฌด์์๋ก ์ํ๋งํ๋ค.
F_recon ์์ฑ: Reconstructor๋ก F_dep์ ๊ฐ F_indep๋ฅผ ๊ฒฐํฉํด N๊ฐ์ F_recon_i = R(F_indep_i, F_dep)๋ฅผ ์์ฑํ๋ค.
์์ฑ ํฉ์ฑ: Voice Synthesizer๋ F_recon_i์ ํ ์คํธ ์ ๋ ฅ(์: WeChat ์ธ์ฆ ์ซ์, "Hey, Google!")์ ๋ฐ์ N๊ฐ์ ํฉ์ฑ ์์ฑ์ ์์ฑํ๋ค.
๊ณต๊ฒฉ ์คํ: N๊ฐ์ ์์ฑ์ ์ธ๋ถ ์คํผ์ปค๋ก ์์ฐจ์ ์ผ๋ก ์ฌ์ํด ์ธ์ฆ ์์คํ ์ ์ฐํํ๋ค. ๋ฎ์ ์๊ณ๊ฐ(0.5~0.6)๊ณผ ๋ฌด์ ํ ์๋๋ฅผ ์ ์ฉํ๋ค(ยง2.2).
์คํ ๊ฒฐ๊ณผ, WeChat Voiceprint๋ 10๋ช ๋ชจ๋ ์ฐํ๋์์ผ๋ฉฐ, ํ๊ท 30%์ ํฉ์ฑ ์์ฑ์ด ์ฑ๊ณตํ๋ค(ยง5.2.1).
๊ณต๊ฒฉ์ ์ธ์ฆ ์์คํ ์ ์ทจ์ฝ์ (๋ฎ์ ์๊ณ๊ฐ, ๋ฌด์ ํ ์๋)์ ํ์ฉํ๋ค.
3. ์ ๋ชจ๋ธ์ด ์๋ํ๋๊ฐ?
์ค๋ช : Foice๊ฐ ์๋ํ๋ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ๋ค:
์ผ๊ตด-์์ฑ ์๊ด๊ด๊ณ: ์ผ๊ตด ํน์ง(์ฑ๋ณ, ๋์ด, ์ ์ ๋ฑ)์ ์์ฑ ํน์ง(ํผ์น, ํฌ๋จผํธ ์ฃผํ์ ๋ฑ)๊ณผ ์๋ฌผํ์ ์ผ๋ก ์๊ด๊ด๊ณ๊ฐ ์๋ค(ยง2.3). Face-dependent Voice Feature Extractor๋ ์ด๋ฅผ ํ์ตํด F_dep๋ฅผ ์ ํํ ์ถ์ถํ๋ค. ์๋ฅผ ๋ค์ด, ์ ์ ๊ณผ ํฑ์ ์ ํผ์น์ ํฌ๋จผํธ ์ฃผํ์์ ์ํฅ์ ๋ฏธ์น๋ค(ยง5.6, Figure 15). ์คํ์ ์ผ๋ก, ์ฑ๋ณ ์ ๋ณด๋ 90% ์ด์ ์ ํ๋๋ก ์ถ์ถ๋์๋ค(ยงA.2.1).
Search space์ ์ผ๋ฐํ: Face-independent Voice Feature Generator๋ bottleneck์ ํตํด F_indep๋ฅผ ํ์ค ์ ๊ท๋ถํฌ๋ก ์์ฑ, ์ฐ์์ ์ธ search space๋ฅผ ๋ง๋ ๋ค. ์ด๋ ํ์ต ๋ฐ์ดํฐ์ ์๋ ํผํด์์ ์์ฑ๋ ํฌํจํ๋ฉฐ, N์ ๋๋ฆด์๋ก ์ค์ ์์ฑ์ ๊ฐ๊น์ด F_recon์ ์ฐพ๋๋ค(ยง4.4, Observation 2). ์ต์ bottleneck dimension(48)์ F_dep๋ฅผ ์ต์ํํ๋ค(ยงA.2.2, Figure 18).
์ธ์ฆ ์์คํ ์ทจ์ฝ์ : ๋ฎ์ ์๊ณ๊ฐ(0.5~0.6)๊ณผ ๋ฌด์ ํ ์๋๋ Foice์ ์ฑ๊ณต๋ฅ ์ ๋์ธ๋ค(ยง2.2).
๊ฒฌ๊ณ ์ฑ: Foice๋ ์ ํด์๋ ์ด๋ฏธ์ง, ์ผ๊ตด ๊ฐ๋ฆผ, 5ํ ์๋ ์ ํ์์๋ ํจ๊ณผ์ ์ด๋ค(ยง5.5).
์คํ ๊ฒฐ๊ณผ: Foice๋ WeChat(100% ์ฑ๊ณต), VGGVox(67.6%), DeepSpeaker(87.7%)๋ฅผ ์ฐํํ๋ค(ยง5.2).
Foice๋ SV2TTS์ ๊ฒฐํฉ ์ ์ฑ๊ณต๋ฅ ์ 3๋ฐฐ ํฅ์์์ผฐ๋ค(ยง5.4, Figure 11).
Face-TTS ๋๋น 30~60๋ฐฐ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ๋ค(ยงA.3, Table 4).
4. ์คํ ๊ฒฐ๊ณผ
๋์: WeChat, Siri, Google Assistant, Bixby(์จ๋๋ฐ์ด์ค), Microsoft Azure, iFlytek, VGGVox, DeepSpeaker(ํด๋ผ์ฐ๋).
์ฑ๊ณผ:
WeChat: 10๋ช ๋ชจ๋ ์ฐํ, ํ๊ท 30% ์ฑ๊ณต๋ฅ (ยง5.2.1).
ํด๋ผ์ฐ๋: VGGVox(67.6%), DeepSpeaker(87.7%), Microsoft/iFlytek์์ SV2TTS์ ์ ์ฌ/์ฐ์(ยง5.2.2).
Foice๋ ์ฑ๋ณ/๋์ด ์ธ์ ์ ๋ณด(ํผ์น, ํฌ๋จผํธ ์ฃผํ์)๋ฅผ ํ์ฉ, Descriptive Attack(9.7%)๋ณด๋ค 3๋ฐฐ ๋์ 29.7% ์ฑ๊ณต๋ฅ (ยง5.3).
Augmentation Attack(Foice + SV2TTS)์ ๋ชจ๋ ์์คํ ์์ SV2TTS ๋จ๋ ๋ณด๋ค ์ฐ์(ยง5.4).
๊ฒฌ๊ณ ์ฑ: ์ ํด์๋, ์ผ๊ตด ๊ฐ๋ฆผ, 5ํ ์๋์์๋ ํจ๊ณผ์ (ยง5.5). ์ ์ /ํฑ์ ์ด ํผ์น/ํฌ๋จผํธ ์ฃผํ์์ ํฐ ์ํฅ(ยง5.6).
5. ๊ฐ์ ์ ๋ฐ ์ค๋ฆฌ์ ๊ณ ๋ ค
๊ฐ์ ์ :
์์ฑ ๋ฐ์ดํฐ ๋ ธ์ด์ฆ ์ ๊ฑฐ ์ ์ฒ๋ฆฌ ๊ฐํ.
3D ์ผ๊ตด ์ด๋ฏธ์ง๋ ์์ฑ ์ํ ๊ฒฐํฉ์ผ๋ก ์ ํ๋ ํฅ์(ยง6).
๋ฅํ์ดํฌ ํ์ง์ ๋ผ์ด๋ธ๋์ค ํ์ง ํตํฉ(ยง6).
์ค๋ฆฌ์ ๊ณ ๋ ค:
IRB ์น์ธ, ์ฐธ๊ฐ์ ํ๋ผ์ด๋ฒ์ ๋ณดํธ, ๋ฐ์ดํฐ ์ต๋ช ํ/์ญ์ (ยงA.4).
์ทจ์ฝ์ ์ฑ ์ ๊ณต๊ฐ๋ก ๊ธฐ์ ์ ์์ ์กฐ์น ์ด์ง.
์์ฑ ์ธ์ฆ ์์คํ ์ ์๋ก์ด ์ํ ๊ฒฝ๊ณ ๋ฐ ๋์ฑ ๊ฐ๋ฐ ์ด๊ตฌ(ยง8).
Last updated