首页 > 编程语言 >【Python】对密码文本进行加密, 并判断 hashlib

【Python】对密码文本进行加密, 并判断 hashlib

时间:2023-07-12 15:37:17浏览次数:51  
标签:hashlib sha256 加密 Python encrypted 密码 password salt

import hashlib


def encrypt_password(password, salt):
    # 创建一个sha256的哈希对象
    sha256_hash = hashlib.sha256()

    # 将盐值和密码组合起来并进行哈希
    hashed_password = salt.encode('utf-8') + password.encode('utf-8')
    sha256_hash.update(hashed_password)

    # 获取哈希结果
    encrypted_password = sha256_hash.hexdigest()

    return encrypted_password


def verify_password(password, salt, encrypted_password):
    # 对输入的密码进行加盐加密
    new_encrypted_password = encrypt_password(password, salt)

    # 比较加密后的密码和存储的加密密码是否一致
    if new_encrypted_password == encrypted_password:
        return True
    else:
        return False


if __name__ == "__main__":
    password = input("Enter your password: ")

    # 生成盐值
    salt = 'yanzhi'

    # 加密密码
    encrypted_password = encrypt_password(password, salt)
    print("Encrypted password:", encrypted_password)

    # 验证密码
    entered_password = input("Enter password again: ")
    if verify_password(entered_password, salt, encrypted_password):
        print("Password is correct")
    else:
        print("Password is incorrect")

标签:hashlib,sha256,加密,Python,encrypted,密码,password,salt
From: https://www.cnblogs.com/jessecheng/p/17547585.html

相关文章

  • 对JS代码混淆加密的法律意义
    对JS代码混淆加密的法律意义你知道吗?JS代码经混淆加密之后,将得到法律层面的保护。这是因为:对加密的JS代码进行逆向破解,破解者将面临以下多种法律风险。1、侵权责任加密的JS代码或相关产品在涉及生产经营时,破解者可能侵害对方商业利益、技术机密等,被破解方可视受到的侵害起诉追......
  • 5python学习笔记
    1.python特点​Python具有代码简单、学习难度低、语法清楚、功能库丰富等优势,同样功能的代码,Python代码数量只有C或Java的1/5,甚至1/10。例:打印HelloWorld,C语言需要6行,Java需要5行,Python只需要1行。2.python相关概念第三方库:需要自行安装的库python解释器:将源代码翻译......
  • python解析xml
    主要是查询标签:importxml.dom.minidoms='''xml字符串''''''这里做一些解释:<?xmlversion="1.0"encoding="UTF-8"?><soapenv:Envelopexmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/......
  • Python异步编程
    协程不是计算机提供,程序员人为创造也称为微线程,是一种上下文切换技术(通过一个线程实现代码块互相切换执行)普通代码的执行流程自上而下顺序执行deffun1():print(1)#...print(2)deffun2():print(3)#...print(4)fun1()fun2()-结......
  • 用Python编写网页自动答题工具,满分轻松到手,你就是全班最靓的仔!
    最近自动答题的外包很多,来给大家分享一下如何用Python来实现自动答题。好了话不多说,我们开始操作。首先你需要准备这些环境使用Python3.8解释器Pycharm编辑器 模块使用importrequests--->数据请求模块pipinstallrequestsimportrefromsele......
  • python安装教程
    1.下载安装python解释器:地址:https://www.python.org/downloads/release/python-372/(选择此项) 2.pycharm安装教程:安装地址:https://www.jetbrains.com/pycharm/download/download-thanks.html?platform=windows&code=PCC ......
  • python3。1
          print('您拥有三次机会输入正确的账号和密码')print('三次输入错误,账号将被锁定')i=3whilei>0:user_name=input('请输入您的账号:')psw=input('请输入密码:')ifuser_name=='zy'andpsw=='666666':......
  • 解决python升级的具体操作步骤
    如何升级Python版本作为一名经验丰富的开发者,我将帮助你学习如何升级Python版本。在本文中,我将为你提供一个详细的步骤表格,并解释每一步应该做什么,并提供相应的代码示例。升级Python的步骤以下是升级Python版本的步骤:步骤描述步骤1确定当前Python版本步骤2下载......
  • python学习笔记:继承与超类
    与java类似,继承的出现是为了提高代码的重复利用率,避免多次输入同样的代码。而超类就是java中的父类。1.继承要指定超类,可在定义类时,在class语句中的类名后加上超类名基类就是超类,派生类就是子类格式classDog:# passclassBobo(Dog):#Dog类的子类 pass子类会......
  • Python爬取哔哩哔哩视频
    Python爬取哔哩哔哩视频一、环境准备我这里使用的是环境如下仅供参考:开发工具:pycharmpython环境:python-3.8.0依赖的包:shutil,os,re,json,choice,requests,lxml二、页面分析我在这里就拿前段时间非常火的马老师的视频来举例子吧。视频链接:https://www.bilibili.com/video/BV1Ef4......