Deutsch | English | Español | Nederlands | Polski | Português | Türkçe | Українська | 日本語 | 简体中文Reticulum | Початок | Обладнання | Тестова мережа | Довідник | Крипто | Кредит | Вихідний код | Донати

# Криптографічні примітиви

Reticulum використовує простий набір ефективних, надійних і сучасних криптографічних примітивів, з широко доступними імплементаціями, які можна використовувати як на загальновживаних процесорах, так і на мікроконтролерах. Необхідні примітиви:

- Ed25519 для підписів
- X22519 для ECDH обміну ключами
- HKDF для виведення ключів
- AES-256 у режимі CBC
- HMAC-SHA256 для аутентифікації повідомлень
- SHA-256
- SHA-512

У стандартній конфігурації установки примітиви `X25519`, `Ed25519` і `AES-256-CBC` надаються OpenSSL (через пакет PyCA/cryptography). Функції хешування `SHA-256` і `SHA-512` надаються стандартною бібліотекою Python hashlib. Примітиви `HKDF`, `HMAC`, `Token`, а також функція паддінгу `PKCS7` завжди надаються наступними внутрішніми імплементаціями:

- HKDF.py
- HMAC.py
- Token.py
- PKCS7.py

Reticulum також включає повну імплементацію всіх необхідних примітивів на чистому Python. Якщо OpenSSL і PyCA недоступні на системі під час запуску Reticulum, то замість них будуть використані внутрішні чисто-python примітиви. Легким наслідком цього є продуктивність, причому бекенд OpenSSL працює набагато швидше. Однак найважливіший наслідок полягає в потенційній втраті безпеки через використання примітивів, які не були піддані такій самій перевірці, тестуванню та огляду, як ті, що надаються OpenSSL.

Якщо ви хочете використовувати внутрішні чисто-python примітиви, вкрай рекомендується добре розуміти ризики, які вони несуть, і приймати обґрунтоване рішення щодо того, чи є ці ризики для вас прийнятними.

Reticulum — це відносно молода програма, і її слід розглядати саме як таку. Хоча вона була створена з урахуванням найкращих практик криптографії, вона не проходила зовнішнього аудиту безпеки, і цілком ймовірно, що існують помилки, які можуть зламати конфіденційність або безпеку. Якщо ви хочете допомогти або спонсорувати аудит, будь ласка, зв'яжіться з нами.

Наступна тема: Подяки та кредити