Native Support for Iris Scanners kommer äntligen till Android

Android får äntligen inbyggt stöd för Iris-skannrar, troligen levererad i Android P. En ny HAL och ett ramverk gör det möjligt att stänga av låsskärmen, och även för appar från tredje part att använda en Iris-skanner.

Biometrisk autentisering kanske inte är lika säker som pins eller lösenord, men dess bekvämlighet är ett stort försäljningsargument för många konsumenter. Den extremt snabba fingeravtrycksläsaren på OnePlus flaggskepp har hyllats nästan överallt, men på senare tid har företag dragit sig till ansiktsigenkänningsteknik som ett alternativ. Till exempel finns det OnePlus 5T och den Honor 7X med sina respektive versioner av en Face Unlock-funktion. Samsung-telefoner har också ansiktsigenkänning för att låsa upp sina enheter, men den biometriska autentiseringstekniken företaget är mest stolt över är dess irisskanner. Nu verkar det som att irisskannrar kan komma till fler Android-telefoner i framtiden, eftersom officiellt stöd för det läggs till i Android.


Iris-skannrar på befintlig Android-hårdvara

De först mainstream Android-smarttelefon med en irisskanner var den olyckliga Samsung Galaxy Note 7. Den tekniken tog sig senare över till Samsung Galaxy S8/S8+ och den Galaxy Note 8. Vi vet också att den kommer att lanseras med Samsung Galaxy S9/S9+ och det kommer att erbjuda stegvisa förbättringar av hårdvaran, men av kombinera det med ansiktsigenkänning, den övergripande upplevelsen bör förbättras. (Det finns också en möjlighet att en irisskanner kan ta sig över till en oanmäld Samsung Galaxy-telefon, men det är uppe i luften just nu.)

För de av oss utan ett Samsung Galaxy-flaggskepp finns det inte särskilt många alternativ när det kommer till en smartphone med en irisskanner. Faktum är att det faktiskt bara finns ett enda alternativ, och telefonen är inte ens tillgänglig för försäljning ännu: en obskyr smartphone som heter BitVault som riktar sig till kryptovalutaentusiaster.

BitVault: den självutnämnda "Världens första Blockchain-telefon". Källa: Schweizisk bank i fickan.

Denna smartphone, tillsammans med en oanmäld smartphone från en japansk smartphone OEM, är de enda icke-Samsung Galaxy-enheter som jag känner till som erbjuder irisskanning. Chipet som driver dessa telefoners irisskanner är FPC ActiveIRIS av Fingerprints.

FPC ActiveIRIS. Irisigenkänning för smartphones. Källa: FPC.

Du kanske aldrig har hört talas om detta företag, men du har troligen använt en smartphone som innehåller deras teknik. Några av de smartphones som använd fingeravtrycksläsare från FPC inkluderar Google Pixel, Honor 8 och Huawei Mate 9 Pro. Deras fingeravtryckssensorer finns på många andra enheter, inklusive flera från Xiaomi, så det är säkert att säga att FPC är en av de ledande leverantörerna när det gäller att sälja den biometriska autentiseringstekniken som finns i smartphones.

FPC-fingeravtrycksläsare på hemknappen, baksidan och sidan av enheten. Källa: FPC.

Så varför är detta företag viktigt? Det beror på att flera av deras ingenjörer har varit det jobbar på med inbyggt stöd för biometriska irisskannrar i Android. Det finns flera commits här, som alla bör tittas på tillsammans för att få en bra bild av vad som händer.

Iris skannrar i en framtida version av Android

Låt oss börja med det viktigaste engagemanget: Biometri Iris HAL-gränssnitt.

Införandet av ett HAL-gränssnitt kommer att standardisera hur Android-ramverket kommer att kommunicera med Iris-skannrar. Detta innebär att produkter från flera leverantörer, inte bara från FPC själva, kommer att kunna fungera på Android. Viktigast av allt, detta öppnar också möjligheten för AOSP-baserade ROM att fungera generiskt med Iris-skanningshårdvara. Till exempel Project Treble GSI lita på detta för att grundläggande fingeravtrycksläsares funktionalitet ska fungera direkt, så utan detta kommer den nya Exynos Samsung Galaxy S9 och Galaxy S9+ kommer inte att kunna använda Iris-skannern på en AOSP ROM.

De SELinux policyer för Iris-skannrarna är helt ointressanta för slutanvändare, men de finns där om du vill ta en titt på den. Införandet av basen Irisfunktion i Android gör det möjligt för appar att upptäcka om enheten har en irisskanner på plats. Slutligen, införandet av Iris ram är vad som faktiskt gör det möjligt för tredjepartsappar att använda Iris-skannern för autentisering i framtiden. Här är de relevanta strängarna:

Irisskanner i ram


<stringname="permlab_manageIris">manage iris hardwarestring>

<stringname="permdesc_manageIris">Allows the app to invoke methods to add and delete iris templates for use.string>

<stringname="permlab_useIris">use iris hardwarestring>

<stringname="permdesc_useIris">Allows the app to use iris hardware for authenticationstring>


<stringname="iris_acquired_insufficient">Couldn\'t process iris. Please try again.string>

<stringname="iris_acquired_too_bright">Iris is too bright. Please try in low light.string>

<stringname="iris_acquired_too_dark">Iris is too dark. Please uncover light source.string>

<stringname="iris_acquired_too_close">Move further.string>

<stringname="iris_acquired_too_far">Move closer.string>

<stringname="iris_acquired_eyes_closed">Open eyes.string>

<stringname="iris_acquired_eyes_partially_obscured">Open eyes wider.string>

array name="iris_acquired_vendor">
array>


<stringname="iris_error_hw_not_available">Iris hardware not available.string>

<stringname="iris_error_no_space">Iris can\'t be stored. Please remove an existing iris.string>

<stringname="iris_error_timeout">Iris time out reached. Try again.string>

<stringname="iris_error_canceled">Iris operation canceled.string>

<stringname="iris_error_lockout">Too many attempts. Try again later.string>

<stringname="iris_error_lockout_permanent">Too many attempts. Iris sensor disabled.string>

<stringname="iris_error_unable_to_process">Try again.string>


<stringname="iris_name_template">Iris <xliff: gexample="1">%dxliff: g>string>


array name="iris_error_vendor">
array>


<stringname="iris_icon_content_description">Iris iconstring>

Läs mer

I ramverkets manifest, den föreslagna behörigheten med titeln "android.permission. USE_IRIS" har en skyddsnivå på "normal", så tredjepartsappar skulle verkligen kunna begära tillståndet och det skulle vara upp till användaren att bevilja det.

Slutligen, ytterligare ett åtagande lägger till stöd för irisidentifiering i tangentlåset. Detta är vad som faktiskt tillåter användaren att skanna sin iris för att stänga låsskärmen. Enligt commit sker iris-autentisering endast så snart skärmen slås på för att minska strömförbrukningen. Vidare kan irisskannern inaktiveras enligt Device Policy Manager om den myndigheten (som en arbetsplats) anser att irisskannern är en osäker metod för autentisering.

Något intressant som händer i alla dessa åtaganden är hur, på många ställen, referenser till fingeravtryck i Android-ramverket generiseras för att referera till biometri. Detta förbereder Android för potentiellt ytterligare metoder för biometrisk autentisering i framtiden, även om det är oklart vad det kan vara.

Jag kommer inte att tråka ut er med resten av implementeringsdetaljerna, så jag går vidare och diskuterar betydelsen av dessa åtaganden. Vad detta betyder för Android är att en framtida version av Android, troligen Android P, kommer att inkludera inbyggt stöd för Iris-skanningshårdvara. Jag säger "sannolikt" eftersom åtagandena inte har slagits samman ännu – ändringarna är mycket långa och kan ta några veckor eller till och med månader att klara kodgranskning.

Det är dock mycket troligt att det kommer att komma in för Android P, och det finns till och med antydningar om att Iris-skannerns ramkod har P-specifika ändringar på plats (som att göra bort med att lagra användarinformation i /data/system/users och istället flytta dem till en ny /data/vendor-katalog, troligtvis sekundär till hemlig Project Treble krav).

Vidare verkar detta vara fullt stöd för Iris-skannrar, även om detta inte betyder att ytterligare funktioner inte kommer att läggas till av andra leverantörer (i själva verket nämner kommentarerna uttryckligen det). Den grundläggande implementeringen finns dock, så vi bör förvänta oss att se framtida smartphones som levereras med biometriska Iris-skannrar. Det finns dock inga bevis i dessa åtaganden att Google Pixel 3 kommer att ha en sådan funktion, så anta inte att någon speciell enhet kommer att ha en Iris-skanner på grund av dessa ändringar.

Notera: Jag kontaktade FPC för kommentarer om dessa ändringar, men fick inget svar från dem vid tidpunkten för denna artikels publicering.