

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Creación de un certificado de firma de código para el SF-LAUNCHXL de Texas Instruments CC3220
<a name="ota-code-sign-cert-ti"></a>

**importante**  <a name="deprecation-message"></a>
Esta integración de referencia está alojada en el repositorio de Amazon-FreeRTOS, que está en desuso. Recomendamos [empezar por aquí](freertos-getting-started-modular.md) al crear un nuevo proyecto. Si ya tiene un proyecto FreeRTOS existente basado en el repositorio Amazon FreeRTOS, ahora obsoleto, consulte [Guía de migración del repositorio Github de Amazon-FreeRTOS](github-repo-migration.md).

El kit de desarrollo Launchpad del microcontrolador inalámbrico SimpleLink Wi-Fi CC3220 SF admite dos cadenas de certificados para la firma de códigos de firmware:
+ Producción (certificado-catalogo)

  Para utilizar la cadena de certificados de producción, debe comprar un certificado de firma de código comercial y utilizar la [herramienta Uniflash de TI](http://www.ti.com/tool/UNIFLASH) para colocar la placa en el modo de producción.
+ Pruebas y desarrollo (certificado-sitio de pruebas) 

  La cadena de certificados de sitio de pruebas le permite probar actualizaciones OTA con un certificado de firma de código autofirmado.

Úselo AWS Command Line Interface para importar su certificado de firma de código, su clave privada y su cadena de certificados. AWS Certificate Manager Para obtener más información, consulte [ Instalación de la AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) en la *Guía del usuario de AWS Command Line Interface *.

[Descarga e instala la última versión del SimpleLink CC3220 SDK.](http://www.ti.com/tool/download/SIMPLELINK-CC3220-SDK) De forma predeterminada, los archivos que necesita se encuentran aquí:

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

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

Los certificados del SimpleLink CC3220 SDK están en formato DER. Para crear un certificado de firma de código autofirmado, debe convertirlo a formato PEM.

Siga estos pasos para crear un certificado de firma de código que esté vinculado a la jerarquía de certificados para parques infantiles de Texas Instruments y que cumpla con AWS Certificate Manager los criterios de firma de AWS IoT código.

**nota**  
Para crear un certificado de firma de código, instale [OpenSSL](https://www.openssl.org/) en su equipo. Después de instalar OpenSSL, asegúrese de que `openssl` se asigna al ejecutable de OpenSSL en el símbolo del sistema o el terminal entorno.

**Creación de un certificado de firma de código autofirmado**

1. Abra un símbolo del sistema o terminal con permisos de administrador.

1. En el directorio de trabajo, use el siguiente texto para crear un archivo llamado `cert_config.txt`. *test\$1signer@amazon.com*Sustitúyala por tu dirección de correo electrónico.

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

1. Cree una clave privada y una solicitud de firma 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. Convierta la clave privada de CA de la raíz de sitio de pruebas de Texas Instruments del formato DER al formato PEM.

   La clave privada de CA de raíz de sitio de pruebas de TI se encuentra aquí:

   `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. Convierta el certificado de CA de raíz de sitio de pruebas de Texas Instruments del formato DER al formato PEM.

   La clave privada del certificado de raíz de sitio de pruebas de TI se encuentra aquí:

   `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. Firme la CSR con la CA raíz de 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. Convierta su certificado de firma de código (`tisigner.crt.pem`) a formato DER: 

   ```
   openssl x509 -in tisigner.crt.pem -out tisigner.crt.der -outform DER
   ```
**nota**  
Puede escribir el certificado `tisigner.crt.der` en la placa de desarrollo de TI más tarde.

1. Importe el certificado de firma de código, la clave privada y la cadena de certificados a: 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 muestra un ARN para su certificado. Necesita este ARN al crear un trabajo de actualización OTA.
**nota**  
Este paso se ha escrito con el supuesto de que va a utilizar la firma de código AWS IoT para firmar las imágenes del firmware. Aunque se AWS IoT recomienda utilizar la firma de código para, puede firmar las imágenes del firmware manualmente.