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

python MD5加密的示例

 更新時(shí)間:2020年10月19日 11:21:27   作者:Blue·Sky  
這篇文章主要介紹了python MD5加密的示例,幫助大家更好的利用python進(jìn)行加密,感興趣的朋友可以了解下

什么是MD5

Message Digest Algorithm MD5(中文名為消息摘要算法第五版)為計(jì)算機(jī)安全領(lǐng)域廣泛使用的一種散列函數(shù),用以提供消息的完整性保護(hù)。該算法的文件號(hào)為RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)。

MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于確保信息傳輸完整一致。是計(jì)算機(jī)廣泛使用的雜湊算法之一(又譯摘要算法、哈希算法),主流編程語言普遍已有MD5實(shí)現(xiàn)。將數(shù)據(jù)(如漢字)運(yùn)算為另一固定長度值,是雜湊算法的基礎(chǔ)原理,MD5的前身有MD2、MD3和MD4。

MD5的作用是讓大容量信息在用數(shù)字簽名軟件簽署私人密鑰前被"壓縮"成一種保密的格式(就是把一個(gè)任意長度的字節(jié)串變換成一定長的十六進(jìn)制數(shù)字串)。除了MD5以外,其中比較有名的還有sha-1、RIPEMD以及Haval等。

生成MD5

# 方式一:
pwd = '123456'
# 生成MD5對(duì)象
md5 = hashlib.md5()
# 對(duì)數(shù)據(jù)加密
md5.update(pwd.encode('utf-8'))
# 獲取密文
pwd = md5.hexdigest()
print(pwd)

#方式二:

pwd = '123456'
pwd = hashlib.md5(bytes(pwd,encoding = 'utf-8'))
print(pwd.hexdigest())



# 輸出結(jié)果
e10adc3949ba59abbe56e057f20f883e
e10adc3949ba59abbe56e057f20f883e

密碼破解

https://www.cmd5.com/

MD5加鹽值(SALT)

# MD5加鹽值(SALT)


pwd = '123456'
# 生成MD5對(duì)象
md5 = hashlib.md5(b'~!@@#!#$DFDT@#$@#')
# 一下兩種方式與上面效果等同
# md5 = hashlib.md5('~!@@#!#$DFDT@#$@#'.encode('utf-8'))
# md5 = hashlib.md5(bytes('~!@@#!#$DFDT@#$@#',encoding='utf-8'))
#

# 對(duì)數(shù)據(jù)加密
md5.update(pwd.encode('utf-8'))
# 獲取密文
pwd = md5.hexdigest()
print(pwd)63e87e46fc935f18abb6b38bb0376fee

安全性會(huì)好一些。

實(shí)例

# FileName : md5_salt.py
# Author  : Adil
# DateTime : 2020/4/26 5:25 PM
# SoftWare : PyCharm


from random import Random
from hashlib import md5


# 獲取由4位隨機(jī)大小寫字母、數(shù)字組成的salt值
def create_salt(length=4):
  salt = ''
  chars = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789'
  len_chars = len(chars) - 1
  random = Random()
  for i in range(length):
    # 每次從chars中隨機(jī)取一位
    salt += chars[random.randint(0, len_chars)]
  return salt


# 獲取原始密碼+salt的md5值
def create_md5(pwd, salt):
  md5_obj = md5()
  md5_obj.update(pwd + salt)
  return md5_obj.hexdigest()


# 原始密碼
pwd = '20141124'
# 隨機(jī)生成4位salt
# salt = create_salt()
# d0ac42aa5c4d6b7a7783003b60eedf43
salt = create_salt()
# 加密后的密碼
md5 = create_md5(bytes(pwd,encoding='utf-8'), bytes(salt,encoding='utf-8'))

print('[pwd]\n', pwd)
print('[salt]\n', salt)
print('[md5]\n', md5)

以上就是python MD5加密的示例的詳細(xì)內(nèi)容,更多關(guān)于python MD5加密的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python3中bytes和string之間的互相轉(zhuǎn)換

    python3中bytes和string之間的互相轉(zhuǎn)換

    這篇文章主要介紹了python3中bytes和string之間的互相轉(zhuǎn)換,文中給出了詳細(xì)的介紹和示例代碼,相信對(duì)大家具有一定的參考價(jià)值,有需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-02-02
  • python如何在終端里面顯示一張圖片

    python如何在終端里面顯示一張圖片

    這篇文章主要為大家詳細(xì)介紹了python如何在終端里面顯示一張圖片的方法,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Python的輸出格式化和進(jìn)制轉(zhuǎn)換介紹

    Python的輸出格式化和進(jìn)制轉(zhuǎn)換介紹

    大家好,本篇文章主要講的是Python的輸出格式化和進(jìn)制轉(zhuǎn)換介紹,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • TensorFlow搭建神經(jīng)網(wǎng)絡(luò)最佳實(shí)踐

    TensorFlow搭建神經(jīng)網(wǎng)絡(luò)最佳實(shí)踐

    這篇文章主要為大家詳細(xì)介紹了TensorFlow搭建神經(jīng)網(wǎng)絡(luò)最佳實(shí)踐,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 利用numba讓python速度提升百倍

    利用numba讓python速度提升百倍

    這篇文章主要介紹了利用numba讓python速度提升百倍,python由于它動(dòng)態(tài)解釋性語言的特性,numba是一款可以將python函數(shù)編譯為機(jī)器代碼的JIT編譯器,下面針對(duì)numba相關(guān)內(nèi)容展開,需要的小伙伴可以參考一下
    2022-03-03
  • python 字符串追加實(shí)例

    python 字符串追加實(shí)例

    今天小編就為大家分享一篇python 字符串追加實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python實(shí)現(xiàn)解析命令行參數(shù)的常見方法總結(jié)

    Python實(shí)現(xiàn)解析命令行參數(shù)的常見方法總結(jié)

    除ide的執(zhí)行方式外,命令行的方式執(zhí)行Python腳本是參數(shù)化程序執(zhí)行的一種常見且簡單的方法。本文總結(jié)了三個(gè)常見的獲取和解析命令行參數(shù)的方法,需要的可以參考一下
    2022-10-10
  • Python生成ubuntu apt鏡像地址實(shí)現(xiàn)

    Python生成ubuntu apt鏡像地址實(shí)現(xiàn)

    本文主要介紹了Python生成ubuntu apt鏡像地址實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 為什么python比較流行

    為什么python比較流行

    在本篇文章里小編給大家分析了關(guān)于python比較流行的原因以及優(yōu)勢(shì)等,需要的朋友們可以參考下。
    2020-06-06
  • python numpy 部分排序 尋找最大的前幾個(gè)數(shù)的方法

    python numpy 部分排序 尋找最大的前幾個(gè)數(shù)的方法

    今天小編就為大家分享一篇python numpy 部分排序 尋找最大的前幾個(gè)數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06

最新評(píng)論