Wie können Sie die neue Touch ID Fingerprint API in Ihrer iPhone App verwenden?

22.07.2014 / 0 Comments

Vor kurzem haben wir die neue Touch ID Fingerprint-Prüfung als biometrisches Anmeldeverfahren in eine Beta-Version unserer SecSign App integriert. Die SecSign ID bietet Nutzern ein sicheres Anmeldeverfahren für Webseiten und Programme, das die Notwendigkeit von Passwörtern beseitigt.

Diese alternative Anmeldeoption verhindert den Diebstahl von Passwörtern und stellt sicher, dass Nutzerkonten weder durch Hacker- oder Phishing-Angriffe noch durch Schadprogramme gefährdet werden können.

Um anderen Entwicklern eine Hilfestellung zu bieten, möchten wir unsere Erfahrungen, die wir mit der Integration von der Touch ID Api in Objective-C iPhone-Anwendungen gemacht haben, mit Ihnen teilen.

Anforderungen für die Integration des Touch ID Fingerprints:

• XCode 6

•  iPhone 5s mit iOS 8

 

Diese Anleitung verdeutlich, wie man die folgenden drei Ziele erreicht:

1. Stellen Sie fest, ob das iPhone einen Fingerabdruck prüfen kann bzw. die Touch ID Api unterstützt, und ob der Nutzer bereits einen Fingerabdruck hinterlegt hat

2. Überprüfen Sie einen Fingerabdruck

3. Überprüfen Sie einen Fingerabdruck oder die PIN für das Gerät (je nachdem, welche Authentifizierungsart der Nutzer auswählt)
Wie auf der Abbildung zu sehen, kann der Nutzer wählen, ob er für die Authentifizierung seinen Fingerabdruck oder Passcode/PIN verwendet.
zwei-faktor_Authentifizierung_mit_touchID

1. Überprüfen Sie, ob das Gerät des Nutzers die Überprüfung per Fingerabdruck unterstützt und ob für das iPhone bereits ein Fingerabdruck registriert wurde

Zuerst muss LocalAuthentication importiert werden. Das erfordert XCode 6:

2. Wie der Touch ID Fingerabdruck validiert und verifiziert werden kann

Starten Sie die Überprüfung. Dieser Aufruf kehrt sofort zurück und wartet nicht auf das Erbgebnis. Somit muss eine Funktion bereitgestellt werden, die einmal aufgerufen wird, sobald die Prüfung des Fingerabdrucks abgeschlossen ist. Zusätzlich kann ein String zur Verfügung gestellt werden, den das Gerät in der Fingerprint-Ansicht anzeigt und der den Grund für die Prüfung des Fingerabdrucks beschreibt.

Achtung: Wenn die Fingerprint-Ansicht von iOS erscheint, führt dies dazu, dass applicationWillResignActive der Anwendung aufgerufen wird. Wenn Sie so wie wir einen Clean-up-Code zur Verfügung haben, möchten Sie ihn vielleicht zum applicationDidEnterBackground bewegen. applicationDidEnterBackground wird aufgerufen, wenn die Anwendung sich nun tatsächlich im Hintergrund befindet. Das Aufrufen von applicationDidEnterBackground erfolgt also nicht für den Scan des Fingerabdrucks, sondern nur beim Schließen der Anwendung/bei der Verwendung der Home-Taste.

 

3. Überprüfung eines Fingerabdrucks oder Passcodes des Nutzergeräts (Wahloptionen für den Nutzer)

Was geschieht, wenn die Überprüfung des Fingerabdrucks fehlschlägt? Der Nutzer erwartet die Eingabe eines Passcodes ähnlich der Eingabe eines Passcodes, um das iPhone zu entsperren. Wenn man jedoch LocalAuthentication wie oben beschrieben benutzt, wird das Gerät einen Fehler anzeigen, wenn die Prüfung des Fingerabdrucks fehlschlägt. Danach gibt es keine Möglichkeit mehr, die Eingabe des Passcodes für das Gerät zu starten. Daher ist ein anderer Ansatz erforderlich.

Beginnend mit iOS 8 können Schlüsselbund-/Keychain-Einträge neue Zugangsbedingungen aufweisen, die es erfordern, die Anwesenheit des Nutzers zu überprüfen, um den Schlüsselbund-/Keychain-Eintrag zu lesen. Diese Überprüfung besteht nun aus der Prüfung des Fingerabdrucks mit der Eingabe des Gerätepasscodes beim Fehlschlagen der Fingerabdruckprüfung. Alles, was wir also machen müssen, ist einen Dummywert im Schlüsselbund zu speichern und zu lesen, wann immer wir einen Fingerabdruck-Scan und/oder Gerätepasscode auf seine Gültigkeit überprüfen möchten. Hier sehen Sie nun den entsprechenden Code. Den ersten Teil bildet der Schlüsselbund-/Keychain-Eintrag mit der Überprüfung der Zugangsbedingungen, die die Anwesenheit des Nutzers voraussetzen.

Dieser Code muss nur einmal ausgeführt werden.

Der zweite Teil des Codes sollte aufgerufen werden, wann immer die Überprüfung eines Gerätepasscodes oder des Scans eines Fingerabdrucks erforderlich ist.

Und dies für den Fall, dass Sie noch eine Angabe hinzufügen möchten, die verhindert, dass der iOS 8 Spezialcode auf einer älteren iOS-Version aufgerufen wird:

Das war´s!

Über ein Feedback von Ihnen würden wir uns sehr freuen. Um den Code einmal in Aktion zu sehen, schauen Sie sich gerne unser YouTube Demo-Video an, das die weltweit erste Webanmeldung mit der Apple Touch ID zeigt. Natürlich sind Sie auch jederzeit herzlich willkommen, unsere Webseite zu besuchen, um mehr über unsere aktuellen SecSign ID Lösungen zu erfahren und die neueste Version unserer App im iTunes App Store herunterzuladen.

Wenn Sie Ihren Nutzern sichere Anmeldungsmöglichkeiten anbieten möchten (inkl. Finderabdruck Scan und ohne die Verwendung von angreifbaren passwortbasierten Logins) können Sie unsere kostenlose SecSign ID API verwenden, um unsere mobile Zwei-Faktor-Authentifizierung in Ihre App einzubauen. Ebenso können Sie unsere kostenlosen SecSign ID Plugins zur Integration unserer sicheren Anmeldemethode in Ihre Webseite benutzen.

Letzte Blog Einträge, Neuigkeiten & Funktionen

Crowd SSO

21.09.2017

Read More
Do NOT follow this link or you will be banned from the site!