En muchas ocasiones, cuando tenemos que crear un servicio que pide usuario/password, tendemos al uso de passwords simples o poco elaboradas. Tanto si es para un uso personal como si es para compartir información entre usuarios (este, quizás, más importante aún securizar), las password simples o basadas en diccionarios no son del todo una buena idea.
Este pequeño script de python genera una clave de N caracteres aleatorios (pasados por argumento, o 10 en su defecto), que puede añadir símbolos indicando el argumento "@".
#!/usr/bin/env python # -*- coding: utf-8 -*- import string,random,sys dictionary = string.ascii_letters + string.digits dictionary_extra = '@.-!~' N = 10 if(len(sys.argv)>1): if(sys.argv[1][0]=='@'): dictionary += dictionary_extra if(len(sys.argv[1])>1): N=int(sys.argv[1][1:]) else: N = int(sys.argv[1]) print ''.join(random.SystemRandom().choice(dictionary) for _ in range(N))
Ejemplos de uso:
$ python randompasswd @20 Dk5nl8w~.WxrkEj94!V~ $ python randompasswd @ 0KAiU0z@rC $ python randompasswd eqUL9Kaw22G1QFc
No hay comentarios:
Publicar un comentario