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

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

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 기준을 충족하는 코드 서명 인증서를 생성합니다.

참고

코드 서명 인증서를 생성하려면 컴퓨터에 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이 필요합니다.

    참고

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