Aller au contenu principal

Aperçu pour les développeurs

Commencez ici pour savoir ce dont vous avez réellement besoin

La Seedkeeper PRO est un authentificateur FIDO2 CTAP2.1. Si vous construisez un service qui accepte les passkeys, vous n'avez besoin d'aucun code spécifique à Seedkeeper - implémentez WebAuthn et l'appareil fonctionne, exactement comme n'importe quel authentificateur certifié. Les bibliothèques Seedkeeper ne comptent que si vous pilotez l'appareil directement : provisionnement, outillage, ou application sur mesure.

Dans quel cas êtes-vous ?

Ce que vous construisezCe dont vous avez besoin
Un site ou un service qui accepte les passkeysWebAuthn standard. Voir WebAuthn Quickstart
Un déploiement en entreprise restreignant le matériel acceptéAAGUID et attestation. Voir FIDO2 Integration Guide
Le provisionnement d'appareils en volume, ou de l'outillage internePython Library and CLI
Une application mobile qui dialogue avec l'appareil en NFCMobile SDKs
L'évaluation de l'adéquation du matériel à vos exigencesDevice Capabilities

Pourquoi la plupart des intégrations n'ont besoin d'aucun SDK

Cela vaut la peine d'être dit clairement, car la documentation des fournisseurs laisse généralement entendre le contraire.

FIDO2 est un standard ouvert en deux moitiés. WebAuthn est une API navigateur : votre service appelle navigator.credentials.create() et get(), et le navigateur s'occupe du reste. CTAP2 est le protocole entre le navigateur et l'authentificateur, et c'est l'affaire du navigateur, pas la vôtre.

Votre code ne touche jamais l'appareil. Il n'apprend jamais quel authentificateur a répondu, sauf s'il demande une attestation. Il n'y a aucune bibliothèque Seedkeeper à installer, aucun partenariat à signer, et rien qui cesserait de fonctionner si nous disparaissions demain.

C'est le résultat recherché d'un standard ouvert, et cela signifie que le chemin le plus rapide pour prendre en charge la Seedkeeper PRO est de prendre correctement en charge WebAuthn. Voir Qu'est-ce que FIDO2 ? pour le contexte.

Quand vous avez besoin de notre code

Trois cas, tous liés au pilotage de l'appareil plutôt qu'à l'authentification auprès de lui.

Provisionnement et outillage. Définir un PIN FIDO, charger des identifiants OTP, réinitialiser des applets, ou scripter tout cela sur de nombreux appareils. seedkeeper-manager est une bibliothèque Python et un CLI conçus précisément pour cela.

Applications mobiles. Dialoguer avec l'appareil en NFC depuis iOS ou Android exige une couche de transport. Nous maintenons des forks des SDK mobiles Yubico - voir Mobile SDKs.

Implémentations de référence. Les applications iOS et Flutter sont open source et montrent une intégration complète et fonctionnelle de bout en bout. Voir Repositories.

Tout est sous AGPLv3

Firmware, applications, bibliothèques. Vous pouvez lire l'implémentation, vérifier ce qu'elle fait, et compiler depuis les sources.

Cela a une conséquence pratique pour les intégrateurs : si une affirmation de cette documentation compte dans votre évaluation, vous pouvez la vérifier dans le code plutôt que de nous croire sur parole.

Où aller ensuite

FAQ

Ai-je besoin d'un SDK pour prendre en charge la Seedkeeper PRO dans mon service ?

Non. La Seedkeeper PRO est un authentificateur FIDO2 CTAP2.1 : implémenter WebAuthn de façon standard suffit. Le navigateur gère toute la communication avec l'appareil ; votre code ne le touche jamais directement.

Ai-je besoin d'un partenariat ou d'un accord avec Satochip ?

Non. FIDO2 est un standard ouvert, sans redevance ni gardien. Tout service implémentant correctement WebAuthn fonctionne avec l'appareil sans aucune intervention de notre part.

Quand utiliserais-je les bibliothèques Seedkeeper ?

Uniquement pour piloter l'appareil directement plutôt que pour s'authentifier auprès de lui : provisionner des appareils, définir des PIN, charger des identifiants OTP, scripter des déploiements, ou construire une application mobile qui dialogue avec l'appareil en NFC.

Le code source est-il disponible ?

Oui, tout est publié sous AGPLv3 - firmware, applications mobiles et de bureau, et l'outillage Python. Voir Repositories pour la liste complète.

Articles liés