繁体   English   中英

创建在 Python 中存储哈希密码的文本文件

[英]Creating a text file that stores a hashed password in Python

import os
import time
import random
import sys
import string
import hashlib

users = {}

class User:
    def __init__(self, username, password):
        self.username = username
        self.password = password

running = True

while running:
    os.system("cls")
    print("Welcome. Please register yourself.")
    print()
    uname = input("Username: ")
    pword = input("Password: ")

    users.update({"" + uname : "" + pword})

    hash_object = hashlib.sha1(pword.encode())

    pswrd = open("hash.txt", "a")
    pswrd.write(str(hash_object))

    pswrd.close()

    for key, value in users.items():
        print()
        print(key, " : ", value)
        time.sleep(3)

当我打开文本文件时,它有这个:

<sha1 HASH object @ 0x010E6600>

我怎样才能防止这种情况发生? 任何帮助是极大的赞赏!

PS 我知道在字典中存储用户名和密码效率不高,但这是我现在唯一能做的方法。

您可能不想存储 hash 本身,而是存储它的 HEX 摘要:

hash_object.hexdigest()
# 'dc7e6b79b489fa810e11889710023e7e2e36fb64'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM