五月天堂网_免费看影片_1024手机看毛片_亚洲综合四区_男人的天堂影院_在线亚洲自拍

中培偉業IT資訊頻道
您現在的位置:首頁 > IT資訊 > 軟件研發 > 如何在Python中加密和解密數據

如何在Python中加密和解密數據

2020-08-07 17:40:52 | 來源:中培企業IT培訓網

加密是對信息進行編碼的過程,只有授權方才能訪問它。這一點至關重要,因為它可以安全地保護您不希望任何人看到或訪問的數據。在本文中,您將學習如何使用Python使用加密 庫對文件或任何字節對象,也包括字符串對象進行加密。我們將使用對稱加密,這意味著用于加密數據的相同密鑰也可用于解密。那里有很多加密算法,我們將使用的庫是基于AES算法構建的。

注意:了解加密和哈希算法之間的區別很重要 ,在加密中,一旦擁有密鑰,您就可以檢索原始數據,而在 哈希函數中則不能,因此,它們被稱為單向加密。

  讓我們從安裝加密開始:

pip3 install cryptography

打開一個新的Python文件,讓我們開始吧:

from cryptography.fernet import Fernet

  生成密鑰

Fernet是對稱身份驗證密碼技術的實現,讓我們首先生成該密鑰并將其寫入文件:

def write_key():

"""

Generates a key and save it into a file

"""

key = Fernet.generate_key()

with open("key.key", "wb") as key_file:

key_file.write(key)

generate_key()函數生成一個新的Fernet密鑰,您確實需要將其保存在安全的地方,如果丟失了密鑰,您將不再能夠解密使用此密鑰加密的數據。

由于此密鑰是唯一的,因此我們不會在每次加密任何內容時生成密鑰,因此我們需要一個函數來為我們加載該密鑰:

def load_key():

"""

Loads the key from the current directory named `key.key`

"""

return open("key.key", "rb").read()

  字符串加密

現在我們知道了如何獲取密鑰,讓我們從加密字符串對象開始,只是為了讓您首先熟悉它。

  生成密鑰并將其寫入文件:

# generate and write a new key

write_key()

  讓我們加載該密鑰:

# load the previously generated key

key = load_key()

  一些消息:

message = "some secret message".encode()

我們需要對字符串進行編碼,以將其轉換為適合加密的字節,encode()方法使用utf-8編解碼器對該字符串進行編碼。使用該鍵初始化Fernet類:

# initialize the Fernet class

f = Fernet(key)

  加密消息:

# encrypt the message

encrypted = f.encrypt(message)

f.encrypt()方法對傳遞的數據進行加密,這種加密的結果稱為“ Fernet令牌”,并具有強大的隱私性和真實性保證。

  讓我們看看它的外觀:

# print how it looks

print(encrypted)

  輸出:

b'gAAAAABdjSdoqn4kx6XMw_fMx5YT2eaeBBCEue3N2FWHhlXjD6JXJyeELfPrKf0cqGaYkcY6Q0bS22ppTBsNTNw2fU5HVg-c-0o-KVqcYxqWAIG-LVVI_1U='

  解密:

decrypted_encrypted = f.decrypt(encrypted)

print(decrypted_encrypted)

b'some secret message'

的確是同一條信息。

f.decrypt()方法解密Fernet令牌。成功解密后,這將返回原始明文作為結果,否則將引發異常。

關于如何在Python中加密和解密數據的問題,通過上述閱讀,想必大家已經清楚了吧,想了解更多關于Python的信息,請繼續關注中培偉業。

標簽: Python 軟件研發
主站蜘蛛池模板: 亚欧日韩欧美网站在线看 | 2020中文在线一区二区三区 | 狠狠干2021 | 哈哈哈哈哈第4季免费视频高清 | 国产亚洲综合网曝门系列 | 亚洲综合区小说区激情区 | 欧美一级毛片免费看 | 欧洲美女性猛交 | 黄色影视频 | 国产69精品久久久久999天美 | 国产精品99久久久久久宅男 | 亚洲国产欧美在线人成最新 | 女女百合av大片在线观看免费 | 视频在线99re| 日韩欧美第一区 | 电视连续剧惊弦免费观看 | 免费网站看黄yyy222 | 日韩人妻无码潮喷中文视频 | 成人免费毛片果冻 | 野花日本韩国大全免费观看6 | 亚洲青涩 | 亚洲男人网站 | 欧美激情综合 | 亚洲最大一级无码av网站 | 成人免费黄色大片 | 国产精品国语 | 国产成人综合久久二区 | 8x永久华人成年免费 | 成人黄色大片在线观看 | 一本一道中文字幕 | 三及片免费 | 国产超碰人人做人人爱 | 天天射天天干 | 91av国产在线 | 亚洲天堂av在线播放 | 一区二区视频传媒有限公司 | 麻豆xxxxhd传媒sleep | xxxxxhd日本xxxx47 日本一区二区福利视频 | 久草免费福利资源 | 久久婷婷精品视频 | 日本黄色aaa |