Dowiedz się, jak Yahoo! Japonia opracowała system tożsamości bez hasła.
Yahoo! JAPAN to jedna z największych firm medialnych w Japonii, która oferuje usługi takie jak wyszukiwarka, wiadomości, handel elektroniczny i poczta e-mail. Ponad 50 milionów użytkowników loguje się w Yahoo! JAPAN co miesiąc.
W ciągu ostatnich lat odnotowaliśmy wiele ataków na konta użytkowników oraz problemów, które doprowadziły do utraty dostępu do kont. Większość tych problemów była związana z używaniem hasła do uwierzytelniania.
Dzięki ostatnim postępom w technologii uwierzytelniania Yahoo! JAPAN zdecydował się przejść z uwierzytelniania opartego na haśle na uwierzytelnianie bez hasła.
Dlaczego warto zrezygnować z haseł?
W przypadku Yahoo! JAPAN oferuje usługi e-commerce i inne usługi związane z pieniądzami, więc w przypadku nieautoryzowanego dostępu lub utraty konta istnieje ryzyko znacznych strat dla użytkowników.
Najczęstsze ataki związane z hasłami to ataki na listy haseł i oszustwo phishingowe. Jednym z powodów, dla których ataki na listy haseł są częste i skuteczne, jest fakt, że wiele osób używa tego samego hasła w różnych aplikacjach i witrynach.
Poniższe dane pochodzą z ankiety przeprowadzonej przez Yahoo! JAPAN.
50 %
używać tego samego identyfikatora i hasła na co najmniej 6 stronach;
60 %
Używanie tego samego hasła w różnych witrynach
70 %
używać hasła jako głównego sposobu logowania się;
Użytkownicy często zapominają hasła, co stanowi większość zapytań dotyczących haseł. Otrzymywaliśmy też zapytania od użytkowników, którzy oprócz hasła zapomnieli też swoje identyfikatory logowania. W szczytowym okresie stanowiły one ponad 1/3 wszystkich zapytań dotyczących kont.
Dzięki przejściu na systemy niewymagające haseł Yahoo! JAPAN miało na celu nie tylko zwiększenie bezpieczeństwa, ale też poprawę użyteczności bez nakładania dodatkowych obciążeń na użytkowników.
Z punktu widzenia bezpieczeństwa wyeliminowanie haseł z procesu uwierzytelniania użytkownika zmniejsza szkody spowodowane atakami na podstawie listy, a z punktu widzenia użyteczności udostępnienie metody uwierzytelniania, która nie wymaga zapamiętywania haseł, zapobiega sytuacjom, w których użytkownik nie może się zalogować, ponieważ zapomniał hasła.
Yahoo! JAPAN's passwordless initiatives
Yahoo! JAPAN podejmuje szereg działań na rzecz uwierzytelniania bez hasła, które można ogólnie podzielić na 3 kategorie:
- udostępnić alternatywne metody uwierzytelniania zamiast haseł;
- dezaktywacja hasła;
- Rejestracja konta bez hasła.
Pierwsze 2 inicjatywy są skierowane do obecnych użytkowników, a rejestracja bez hasła jest przeznaczona dla nowych użytkowników.
1. udostępnienie alternatywnej metody uwierzytelniania zamiast haseł;
Yahoo! JAPAN oferuje te alternatywne metody logowania.
Oprócz tego oferujemy też metody uwierzytelniania, takie jak uwierzytelnianie za pomocą poczty e-mail, hasła połączonego z SMS-em z hasłem jednorazowym oraz hasła połączonego z e-mailem z hasłem jednorazowym.
Uwierzytelnianie przez SMS-a
Uwierzytelnianie przez SMS to system, który umożliwia zarejestrowanemu użytkownikowi otrzymywanie 6-cyfrowego kodu uwierzytelniającego w SMS-ie. Gdy użytkownik otrzyma SMS-a, może wpisać kod uwierzytelniania w aplikacji lub witrynie.

Od dawna zezwalamy systemowi iOS na odczytywanie SMS-ów i proponowanie kodów uwierzytelniających z tekstu wiadomości. Niedawno udostępniliśmy możliwość korzystania z sugestii. Aby to zrobić, w atrybucie autocomplete
elementu wejściowego należy podać wartość „one-time-code”. Chrome na Androidzie, Windows i Mac może zapewniać te same funkcje za pomocą interfejsu WebOTP API.
Na przykład:
<form>
<input type="text" id="code" autocomplete="one-time-code"/>
<button type="submit">sign in</button>
</form>
if ('OTPCredential' in window) {
const input = document.getElementById('code');
if (!input) return;
const ac = new AbortController();
const form = input.closest('form');
if (form) {
form.addEventListener('submit', e => {
ac.abort();
});
}
navigator.credentials.get({
otp: { transport:['sms'] },
signal: ac.signal
}).then(otp => {
input.value = otp.code;
}).catch(err => {
console.log(err);
});
}
Oba te podejścia mają zapobiegać wyłudzaniu informacji przez uwzględnienie domeny w tekstie SMS-a i podanie sugestii tylko dla określonej domeny.
Więcej informacji o interfejsie WebOTP API i autocomplete="one-time-code"
znajdziesz w przewodniku po sprawdzonych metodach dotyczących hasła jednorazowego w formie SMS.

FIDO z WebAuthn
FIDO z WebAuthn używa uwierzytelniania sprzętowego do generowania pary kluczy publiczny-szyfr i potwierdzenia posiadania. Jeśli do uwierzytelniania używany jest smartfon, można go połączyć z uwierzytelnianiem biometrycznym (np. czytnikiem linii papilarnych lub rozpoznawaniem twarzy), aby przeprowadzić uwierzytelnianie dwuskładnikowe w jednym kroku. W tym przypadku na serwer wysyłane są tylko podpis i wskaźnik powodzenia uwierzytelniania biometrycznego, więc nie ma ryzyka kradzieży danych biometrycznych.
Na poniższym diagramie pokazano konfigurację serwera i klienta FIDO. Autentyfikator klienta uwierzytelnia użytkownika za pomocą danych biometrycznych i podpisuje wynik za pomocą kryptografii klucza publicznego. Klucz prywatny używany do tworzenia podpisu jest bezpiecznie przechowywany w środowisku TEE (Trusted Execution Environment) lub w podobnym miejscu. Dostawca usług, który korzysta z FIDO, jest nazywany „usługą zaufaną”.

Gdy użytkownik uwierzytelni się (zazwyczaj za pomocą skanu biometrycznego lub kodu PIN), uwierzytelniacz używa klucza prywatnego, aby wysłać podpisany sygnał weryfikacyjny do przeglądarki. Następnie przeglądarka udostępnia ten sygnał stronie internetowej RP.
Witryna RP wysyła następnie podpisany sygnał weryfikacyjny do serwera RP, który weryfikuje podpis za pomocą klucza publicznego, aby dokończyć uwierzytelnianie.
Więcej informacji znajdziesz we wskazówkach dotyczących uwierzytelniania FIDO Alliance.
Yahoo! JAPAN obsługuje FIDO na Androidzie (aplikacja mobilna i przeglądarka), iOS (aplikacja mobilna i przeglądarka), Windows (Edge, Chrome, Firefox) i macOS (Safari, Chrome). Jako usługa dla konsumentów FIDO może być używana na prawie każdym urządzeniu, co czyni ją dobrym rozwiązaniem do promowania uwierzytelniania bez hasła.

Yahoo! JAPAN zaleca użytkownikom rejestrację w systemie FIDO za pomocą WebAuthn, jeśli nie zostali uwierzytelnieni w inny sposób. Gdy użytkownik musi zalogować się na tym samym urządzeniu, może szybko uwierzytelnić się za pomocą czujnika biometrycznego.
Użytkownicy muszą skonfigurować uwierzytelnianie FIDO na wszystkich urządzeniach, których używają do logowania się w Yahoo. JAPAN.
Aby promować uwierzytelnianie bez hasła i uwzględniać potrzeby użytkowników, którzy rezygnują z haseł, udostępniamy różne metody uwierzytelniania. Oznacza to, że różni użytkownicy mogą mieć różne ustawienia metody uwierzytelniania, a metody, których mogą używać, mogą się różnić w zależności od przeglądarki. Uważamy, że wygodniej jest, gdy użytkownicy logują się za każdym razem przy użyciu tej samej metody uwierzytelniania.
Aby spełnić te wymagania, konieczne jest śledzenie poprzednich metod uwierzytelniania i powiązanie tych informacji z klientem poprzez ich przechowywanie w postaci plików cookie itp. Dzięki temu możemy analizować, jak różne przeglądarki i aplikacje są używane do uwierzytelniania. Użytkownik musi podać odpowiednie dane uwierzytelniające na podstawie swoich ustawień, wcześniejszych metod uwierzytelniania i minimalnego wymaganego poziomu uwierzytelniania.
2. Dezaktywacja hasła
Yahoo! JAPAN prosi użytkowników o ustawienie alternatywnej metody uwierzytelniania, a następnie wyłącza hasło, aby nie można było go używać. Oprócz skonfigurowania uwierzytelniania alternatywnego wyłączenie uwierzytelniania za pomocą hasła (co uniemożliwia logowanie się za pomocą samego hasła) pomaga chronić użytkowników przed atakami opartymi na listach.
Aby zachęcić użytkowników do wyłączenia haseł, wykonaliśmy te czynności:
- promowanie alternatywnych metod uwierzytelniania, gdy użytkownicy resetują hasła;
- Zachęcanie użytkowników do konfigurowania łatwych w użyciu metod uwierzytelniania (takich jak FIDO) i wyłączanie haseł w sytuacjach, które wymagają częstego uwierzytelniania.
- Zachęcanie użytkowników do wyłączenia haseł przed korzystaniem z usług o wysokim ryzyku, takich jak płatności w e-commerce.
Jeśli użytkownik zapomni hasło, może odzyskać konto. Wcześniej wymagało to zresetowania hasła. Użytkownicy mogą teraz skonfigurować inną metodę uwierzytelniania i zachęcamy ich do tego.
3. Rejestracja konta bez hasła
Nowi użytkownicy mogą tworzyć konta Yahoo! konta JAPAN. Użytkownicy muszą najpierw zarejestrować się za pomocą uwierzytelniania SMS. Po zalogowaniu się zachęcamy użytkownika do skonfigurowania uwierzytelniania FIDO.
Ponieważ FIDO to ustawienie na urządzeniu, odzyskanie konta może być trudne, jeśli urządzenie przestanie działać. Dlatego wymagamy, aby użytkownicy zachowali zarejestrowany numer telefonu, nawet po skonfigurowaniu dodatkowego uwierzytelniania.
Najważniejsze problemy związane z uwierzytelnianiem bez hasła
Hasła są przechowywane w pamięci ludzkiej i niezależne od urządzenia. Z drugiej strony metody uwierzytelniania wprowadzone do tej pory w ramach naszej inicjatywy bez haseł zależą od urządzenia. Stwarza to kilka problemów.
Podczas korzystania z wielu urządzeń mogą wystąpić problemy związane z użytecznością:
- Jeśli logujesz się na komputerze, korzystając z uwierzytelniania SMS-em, musisz sprawdzić, czy na Twój telefon nie dotarł SMS. Może to być niewygodne, ponieważ wymaga, aby telefon użytkownika był dostępny i łatwo dostępny w każdej chwili.
- W przypadku FIDO, zwłaszcza uwierzytelniania na platformie, użytkownik korzystający z kilku urządzeń nie będzie mógł uwierzytelnić się na urządzeniach niezarejestrowanych. Rejestracja musi zostać przeprowadzona na każdym urządzeniu, którego użytkownik zamierza używać.
Uwierzytelnianie FIDO jest powiązane z konkretnymi urządzeniami, które muszą pozostać w posiadaniu użytkownika i być aktywne.
- Jeśli umowa o świadczenie usług zostanie anulowana, nie będzie już można wysyłać SMS-ów na zarejestrowany numer telefonu.
- FIDO przechowuje klucze prywatne na określonym urządzeniu. Jeśli urządzenie zostanie zgubione, klucze nie będą działać.
Yahoo! JAPAN podejmuje różne działania w reakcji na te problemy.
Najważniejszym rozwiązaniem jest zachęcanie użytkowników do konfigurowania wielu metod uwierzytelniania. Dzięki temu będziesz mieć alternatywny dostęp do konta w przypadku zgubienia urządzenia. Ponieważ klucze FIDO są powiązane z urządzeniem, warto też zarejestrować klucze prywatne FIDO na wielu urządzeniach.
Użytkownicy mogą też używać interfejsu WebOTP API do przesyłania kodów weryfikacyjnych SMS z telefonu z Androidem do Chrome na komputerze.
Uważamy, że rozwiązywanie tych problemów stanie się jeszcze ważniejsze, gdy uwierzytelnianie bez hasła stanie się powszechne.
Promowanie uwierzytelniania bez hasła
Yahoo! JAPAN pracuje nad tymi inicjatywami bez hasła od 2015 roku. Zaczęło się to od uzyskania certyfikatu serwera FIDO w maju 2015 r., a potem wprowadziliśmy uwierzytelnianie SMS-em, funkcję dezaktywacji hasła i obsługę FIDO na każdym urządzeniu.
Obecnie ponad 30 milionów aktywnych użytkowników korzystających z naszych usług co miesiąc wyłączyło hasła i korzysta z metod uwierzytelniania bez hasła. Yahoo! W JAPONIE obsługa FIDO została wprowadzona w Chrome na Androida, a obecnie ponad 10 milionów użytkowników skonfigurowało uwierzytelnianie FIDO.
W związku z aktualizacją wymagań interfejsu Yahoo! JAPAN's, odsetek zapytań dotyczących zapomnianych identyfikatorów logowania lub haseł zmniejszył się o 25% w porównaniu z okresem, w którym liczba takich zapytań była najwyższa. Potwierdzamy też, że w wyniku zwiększenia liczby kont bez hasła zmniejszyła się liczba przypadków nieautoryzowanego dostępu.
FIDO jest bardzo łatwe w konfigurowaniu, dlatego ma szczególnie wysoki współczynnik konwersji. W związku z tym Yahoo! JAPAN stwierdził, że FIDO ma wyższą skuteczność konwersji niż uwierzytelnianie SMS-em.
25 %
Zmniejszenie liczby próśb o zapomniane dane logowania
74 %
Użytkownicy pomyślnie uwierzytelnieni za pomocą FIDO
65 %
Jak zweryfikować numer telefonu za pomocą SMS-a
Uwierzytelnianie FIDO ma wyższy wskaźnik powodzenia niż uwierzytelnianie SMS-em, a czasy uwierzytelniania są krótsze (średnie i medianowo). Jeśli chodzi o hasła, w przypadku niektórych grup czas uwierzytelniania jest krótki. Podejrzewamy, że jest to spowodowane przez przeglądarkę autocomplete="current-password"
.

Największym problemem w oferowaniu kont bez haseł nie jest dodanie metod uwierzytelniania, ale popularyzacja korzystania z aplikacji uwierzytelniających. Jeśli korzystanie z usługi bez hasła nie jest przyjazne dla użytkownika, przejście na nią może być trudne.
Uważamy, że aby zwiększyć bezpieczeństwo, musimy najpierw poprawić użyteczność, co będzie wymagało wprowadzenia unikalnych innowacji w każdej usłudze.
Podsumowanie
Uwierzytelnianie za pomocą hasła jest ryzykowne pod względem bezpieczeństwa, a także powoduje problemy z użytecznością. Teraz, gdy technologie obsługujące uwierzytelnianie bez hasła, takie jak WebOTP API i FIDO, są bardziej dostępne, nadszedł czas, aby zacząć pracować nad uwierzytelnianiem bez hasła.
W Yahoo! JAPAN, zastosowanie tego podejścia miało wyraźny wpływ na użyteczność i bezpieczeństwo. Wielu użytkowników nadal używa jednak haseł, dlatego będziemy nadal zachęcać ich do korzystania z metod uwierzytelniania bez hasła. Będziemy też nadal ulepszać nasze usługi, aby optymalizować wrażenia użytkowników w przypadku metod uwierzytelniania bez hasła.
Zdjęcie: olieman.eth z Unsplash