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.482 ]
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)
Linuxfx OS - Distribuição para quem deseja o visual do Windows 10
FIND - Encontrar informações no Linux
Ubuntu ou Debian com KDE Plasma
Como forçar alteração de senha de usuário no próximo login no Linux
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Robótica com Android e Arduino
RapidScan - Multi-Tool WEB Vulnerability Scanner
Python - Usando requests anônimos através da rede Tor
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Instalar Ubuntu com Btrfs + LUKS de forma fácil
Habilitando "hotcorner" no Ubuntu
Zen Kernel no Arch Linux (instalar e remover)
Como instalar e remover o kernel Liquorix
Fazendo o controle de Xbox 360 USB funcionar no One Piece Pirate Warriors 4 (Arch Linux/Steam)
Continuando meus tópicos anteriores (9)
Executar um programa em Rust (2)
Não consigo publicar screenshots no Viva o Linux [RESOLVIDO] (5)









