欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

hashlib模塊-創(chuàng)新互聯(lián)

1.加密算法介紹

1.1hash

Hash一般翻譯為“散列”,或“哈希”,是把任意長度的輸入,通過散列算法,變成固定長度的輸出,該輸出就是散列值。這種轉(zhuǎn)換是一種壓縮映射,即散列值的空間通常遠小于輸入的空間,不同的輸入可能會散列成相同的輸出,所以不能根據(jù)散列值來唯一確定輸入值。
簡單的說是一種將任意長度的消息壓縮成固定長度的消息的一種函數(shù)。
hash主要用于安全領(lǐng)域中加密算法,他把不同長度的信息轉(zhuǎn)換成雜亂的128位的編碼,這個128位的編碼就叫HASH值。

成都創(chuàng)新互聯(lián)公司于2013年成立,公司以成都做網(wǎng)站、成都網(wǎng)站設計、系統(tǒng)開發(fā)、網(wǎng)絡推廣、文化傳媒、企業(yè)宣傳、平面廣告設計等為主要業(yè)務,適用行業(yè)近百種。服務企業(yè)客戶近千家,涉及國內(nèi)多個省份客戶。擁有多年網(wǎng)站建設開發(fā)經(jīng)驗。為企業(yè)提供專業(yè)的網(wǎng)站建設、創(chuàng)意設計、宣傳推廣等服務。 通過專業(yè)的設計、獨特的風格,為不同客戶提供各種風格的特色服務。
  • hash值在當前程序下是唯一的,退出了就變了
>>> hash("123")
4880615334525398789
>>> hash("123")
4880615334525398789
>>> quit()

(venvP3) E:\PythonProject\python-test\BasicGrammer>python3
Python 3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> hash("123")
-5768810267372332319
>>> hash("123")
-5768810267372332319
>>>
  • md5值只要輸入時相同的,輸出的md5值就是相同的,不管是否退出程序

1.2md5算法

1.2.1md5算法解析

MD5訊息摘要算法(Message-Digest Algorithm),一種被廣泛使用的密碼雜湊函數(shù),可以產(chǎn)生出一個128位的散列值,用于確保信息傳輸完整一致。MD5之前有MD2,MD3,MD4

1.2.2md5功能

輸入任意長度的信息,經(jīng)過處理,輸出為128位的信息(數(shù)字指紋),不同的輸入得到不同的結(jié)果(結(jié)果具有唯一性)

1.2.3md5算法的特點

1.壓縮性:任意長度的數(shù)據(jù),算出的MD5值的長度都是固定的。
2.容易計算:從原數(shù)據(jù)計算出MD5值很容易
3.抗修改性:對原數(shù)據(jù)進行任何改動,生成的MD5值區(qū)別都會很大
4.強抗碰撞:已知原數(shù)據(jù)和MD5,想要找到一個具有相同MD5值的數(shù)據(jù)是幾乎不可能的

1.2.4md5是否可逆

MD5是不可逆的,因為其算法是一種散列函數(shù),使用的是hash算法,在計算過程中原文的部分信息是丟失了的。

1.2.5md5用途

1.防止篡改
2.防止看到明文
3.防止抵賴(數(shù)字簽名)

2.python中hashlib

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: vita
import hashlib

m = hashlib.md5()
m.update(b"Hello")
m.update(b"It's me")
print(m.digest())
m.update(b"It's been a long time since last time we ...")

print(m.digest()) #2進制格式hash
print(len(m.hexdigest())) #16進制格式hash

E:\PythonProject\python-test\venvP3\Scripts\python.exe E:/PythonProject/python-test/BasicGrammer/test.py
b'{}\xd6Rz\xd4\x01\x05mJT\xbe\xb3m\x1eF'
b'\xc7~\xe3BD\xd6#\x10\x06\xcf\x96M\x98\xe9\xec\x96'
32

Process finished with exit code 0

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: vita
import hashlib
#########md5############
md5 = hashlib.md5()
md5.update("admin".encode("utf-8"))
print("md5:",md5.hexdigest())

#########sha1############
sha1 = hashlib.sha1()
sha1.update("admin".encode("utf-8"))
print("sha1:",sha1.hexdigest())

#########sha256############
sha256 = hashlib.sha256()
sha256.update("admin".encode("utf-8"))
print("sha256:",sha256.hexdigest())

#########sha384############
sha384 = hashlib.sha384()
sha384.update("admin".encode("utf-8"))
print("sha384:",sha384.hexdigest())

#########sha512############
sha512 = hashlib.sha512()
sha512.update("admin".encode("utf-8"))
print("sha512:",sha512.hexdigest())

E:\PythonProject\python-test\venvP3\Scripts\python.exe E:/PythonProject/python-test/BasicGrammer/test.py
md5: 21232f297a57a5a743894a0e4a801fc3
sha1: d033e22ae348aeb5660fc2140aec35850c4da997
sha256: 8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
sha384: 9ca694a90285c034432c9550421b7b9dbd5c0f4b6673f05f6dbce58052ba20e4248041956ee8c9a2ec9f10290cdc0782
sha512: c7ad44cbad762a5da0a452f9e854fdc1e0e7a52a38015f23f3eab1d80b931dd472634dfac71cd34ebc35d16ab7fb8a90c81f975113d6c7538dc69dd8de9077ec

Process finished with exit code 0

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

標題名稱:hashlib模塊-創(chuàng)新互聯(lián)
標題路徑:http://chinadenli.net/article22/gcpcc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google外貿(mào)建站網(wǎng)站營銷做網(wǎng)站品牌網(wǎng)站設計企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設計