Desenvolvimento web

Script de autenticação de dois fatores em PHP

Script de autenticação de dois fatores em PHP
Demonstração do script de autenticação em dois fatores

Está disponível no meu perfil no GitHub um exemplo simples de autenticação de dois fatores (2FA) usando a linguagem PHP. O script foi desenvolvido como uma atividade do curso de Sistemas para Internet da Faculdade de Tecnologia do Estado de São Paulo (FATEC Baixada Santista).

A primeira etapa é o login utilizando um nome de usuário e senha, com verificação via reCAPTCHA. Este método, já abordado antes no blog, existe para garantir que o acesso seja feito por humanos, e não por robôs.

Caso o nome de usuário e estejam corretos, o sistema envia um e-mail utilizando a função mail() do PHP, com um código numérico aleatório de uso único de seis dígitos.

Sem a utilização de um banco de dados, um array dentro de um arquivo PHP armazena os dados de login. Este arquivo, com nome definido no script, não pode ser acessado via browser.

Uma página de configuração simula o cadastro de novos usuários, com senha criptografada usando hash SHA-256. Este método também se aplica para o código numérico aleatório enviado por e-mail a cada acesso.

Além disso, a página de configuração também tem a funcionalidade de apagar o arquivo com a lista de usuários após o término do experimento.

Screenshot da página de configurações.
Screenshot da página de configurações

Para facilitar o estudo do script em outros idiomas, todas as mensagens em português provém de constantes definidas no arquivo config.php, com a tradução em inglês. O código também possui comentários em inglês.

Acesse o repositório com o script de autenticação de dois fatores em PHP

Tags: , , , , ,

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.