Dane uwierzytelniające w formie cyfrowej to dokumenty, które można zweryfikować za pomocą kryptografii. Można ich używać do uwierzytelniania, autoryzowania lub przekazywania informacji o użytkowniku. Zwykle są to dokumenty takie jak prawo jazdy, paszporty cyfrowe czy karty pokładowe. Przechowywane są w kontenerach wirtualnych zwanych cyfrowymi portfelami i są częścią standardu W3C, który określa sposób ich uzyskiwania i odczytywania. Ten standard jest implementowany w przypadku zastosowań internetowych za pomocą interfejsu W3C Credential Management API oraz na Androidzie za pomocą interfejsu DigitalCredential API menedżera danych logowania.
Dane logowania do usługi cyfrowej
W świecie rzeczywistym osoba może przechowywać dokument tożsamości w portfelu i przedstawić go stronie, która go poprosi:
W takim przypadku użytkownik ma zwykle jeden portfel i pobiera z niego żądane dane logowania, aby je przekazać. Portfele są w dużej mierze wymienne i zazwyczaj można w nich przechowywać te same rzeczy.
Dane uwierzytelniające w formie cyfrowej mają kilka głównych różnic:
- Użytkownicy powinni mieć wiele portfeli, które mogą zawierać różne dane logowania. Portfele określają, które dane logowania mogą być w nich przechowywane.
- Osoba przesyłająca prośbę to teraz aplikacja, a nie prawdziwa osoba. Jest ona nazywana weryfikatorem.
- Prezentacja danych logowania odbywa się w oprogramowaniu, co oznacza, że interfejs API pobiera i prezentuje dane logowania. W Androidzie jest to menedżer danych logowania.
W związku z tym Menedżer danych logowania pełni kilka ról, które wcześniej były obsługiwane przez użytkownika:
- Na Androidzie portfele muszą zarejestrować metadane swoich danych logowania w Menedżerze danych logowania, aby były one widoczne w interfejsie Menedżera danych logowania.
- Menedżer danych logowania dopasowuje dane logowania w różnych portfelach na podstawie żądania i prezentuje listę, z której użytkownik może wybrać dane.
- Gdy użytkownik wybierze dane logowania na liście, menedżer danych logowania wywołuje portfel, który przeprowadzi pozostałą część transakcji (np. wyświetla interfejs użytkownika) i zwróci dane logowania do aplikacji.
Oto ten proces:
Interfejs użytkownika
Jak widać w przypadku Androida, użytkownik musi tylko raz wejść w interakcję z interfejsem menedżera danych logowania, aby wybrać odpowiednie dane. Oto przykład tego, jak wygląda selektor:

Standardy
Żądania dotyczące cyfrowych danych logowania są tworzone zgodnie ze standardem OpenID4VP. Przykładowe żądania znajdziesz na stronie z przykładami dokumentów cyfrowych.
Odpowiedzi dotyczące cyfrowych danych logowania są zwykle zwracane w ustandaryzowanym formacie. Są one obsługiwane przez różne organy standaryzacyjne i obejmują weryfikowalne dane logowania W3C, tokeny JWT oraz dokumenty mdoc.
Możliwe jest też użycie protokołów niestandardowych, ale zalecamy użycie w aplikacji jednego ze standardowych protokołów.
Wypróbuj
Możesz przetestować proces logowania na różnych platformach za pomocą portfela na Androida i weryfikatora internetowego:
- Zainstaluj na telefonie z Androidem publiczny przykład CMWallet.
Aby to zrobić, pobierz z repozytorium i zainstaluj bezpośrednio z Android Studio lub otwórz stronę https://github.com/digitalcredentialsdev/CMWallet/actions i wybierz najnowszą wersję, aby uzyskać dostęp do najnowszego pliku
app-debug.apk
. - Otwórz CMWallet, aby zarejestrować metadane w Menedżerze danych logowania. Sprawdź, czy Bluetooth jest włączony, aby umożliwić połączenie urządzeń.
- Otwórz stronę https://digital-credentials.dev/ i kliknij
Request Credentials (OpenID4VP)
. - Zaakceptuj ostrzeżenia i zeskanuj kod QR telefonem, a następnie wybierz „Użyj klucza dostępu” i kliknij potwierdzenie, aby wyświetlić dostępne dane logowania.
- Wybierz dane logowania z CMWallet, aby wrócić do przeglądarki. Przeglądarka powinna wyświetlić zwrócone dane uwierzytelniające.
Zobacz również
- Więcej informacji o używaniu Menedżera danych logowania do żądania danych logowania cyfrowych w aplikacji znajdziesz na stronie Credential Verifier API (w języku angielskim).
- Więcej informacji o tworzeniu portfela cyfrowego za pomocą Menedżera danych logowania znajdziesz na stronie Credential Holder API.