reticulum_website/source/crypto_pl.md
2022-11-29 17:12:07 +01:00

2.5 KiB

Prymitywy kryptograficzne

Reticulum wykorzystuje prosty zestaw wydajnych, silnych i nowoczesnych prymitywów kryptograficznych, z szeroko dostępnymi implementacjami, które mogą być używane zarówno na procesorach ogólnego przeznaczenia, jak i na mikrokontrolerach. Niezbędne prymitywy to:

  • Ed25519 dla sygnatur
  • X22519 dla wymiany kluczy ECDH
  • HKDF dla wyodrębnienia klucza
  • AES-128 w trybie CBC
  • HMAC-SHA256 dla uwierzytelnienia wiadomości
  • SHA-256
  • SHA-512

W domyślnej konfiguracji instalacji, prymitywy X25519, Ed25519 i AES-128-CBC są dostarczone przez OpenSSL (przez pakiet PyCA/cryptography). Funkcja hashu SHA-256 i SHA-512 są dostarczone przez standard Pythona hashlib. Prymitywy HKDF, HMAC, Fernet i funkcja padding PKCS7 są zawsze dostarczane przez następujące wewnętrzne implementacje:

Reticulum zawiera również kompletną implementację wszystkich niezbędnych prymitywów w czystym Pythonie. Jeśli OpenSSL i PyCA nie są dostępne w systemie podczas uruchamiania Reticulum, Reticulum użyje wewnętrznych prymitywów w czystym Pythonie. Trywialną konsekwencją tego jest wydajność, backend OpenSSL jest znacznie szybszy. Najważniejszą konsekwencją jest jednak potencjalna utrata bezpieczeństwa poprzez użycie prymitywów, które nie zostały poddane takiej samej analizie, testom i przeglądom jak te z OpenSSL.

Jeśli chcesz używać wewnętrznych czystych prymitywów pythona, jest bardzo wskazane, abyś dobrze rozumiał ryzyko, jakie to stwarza, i podjął świadomą decyzję, czy to ryzyko jest dla ciebie do przyjęcia.

Reticulum jest stosunkowo młodym oprogramowaniem i powinno być traktowane jako takie. Chociaż zostało zbudowane z myślą o najlepszych praktykach kryptograficznych, nie zostało poddane zewnętrznemu audytowi bezpieczeństwa i bardzo możliwe, że zawiera błędy naruszające prywatność lub bezpieczeństwo. Jeśli chcesz pomóc lub zasponsorować audyt, skontaktuj się ze mną.

Next Topic: Podziękowania & Zasługi