Sobes.tech
Junior

Асимметриялық шифрлаудың мысалын келтіріңіз.

sobes.tech AI

AI-дан жауап

Асимметриялық шифрлау жұп кілттерді пайдаланады: ашық және құпия. Мысалы ретінде RSA алгоритмі келтіріледі. Ашық кілт деректерді шифрлау үшін пайдаланылады, ал құпия — оларды дешифрлау үшін. Бұл алдын ала құпия кілт алмасусыз қауіпсіз ақпарат алмасуға мүмкіндік береді.

Python-да cryptography кітапханасымен RSA қолдану мысалы:

from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import hashes

# Кілттерді генерациялау
private_key = rsa.generate_private_key(public_exponent=65537, key_size=2048)
public_key = private_key.public_key()

message = b"Құпия хабар"

# Ашық кілтпен шифрлау
ciphertext = public_key.encrypt(
    message,
    padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA256()), algorithm=hashes.SHA256(), label=None)
)

# Құпия кілтпен дешифрлау
plaintext = private_key.decrypt(
    ciphertext,
    padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA256()), algorithm=hashes.SHA256(), label=None)
)

print(plaintext.decode())  # Нәтиже: Құпия хабар