Przenoszenie linków do podstron Yahoo! W Japonii dzięki uwierzytelnianiu bez hasła liczba zapytań zmniejszyła się o 25%, a czas logowania skrócił się 2,6 raza

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 z hasłem 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 momencie stanowiły one ponad jedną trzecią wszystkich zapytań dotyczących kont.

Dzięki temu, że 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 list. Z kolei z punktu widzenia użyteczności udostępnienie metody uwierzytelniania, która nie wymaga zapamiętywania haseł, zapobiega sytuacjom, gdy 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:

  1. udostępnić alternatywne metody uwierzytelniania zamiast haseł;
  2. dezaktywacja hasła;
  3. 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.

  1. Uwierzytelnianie przez SMS-a
  2. FIDO z WebAuthn

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 uwierzytelniający 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 tekstcie 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 diagramie poniżej przedstawiono konfigurację serwera i klienta FIDO. Autentyfikator klienta uwierzytelnia użytkownika za pomocą danych biometrycznych i podpisuje wynik za pomocą szyfrowania kluczem publicznym. Klucz prywatny używany do tworzenia podpisu jest bezpiecznie przechowywany w zaufanym środowisku wykonawczym (TEE) lub podobnym miejscu. Dostawca usług, który korzysta z FIDO, jest nazywany stroną zależną.

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 w Androidzie (aplikacja mobilna i wersja internetowa), iOS (aplikacja mobilna i wersja internetowa), 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.

System operacyjny Obsługa FIDO
Android Aplikacje, przeglądarka (Chrome)
iOS Aplikacje (iOS 14 lub nowszy), przeglądarka (Safari 14 lub nowszy)
Windows Przeglądarka (Edge, Chrome, Firefox)
Mac (Big Sur lub nowszy) przeglądarka (Safari, Chrome);
Przykładowy plik Yahoo! JAPAN prompt to authenticate with FIDO.

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 się uwierzytelnić 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, należy śledzić poprzednie metody uwierzytelniania i połączyć te informacje z klientem, przechowując je 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ą zależne od ludzkiej pamięci 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.

W przypadku używania wielu urządzeń mogą wystąpić pewne problemy związane z użytecznością:

  • Jeśli logujesz się na komputerze, korzystając z uwierzytelniania SMS-em, musisz sprawdzić, czy na komórkę nie przychodzi SMS-a. 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 w przypadku każdego urządzenia, którego zamierzają używać.

Uwierzytelnianie FIDO jest powiązane z określonymi 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, te 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żyć interfejsu WebOTP API, aby przesłać kody weryfikacyjne 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 miesięcznie wyłączyło hasła i korzysta z metod uwierzytelniania bez hasła. Yahoo! W Japonii 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 uwierzytelnieni za pomocą FIDO

    65 %

    Weryfikacja SMS-em

Uwierzytelnianie FIDO ma wyższy wskaźnik powodzenia niż uwierzytelnianie SMS-em, a czasy uwierzytelniania są krótsze (średnio 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".

Wykres porównujący czas uwierzytelniania w przypadku haseł, SMS-ów i FIDO
Uwierzytelnianie przy użyciu FIDO trwa średnio 8 sekund, a hasła – 21 sekund, a weryfikacja za pomocą SMS-a – 27 sekund.

Największym problemem w oferowaniu kont bez haseł jest nie dodawanie 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ć 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 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