Gerar senhas seguras com Python
Os administradores de sistemas e os desenvolvedores de software encontram diversas necessidades em que a geração de senhas aleatórias e seguras se torna necessária. Neste artigo, descrevo melhor a necessidade de criarmos senhas seguras, além de disponibilizar um script em Python para a automação dessa tarefa.
[ Hits: 9.128 ]
Por: Diego Mendes Rodrigues em 23/11/2020 | Blog: https://www.linkedin.com/in/diegomendesrodrigues/
"""
Gerar senhas em Python, com letras, números, símbolos e outras variações
-
Diego Mendes Rodrigues
"""
import secrets
import string
import uuid
def gerar_senha_letras(comprimento):
"""Gerar uma senha com letras, com o comprimento informado
:param comprimento: Comprimento da senha
:return: Senha gerada
"""
password_characters = string.ascii_letters
password = ''.join(secrets.choice(password_characters) for i in range(comprimento))
return password
def gerar_senha_letras_numeros(comprimento):
"""Gerar uma senha com letras e números, com o comprimento informado
:param comprimento: Comprimento da senha
:return: Senha gerada
"""
password_characters = string.ascii_letters + string.digits
password = ''.join(secrets.choice(password_characters) for i in range(comprimento))
return password
def gerar_senha_letras_numeros_simbolos(comprimento):
"""Gerar uma senha com letras, números e símbolos, com o comprimento informado
:param comprimento: Comprimento da senha
:return: Senha gerada
"""
password_characters = string.ascii_letters + string.digits + string.punctuation
password = ''.join(secrets.choice(password_characters) for i in range(comprimento))
return password
def gerar_senha_hexadecimal(metade_comprimento):
"""Gerar uma senha hexadecimal, sendo o comprimento igual o dobro
:param metade_comprimento: Comprimento da senha
:return: Senha gerada
"""
password = secrets.token_hex(metade_comprimento)
return password
def gerar_senha_uuid():
"""Gerar uma senha com UUID com 36 caracteres
:return:
"""
password = uuid.uuid4()
return password
if __name__ == '__main__':
"""Função principal do script que gera senhas em Python"""
senha = gerar_senha_letras(16)
print(senha)
senha = gerar_senha_letras_numeros(16)
print(senha)
senha = gerar_senha_letras_numeros_simbolos(16)
print(senha)
senha = gerar_senha_hexadecimal(12)
print(senha)
senha = gerar_senha_uuid()
print(senha)
Instalando Nginx e PHP no Ubuntu
Varredura de PING Utilizando o Python
Instalar e utilizar o FFmpeg no Ubuntu
Alternativas ao Microsoft Visio para Linux
Pydev - Preparando o Eclipse para o Python
Redes definidas por Software com Mininet e POX - Criando meu primeiro Controlador
Monitorando produtos no ML com Python 3 via BeautifulSoup
Como baixar vídeos do Facebook via terminal
Bluefin - A nova geração de ambientes de trabalho Linux
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Pós-instalação do elementary OS 8.1
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
archlinux resolução abaixou após atualização (18)
Conky não mostra temperaturas da CPU no notebook (7)
Estou com um problema no meu desktop do ubuntu (2)
Não estou conseguindo fazer funcionar meu Postfix na versão 2.4 no Deb... (0)









