Criptografia de senha em Login com AngularJS

Pessoal,

estou iniciando um projeto com AngularJS e me deparei com uma dúvida referente à transmissão dos dados ao fazer uma requisição de login ao back-end.

Basicamente o que eu tenho é:

meu campo input para senha

<input type="password" class="form-control" ng-model="vm.usuario.senha" id="senha" name="senha" placeholder="Senha" required>

e no meu controller tenho o objeto usuário que receberá a senha

vm.usuario = {};

e terei o método efetuarLogin, que chamará a minha service e respectivamente meu back-end:

function efetuarLogin() { console.log(vm.usuario.login); console.log(vm.usuario.senha); }

Quando informo a senha na tela de login, esta ficará armazenada no meu controller (usuario.senha) de forma textual, sem criptografia. Quando faço a chamada para o back-end através de um método POST, a senha trafega livremente sem criptografia e isso é facilmente interceptável.

Como vocês fazem para tratar esse assunto no AngularJS? Como tratam a criptografia da senha no front-end?

Pesquise sobre HTTPS e SSL.

1 curtida

(respostas abandonadas pelo autor, serão removidas automaticamente em 24 horas a exceto se forem sinalizadas)

Obrigado pela dica!
Não sabia como pesquisar, ajudou muito!

leia sobre criptografia, como trabalhas com JSON, use o javascript para gerar o hash da senha informado, como o amigo falou você pode optar por um protocolo seguro usando o HTTPS, ou um túnel de tráfego de informações “seguro” o SSL, além do túnel ter seus dados criptografados, o SSL já foi quebrado, mas isso também não impede que os dados sejam interceptados, além dos protocolos citados acima, criptografe suas informações sigilosas, quando mais segurança desejar, aumente o nível da criptografia, existem alguns exemplos como MD5, SHA1, SHA2, SHA3.

1 curtida