日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

md5模块(Python内置模块)和hashlib模块

發布時間:2025/3/20 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 md5模块(Python内置模块)和hashlib模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉自https://my.oschina.net/duhaizhang/blog/67214

?

MD5模塊用于產生消息摘要,康用來判斷文件是否相同。

python的md5模塊使用非常簡單,包括以下幾個函數:

  • md5.new([arg])
    • 返回一個md5對象,如果給出參數,則相當于調用了update(arg)
    md5.md5(s)
    • 返回字符串s的md5
  • md5.updte(arg)
    • 用string參數arg更新md5對象。即將要計算arg的消息摘要值。
  • md5.digest()
    • 返回16字節的摘要,由傳給update的string生成,摘要沒有ascii字符
  • md5.hexdigest()
    • 以16進制的形式返回摘要,32位

注意:如果m.update(a)之后在 m.update(b),那么就相當于m.update(a+b)

?

步驟:

01、導入md5模塊

?

import md5

02、得到一個新的md5對象

m = md5.new()

03、用一個字符串更新md5對象

?

s = "hahaha"
m.update(s)

04、得到該字符串(這里是s)的摘要

print m.degest()

05、或者得到16進制的摘要(這個就是我們想要的)

print m.hexdigest()

這會得到一個字符串,長度為32位

?


要計算MD5值,不僅可以使用md5模塊,還可以使用hashlib模塊。hashlib是個專門提供hash算法的庫,現在里面包括md5, sha1, sha224, sha256, sha384, sha512,使用非常簡單、方便。md5經常用來做用戶密碼的存儲。而sha1則經常用作數字簽名。

?

?

下面主要記錄下其中的md5加密方式

[python]? view plain copy print ?
  • >>>?import?hashlib??
  • ??
  • >>>?m?=?hashlib.md5()??
  • ??
  • >>>?m.update("Nobody?inspects")??
  • ??
  • >>>?m.update("?the?spammish?repetition")??
  • ??
  • >>>?m.digest()??
  • ??
  • '\xbbd\x9c\x83\xdd\x1e\xa5\xc9\xd9\xde\xc9\xa1\x8d\xf0\xff\xe9'??
  • ??
  • >>>?m.hexdigest()??
  • ??
  • 'bb649c83dd1ea5c9d9dec9a18df0ffe9'??
  • ?

    ?

    對以上代碼的說明:

    1.首先從python直接導入hashlib模塊

    2.調用hashlib里的md5()生成一個md5 hash對象

    3.生成hash對象后,就可以用update方法對字符串進行md5加密的更新處理

    4.繼續調用update方法會在前面加密的基礎上更新加密

    5.加密后的二進制結果

    6.十六進制結果

    ?

    ?

    轉載于:https://www.cnblogs.com/WangAoBo/p/6921865.html

    總結

    以上是生活随笔為你收集整理的md5模块(Python内置模块)和hashlib模块的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。