Ugrás a tartalomhoz

асимметричное шифрование

A Wikiszótárból, a nyitott szótárból

асимметричное шифрование (asimmetričnoje šifrovanije)

Kiejtés

  • IPA: [ɐsʲɪmʲɪtrʲɪt͡ɕnəjə ʂɨfrəvənʲɪje]

Főnév

асимметричное шифрование (asimmetričnoje šifrovanije)

  1. (informatika) aszimmetrikus titkosítás

Асимметричное шифрование: как это работает?

Асимметричное шифрование использует два ключа: 1. Открытый ключ (Public Key) – используется для шифрования. 2. Закрытый ключ (Private Key) – используется для расшифровки.

Это делает передачу данных более безопасной, поскольку закрытый ключ никому не передаётся.



1. Как это работает?

Пример с посланием

Допустим, тебе нужно отправить зашифрованное сообщение другу.

1️⃣ Друг создаёт пару ключей:
- Открытый ключ 🔓 – отправляет тебе.
- Закрытый ключ 🔐 – хранит в секрете.

2️⃣ Ты шифруешь сообщение с помощью его открытого ключа.

3️⃣ Только друг, у которого есть закрытый ключ, сможет расшифровать сообщение.

🔹 Даже если злоумышленник перехватит зашифрованные данные, он не сможет их расшифровать без закрытого ключа.



2. Где используется асимметричное шифрование?

🔒 1. Безопасное соединение (HTTPS, SSL/TLS)

Браузеры используют асимметричное шифрование для защиты данных при соединении с сайтами (протокол HTTPS).

📧 2. Цифровые подписи

  • Позволяют проверить подлинность отправителя.
  • Например, при загрузке программы браузер проверяет, была ли она подписана официальным издателем.

💳 3. Банковские системы

  • Шифрование карт и транзакций.
  • Применяется для безопасных переводов в интернете.

🔑 4. Криптовалюты

  • Биткоин, Эфириум и другие используют асимметричные ключи для подписи транзакций.



3. Примеры алгоритмов асимметричного шифрования

🔹 RSA (Rivest-Shamir-Adleman)

  • Один из самых известных алгоритмов.
  • Использует большие простые числа для генерации ключей.
  • Ключи: 1024, 2048 или 4096 бит (чем больше, тем безопаснее).

🔹 ECC (Elliptic Curve Cryptography)

  • Основан на математике эллиптических кривых.
  • Более быстрый и надёжный, чем RSA при меньшей длине ключа.
  • Используется в Bitcoin, Signal и других современных системах.



4. Пример использования RSA в Python

Для работы с RSA в Python можно использовать библиотеку cryptography или PyCryptodome.

Генерация ключей и шифрование:

from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
import base64

# Генерация пары ключей
key = RSA.generate(2048)
private_key = key.export_key()
public_key = key.publickey().export_key()

print("Открытый ключ:\n", public_key.decode())
print("\nЗакрытый ключ:\n", private_key.decode())

# Шифрование сообщения
message = "Привет, друг!".encode()
rsa_public_key = RSA.import_key(public_key)
cipher = PKCS1_OAEP.new(rsa_public_key)
encrypted_message = cipher.encrypt(message)

print("\nЗашифрованное сообщение:\n", base64.b64encode(encrypted_message).decode())

Расшифровка сообщения:

# Расшифровка сообщения
rsa_private_key = RSA.import_key(private_key)
cipher = PKCS1_OAEP.new(rsa_private_key)
decrypted_message = cipher.decrypt(encrypted_message)

print("\nРасшифрованное сообщение:\n", decrypted_message.decode())

Что делает этот код?
✅ Генерирует открытый и закрытый ключи.
Шифрует сообщение с помощью открытого ключа.
Расшифровывает сообщение с помощью закрытого ключа.



5. Преимущества и недостатки асимметричного шифрования

Безопасность – не нужно передавать закрытый ключ.
Аутентификация – можно использовать для цифровых подписей.
Конфиденциальность – только владелец закрытого ключа может расшифровать данные.

Медленнее, чем симметричное шифрование.
Длинные ключи требуют больше ресурсов для обработки.



Вывод

Асимметричное шифрование – это мощный инструмент, который защищает данные в интернете, мессенджерах, банковских системах и даже криптовалютах. 🚀