To protect your privacy, the app doesn’t upload the audio itself, just the digital signature.
To protect your privacy, the app doesn’t upload the audio itself, just the digital signature.
Joe and Bob - were they together on Sunday at 2pm? Well let's check the digital audio signatures to see if they match.
Or, John just uploaded a signature that matches our samples of "Kill the president."
And a few thousand other examples.
On the "probably too simple, but..." side, record 8 seconds of audio. Normalize it. Bucket the net volume audio levels across quarter-second intervals. Fuzzy match a bit. If the levels have some change in them, and the changes match, you're in. Virtually no useful information in that signature.
By contrast, if you get "clever", and want to go with that basic approach, but you want more bits to fuzzy match, so you break apart the frequency bands into 64 bands and sample on 50 millisecond intervals, and you're getting perilously close to revealing speech in the signature with enough processing. (You lose a lot, but you end up with more to work with than we privacy sensitive folks would like.)
The point isn't that either of these are what they are doing. I don't expect either of those would "work" on their own; I kept them simple to describe and simple to understand for the purposes of this post. The point is the info leak on the signature can vary quite widely depending on how they do it, and without knowing the algorithm you can't speculate very effectively. It could be anything from "fairly safe" to "you might as well just send up the audio".
Let's say the audio signature of "Kill the president" is 9a0c0a6868a2a784059d9a634e4a58c0.
"kill the president" in a different tone would be entirely different: ed3e3cd6be6eeb2de9b480e2c9590cc9
Conside that the web browser's desktop/laptop microphone and the cellphone/telephone microphone will probably never produce identical audio samples, if not due to the actual transducers, then simply due to proximity to various ambient audio sources like the user's breathing versus fan motors attached to a laptop shell or desktop case.
1. "Joe and Bob - were they together on Sunday at 2pm?"
Joe and Bob avoid this by not authenticating using the same mechanism in the same room at the same time.
2. "John just uploaded a signature that matches our samples of 'Kill the president'".
Solution 1: John understands how the authentication works by recording ambient sound, and refrains from saying things like "kill the president" during that procedure.
Solution 2: John starts an Internet meme which encourages every user of this authentication mechanism to say "Kill the president" over and over again during the procedure. Now, millions of signatures match.
I'm also not sure how I feel about a second factor that would allow an adversary to authenticate by simply sitting in the same coffee shop as me. Manual authentication seems important, and U2F already addresses some of the nusiances of TOTP-based schemes.
This is a really clever innovation, though.