No project description provided
Project description
ECDH X25519
Python-биндинги для x25519-dalek на Rust через PyO3. Используется алгоритм X25519 для безопасного обмена ключами (ECDH).
🧠 Что такое ECDH (X25519)?
X25519 — это алгоритм обмена ключами на основе эллиптических кривых (Elliptic Curve Diffie-Hellman, ECDH). Он широко применяется в современных криптопротоколах: TLS, SSH, Signal, WireGuard и других.
Основные характеристики:
-
Эллиптические кривые
- Основан на кривой Монтгомери Curve25519.
- Обеспечивает высокую скорость и безопасность.
- Оптимизирован под программную реализацию.
-
Эффективность
- Быстрый обмен ключами даже на слабом железе.
- Ключи занимают всего 32 байта (256 бит).
- Поддерживается многими языками и библиотеками (OpenSSL, libsodium и др.).
-
Безопасность
- Защищён от большинства классических атак.
- Устойчив к атакам по времени выполнения.
- Не устойчив к квантовым атакам (алгоритм Шора).
-
Стандартизация
- Описан в RFC 7748.
- Рекомендован IETF как современный метод обмена ключами.
🚀 Как использовать?
import ecdh_x25519
# Алиса
alice = ecdh_x25519.EcdhX25519()
alice_pk = alice.generate_keypair()
# Боб
bob = ecdh_x25519.EcdhX25519()
bob_pk = bob.generate_keypair()
# Обмен
shared_secret_alice = alice.generate_shared_secret(bob_pk)
shared_secret_bob = bob.generate_shared_secret(alice_pk)
assert shared_secret_alice == shared_secret_bob
📦 Установка
1. Установка через PyPI
pip install ecdh_x25519
2. Ручная установка (через git + maturin)
git clone https://github.com/kostya2023/ecdh_x25519.git
cd ecdh_x25519
pip install -r requirements.txt
maturin build --release
pip install target/wheels/*
👥 Авторы
🔒 Лицензия
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ecdh_x25519-0.1.1.tar.gz.
File metadata
- Download URL: ecdh_x25519-0.1.1.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b6f5eee9f0e8535ebdc9a4e519fab406e56341f211b389eac14a32a0562b0ec
|
|
| MD5 |
8f5c046ef24014af69ce61faa4b837b2
|
|
| BLAKE2b-256 |
7bcff0b470c2c1c73c8c7607baa4eb8c2896db57768774c85fa5073330e9a78f
|
File details
Details for the file ecdh_x25519-0.1.1-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: ecdh_x25519-0.1.1-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 163.6 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab5cc8f1a63205cc51ce80b8de20c9b3cc9893e2a37bf2c0664c0b610e95f32f
|
|
| MD5 |
fecacea70eb1acc82141a57bccb50f24
|
|
| BLAKE2b-256 |
afa592e53bfad013aea858a5471b4682f796f09277cfd6864b2efab765c1e490
|