Natywny TLS systemu Android (iohAndroidTLS) to natywny dla systemu Android transport TLS dla sgcWebSockets. Steruje własnym javax.net.ssl.SSLEngine platformy za pośrednictwem JNI, więc Twój pakiet APK nie dostarcza żadnych plików OpenSSL .so. Włącz go, ustawiając TLSOptions.IOHandler na iohAndroidTLS.
Natywny TLS systemu Android wykorzystujący platformowy SSLEngine za pośrednictwem JNI. Brak pliku OpenSSL .so w pakiecie APK.
Natywny TLS systemu Android przekazuje szyfrowanie samemu Androidowi. sgcWebSockets wywołuje platformowy javax.net.ssl.SSLEngine za pośrednictwem JNI, więc system operacyjny wykonuje uzgadnianie, szyfrowanie rekordów i pracę z certyfikatami. Bezpośrednią korzyścią jest to, że Twój pakiet APK nie zawiera żadnych plików OpenSSL .so. Pakiet jest mniejszy, a Ty nigdy nie łatasz ani nie dopasowujesz wersji biblioteki kryptograficznej firm trzecich, ponieważ stos TLS jest utrzymywany i aktualizowany przez system operacyjny.
Backend weryfikuje serwer względem systemowego magazynu zaufania Android i wykonuje weryfikację nazwy hosta, więc połączenia z dobrze znanymi urzędami certyfikacji działają bez dodatkowej konfiguracji. Negocjuje TLS 1.3 i obsługuje ALPN na Androidzie 10 (API 29) i nowszych, co pozwala ogłaszać protokoły aplikacyjne, takie jak http/1.1, podczas uzgadniania.
Wybierz ten backend dla aplikacji Android, które muszą unikać dostarczania lub łatania OpenSSL albo wolą całkowicie powierzyć się polityce TLS platformy. Jak każdy backend sgcWebSockets, znajduje się za tym samym API TLSOptions, więc reszta Twojego kodu sieciowego jest identyczna ze ścieżkami OpenSSL, SChannel i Apple, a zmienia się tylko linia IOHandler dla każdej platformy.
Kod
Włącz natywny TLS systemu Android
Ustaw TLSOptions.IOHandler na iohAndroidTLS w swojej kompilacji dla Android. Plik OpenSSL .so nie jest potrzebny.