91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

python加密函數有哪些類型

小樊
82
2024-10-26 18:45:19
欄目: 編程語言

Python中加密函數的類型主要包括對稱加密算法、非對稱加密算法以及哈希算法。以下是對這些算法的簡要介紹:

  1. 對稱加密算法:使用相同的密鑰進行加密和解密。常見的對稱加密算法包括AES(高級加密標準)、DES(數據加密標準)和3DES(三重數據加密算法)。在Python中,可以使用pycryptodome庫來實現這些算法。例如,使用AES加密和解密數據可以使用以下代碼:
  2. 非對稱加密算法:使用一對密鑰,即公鑰和私鑰,進行加密和解密。其中,公鑰用于加密數據,而私鑰用于解密數據。常見的非對稱加密算法包括RSA、ECC(橢圓曲線密碼學)等。在Python中,可以使用cryptography庫來實現RSA等算法。例如,使用RSA加密和解密數據可以使用以下代碼:
from cryptography.hazmat.primitives import serialization, hashes
from cryptography.hazmat.primitives.asymmetric import padding
from cryptography.hazmat.backends import default_backend

# 生成RSA密鑰對
private_key = rsa.generate_private_key(
    public_exponent=65537,
    key_size=2048,
    backend=default_backend()
)
public_key = private_key.public_key()

# 加載公鑰和私鑰
public_pem = public_key.public_bytes(
    encoding=serialization.Encoding.PEM,
    format=serialization.PublicFormat.SubjectPublicKeyInfo
)
private_pem = private_key.private_bytes(
    encoding=serialization.Encoding.PEM,
    format=serialization.PrivateFormat.PKCS8,
    encryption_algorithm=serialization.NoEncryption()
)

# 加密數據
data = b"Hello, world!"
encrypted = public_key.encrypt(
    data,
    padding.OAEP(
        mgf=padding.MGF1(algorithm=hashes.SHA256()),
        algorithm=hashes.SHA256(),
        label=None
    )
)

# 解密數據
decrypted = private_key.decrypt(
    encrypted,
    padding.OAEP(
        mgf=padding.MGF1(algorithm=hashes.SHA256()),
        algorithm=hashes.SHA256(),
        label=None
    )
)
  1. 哈希算法:哈希算法將任意長度的消息映射為固定長度的摘要,常用于驗證數據的完整性。常見的哈希算法包括MD5、SHA-1、SHA-256等。在Python中,可以使用hashlib庫來實現這些算法。例如,計算數據的SHA-256哈希值可以使用以下代碼:
import hashlib

data = b"Hello, world!"
hash_object = hashlib.sha256(data)
hex_dig = hash_object.hexdigest()
print(hex_dig)

請注意,以上示例僅用于演示目的,實際應用中可能需要根據具體需求選擇合適的加密算法和庫,并注意保護密鑰和敏感信息的安全。

0
长子县| 沙田区| 洮南市| 平泉县| 济南市| 平湖市| 商洛市| 高密市| 建阳市| 陇川县| 肥东县| 噶尔县| 肇东市| 夏津县| 西充县| 阜新| 大同市| 井研县| 肃北| 山阳县| 麟游县| 福海县| 宕昌县| 安远县| 长丰县| 安庆市| 淮北市| 东光县| 阜康市| 斗六市| 武鸣县| 浮梁县| 临漳县| 翁源县| 吉木乃县| 正定县| 施甸县| 岳西县| 延川县| 泸溪县| 大荔县|