

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Créer un certificat de signature de code


Pour signer numériquement les images du microprogramme, vous avez besoin d'un certificat de signature de code et d'une clé privée. À des fins de test, vous pouvez créer un certificat auto-signé et une clé privée. Pour les environnements de production, achetez un certificat auprès d'une autorité de certification (CA) reconnue.

Les différentes plateformes nécessitent différents types de certificats de signature de code. Les sections suivantes décrivent comment créer des certificats de signature de code pour différentes plateformes qualifiées pour FreerTOS.

**Topics**
+ [

# Création d'un certificat de signature de code pour le Texas Instruments SF-LAUNCHXL CC3220
](ota-code-sign-cert-ti.md)
+ [

# Création d'un certificat de signature de code pour l'Espressif ESP32
](ota-code-sign-cert-esp.md)
+ [

# Création d'un certificat de signature pour le code du Nordic nrf52840-dk
](ota-code-sign-cert-nordic.md)
+ [

# Création d'un certificat de signature de code pour le simulateur FreeRTOS pour Windows
](ota-code-sign-cert-win.md)
+ [

# Création d'un certificat de signature de code pour le matériel personnalisé
](ota-code-sign-cert-other.md)

# Création d'un certificat de signature de code pour le Texas Instruments SF-LAUNCHXL CC3220


**Important**  <a name="deprecation-message"></a>
Cette intégration de référence est hébergée sur le référentiel Amazon-FreeRTOS qui est obsolète. Nous vous recommandons de [commencer ici](freertos-getting-started-modular.md) lorsque vous créez un nouveau projet. Si vous possédez déjà un projet FreeRTOS basé sur le référentiel Amazon-FreeRTOS, désormais obsolète, consultez le. [Guide de migration du référentiel Github d'Amazon-FreeRTOS](github-repo-migration.md)

Le kit de développement Launchpad du microcontrôleur sans fil SimpleLink Wi-Fi CC3220 SF prend en charge deux chaînes de certificats pour la signature du code du microprogramme :
+ Production (certificat-catalogue)

  Pour utiliser la chaîne de certificats de production, vous devez acheter un certificat de signature de code et utilisez l'[outil TI Uniflash](http://www.ti.com/tool/UNIFLASH) pour définir la carte en mode production.
+ Test et développement (certificat-playground) 

  La chaîne de certificats Playground vous permet d'essayer les mises à jour OTA avec un certificat de signature de code autosigné.

Utilisez le AWS Command Line Interface pour importer votre certificat de signature de code, votre clé privée et votre chaîne de certificats dans. AWS Certificate Manager Pour plus d'informations, voir [Installation du AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) dans le *guide de AWS Command Line Interface l'utilisateur*.

Téléchargez et installez la dernière version du [SimpleLink CC3220 SDK.](http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK) Par défaut, les fichiers dont vous avez besoin se trouvent ici :

`C:\ti\simplelink_cc32xx_sdk_version\tools\cc32xx_tools\certificate-playground` (Windows) 

`/Applications/Ti/simplelink_cc32xx_version/tools/cc32xx_tools/certificate-playground` (macOS)

Les certificats du SimpleLink CC3220 SDK sont au format DER. Pour créer un certificat de signature de code autosigné, vous devez le convertir au format PEM.

Suivez ces étapes pour créer un certificat de signature de code lié à la hiérarchie des certificats du terrain de jeu de Texas Instruments AWS Certificate Manager et répondant aux critères de signature de AWS IoT code.

**Note**  
Pour créer un certificat de signature de code, vous devez installer [OpenSSL](https://www.openssl.org/) sur votre machine. Une fois que vous avez installé OpenSSL, assurez-vous qu'`openssl` est attribué à l'exécutable OpenSSL dans votre invite de commande ou dans l'environnement de terminal.

**Pour créer un certificat de signature de code autosigné**

1. Ouvrez une invite de commande ou un terminal avec des autorisations d'administrateur.

1. Dans votre répertoire de travail, utilisez le texte suivant pour créer un fichier nommé `cert_config.txt`. Remplacez *test\$1signer@amazon.com* par votre adresse e-mail.

   ```
   [ req ]
   prompt             = no
   distinguished_name = my dn
   
   [ my dn ]
   commonName = test_signer@amazon.com
   
   [ my_exts ]
   keyUsage         = digitalSignature
   extendedKeyUsage = codeSigning
   ```

1. Créez une clé privée et une demande de signature de certificat (CSR) :

   ```
   openssl req -config cert_config.txt -extensions my_exts -nodes -days 365 -newkey rsa:2048 -keyout tisigner.key -out tisigner.csr
   ```

1. Convertissez la clé privée de la CA racine du playground Texas Instruments du format DER au format PEM.

   La clé privée de la CA racine du playground TI réside ici :

   `C:\ti\simplelink_cc32xx_sdk_version\tools\cc32xx_tools\certificate-playground\dummy-root-ca-cert-key` (Windows) 

   `/Applications/Ti/simplelink_cc32xx_sdk_version/tools/cc32xx_tools/certificate-playground/dummy-root-ca-cert-key` (macOS)

   ```
   openssl rsa -inform DER -in dummy-root-ca-cert-key -out dummy-root-ca-cert-key.pem
   ```

1. Convertissez le certificat de la CA racine du playground Texas Instruments du format DER au format PEM.

   Le certificat racine du playground TI réside ici :

   `C:\ti\simplelink_cc32xx_sdk_version\tools\cc32xx_tools\certificate-playground/dummy-root-ca-cert` (Windows) 

   `/Applications/Ti/simplelink_cc32xx_sdk_version/tools/cc32xx_tools/certificate-playground/dummy-root-ca-cert` (macOS)

   ```
   openssl x509 -inform DER -in dummy-root-ca-cert -out dummy-root-ca-cert.pem
   ```

1. Signez la CSR avec la CA racine Texas Instruments :

   ```
   openssl x509 -extfile cert_config.txt -extensions my_exts  -req -days 365 -in tisigner.csr -CA dummy-root-ca-cert.pem -CAkey dummy-root-ca-cert-key.pem -set_serial 01 -out tisigner.crt.pem -sha1
   ```

1. Convertissez votre certificat de signature de code (`tisigner.crt.pem`) au format DER : 

   ```
   openssl x509 -in tisigner.crt.pem -out tisigner.crt.der -outform DER
   ```
**Note**  
Vous écrirez le certificat `tisigner.crt.der` sur la carte de développement TI ultérieurement.

1. Importez le certificat de signature de code, la clé privée et la chaîne de certificats dans : AWS Certificate Manager

   ```
   aws acm import-certificate --certificate fileb://tisigner.crt.pem --private-key fileb://tisigner.key --certificate-chain fileb://dummy-root-ca-cert.pem
   ```

   Cette commande affiche l'ARN de votre certificat. Vous avez besoin de cet ARN lorsque vous créez une tâche de mise à jour OTA.
**Note**  
Cette étape est écrite en partant du principe que vous allez utiliser la signature de code AWS IoT pour signer les images de votre microprogramme. Bien que l'utilisation de la signature de code AWS IoT soit recommandée, vous pouvez signer les images de votre microprogramme manuellement.

# Création d'un certificat de signature de code pour l'Espressif ESP32


**Important**  <a name="deprecation-message"></a>
Cette intégration de référence est hébergée sur le référentiel Amazon-FreeRTOS qui est obsolète. Nous vous recommandons de [commencer ici](freertos-getting-started-modular.md) lorsque vous créez un nouveau projet. Si vous possédez déjà un projet FreeRTOS basé sur le référentiel Amazon-FreeRTOS, désormais obsolète, consultez le. [Guide de migration du référentiel Github d'Amazon-FreeRTOS](github-repo-migration.md)

Les ESP32 cartes Espressif prennent en charge un certificat SHA-256 autosigné avec signature de code ECDSA.

**Note**  
Pour créer un certificat de signature de code, vous devez installer [OpenSSL](https://www.openssl.org/) sur votre machine. Une fois que vous avez installé OpenSSL, assurez-vous qu'`openssl` est attribué à l'exécutable OpenSSL dans votre invite de commande ou dans l'environnement de terminal.  
Utilisez le AWS Command Line Interface pour importer votre certificat de signature de code, votre clé privée et votre chaîne de certificats dans. AWS Certificate Manager Pour plus d'informations sur l'installation du AWS CLI, voir [Installation du AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html).

1. Dans votre répertoire de travail, utilisez le texte suivant pour créer un fichier nommé `cert_config.txt`. Remplacez *test\$1signer@amazon.com* par votre adresse e-mail :

   ```
   [ req ]
   prompt             = no
   distinguished_name = my_dn
                       
   [ my_dn ]
   commonName = test_signer@amazon.com
                       
   [ my_exts ]
   keyUsage         = digitalSignature
   extendedKeyUsage = codeSigning
   ```

1. Créer une clé privée de signature de code ECDSA :

   ```
   openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 -pkeyopt ec_param_enc:named_curve -outform PEM -out ecdsasigner.key
   ```

1. Créer un certificat de signature de code ECDSA :

   ```
   openssl req -new -x509 -config cert_config.txt -extensions my_exts -nodes -days 365 -key ecdsasigner.key -out ecdsasigner.crt
   ```

1. Importez le certificat de signature de code, la clé privée et la chaîne de certificats dans : AWS Certificate Manager

   ```
   aws acm import-certificate --certificate fileb://ecdsasigner.crt --private-key fileb://ecdsasigner.key
   ```

   Cette commande affiche l'ARN de votre certificat. Vous avez besoin de cet ARN lorsque vous créez une tâche de mise à jour OTA.
**Note**  
Cette étape est écrite en partant du principe que vous allez utiliser la signature de code AWS IoT pour signer les images de votre microprogramme. Bien que l'utilisation de la signature de code AWS IoT soit recommandée, vous pouvez signer les images de votre microprogramme manuellement.

# Création d'un certificat de signature pour le code du Nordic nrf52840-dk


**Important**  <a name="deprecation-message"></a>
Cette intégration de référence est hébergée sur le référentiel Amazon-FreeRTOS qui est obsolète. Nous vous recommandons de [commencer ici](freertos-getting-started-modular.md) lorsque vous créez un nouveau projet. Si vous possédez déjà un projet FreeRTOS basé sur le référentiel Amazon-FreeRTOS, désormais obsolète, consultez le. [Guide de migration du référentiel Github d'Amazon-FreeRTOS](github-repo-migration.md)

Le Nordic nrf52840-dk prend en charge un certificat de signature de code SHA256 auto-signé avec ECDSA.

**Note**  
Pour créer un certificat de signature de code, vous devez installer [OpenSSL](https://www.openssl.org/) sur votre machine. Une fois que vous avez installé OpenSSL, assurez-vous qu'`openssl` est attribué à l'exécutable OpenSSL dans votre invite de commande ou dans l'environnement de terminal.  
Utilisez le AWS Command Line Interface pour importer votre certificat de signature de code, votre clé privée et votre chaîne de certificats dans. AWS Certificate Manager Pour plus d'informations sur l'installation du AWS CLI, voir [Installation du AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html).

1. Dans votre répertoire de travail, utilisez le texte suivant pour créer un fichier nommé `cert_config.txt`. Remplacez *test\$1signer@amazon.com* par votre adresse e-mail :

   ```
   [ req ]
   prompt             = no
   distinguished_name = my_dn
                       
   [ my_dn ]
   commonName = test_signer@amazon.com
                       
   [ my_exts ]
   keyUsage         = digitalSignature
   extendedKeyUsage = codeSigning
   ```

1. Créer une clé privée de signature de code ECDSA :

   ```
   openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 -pkeyopt ec_param_enc:named_curve -outform PEM -out ecdsasigner.key
   ```

1. Créer un certificat de signature de code ECDSA :

   ```
   openssl req -new -x509 -config cert_config.txt -extensions my_exts -nodes -days 365 -key ecdsasigner.key -out ecdsasigner.crt
   ```

1. Importez le certificat de signature de code, la clé privée et la chaîne de certificats dans : AWS Certificate Manager

   ```
   aws acm import-certificate --certificate fileb://ecdsasigner.crt --private-key fileb://ecdsasigner.key
   ```

   Cette commande affiche l'ARN de votre certificat. Vous avez besoin de cet ARN lorsque vous créez une tâche de mise à jour OTA.
**Note**  
Cette étape est écrite en partant du principe que vous allez utiliser la signature de code AWS IoT pour signer les images de votre microprogramme. Bien que l'utilisation de la signature de code AWS IoT soit recommandée, vous pouvez signer les images de votre microprogramme manuellement.

# Création d'un certificat de signature de code pour le simulateur FreeRTOS pour Windows


Le simulateur FreeRTOS pour Windows nécessite un certificat de signature de code avec une clé ECDSA P-256 et un hachage SHA-256 pour effectuer les mises à jour OTA. Si vous n'avez pas de certificat de signature de code, suivez la procédure ci-dessous pour en créer un :

**Note**  
Pour créer un certificat de signature de code, vous devez installer [OpenSSL](https://www.openssl.org/) sur votre machine. Une fois que vous avez installé OpenSSL, assurez-vous qu'`openssl` est attribué à l'exécutable OpenSSL dans votre invite de commande ou dans l'environnement de terminal.  
Utilisez le AWS Command Line Interface pour importer votre certificat de signature de code, votre clé privée et votre chaîne de certificats dans. AWS Certificate Manager Pour plus d'informations sur l'installation du AWS CLI, voir [Installation du AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html).

1. Dans votre répertoire de travail, utilisez le texte suivant pour créer un fichier nommé `cert_config.txt`. Remplacez *test\$1signer@amazon.com* par votre adresse e-mail :

   ```
   [ req ]
   prompt             = no
   distinguished_name = my_dn
                       
   [ my_dn ]
   commonName = test_signer@amazon.com
                       
   [ my_exts ]
   keyUsage         = digitalSignature
   extendedKeyUsage = codeSigning
   ```

1. Créer une clé privée de signature de code ECDSA :

   ```
   openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 -pkeyopt ec_param_enc:named_curve -outform PEM -out ecdsasigner.key
   ```

1. Créer un certificat de signature de code ECDSA :

   ```
   openssl req -new -x509 -config cert_config.txt -extensions my_exts -nodes -days 365 -key ecdsasigner.key -out ecdsasigner.crt
   ```

1. Importez le certificat de signature de code, la clé privée et la chaîne de certificats dans : AWS Certificate Manager

   ```
   aws acm import-certificate --certificate fileb://ecdsasigner.crt --private-key fileb://ecdsasigner.key
   ```

   Cette commande affiche l'ARN de votre certificat. Vous avez besoin de cet ARN lorsque vous créez une tâche de mise à jour OTA.
**Note**  
Cette étape est écrite en partant du principe que vous allez utiliser la signature de code AWS IoT pour signer les images de votre microprogramme. Bien que l'utilisation de la signature de code AWS IoT soit recommandée, vous pouvez signer les images de votre microprogramme manuellement.

# Création d'un certificat de signature de code pour le matériel personnalisé


À l'aide d'un ensemble d'outils appropriés, créez un certificat auto-signé et une clé privée pour votre matériel.

Utilisez le AWS Command Line Interface pour importer votre certificat de signature de code, votre clé privée et votre chaîne de certificats dans. AWS Certificate Manager Pour plus d'informations sur l'installation du AWS CLI, voir [Installation du AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html).

Après avoir créé votre certificat de signature de code, vous pouvez utiliser le AWS CLI pour l'importer dans ACM :

```
aws acm import-certificate --certificate fileb://code-sign.crt --private-key fileb://code-sign.key
```

La sortie de cette commande affiche l'ARN de votre certificat. Vous avez besoin de cet ARN lorsque vous créez une tâche de mise à jour OTA.

ACM a besoin de certificats pour utiliser des algorithmes et des tailles de clés spécifiques. Pour plus d'informations, consultez [Conditions requises pour l'importation de certificats](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate-prerequisites.html). Pour plus d'informations sur ACM, consultez la section [Importation de certificats dans. AWS Certificate Manager](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html)

Vous devez copier, coller et formater le contenu de votre certificat de signature de code dans le `vendors/vendor/boards/board/aws_demos/config_files/ota_demo_config.h` fichier qui fait partie du code FreeRTOS que vous téléchargerez ultérieurement.