mirror of
https://github.com/markqvist/reticulum_website.git
synced 2025-11-26 09:26:48 -05:00
36 lines
5 KiB
HTML
36 lines
5 KiB
HTML
|
||
<!doctype html>
|
||
<html>
|
||
<head>
|
||
<link rel="stylesheet" href="css/water.css?v=6">
|
||
<meta charset="utf-8"/>
|
||
<title>Reticulum Network</title>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
</head>
|
||
<body>
|
||
<center><div class="top_menu lang_menu">[Deutsch](./crypto_de.html) | [English](./crypto.html) | [Español](./crypto_es.html) | [Nederlands](./crypto_nl.html) | [Polski](./crypto_pl.html) | [Português](./crypto_pt-br.html) | [Türkçe](./crypto_tr.html) | [Українська](./crypto_uk.html) | [日本語](./crypto_jp.html) | [简体中文](./crypto_zh-cn.html)</div><div class="top_menu">[Reticulum](index_uk.html) | [Початок](start_uk.html) | [Обладнання](hardware_uk.html) | [Тестова мережа](connect_uk.html) | [Довідник](docs_uk.html) | [Крипто](crypto_uk.html) | [Кредит](credits_uk.html) | [Вихідний код](https://github.com/markqvist/reticulum) | [Донати](donate_uk.html)</div></center>
|
||
|
||
<h1>Криптографічні примітиви</h1>
|
||
<p>Reticulum використовує простий набір ефективних, надійних і сучасних криптографічних примітивів, з широко доступними імплементаціями, які можна використовувати як на загальновживаних процесорах, так і на мікроконтролерах. Необхідні примітиви:</p>
|
||
<ul>
|
||
<li>Ed25519 для підписів</li>
|
||
<li>X22519 для ECDH обміну ключами</li>
|
||
<li>HKDF для виведення ключів</li>
|
||
<li>AES-256 у режимі CBC</li>
|
||
<li>HMAC-SHA256 для аутентифікації повідомлень</li>
|
||
<li>SHA-256</li>
|
||
<li>SHA-512</li>
|
||
</ul>
|
||
<p>У стандартній конфігурації установки примітиви <code>X25519</code>, <code>Ed25519</code> і <code>AES-256-CBC</code> надаються <a href="https://www.openssl.org/">OpenSSL</a> (через пакет <a href="https://github.com/pyca/cryptography">PyCA/cryptography</a>). Функції хешування <code>SHA-256</code> і <code>SHA-512</code> надаються стандартною бібліотекою Python <a href="https://docs.python.org/3/library/hashlib.html">hashlib</a>. Примітиви <code>HKDF</code>, <code>HMAC</code>, <code>Token</code>, а також функція паддінгу <code>PKCS7</code> завжди надаються наступними внутрішніми імплементаціями:</p>
|
||
<ul>
|
||
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/HKDF.py">HKDF.py</a></li>
|
||
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/HMAC.py">HMAC.py</a></li>
|
||
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/Token.py">Token.py</a></li>
|
||
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/PKCS7.py">PKCS7.py</a></li>
|
||
</ul>
|
||
<p>Reticulum також включає повну імплементацію всіх необхідних примітивів на чистому Python. Якщо OpenSSL і PyCA недоступні на системі під час запуску Reticulum, то замість них будуть використані внутрішні чисто-python примітиви. Легким наслідком цього є продуктивність, причому бекенд OpenSSL працює <em>набагато</em> швидше. Однак найважливіший наслідок полягає в потенційній втраті безпеки через використання примітивів, які не були піддані такій самій перевірці, тестуванню та огляду, як ті, що надаються OpenSSL.</p>
|
||
<p>Якщо ви хочете використовувати внутрішні чисто-python примітиви, <strong>вкрай рекомендується</strong> добре розуміти ризики, які вони несуть, і приймати обґрунтоване рішення щодо того, чи є ці ризики для вас прийнятними.</p>
|
||
<p>Reticulum — це відносно молода програма, і її слід розглядати саме як таку. Хоча вона була створена з урахуванням найкращих практик криптографії, вона <em>не проходила</em> зовнішнього аудиту безпеки, і цілком ймовірно, що існують помилки, які можуть зламати конфіденційність або безпеку. Якщо ви хочете допомогти або спонсорувати аудит, будь ласка, зв'яжіться з нами.</p>
|
||
<p align="right"><a href="credits.html">Наступна тема: Подяки та кредити</a></p>
|
||
</body>
|
||
</html>
|