欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中的hashlib模塊使用實例

 更新時間:2023年08月11日 09:59:29   作者:菜鳥更要努力呀  
這篇文章主要介紹了python中的hashlib模塊使用實例,hashlib是一個提供字符串加密功能的模塊,包含MD5和SHA的算法,MD5和SHA是摘要算法,文中以實例代碼講解hashlib模塊的基本用法,需要的朋友可以參考下

1 hashlib模塊的作用:

hashlib是一個提供字符串加密功能的模塊,包含MD5和SHA的算法,MD5和SHA是摘要算法,摘要算法是什么呢:

也可以稱為哈希算法,離散算法。

通過一個函數(shù)將任意長度的數(shù)據(jù)轉化為一個長度固定的數(shù)據(jù)串,摘要函數(shù)是一個單向函數(shù),計算f(data)很容易,但是通過digest反推data非常困難,對data做任意修改,計算出的摘要完全不相同。

2 以MD5算法為例使用hashlib:

md5算法特點:

  • 該算法不可逆
  • 不同字符串通過這個算法計算得到的密文總不相同
  • 相同算法以及相同的字符串獲得的密文結果總是相同

用法實例:

import hashlib
new_md5=hashlib.md5()
new_md5.update('guo')
ret=new_md5.hexdigest()
# ret 為加密后的字符串

函數(shù)形式實現(xiàn)加密操作:

import hashlib
def get_ret(s):
    new_md5=hashlib.md5()
    new_md5.update(s)
    ret=new_md5.hexdigest()
    return ret
get_ret('guo')

用戶驗證登錄:

import hashlib
def get_ret(s)
    new_md5=hashlib.md5()
    new_md5.update(s)
    ret = new_md5.hexdigest()
    return ret
username = input('username:')
password = input('password:')
with open('userinfo') as f:
    for line in f:
        usr, pwd = line.strip().split('|')
        if username == usr and get_ret(password) == pwd:
            print '登陸成功'
            break
        else:
            print('登錄失敗')

主要的應用場景呢,就是我們的密碼的加密和明文的加密,按照一定的約定去形成我們的加密的方式即可,有些時候為了避免太過于簡單的加密,我們會約定一個私鑰,增加加密的復雜性。

到此這篇關于python中的hashlib模塊使用實例的文章就介紹到這了,更多相關python的hashlib模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • virtualenv介紹及簡明教程

    virtualenv介紹及簡明教程

    這篇文章主要介紹了virtualenv介紹及簡明教程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Python讀取配置文件-ConfigParser的二次封裝方法

    Python讀取配置文件-ConfigParser的二次封裝方法

    這篇文章主要介紹了Python讀取配置文件-ConfigParser的二次封裝方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • python解決字典中的值是列表問題的方法

    python解決字典中的值是列表問題的方法

    這篇文章主要介紹了字典中的值是列表問題,先用value連成一個str,最后用str.split()作一個轉換,生成一個列表.看了python cookbook,上面正好有一個recipe講到如何處理這樣的問題
    2013-03-03
  • Python設計模式優(yōu)雅構建代碼全面教程示例

    Python設計模式優(yōu)雅構建代碼全面教程示例

    Python作為一門多范式的編程語言,提供了豐富的設計模式應用場景,在本文中,我們將詳細介紹 Python 中的各種設計模式,包括創(chuàng)建型、結構型和行為型模式
    2023-11-11
  • Python 輸入一個數(shù)字判斷成績分數(shù)等級的方法

    Python 輸入一個數(shù)字判斷成績分數(shù)等級的方法

    今天小編就為大家分享一篇Python 輸入一個數(shù)字判斷成績分數(shù)等級的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python爬蟲使用scrapy注意事項

    python爬蟲使用scrapy注意事項

    在本篇文章里小編給大家整理的是一篇關于python爬蟲使用scrapy注意事項的相關文章,對此有興趣的朋友們可以學習下。
    2020-11-11
  • python字符串中的單雙引

    python字符串中的單雙引

    下面小編就為大家?guī)硪黄猵ython字符串中的單雙引。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • pandas實戰(zhàn):分析三國志人物示例實現(xiàn)

    pandas實戰(zhàn):分析三國志人物示例實現(xiàn)

    這篇文章主要介紹了pandas實戰(zhàn):分析三國志人物示例實現(xiàn),本文章內(nèi)容詳細,具有很好的參考價值,希望對大家有所幫助,需要的朋友可以參考下
    2023-01-01
  • pycharm 使用心得(六)進行簡單的數(shù)據(jù)庫管理

    pycharm 使用心得(六)進行簡單的數(shù)據(jù)庫管理

    功能簡介:pycharm自帶了一個簡單的數(shù)據(jù)庫插件,可以比較方便的進行簡單的數(shù)據(jù)庫操作。
    2014-06-06
  • Python pandas讀取CSV文件的注意事項(適合新手)

    Python pandas讀取CSV文件的注意事項(適合新手)

    這篇文章主要給大家介紹了關于Python pandas讀取CSV文件的注意事項,非常適合新手,csv是我接觸的比較早的一種文件,比較好的是這種文件既能夠以電子表格的形式查看又能夠以文本的形式查看,需要的朋友可以參考下
    2021-06-06

最新評論