Uwierzytelnianie biometryczne to metoda weryfikacji tożsamości użytkownika na podstawie unikalnych cech fizjologicznych. W przeciwieństwie do haseł, danych biometrycznych nie można ukraść zdalnie ani odgadnąć metodą brute force. Według danych Statista (2025), ponad 80% nowoczesnych smartfonów jest wyposażonych we wbudowane czujniki biometryczne.
Najważniejsze
Uwierzytelnianie biometryczne — to proces weryfikacji tożsamości użytkownika na podstawie jego unikalnych cech fizjologicznych lub behawioralnych. W przeciwieństwie do klasycznych metod — haseł, kodów PIN lub jednorazowych tokenów — biometria jest przypisana do samego człowieka i nie może zostać przekazana innej osobie.
Podstawą metody jest pomiar i porównanie cech biometrycznych z wcześniej zapisanym szablonem. Technologia przeszła drogę od drogich systemów korporacyjnych do masowego wdrożenia w urządzeniach konsumenckich. Pierwszym masowym smartfonem ze skanerem linii papilarnych był Motorola Atrix 4G w 2011 roku, a dziś czujniki biometryczne są instalowane w urządzeniach w segmencie cenowym od 100 dolarów.
Biometria rozwiązuje kluczowy problem uwierzytelniania hasłowego: ludzką pamięć. Według badania Hypr (2024), przeciętny użytkownik ma ponad 100 kont online, ale używa tylko 5 unikalnych haseł. Biometria eliminuje konieczność zapamiętywania skomplikowanych kombinacji.
Proces uwierzytelniania biometrycznego składa się z dwóch faz: rejestracji (enrollment) i weryfikacji (verification). Na etapie rejestracji system przechwytuje obraz biometryczny, wyodrębnia charakterystyczne cechy i tworzy wzorcowy szablon. Podczas weryfikacji nowy obraz jest porównywany z zapisanym szablonem — algorytm oblicza stopień zgodności i podejmuje decyzję.
Czujnik urządzenia rejestruje surowy sygnał biometryczny: obraz odcisku palca przez matrycę pojemnościową, trójwymiarową mapę twarzy przez projektor punktów lub widmo głosu przez mikrofon. Jakość przechwytywania bezpośrednio wpływa na dokładność późniejszego rozpoznawania. Nowoczesne czujniki wykorzystują od 50 do 300 punktów pomiarowych na milimetr dla odcisków i do 30 000 punktów dla twarzy.
Algorytm wyodrębnia z surowych danych unikalne cechy: dla odcisków palców — minucje (zakończenia i rozwidlenia linii papilarnych), dla twarzy — odległość między oczami, kształt nosa i kontur szczęki. Cechy te są przekształcane w matematyczny szablon o rozmiarze od 2 do 20 KB. Oryginalny obraz nie jest przechowywany — tylko szablon cech, z którego nie można odtworzyć oryginału.
System porównuje uzyskany szablon z wzorcowym, obliczając metrykę podobieństwa. Jeśli wartość przekracza określony próg (threshold), uwierzytelnianie uznaje się za udane. Próg określa równowagę między wygodą a bezpieczeństwem: niski próg zwiększa False Acceptance Rate, wysoki — False Rejection Rate. Dla urządzeń mobilnych typowy próg jest ustawiony na poziomie FAR 0.001% przy FRR około 2%.
Urządzenia mobilne obsługują kilka typów czujników biometrycznych, różniących się dokładnością, szybkością i odpornością na podrobienie. Każdy typ ma swój obszar zastosowania i poziom bezpieczeństwa.
Najbardziej rozpowszechniony typ biometrii w urządzeniach mobilnych. Skanery pojemnościowe tworzą obraz wzoru brodawkowego na podstawie różnicy potencjałów elektrycznych między grzbietami a dolinami skóry. Skanery ultradźwiękowe, po raz pierwszy zastosowane w Galaxy S10, wykorzystują fale dźwiękowe do trójwymiarowej rekonstrukcji odcisku — działają nawet przy mokrych palcach i są odporne na silikonowe imitacje.
Dwa podejścia: kamera 2D (zwykły przedni aparat) i skanowanie 3D (światło strukturalne lub ToF). Apple Face ID projektuje ponad 30 000 podczerwonych punktów na twarz użytkownika, tworząc dokładną trójwymiarową mapę. Algorytm na Neural Engine przetwarza dane w milisekundy i dostosowuje się do zmian wyglądu — brody, okularów, fryzury.
Tęczówka oka jest jedną z najbardziej stabilnych cech biometrycznych: praktycznie nie zmienia się z wiekiem i nie ulega uszkodzeniom tak jak odciski palców. Skanery Iris od Samsung (Galaxy S8–S10) wykorzystują kamerę IR do analizy do 240 unikalnych cech tęczówki. FAR takich systemów wynosi mniej niż 0.0001%, ale szybkość przechwytywania jest niższa niż w przypadku skanerów twarzy.
Biometria głosowa analizuje fizyczne cechy traktu głosowego: częstotliwość podstawową, formanty i barwę. Technologia jest stosowana w asystentach głosowych — Siri i Google Assistant — do rozpoznawania konkretnego użytkownika. Główną wadą jest wrażliwość na hałas otoczenia i możliwość nagrania głosu przez osobę nieuprawnioną.
Począwszy od Android 9 (API 28), Google udostępnia jednolity API BiometricPrompt, który abstrahuje pracę ze wszystkimi typami czujników biometrycznych na urządzeniu. Deweloper nie musi pisać osobnego kodu dla skanera linii papilarnych i rozpoznawania twarzy — BiometricPrompt sam określa dostępne sensory i wyświetla standardowe okno dialogowe.
val executor = ContextCompat.mainExecutor(context)
val biometricPrompt = BiometricPrompt(activity, executor,
object : BiometricPrompt.AuthenticationCallback() {
override fun onAuthenticationSucceeded(
result: BiometricPrompt.AuthenticationResult
) {
// Dostęp przyznany — można wyświetlić treść
binding.showContent()
}
override fun onAuthenticationFailed() {
// Biometria nie rozpoznana — powiadom użytkownika
binding.showError("Odcisku palca nie rozpoznano")
}
override fun onAuthenticationError(
errorCode: Int,
errString: CharSequence
) {
// Nieodwracalny błąd — biometria niedostępna
binding.showFallback()
}
}
)
val promptInfo = BiometricPrompt.PromptInfo.Builder()
.setTitle("Zaloguj się do aplikacji")
.setSubtitle("Potwierdź swoją tożsamość odciskiem palca")
.setNegativeButtonText("Użyj PIN")
.build()
biometricPrompt.authenticate(promptInfo)
Przedstawiony kod demonstruje pełny cykl uwierzytelniania biometrycznego przez BiometricPrompt. Callback onAuthenticationSucceeded jest wywoływany po pomyślnej weryfikacji szablonu w Trusted Execution Environment. Na urządzeniach bez czujnika biometrycznego BiometricPrompt automatycznie wyświetli ekran wprowadzania kodu PIN lub wzoru — deweloper nie musi obsługiwać tego scenariusza osobno.
Ważny wymóg bezpieczeństwa: wszystkie operacje biometryczne muszą być wykonywane po stronie TEE (Trusted Execution Environment) — sprzętowo izolowanego obszaru procesora. Android BiometricPrompt gwarantuje użycie TEE przez dostawcę BiometricManager.Authenticators.BIOMETRIC_STRONG, niedostępnego do podmiany z przestrzeni użytkownika.
Uwierzytelnianie biometryczne daje znaczące korzyści w porównaniu z hasłami, ale ma również fundamentalne ograniczenia, które deweloper powinien uwzględnić przy projektowaniu zabezpieczeń aplikacji.
Krytyczne ograniczenie — biometria nie jest dowodem intencji. Użytkownik może zostać zmuszony do odblokowania urządzenia fizycznie lub pod presją. Dlatego organy regulacyjne aplikacji klasy bankingowej (PSD2, PCI DSS) wymagają uwierzytelniania wieloskładnikowego, w którym biometria stanowi tylko jeden z czynników.
Bezpieczeństwo szablonów biometrycznych zapewniają sprzętowe mechanizmy ochrony: Secure Enclave w iOS i Trusted Execution Environment (TEE) w Android. Te izolowane koprocesory wykonują operacje przechwytywania, przetwarzania i porównywania danych biometrycznych bez dostępu z głównego procesora i systemu operacyjnego.
Kluczową zasadą bezpieczeństwa jest nieprzechowywanie oryginalnego obrazu. Czujnik przekazuje do TEE tylko matematyczne przedstawienie cech, a nie obraz odcisku czy zdjęcie twarzy. W Android 13+ API BiometricPrompt dodatkowo szyfruje wynik uwierzytelniania kluczem kryptograficznym wygenerowanym wewnątrz TEE. To podejście czyni bezużyteczną kradzież biometrycznej bazy danych z serwera — włamywacz otrzymuje jedynie zaszyfrowane szablony, a nie oryginalne dane.
Międzynarodowe standardy ISO/IEC 24745:2022 i FIDO2 regulują wymagania dotyczące przechowywania biometrii: zakaz przechowywania oryginalnych obrazów, szablony muszą być nieodwracalnie przekształcone, a kanał transmisji danych między czujnikiem a modułem porównującym musi być sprzętowo chroniony. Przy tworzeniu aplikacji mobilnych zaleca się stosowanie FIDO2 WebAuthn — protokołu zapewniającego szyfrowanie end-to-end transakcji biometrycznych.
Często zadawane pytania
To logowanie do urządzenia lub aplikacji za pomocą unikalnych cech ciała: odcisku palca, twarzy, głosu lub tęczówki oka. Zamiast wprowadzać hasło, użytkownik przykłada palec do skanera lub patrzy na kamerę — system rozpoznaje go i odblokowuje dostęp.
Główne typy: pojemnościowe i ultradźwiękowe skanery linii papilarnych, rozpoznawanie twarzy 3D (Face ID, Windows Hello), skanery tęczówki oka i biometria głosowa dla asystentów głosowych. W budżetowych urządzeniach spotyka się również rozpoznawanie twarzy 2D za pomocą przedniego aparatu.
Face ID wykorzystuje trójwymiarową mapę twarzy z 30 000 punktów na podczerwień, co czyni go odpornym na zdjęcia i maski. Skaner linii papilarnych analizuje wzór brodawkowy. Face ID ma FAR około 0.0001%, Touch ID — około 0.001%. Face ID jest wygodniejszy w scenariuszu bezkontaktowym, ale wolniejszy o około 0.5 sekundy.
Tak, ale trudność zależy od typu czujnika. Prosty skaner twarzy 2D można oszukać zdjęciem. Ultradźwiękowy skaner linii papilarnych i Face ID są chronione przed imitacjami i maskami za pomocą sprzętu. Do obejścia sensorów 3D potrzebne są drogie silikonowe repliki, co czyni takie ataki ekonomicznie nieopłacalnymi dla masowego użytkownika.
Na iPhone w Secure Enclave, na Android w TEE (Trusted Execution Environment) — sprzętowo izolowanych procesorach, do których nie ma dostępu z głównego systemu operacyjnego i aplikacji. Oryginalne obrazy nie są przechowywane, tylko matematyczny szablon cech o rozmiarze 2–20 KB, z którego nie można odtworzyć oryginalnego odcisku ani twarzy.
Podsumowanie
Opracujemy aplikację mobilną pod klucz
IT Sectr tworzy aplikacje na iOS i Androida dla startupów i firm od 2017 roku. Doradzimy Ci i zaproponujemy najlepsze rozwiązanie.
Przeczytaj również