Passwort Generator

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
beetronic
User
Beiträge: 33
Registriert: Mittwoch 2. Mai 2007, 10:23

Hallo Forum,

ich möchte gerne zufällige "pseudo-deutsche" Passwörter generieren, die sich gut buchstabieren und merken lassen, z.B. MEKALO, UNITOG, etc.

Kennt jemand ein Python Modul, das ich dafür nehmen könnte?

Gruss + Dank, BT
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

beetronic hat geschrieben:Kennt jemand ein Python Modul, das ich dafür nehmen könnte?
Ich kenn da keins, aber auf Anhieb sieht das für mich so aus, als ob man dazu nur zufällig Silben aneinanderhängen müsste, was mit den tools in random recht einfach wäre.
EnTeQuAk
User
Beiträge: 986
Registriert: Freitag 21. Juli 2006, 15:03
Wohnort: Berlin
Kontaktdaten:

Hallo beetronic!

Pocoo besitzt eine kleine Funktion, die so etwas kann, zu finden hier

Viel spaß!
beetronic
User
Beiträge: 33
Registriert: Mittwoch 2. Mai 2007, 10:23

Ja, das sieht gut aus, sollte für meine Zwecke reichen.

Vielen Dank, BT
EnTeQuAk hat geschrieben: Pocoo besitzt eine kleine Funktion, die so etwas kann, zu finden hier
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Ich kann da ebenfalls was als Inspiration anbieten: http://homework.nwsnet.de/releases/b9d3 ... -generator (neue URL)
Zuletzt geändert von Y0Gi am Sonntag 10. Februar 2013, 00:32, insgesamt 3-mal geändert.
beetronic
User
Beiträge: 33
Registriert: Mittwoch 2. Mai 2007, 10:23

Y0Gi hat geschrieben:Ich kann da ebenfalls was als Inspiration anbieten: http://homework.nwsnet.de/products/57
Danke. Die Routine zum Erzeugen des Passwortes ist schön klein und den ganzen GUI Kram lass ich einfach weg.

Gruss, BT
pyStyler
User
Beiträge: 311
Registriert: Montag 12. Juni 2006, 14:24

Y0Gi hat geschrieben:Ich kann da ebenfalls was als Inspiration anbieten: http://homework.nwsnet.de/products/57
der ist zwar nicht schlecht, aber die Zahlen werden leider immer nur hinten angehängt

hier mal ein versuch von mir

Code: Alles auswählen

# -*- coding: utf-8 -*-

import random 
import Tkinter

root = Tkinter.Tk()

textvar = Tkinter.StringVar()

liste = []

def _scrolledEntry(*args):
        op, howMany = args[0], args[1]
        if op == "scroll":
            units  =  args[2]
            entry.xview_scroll ( howMany, units )
        elif op == "moveto":
            entry.xview_moveto ( howMany )
    
def createPasswd():
    zahlen = '1234567890'
    zeichen = 'AEIOUaeioubcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ'
    return ''.join([random.choice( zahlen if i%2 else zeichen ) for i in range(7)])
    
def getNewPasswd():
    pw = createPasswd()
    textvar.set( pw )
    liste.append( pw )
        
def createTk():
    global entry

    scb = Tkinter.Scrollbar(root, orient='horizontal', command=_scrolledEntry)
    scb.pack( fill=Tkinter.X )
    fnt = '{Lucida Sans Typewriter} 28 bold'
    entry = Tkinter.Entry(root, textvariable=textvar,
                relief=Tkinter.GROOVE,
                bd=1,
                background='#cdcc71',
                font=fnt)
    entry.pack(fill=Tkinter.X)
    entry["xscrollcommand"] = scb.set
    b = Tkinter.Button(root,  text='password', command=getNewPasswd)
    b.pack(fill=Tkinter.X, pady=10)
    

def _main():
    createTk()
    root.geometry('500x110')
    root.mainloop()
    
if __name__=='__main__':
    _main()
Gruss
pyStyler
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

pyStyler hat geschrieben:
Y0Gi hat geschrieben:Ich kann da ebenfalls was als Inspiration anbieten: http://homework.nwsnet.de/products/57
der ist zwar nicht schlecht, aber die Zahlen werden leider immer nur hinten angehängt
Nun, man kann nach diversen Schemata Passwörter zusammen setzen. Da könnte man z.B. eine Zahl am Anfang und zwei in der Mitte haben wollen, oder jeweils drei durch Sonderzeichen getrennte Segmente... Meine Lösung ist sicher nicht der Weisheit letzter Schluss, aber getreu dem KISS-Prinzip habe ich hier nicht den ultimativen Hammer für alle Anforderungen bauen wollen. Wenn man was bestimmtes haben möchte, lässt sich das - gerade in Python - leicht anpassen oder nachbauen.

Übrigens verwende ich in meinem Code ``join()`` und füge optional Strings zusammen. Nach meinem aktuellen Wissen würde ich da Gebrauch von Generatoren machen (und PEP 8-konformen Bezeichnern). Soweit ich mich erinnere war jene Lösung allerdings die effizienteste (Generatoren außen vor gelassen).
Antworten