Użyj interfejsu Phone Number Verification API, aby pobrać zweryfikowany numer telefonu od operatora komórkowego użytkownika w sposób odporny na phishing. Jest to szybsza, bezpieczniejsza i bardziej opłacalna metoda weryfikacji, która nie wymaga haseł jednorazowych wysyłanych SMS-em.
Przegląd
Tradycyjna weryfikacja telefoniczna opiera się głównie na hasłach jednorazowych wysyłanych SMS-em. Weryfikacja SMS-em powoduje problemy dla użytkowników i opóźnienia w dostarczaniu. Jest też podatna na wymianę lub przechwycenie karty SIM i wiąże się ze znacznymi opłatami telekomunikacyjnymi.
Interfejs API do weryfikacji numeru telefonu na Androidzie rozwiązuje te problemy, wykorzystując cyfrowe dane uwierzytelniające. Zamiast wysyłać SMS-a, aplikacja prosi o token cyfrowy bezpośrednio przez Credential Manager na Androidzie. Gdy użytkownik wyrazi zgodę na udostępnienie tego tokena, backend aplikacji wymienia go z agregatorem sieci komórkowej lub operatorem komórkowym, aby uzyskać zweryfikowany numer telefonu.
Proces pobierania zweryfikowanego numeru telefonu
Aby pobrać zweryfikowany numer telefonu, wykonaj te czynności:
- Aplikacja wysyła do interfejsu Digital Credentials API żądanie dotyczące numeru telefonu.
- Pojawi się dolny arkusz Menedżera danych logowania, aby potwierdzić udostępnienie numeru telefonu.
- Interfejs API pobiera zaszyfrowany token TS.43 od operatora użytkownika, uwierzytelniając kartę SIM.
- Credential Manager udostępnia token aplikacji. Aplikacja wysyła token do serwera aplikacji, który wymienia go z punktem końcowym agregatora lub operatora komórkowego. Wtedy też mogą zostać naliczone opłaty za połączenia telefoniczne.
- Agregator lub operator zwraca zweryfikowany numer telefonu do aplikacji.
Główne zalety
Ten interfejs API zapewnia wiele korzyści:
- Niższe koszty weryfikacji – płacisz tylko za weryfikacje, które dotarły do Twojej aplikacji, co zmniejsza koszty dostarczania.
- Bezpieczniejsze i bardziej uproszczone środowisko użytkownika – użytkownicy zatwierdzają prośbę na dolnej planszy systemowej jednym kliknięciem, zamiast wyświetlać SMS-y z hasłami jednorazowymi poza aplikacją. Eliminuje to też możliwość wyłudzania informacji przez SMS-y.
- Wyższe współczynniki konwersji – błędy i opóźnienia w dostarczaniu SMS-ów są głównymi przyczynami rezygnacji. Bezpośrednia weryfikacja przez operatora całkowicie omija przesyłanie SMS-ów, co prowadzi do wyższych współczynników realizacji.
- Potwierdzenie tożsamości – weryfikuje fizyczną kartę SIM lub eSIM aktywną na urządzeniu z Androidem, zapewniając, że tożsamość jest bezpośrednio powiązana z aktywną subskrypcją u operatora.
Prywatność i bezpieczeństwo
Funkcja weryfikacji telefonicznej na Androidzie jest oparta na otwartych standardach i zabezpieczeniach kryptograficznych wspieranych sprzętowo.
Najważniejsze standardy bezpieczeństwa:
- Standard GSMA TS.43: ustandaryzowany protokół operatora do potwierdzania tożsamości i generowania tokenów.
- SD-JWT VC (Selective Disclosure JWT Verifiable Credential): zapewnia integralność danych uwierzytelniających i selektywne ujawnianie danych.
- Protokół OpenID4VP: standardowa specyfikacja branżowa dotycząca żądania weryfikowalnych danych uwierzytelniających.
Kryptograficzna liczba jednorazowa i powiązania kluczy
Każda prośba o weryfikację zawiera wygenerowaną przez serwer liczbę jednorazową i podpis powiązany z kluczem. Te elementy zapobiegają atakom typu replay, manipulacjom typu person-in-the-middle (PiTM) i podszywaniu się pod dane logowania.
Pełne szyfrowanie
Android Telephony szyfruje token TS.43 zwracany do aplikacji klienckiej. Tylko autoryzowany punkt końcowy agregatora lub operatora komórkowego może go odszyfrować, co gwarantuje, że system nie ujawni nieprzetworzonych danych logowania użytkownika podczas przesyłania.
Przejrzysta zgoda użytkownika
Android wyświetla dolną planszę Credential Manager, która informuje użytkownika, jakie dokładnie informacje o tożsamości są udostępniane, zanim jakiekolwiek dane zostaną przesłane do aplikacji.
Dalsze kroki
Aby wdrożyć tę funkcję w aplikacji, zapoznaj się z przewodnikiem po implementacji.