Alexa Speaker Verification
Many people love Amazon’s Alexa Service! And we can’t deny, it’s a pretty great service!
But currently, there are some things lacking on Alexa & Amazon Echos.
One problem is, as it stands your Echo (& Alexa) will accept commands from anyone. And for most typical situations that’s perfectly acceptable. But what about the situations where Alexa could disclose personal, private, or sensitive information to the command issuer.
You wouldn’t want Alexa reading through personal work emails to anyone who asks…
You wouldn’t want Alexa reading through personal work emails to anyone who asks…Or Alexa making bank transfers on behalf of you without proper authentication (not sure if this is an Alexa Skill yet :) ). But you get the idea!
Thus we wanted to tackle this issue and extend Alexa so that she may be able to recognize her owner; given a key phrase spoken by the owner.
We chose to use Microsoft’s (MS) pretty cool Speaker Recognition API to implement a small layer of speaker verification. After training the MS service on audio of the owner’s voice saying the key phrase (also know as enrollment), we are able to make REST verification calls to authenticate a the owner. Once the user is authenticated they are allowed to ask Alexa any question as normal.
As you can see in the demo above, there are 2 parts to authentication, (1) the right passphrase and (2) the owner’s voice. Once the system can verify both parts, the owner is allowed to proceed to asking Alexa any question.