Autenticação
Para garantir que não ouve interceptação da troca de chaves, ou ataque "man in the middle", é necessário que as partes negociando uma troca de chaves façam uma autenticação ou identificação positiva mútua.
No SECVOICE isto é feito simultaneamente de duas formas. As duas autenticações são independentes e cada uma por si só garante a troca de chaves sem interceptação.
Uma das autenticações é feita pelo nosso servidor e pelo telefone de cada usuário. O servidor de comunicações e o cliente compartilham uma chave secreta e a usam para computar um código de autenticação de mensagem baseado em algoritmo hash (HMAC) que é usado para validar cada pacote de dados ou voz que trafega entre o cliente e o servidor.
É importante lembrar que esta chave secreta compartilhada entre o cliente e o servidor é usada apenas para fins de autenticação do usuário junto ao servidor, e é completamente independente das chaves de criptografia, que são criadas e destruidas dinamicamente no equipamento do usuário, não tendo o servidor como conhecer estas chaves.
A outra autenticação é feita pelos usuários. Uma vez efetuada a troca de chaves, o SECVOICE exibe na tela o "fingerprint" da chave e um usuário deve ler para o outro o valor que é exibido na sua tela. Se estes valores conferem um com o outro, a troca de chaves foi efetuada de forma segura. Note que esta autenticação é baseada na voz do usuário e a pessoa deve conhecer seu interlocutor e sua voz, sendo este procedimento conhecido como "autenticação por voz".
Estes dois processos de autenticação são completamente independentes e suficientes. Portanto o usuário não precisa confiar e depender dos nossos servidores de comunicação para autenticação, sendo suficiente que se use o procedimento de autenticação por voz.
Previous page: Números aleatórios
Next page: Criptografia de texto