Configuration
Rôles
Le profil définit deux rôles : Fast Pair Seeker et Fast Pair Provider. Le demandeur est normalement un téléphone qui recherche un appareil à associer. Le fournisseur est un appareil qui annonce sa présence et sa disponibilité pour l'association (par exemple, un casque détectable).
Le demandeur d'association express doit utiliser le rôle GAP Central. Le fournisseur Association express doit utiliser le rôle GAP Peripheral.
Détection d'appareils
Pour faciliter la découverte des appareils, le fournisseur Association express doit diffuser une charge utile indiquant la compatibilité avec le service Google Association express (avec les données décrites ci-dessous). Le détecteur d'association express doit rechercher et observer périodiquement la présence de trames publicitaires du fournisseur d'association express, et prendre des mesures si nécessaire.
ID du modèle
Chaque modèle de fournisseur possède un ID de modèle de 24 bits, fourni par Google lors de l'enregistrement du modèle.
Puissance de transmission
Les appareils fournisseurs doivent diffuser des annonces à une faible puissance d'émission (TxPower) pour limiter l'exposition de l'appareil annoncé. Toutefois, la puissance doit être suffisamment élevée pour que l'annonce soit visible par n'importe quel téléphone situé à au moins un mètre.
Pour déterminer la proximité, le demandeur d'Association express doit connaître la puissance de transmission du fournisseur d'Association express. Dans ce profil, TxPower est défini comme l'intensité du signal reçu à la source (0 mètre), mesurée en dBm (comme le définit Eddystone).
Cette valeur mesurée doit être transmise à l'aide de l'une des méthodes suivantes :
- Informations incluses dans l'enregistrement de l'annonce
- L'appareil inclut le type de données Niveau de puissance d'émission, ibid., § 1.5, dans sa publicité.
- Fourni lors de l'enregistrement du modèle
- Lors de l'enregistrement du modèle, le fabricant fournit à Google la puissance d'émission et le modèle d'appareil utilisé pour la mesurer.
- L'appareil doit maintenir sa puissance d'émission constante pour toutes les diffusions lorsqu'il utilise cette option, afin que les mesures de distance soient précises.
Clés : paire de clés publique/privée anti-spoofing
Une fois le modèle enregistré, Google distribuera une clé privée anti-spoofing de 256 bits (un entier dans [1, n–1] sur la courbe elliptique secp256r1), en plus de l'ID du modèle. Cette clé doit être conservée sur l'appareil du fournisseur et, idéalement, stockée dans un élément sécurisé (SE). Notez qu'un élément sécurisé est fortement recommandé. En son absence, il n'est pas garanti que les pirates informatiques ne puissent pas usurper le rôle de fournisseur, car la clé privée pourrait être divulguée. Cette fuite de clé ouvre la voie à des attaques MITM ("man in the middle"). Par conséquent, si une usurpation d'identité ou un abus sont détectés, les fonctionnalités Association express qui utilisent cette clé peuvent être désactivées (par exemple, la notification "Appuyer pour associer" lorsque le fournisseur est en mode association).
La clé publique anti-spoofing correspondante n'est actuellement pas utilisée par le fournisseur. Elle est utilisée par le demandeur pour chiffrer un message à envoyer au fournisseur (voir Association basée sur une clé).
Clés : liste des clés de compte
Le Fournisseur doit allouer de l'espace pour stocker une liste persistante de clés de compte de 128 bits. Chaque clé de compte permet au Fournisseur d'être reconnu comme appartenant à un certain compte utilisateur.
La liste doit pouvoir stocker au moins cinq clés (c'est-à-dire qu'au moins 80 octets d'espace doivent être dédiés à cette liste). Les fournisseurs peuvent éventuellement stocker plus de clés, mais ils doivent s'assurer qu'elles tiennent dans leur paquet publicitaire. Le nombre exact de clés pouvant être stockées dépend du nombre d'octets libres disponibles dans le paquet publicitaire. Pour savoir combien d'octets chaque clé occupera, consultez la section Filtre de clé de compte. Par exemple, pour annoncer 10 clés de compte, 15 octets doivent être disponibles dans le paquet. Toutefois, pour les appareils personnels (par exemple, les écouteurs), le nombre de clés de compte ne doit pas être supérieur à 5. Cela permet d'éviter que le nombre de clés de compte ne devienne trop important. La clé peut donc être unique et traçable.
Cette liste est initialement vide et doit être effacée si le fournisseur est réinitialisé aux paramètres d'usine (si l'utilisateur efface la liste des appareils associés). La liste est remplie comme décrit dans la section Caractéristique de la clé de compte.
Informations sur l'adresse BLE
Pour éviter le suivi, la publicité BLE doit utiliser l'adresse privée aléatoire résolvable (RPA). L'adresse doit être modifiée au moins toutes les 15 minutes lorsque l'appareil diffuse activement des annonces, et chaque fois que l'état passe de "ne diffuse pas d'annonces" à "diffuse des annonces". Un décalage aléatoire doit être utilisé pour modifier l'intervalle de randomisation des adresses.
Négociation de la taille de l'unité de transmission maximale (MTU) du protocole d'attribut (ATT)
Une valeur MTU (maximum transmission unit) ATT de 83 doit être utilisée chaque fois que possible, mais la valeur par défaut de 23 est autorisée.