Firma Google do podstawowej bazy kodu Android kod z wbudowaną obsługą VPN . Kod WireGuard został przeniesiony do modyfikacji , rozwijanej dla przyszłej wersji platformy Android 12, z głównego jądra Linux , do którego pierwotnie był WireGuard. Działająca na poziomie jądra obsługa WireGuard .
Do tej pory deweloperzy WireGuard dla Androida aplikację mobilną, która już przez firmę Google z katalogu Google Play z powodu linku do strony zbiórki darowizn na stronie projektu, która naruszała zasady prowadzenia płatności (darowizny są uznawane za niedopuszczalne, jeśli zbiera je niezarejestrowana organizacja non-profit).
Przypominamy, że VPN WireGuard oparty jest na nowoczesnych metodach szyfrowania, zapewnia bardzo wysoką wydajność, jest prosty w użyciu, pozbawiony zbędnych komplikacji i dobrze sprawdził się w wielu zastosowaniach, przetwarzających duże ilości ruchu. Projekt rozwija się od 2015 roku, przeszedł audyt oraz stosowanych metod szyfrowania. W WireGuard stosuje się koncepcję routingu opartą na kluczach szyfrowania, która zakłada przypisanie do każdego interfejsu sieciowego klucza prywatnego i wykorzystanie do powiązania kluczy publicznych.
Wymiana kluczy publicznych w celu nawiązania połączenia odbywa się na zasadzie analogii do SSH. Aby uzgodnić klucze i połączenie bez uruchamiania oddzielnego demona w przestrzeni użytkownika, zastosowano mechanizm Noise_IK z , przypominający utrzymywanie authorized_keys w SSH. Przesył danych odbywa się przez enkapsulację w pakietach UDP. Obsługiwane jest zmienianie adresu IP serwera VPN (roaming) bez przerywania połączenia z automatycznym rekonfigurowaniem klienta.
Do szyfrowania strumieniowy szyfr i algorytm autoryzacji wiadomości (MAC) , opracowane przez Daniela Bernsteina (), Tanję Lange
(Tanja Lange) i Petera Schwabe'a (Peter Schwabe). ChaCha20 i Poly1305 są postrzegane jako szybsze i bezpieczniejsze odpowiedniki AES-256-CTR i HMAC, a ich implementacja programowa pozwala uzyskać stały czas wykonania bez potrzeby korzystania ze specjalnego wsparcia sprzętowego. Do generowania wspólnego tajnego klucza używany jest protokół Diffiego-Hellmana na krzywych eliptycznych w implementacji , także zaproponowanej przez Daniela Bernsteina. Do haszowania stosowany jest algorytm .
Źródło: opennet.ru
