Vous avez des secrets, et vous voulez les garder en sécurité ? La plupart des microcontrôleurs ne sont pas conçus pour se protéger des fouineurs, mais une puce de crypto-authentification peut être utilisée pour verrouiller les clés privées en toute sécurité.
Une fois que la clé privée est enregistrée à l'intérieur, elle ne peut pas être lue, tout ce que vous pouvez faire est de lui envoyer des requêtes défi-réponse. Cela signifie que même si quelqu'un s'empare de votre matériel et peut lire le firmware, il ne pourra pas extraire le secret !
L'ATECC608 est la dernière puce de crypto-auth de Microchip, et elle utilise I2C pour envoyer/recevoir des commandes. Une fois que vous avez "verrouillé" la puce avec vos données, vous pouvez l'utiliser pour le cryptage/décryptage/signature ECDH et AES-128. Il y a également un support matériel pour la génération de nombres aléatoires et les fonctions de hachage SHA-256/HMAC pour accélérer considérablement les commandes de cryptographie d'un micro plus lent.
Nous commençons à voir ces puces sécurisées à faible coût dans divers produits, de sorte qu'une puce moins coûteuse peut être utilisée pour piloter des périphériques, sans se soucier de la sécurité. Cette puce n'a pas de fiche technique publique, mais elle est compatible avec la version antérieure ATECC508 qui en a une. Veuillez donc vous référer à cette fiche technique complète ainsi qu'à la fiche récapitulative ATECC608. La bonne nouvelle est que, malgré l'absence d'une documentation complète, il existe un certain support logiciel. Pour l'utilisation de Arduino, consultez la bibliothèque ATECCx08 de Arduino. Pour Python et C/C++, consultez Microchips Cryptoauthlib (oui, nous pensons aussi qu'il est étrange qu'il n'y ait pas de fiche technique mais qu'il y ait un code publié).
Pour rendre le travail avec l'ATECC608 aussi facile que possible, Adafruit l'a mis sur un circuit imprimé avec les circuits de support nécessaires et des connecteurs STEMMA QT compatibles SparkFun qwiic. Cela vous permet de l'utiliser avec d'autres cartes équipées de manière similaire sans avoir à souder. Cette puce fonctionnera avec des micros à alimentation/logique de 3,3V ou 5V, elle est donc prête à être utilisée avec une gamme de cartes de développement.
Veuillez noter que l'adresse I2C est fixée à 0x60 et, selon Microchip, vous devriez l'utiliser à des vitesses I2C plus élevées, comme 400KHz, si d'autres dispositifs sont sur le bus I2C, afin d'éviter une certaine contention du bus I2C (tout comme la fiche technique, ceci n'est pas encore documenté nulle part)
Cadenas transparent et câble STEMMA QT non inclus
DÉTAILS TECHNIQUES
Dimensions du produit : 25.5mm x 17.7mm x 4.7mm / 1.0" x 0.7" x 0.2"
Poids du produit : 1.8g / 0.1oz
APPRENDRE
Guide principal : Adafruit ATECC608 Breakout - Tu as des secrets, et tu veux les garder en sécurité ? L'ATECC608 vous couvre !