Texas Instruments CC3220SF-LAUNCHXL을 위한 코드 서명 인증서 생성 - FreeRTOS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Texas Instruments CC3220SF-LAUNCHXL을 위한 코드 서명 인증서 생성

중요

이 라이브러리는 더 이상 사용되지 않는 Amazon-FreeRTOS 리포지토리에서 호스팅됩니다. 새 프로젝트를 생성할 때는 여기서 시작하는 것이 좋습니다. 현재 사용되지 않는 Amazon-FreeRTOS 리포지토리를 기반으로 하는 기존 FreeRTOS 프로젝트가 이미 있는 경우에는 Amazon-FreeRTOS Github 리포지토리 마이그레이션 가이드 섹션을 참조하세요.

SimpleLink Wi-Fi CC3220SF Wireless Microcontroller Launchpad Development Kit는 펌웨어 코드 서명을 위한 두 가지 인증서 체인을 지원합니다.

  • 프로덕션(인증서 카탈로그)

    프로덕션 인증서 체인을 사용하려면 상용 코드 서명 인증서를 구매하고 TI Uniflash 도구를 사용하여 보드를 프로덕션 모드로 설정해야 합니다.

  • 테스트 및 개발(인증서 실습)

    플레이그라운드 인증서 체인을 사용하면 자체 서명된 코드 서명 인증서를 사용하여 OTA 업데이트를 시험해 볼 수 있습니다.

AWS Command Line Interface 를 사용하여 코드 서명 인증서, 프라이빗 키 및 인증서 체인을 로 가져옵니다 AWS Certificate Manager. 자세한 내용은 AWS Command Line Interface 사용 설명서에서 AWS CLI설치를 참조하세요.

최신 버전의 SimpleLink CC3220 SDK를 다운로드하여 설치합니다. 기본적으로 필요한 파일은 다음 위치에 있습니다.

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

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

SimpleLink CC3220 SDK의 인증서는 DER 형식입니다. 자체 서명된 코드 서명 인증서를 생성하려면 이를 PEM 형식으로 변환해야 합니다.

다음 단계에 따라 Texas Instruments 플레이그라운드 인증서 계층 구조에 연결되고 AWS Certificate Manager 및 Code Signing for AWS IoT criteria를 충족하는 코드 서명 인증서를 생성합니다.

참고

코드 서명 인증서를 생성하려면 컴퓨터에 OpenSSL을 설치합니다. OpenSSL을 설치한 후 명령 프롬프트나 터미널 환경에서 openssl이 OpenSSL 실행 파일에 할당되었는지 확인합니다.

자체 서명된 코드 서명 인증서를 생성하려면
  1. 명령 프롬프트 창이나 터미널을 관리자 권한으로 엽니다.

  2. 작업 디렉터리에서 다음 텍스트를 사용하여 cert_config.txt 파일을 생성합니다. test_signer@amazon.com을 사용자의 이메일 주소로 바꿉니다.

    [ req ] prompt = no distinguished_name = my dn [ my dn ] commonName = test_signer@amazon.com [ my_exts ] keyUsage = digitalSignature extendedKeyUsage = codeSigning
  3. 프라이빗 키 및 인증서 서명 요청(CSR)을 생성합니다.

    openssl req -config cert_config.txt -extensions my_exts -nodes -days 365 -newkey rsa:2048 -keyout tisigner.key -out tisigner.csr
  4. Texas Instruments 실습 루트 CA 프라이빗 키를 DER 형식에서 PEM 형식으로 변환합니다.

    TI 실습 루트 CA 프라이빗 키는 다음 위치에 있습니다.

    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
  5. Texas Instruments 실습 루트 CA 인증서를 DER 형식에서 PEM 형식으로 변환합니다.

    TI 실습 루트 인증서는 다음 위치에 있습니다.

    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
  6. Texas Instruments 루트 CA로 CSR에 서명합니다.

    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
  7. 코드 서명 인증서(tisigner.crt.pem)를 DER 형식으로 변환합니다.

    openssl x509 -in tisigner.crt.pem -out tisigner.crt.der -outform DER
    참고

    나중에 TI 개발 보드에 tisigner.crt.der 인증서를 작성합니다.

  8. 코드 서명 인증서, 프라이빗 키 및 인증서 체인을 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

    이 명령은 인증서에 대한 ARN을 표시합니다. OTA 업데이트 작업을 생성할 때 이 ARN이 필요합니다.

    참고

    이 단계는 용 코드 서명을 사용하여 펌웨어 이미지에 서명한다는 가정하 AWS IoT 에 작성되었습니다. 용 코드 서명을 사용하는 AWS IoT 것이 좋지만 펌웨어 이미지에 수동으로 서명할 수 있습니다.