Google In den Hauptcode von Android wurde der Code mit integrierter VPN-Unterstützung eingefügt. Der WireGuard-Code wurde in die Modifikation , die für die bevorstehende Version der Android-Plattform 12 entwickelt wird, aus dem Hauptkern von Linux übertragen. , in den ursprünglich enthaltenen WireGuard. Die auf Kernel-Ebene arbeitende Unterstützung für WireGuard .
Bisher hatten die WireGuard-Entwickler für Android Mobile App angeboten, die bereits weil sie auf eine Spendenseite des Projekts verwies, die die Zahlungsrichtlinien verletzte (Spenden gelten als unzulässig, wenn sie nicht von einer speziell registrierten gemeinnützigen Organisation gesammelt werden).
Wir erinnern daran, dass das WireGuard-VPN auf modernen Verschlüsselungsmethoden basiert, eine sehr hohe Leistung bietet, einfach zu bedienen ist, keine Komplikationen aufweist und sich in mehreren großen Implementierungen bewährt hat, die große Datenmengen verarbeiten. Das Projekt wird seit 2015 weiterentwickelt, hat eine Prüfung und verwendeter Verschlüsselungsmethoden. Bei WireGuard wird das Konzept der schlüsselbasierten Routing-Anbindung verwendet, das jedem Netzwerkinterface einen privaten Schlüssel zuordnet und offene Schlüssel zur Verbindung nutzt.
Der Austausch offener Schlüssel zur Verbindung wird analog zu SSH durchgeführt. Um die Schlüssel zu verhandeln und die Verbindung herzustellen, ohne einen separaten Benutzerdaemon zu starten, wird der Noise_IK-Mechanismus aus , ähnlich wie das verwalten von authorized_keys in SSH. Der Datenaustausch erfolgt durch Kapselung in UDP-Pakete. Der Wechsel der IP-Adresse des VPN-Servers (Roaming) wird unterstützt, ohne die Verbindung zu unterbrechen, mit automatischer Neukonfiguration des Clients.
Für die Verschlüsselung der Stream-Verschlüsselungsalgorithmus und der Nachrichten-Authentifizierungsalgorithmus (MAC) , entwickelt von Daniel Bernstein (), Tanja Lange
(Tanja Lange) und Peter Schwabe. ChaCha20 und Poly1305 werden als schnellere und sicherere Alternativen zu AES-256-CTR und HMAC positioniert, wobei die Softwareimplementierung eine konstante Ausführungszeit ohne spezielle Hardwareunterstützung ermöglicht. Zur Erzeugung eines gemeinsamen geheimen Schlüssels kommt das elliptische Diffie-Hellman-Protokoll zum Einsatz, wie es auch von Daniel Bernstein vorgeschlagen wurde. Für die Hash-Berechnung wird der Algorithmus .
Quelle: opennet.ru
