Compartiilhe

Em meio a evolução tecnológica, é importante verificar a segurança das senhas, por isso, segue um código validador de senha em python.

A um tempo atrás eu fiz um post de um gerador de senhas em python aqui no blog, dessa vez eu trouxe um outro código, mas agora com foco em validar se a senha é uma senha válida ou não, com base em critérios pré-definidos.

Pré-requisitos:

Certifique-se de ter o Python instalado em seu ambiente de desenvolvimento. Se ainda não o fez, você pode baixá-lo em python.org.

Vamos criar um script Python simples para validar senhas com base em critérios específicos. Abaixo está um exemplo básico de como você pode realizar essa tarefa.

# Feito por gustavo.tec.br
import re

def validar_senha(senha):
    # Critérios de validação, altere para a quantidade que você desejar
    comprimento_minimo = 8
    min_caracteres_especiais = 2
    min_numeros = 3
    min_maiusculas = 1

    # Contagem de caracteres especiais, números e letras maiúsculas
    count_caracteres_especiais = len(re.findall(r'[!@#$%^&*(),.?":{}|<>]', senha))
    count_numeros = len(re.findall(r'\d', senha))
    count_maiusculas = len(re.findall(r'[A-Z]', senha))

    # Verifica se atende aos critérios
    if (
        len(senha) >= comprimento_minimo and
        count_caracteres_especiais >= min_caracteres_especiais and
        count_numeros >= min_numeros and
        count_maiusculas >= min_maiusculas
    ):
        return True
    else:
        return False

# Entrada de senha pelo usuário
senha_usuario = input("Digite sua senha: ")

# Verifica se a senha é forte
if validar_senha(senha_usuario):
    print("Senha forte!")
else:
    print("Senha Fraca. Por favor, siga as diretrizes de segurança, coloque caracteres especiais, números e letras maiúsculas")
  1. Critérios de Validação:
    • Comprimento Mínimo: A senha deve ter pelo menos 8 caracteres.
    • Mínimo de Caracteres Especiais: São necessários pelo menos 2 caracteres especiais na senha.
    • Mínimo de Números: A senha deve conter pelo menos 3 números.
    • Mínimo de Letras Maiúsculas: É necessário pelo menos 1 letra maiúscula na senha.
  2. Contagem de Caracteres Especiais, Números e Letras Maiúsculas:
    • Utilizamos expressões regulares (re.findall) para contar o número de caracteres especiais, números e letras maiúsculas presentes na senha.
    • As expressões regulares utilizadas são:
      • r'[!@#$%^&*(),.?":{}|<>]': Encontra caracteres especiais.
      • r'\d': Encontra números.
      • r'[A-Z]': Encontra letras maiúsculas.
  3. Função de Validação:
    • A função validar_senha compara a contagem de caracteres especiais, números e letras maiúsculas com os critérios mínimos estabelecidos.
  4. Ajustando os Critérios:
    • Se a senha atender a todos os critérios, a função retorna True, indicando que a senha é válida.
    • Caso contrário, retorna False, indicando que a senha não atende aos requisitos de segurança.
  5. Entrada de Senha pelo Usuário:
    • Utilizamos a função input para permitir que o usuário insira sua senha.
  6. Mensagem de Saída:
    • Dependendo do resultado da validação, uma mensagem apropriada é exibida para informar ao usuário se a senha é válida ou não.

Ao implementar um validador de senhas em Python, você fortalece a segurança do seu sistema, garantindo que os usuários criem senhas robustas

Link para o github -> github.com/gugahb/validadorPwPython


Compartiilhe