

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criação de um certificado de assinatura de código para o Texas Instruments SF-LAUNCHXL CC3220
<a name="ota-code-sign-cert-ti"></a>

**Importante**  <a name="deprecation-message"></a>
Essa integração de referência está hospedada no repositório Amazon-FreeRTOS, que está preterido. Recomendamos [começar aqui](freertos-getting-started-modular.md) ao criar um novo projeto. Se você já tem um projeto FreeRTOS existente baseado no repositório Amazon-FreeRTOS que está preterido, consulte o [Guia de migração do repositório Github do Amazon FreeRTOS](github-repo-migration.md).

O kit de desenvolvimento do microcontrolador sem fio SimpleLink Wi-Fi CC3220 SF Launchpad suporta duas cadeias de certificados para assinatura de código de firmware:
+ Produção (certificado-catálogo)

  Para usar a cadeia de certificados de produção, você deve adquirir um certificado de assinatura de código comercial e usar a [Ferramenta TI Uniflash](http://www.ti.com/tool/UNIFLASH) para definir a placa para o modo de produção.
+ Teste e desenvolvimento (certificado-playground) 

  A cadeia de certificados do playground permite experimentar as atualizações OTA com um certificado de assinatura de código autoassinado.

Use o AWS Command Line Interface para importar seu certificado de assinatura de código, chave privada e cadeia de certificados para. AWS Certificate Manager Para obter mais informações, consulte [ Instalar a AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) no *Guia do usuário da AWS Command Line Interface *.

Baixe e instale a versão mais recente do [SimpleLink CC3220 SDK.](http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK) Por padrão, os arquivos necessários estão localizados aqui:

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

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

Os certificados no SimpleLink CC3220 SDK estão no formato DER. Para criar um certificado de assinatura de código autoassinado, você deve convertê-lo para o formato PEM.

Siga estas etapas para criar um certificado de assinatura de código vinculado à hierarquia de certificados do playground da Texas Instruments e que AWS Certificate Manager atenda aos critérios de Assinatura de Código. AWS IoT 

**nota**  
Para criar um certificado de assinatura de código, é necessário instalar o [OpenSSL](https://www.openssl.org/) na máquina. Depois de instalar o OpenSSL, verifique se `openssl` está atribuído ao executável do OpenSSL no prompt de comando ou ambiente de terminal.

**Como criar um certificado de assinatura de código autoassinado**

1. Abra um terminal ou prompt de comando com permissões de administrador.

1. No diretório de trabalho, use o texto a seguir para criar um arquivo chamado `cert_config.txt`. *test\$1signer@amazon.com*Substitua pelo seu endereço de e-mail.

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

1. Crie uma chave privada e uma solicitação de assinatura de certificado (CSR):

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

1. Converta a chave privada da CA raiz do playground do Texas Instruments do formato DER para o formato PEM.

   A chave privada da CA raiz do playground do TI está localizada aqui:

   `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. Converta o certificado da CA raiz do playground do Texas Instruments do formato DER para o formato PEM.

   O certificado raiz do playground do TI está localizada aqui:

   `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. Assine o CSR com a CA raiz do 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. Converta seu código de assinatura de certificado (`tisigner.crt.pem`) para o formato DER: 

   ```
   openssl x509 -in tisigner.crt.pem -out tisigner.crt.der -outform DER
   ```
**nota**  
Você escreve o certificado `tisigner.crt.der` na placa de desenvolvimento do TI mais tarde.

1. Importe o certificado de assinatura de código, a chave privada e a cadeia de certificados para: 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
   ```

   Este comando exibe um ARN para o seu certificado. Você precisa deste ARN quando cria um trabalho de atualização OTA.
**nota**  
Esta etapa foi escrita com a suposição de que você usará a Assinatura de Código AWS IoT para assinar suas imagens de firmware. Embora o uso do Code Signing AWS IoT for seja recomendado, você pode assinar suas imagens de firmware manualmente.