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.075 ]
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)
Instalar um LAMP com boa performance
Sistema de Informações Geográficas - Softwares Livres ou Proprietários?
GoAccess - Analisador de log em tempo real do Apache
Taskwarrior, o Guerreiro das Tarefas - Gerenciar sua Lista TODO no Terminal
MultiCD - Diversas Distribuições no mesmo DVD/Pendrive
Breve Estudo Sobre Ransomwares e Análise Estática/Dinâmica do WannaCry
Python - Uma linguagem orientada a objetos
Python - Enviando Backup para Servidor Secundário
Qu1cksc0pe - All-in-One Static Malware Analysis Tool
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Instalando partes faltantes do Plasma 6









