HASHCRYPT

Publicado por Igor Matsunaga em

O hashcrypt é um script básico para criação de hash para palavras-chave, utilizando Python(bcrypt).

Hash de senha em Python com Bcrypt

O que é hashing?

Para não ser confundido com criptografia, hash é o processo irrevogável e unidirecional de pegar uma string e se transformar em um tamanho fixo de caracteres aparentemente aleatórios. Por exemplo, aqui está a palavra meuhash  usando bcrypt:

b'$2b$12$hkotUkSeOhtlV2CUxHfLyuCtWBNTvg6KrkZk/hOKfyORJFgiHFieK'

Ao contrário da criptografia, que pode ser decodificada e revertida em sua forma original, o hashing é irreversível, ou seja, não há como recuperar a string original, tornando-a ideal para senhas e autenticação. Comparando senhas se executarmos a mesma bcrypt função de hashing novamente na mesma palavra meuhash, obteremos: 

b'$2b$12$aOCSI6vtMZYtB7me4CK2bO1M1R1I.l5mvahmffvsguzucZk3E9j3.'

O que é claramente diferente do nosso primeiro hash … Se você não está familiarizado com hashing, você pode estar pensando neste ponto “Então, como eu comparo uma senha com uma senha com hash ?  Quando o usuário quiser se autenticar no sistema, teremos em mãos a senha fornecida por ele na tela de login, mas não podemos compará-la diretamente ao valor armazenado no banco, pois o que está armazenado é o hash da senha. O serviço de autenticação deverá aplicar a função de hash sobre a senha fornecida pelo usuário e comparar o resultado com o que está armazenado no BD. Se o valor obtido for idêntico ao hash armazenado no banco de dados para aquele usuário, a autenticação ocorre com sucesso. Caso contrário, erro de autenticação.

Instalação dos pacotes necessários

git clone https://github.com/igorMatsunaga/hashcrypt
cd hashcrypt
pip install –r requeriments.txt 

Utilizar o hashcrypt

python3 hashCrypt.py

Digite a palavra-chave e o script se encarregará do resto.

Bons estudos e que a segurança esteja com você!


Igor Matsunaga

Diretor Técnico da NSWorld, entusiasta da área hacking a mais de 6 anos, hacker ético, formando em Segurança da Informação.

0 comentário

Deixe uma resposta

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