Heim  >  Artikel  >  Backend-Entwicklung  >  Einführung in die Methode zum Zitieren von Hash-Passwörtern in Flask (mit Code)

Einführung in die Methode zum Zitieren von Hash-Passwörtern in Flask (mit Code)

不言
不言nach vorne
2019-03-06 14:03:571724Durchsuche

Dieser Artikel bietet Ihnen eine Einführung in die Methode zum Zitieren von Hash-Passwörtern in Flask (mit Code), die einen bestimmten Referenzwert hat, Freunde in Not Ich kann darauf verweisen, ich hoffe, es wird Ihnen hilfreich sein.

Passwort-Hash:

Eine unordentliche Zeichenfolge, die durch einmalige Verschlüsselung des Passworts gebildet wird. Dieser Verschlüsselungsprozess gilt als irreversibel, d. h. man geht davon aus, dass es unmöglich ist, das ursprüngliche Passwort aus der Hash-Zeichenfolge wiederherzustellen. (Dieser Satz ist eine offiziellere Erklärung).

Um es ganz klar auszudrücken: Wenn wir ein Kontopasswort registrieren, müssen wir Password Hash verwenden, um das von uns registrierte Passwort zu verschlüsseln. Wenn wir uns dann anmelden, wird ein Entschlüsselungsprozess durchgeführt, der mit dem von uns eingegebenen Passwort übereinstimmt.

Verwendung in Flask:

1. Leitfadenpaket

# 导包         from werkzeug.security import generate_password_hash,check_password_hash

wobei: generic_password_hash das generierte Passwort ist; check_password_hash die Passwortüberprüfung

2. Verwenden Sie bei der Registrierung eines Kontos „generate_password_hash“

<span style="font-size: 15px;">@admin_blue.route(&#39;add_user&#39;)
defadd_user():<br/># Adminuser是数据库中一张表的名字 , user:注册的账号    pass_hash: 注册的密码,此时注册的密码的是 123
add_user=Adminuser(user=&#39;admin&#39;,<span style="color: #ff0000;"><strong>pass_hash=generate_password_hash(&#39;123&#39;)</strong></span>)
db.session.add(add_user)
return&#39;OK&#39;</span>

Das zu diesem Zeitpunkt registrierte Passwort lautet „123“. Wenn wir „123“ verwenden, wird die Datenbank zu:

3. Nachdem wir die Registrierung abgeschlossen haben, sind wir an der Reihe, uns anzumelden. Wenn wir uns anmelden, müssen wir bei der Eingabe des Passworts check_password_hash verwenden, um das Passwort zu entschlüsseln und dann zu überprüfen

# 登录
@admin_blue.route(&#39;/login&#39;,methods=[&#39;get&#39;,&#39;post&#39;])
def login():
    if request.method==&#39;POST&#39;:
        username=request.form.get(&#39;username&#39;)
        password=request.form.get(&#39;password&#39;)
        if not all([username,password]):
            flash(&#39;请输入账号和密码&#39;)
        else:
            sqluser=Adminuser.query.filter(Adminuser.user==username).first()
            if not sqluser:
                flash(&#39;账号不正确&#39;)
            else:
                a=check_password_hash(sqluser.pass_hash,password)
                print(a)
                if a:
                       session[&#39;admin_username&#39;]=username
                       return redirect(url_for(&#39;admin.index&#39;))
                else:
                       flash(&#39;密码不正确&#39;)
    return render_template(&#39;admin/login.html&#39;)

Kurz gesagt, der entscheidende Punkt ist: generic_password_hash dient zum Generieren des Passworts; check_password_hash ist die Passwortüberprüfung, und die anderen Codes sind die einfachste Registrierung und Anmeldung in Flask.

Das obige ist der detaillierte Inhalt vonEinführung in die Methode zum Zitieren von Hash-Passwörtern in Flask (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen