보안 프로비저닝을 통한 보안 강화
보안 키는 시스템 보안의 기반을 형성하며 개인 키 및 기타 비밀을 보호하는 기능은 연결된 모든 장치에 대한 가장 중요한 요구 사항 중 하나입니다. 안타깝게도, 설계의 보호 계층 하에서 보안 키를 보호하더라도 생산 동안 키와 펌웨어를 최종적으로 로드할 때 보안이 허술하면 가장 세심한 준비를 망칠 수 있습니다.
연결된 시스템 및 인프라에 대한 잘 문서화된 공격은 복잡한 운영 기술(OT) 솔루션을 생성할 때 발생할 수 있는 근본적인 보안 취약성에 주목했습니다. 의료, 산업, 운송 및 에너지와 같은 중요한 응용 분야에서 보안 조치 침투에 성공할 경우 민감한 데이터가 노출될 뿐만 아니라 응용 제품 자체의 안전한 실행도 손상됩니다.
소비자가 가정과 사무실을 IoT(사물 인터넷) 장치로 채움에 따라 장치 보안의 실패는 더욱 사적인 피해가 됩니다. 장치 설계자가 보안 구현을 지속적으로 최고의 개발 문제 중 하나로 나열한 것은 놀라운 일이 아닙니다.
반가운 소식은 솔루션이 있다는 것입니다.
보안 장치와 키트
특수 보안 칩 및 보안 지원 프로세서의 가용성은 장치 보안 구현을 크게 단순화했습니다. 더 좋은 점은 하드웨어 기반 암호화 알고리즘 실행이 기존 시스템에 문제가 되었던 소프트웨어 기반 보안 메커니즘에 대한 공격을 방지한다는 것입니다. 이러한 칩과 프로세서의 대부분은 하드웨어 기반 보안 키 스토리지를 통합하고 이러한 보호된 키를 기반으로 하여 종단 간 보안을 보장하는 데 필요한 하드웨어 신뢰 루트를 제공합니다. 그러나 이러한 하드웨어 장치에 키를 로드(또는 '프로비저닝')하는 프로세스는 종종 인간을 루프에 빠뜨려 사고를 통해 또는 의도적으로 잠재적으로 비밀을 노출하고 해커가 여전히 효과적인 일종의 사회 공학적 공격을 사용하여 악용할 수 있는 기회를 제공합니다.
많은 반도체 제조업체 및 유통업체에서 물리적 또는 전자적 침입으로부터 보호하도록 설계된 하드웨어 보안 모듈(HSM)을 사용하여 이 중요한 단계를 수행하는 보안 프로비저닝 서비스를 제공합니다. 그러나 공장 프로비저닝은 내부 요구 사항으로 인해 사용 가능하지 않거나 적합하지 않을 수 있으며 IoT 장치 개발자는 신뢰할 수 있는 펌웨어를 장치에 안전하게 로드해야 하는 추가적인 문제에 직면합니다. 다행히, 몇 가지 대체 솔루션을 사용할 수 있습니다.
보다 직접적인 솔루션 중 하나는 키 프로비저닝을 완전히 삭제합니다. Maxim Integrated의 DeepCover 제품군 DS28E38은 물리적으로 복제 방지 기능(PUF) 하드웨어를 기반으로 하는 Maxim Integrated의 ChipDNA 기술로 제작되었습니다. 이러한 PUF 가능 장치는 외부 장치 핀에서 액세스할 수 없는 개인 키를 생성하는 데 사용되는 고유한 ID를 자체적으로 생성합니다.
Microchip Technology의 Zero Touch Secure Provisioning Kit(AT88CKECC-AWS-XSTK-B-ND)와 같은 개발 시스템은 IoT 장치를 Amazon Web Services(AWS)에 연결하는 데 필요한 자격 정보로 프로비저닝하도록 사전 구성된 Microchip의 ECC508 인증 칩을 포함합니다.
하지만 PUF 기반의 자체 생성 ID를 사용할 수 없는 맞춤형 설계에서 개인 키와 신뢰할 수 있는 마이크로컨트롤러(MCU) 펌웨어를 프로비저닝하는 것은 어떨까요?
보안 프로비저닝
경우에 따라 개발자는 MCU 제조업체의 개발 환경을 사용하여, 지원되는 MCU에서 이러한 자산을 생성하고 프로비저닝할 수 있습니다. 예를 들어, NXP Semiconductors의 MCUXpresso Secure Provisioning Tool을 사용하면 개발자가 그래픽 인터페이스 또는 명령줄 스크립트를 통해 회사의 오픈 소스 보안 프로비저닝 소프트웨어 개발 키트(SDK)에 액세스할 수 있습니다(그림 1).
그림 1: NXP Semiconductors의 MCUXpresso Secure Provisioning Tool은 오픈 소스 보안 프로비저닝 SDK에 대한 인터페이스를 제공합니다. (이미지 출처: NXP Semiconductors)
STMicroelectronics는 타사 위탁 제조업체를 사용할 때 개발자가 회사의 STM32 프로세서로 구축된 설계에서 코드와 데이터를 보호할 수 있도록 설계된 솔루션을 제공합니다. 여기에서, 개발자는 STM32 Trusted Package Creator 소프트웨어 도구를 사용하여 암호화된 이미지를 생성하고 STMicroelectronics의 STM32HSM HSM 스마트 카드에 비밀 키를 저장합니다. 암호화된 이미지와 HSM 스마트 카드를 받으면 위탁 제조업체는 STM32 Cube Programmer를 사용하여 SFI를 지원하는 x 및 y와 같은 STM32 장치에 키와 펌웨어를 안전하게 프로비저닝합니다(그림 2).
그림 2: 개발자는 STMicroelectronics의 STM32 Trusted Package Creator 소프트웨어와 STM32HSM HSM 스마트 카드를 사용하여 보안 자산을 타사 제조업체에 안전하게 전송할 수 있습니다. (이미지 출처: STMicroelectronics)
다른 장치로 개발하기 위해 IAR Systems는 IAR Embedded Workbench와 통합된 Secure Desktop Provisioner를 제공합니다. Secure Thingz 사업부에서 개발한 Secure Desktop Provisioner는 보안 개발부터 프로토타입 제작, 생산 및 이후 업데이트에 이르는 개발 흐름의 일부입니다(그림 3).
그림 3: IAR Systems의 개발 흐름을 통해 설계는 개발 키와 펌웨어를 프로토타입에 프로비저닝한 다음 개발 키가 생산 키로 대체되는 제조로 자산을 안전하게 전송할 수 있습니다. (이미지 출처: Renesas)
IAR Embedded Workbench에서 작업하는 개발자는 Secure Desktop Provisioner 소프트웨어 도구를 사용하여 예비 프로토타이핑 단계에서 키와 펌웨어를 프로비저닝합니다. 초기 제조 및 대량 생산을 위한 설계가 준비되면 펌웨어 자산이 제조 파트너에게 전송되고 개발 키는 보안 어플라이언스를 사용하여 프로비저닝된 보안 생산 키로 대체됩니다.
결론
IoT 장치와 같은 보안 연결 시스템을 구현하려면 개발자는 특수 보안 칩과 프로세서를 활용할 뿐만 아니라 기본 비밀 키와 신뢰할 수 있는 펌웨어를 보호해야 합니다. 다행히도 생산의 중요한 프로비저닝 단계에서 이러한 자산을 보호하기 위한 다양한 솔루션이 존재합니다.
Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum


