  Face authentication systems are becoming increasingly prevalent, especially
with the rapid development of Deep Learning technologies. However, human facial
information is easy to be captured and reproduced, which makes face
authentication systems vulnerable to various attacks. Liveness detection is an
important defense technique to prevent such attacks, but existing solutions did
not provide clear and strong security guarantees, especially in terms of time.
  To overcome these limitations, we propose a new liveness detection protocol
called Face Flashing that significantly increases the bar for launching
successful attacks on face authentication systems. By randomly flashing
well-designed pictures on a screen and analyzing the reflected light, our
protocol has leveraged physical characteristics of human faces: reflection
processing at the speed of light, unique textual features, and uneven 3D
shapes. Cooperating with working mechanism of the screen and digital cameras,
our protocol is able to detect subtle traces left by an attacking process.
  To demonstrate the effectiveness of Face Flashing, we implemented a prototype
and performed thorough evaluations with large data set collected from
real-world scenarios. The results show that our Timing Verification can
effectively detect the time gap between legitimate authentications and
malicious cases. Our Face Verification can also differentiate 2D plane from 3D
objects accurately. The overall accuracy of our liveness detection system is
98.8\%, and its robustness was evaluated in different scenarios. In the worst
case, our system's accuracy decreased to a still-high 97.3\%.
