IoT 응용 분야를 위한 보안 마이크로 컨트롤러의 구조
DigiKey 북미 편집자 제공
2020-01-13
내장형 설계에서 보안을 구현하는 작업이 매우 힘든 시점에서 보안 기능에 특화된 마이크로 컨트롤러(MCU)가 등장하여 내장형 설계 초기의 보안을 지원하고 있습니다. 사물 인터넷(IoT) 응용 분야를 보호하기 위해 새로운 내장형 솔루션이 필요하다는 것에는 이견이 없으므로 이는 정말 다행입니다.
ABI Research에서 실시한 조사에 따르면 작년에 판매된 IoT 장치의 4% 미만에만 내장형 보안 기능이 탑재되어 있다고 합니다. 또한 시장 조사 회사의 예측에 따르면 2020년에는 사이버 공격의 약 25%가 IoT 장치를 대상으로 하여 보안 MCU가 뜨거운 감자가 될 것이라고 합니다.
그렇다면 보안 MCU란 무엇입니까? 많은 MCU가 보안 기능을 제공한다고 주장하지만 자세히 살펴보면 대부분 립 서비스에 불과한 소리일 뿐입니다. 이 기사에서는 보안 MCU를 정의하는 특성을 자세히 살펴봅니다. 또한 보안 MCU를 주장뿐인 MCU와 구분하는 속성 및 특성을 자세히 알아봅니다.
먼저 소프트웨어 취약성과 네트워크 기반 공격에 대한 방어를 개선하기 위해 한층 강화된 보안으로 하드웨어 기반 보안 솔루션을 보완하려는 MCU 제조업체의 탐구 노력을 살펴보겠습니다.
두 가지 MCU 협업 사례
네트워크 에지에서 작동하는 종단점 장치의 출현으로 무선(OTA) 펌웨어 업데이트가 필요해졌습니다. Renesas의 RX651 마이크로 컨트롤러는 TSIP(Trusted Secure IP)와 신뢰할 수 있는 플래시 영역 보호를 통합하여 현장에서 보안 네트워크 통신을 통해 플래시 펌웨어를 업데이트할 수 있도록 지원함으로써 이 재프로그래밍 요구 사항을 충족합니다.
TSIP는 강력한 키 관리, 암호화된 통신 및 조작 감지를 제공하여 도청, 조작, 바이러스와 같은 외부 위협에 대한 강력한 보안을 보장합니다(그림 1). 마찬가지로 통합된 이중 뱅크 플래시 메모리를 사용하면 장치 제조업체에서 현장 펌웨어 업데이트를 안전하고 안정적으로 실행할 수 있습니다.
그림 1. RX651 마이크로 컨트롤러의 보안 구성 요소 뷰(오른쪽 가운데) (이미지 출처: Renesas Electronics)
이중 뱅크 플래시를 사용하면 내장형 시스템 설계자가 TSIP를 조합하여 높은 수준의 RoT를 실현함으로써 암호화 키 및 암호화 하드웨어 가속기(예: AES, 3DES, RSA, SHA, TRNG)를 보호할 수 있습니다. 그리고 무단 재프로그래밍으로부터 부트 코드를 보호하는 코드 플래시 영역 보호 기능이 있습니다.
Renesas는 32비트 마이크로 컨트롤러의 RX 제품군을 안전하게 프로비저닝하기 위해 내장형 시스템 보안 전문가인 Secure Thingz와 파트너 관계를 맺었습니다. 이를 위해 Renesas는 Secure Thingz에서 설계 및 제조 가치 체인 전반에서 보안 구현을 간소화하기 위해 구축한 Secure Deploy 아키텍처를 지원할 것입니다.
내장형 보안 솔루션 제공업체와 제휴를 맺은 다른 MCU 제조업체에는 STMicroelectronics가 있습니다. 이 칩 제조업체는 하드웨어와 소프트웨어가 상호 보완하여 데이터 스트림을 모니터링하고 통신 이상 현상을 감지할 수 있는 다층 보안 배열을 구축하기 위해 Arilou Information Security Technologies와 협력하고 있습니다.
STMicro의 SPC58 Chorus 계열 32비트 자동차 마이크로 컨트롤러에는 암호화 키와 같은 민감한 보안 정보를 보호하여 자동차 차체 및 게이트웨이 응용 분야에서 통신 버스를 통한 침입을 방지하는 HSM(Hardware Security Module)이 내장되어 있습니다. HSM은 하드웨어 기반 RoT를 제공하여 보안 통신, OTA 업데이트 및 보안 부트를 촉진합니다.
이제 ST는 교통 이상 현상을 감지하고 사이버 공격에 대한 보호 수준을 한층 강화하기 위해 Arilou의 IDPS(Intrusion Detection and Prevention System) 소프트웨어를 SPC58 Chorus 계열 자동차 MCU에 추가했습니다(그림 2). IDPS는 계측 제어기 통신망(CAN) 버스를 모니터링하고 자동차 설계에서 전자 제어 장치(ECU) 통신 패턴의 이상 현상을 감지하도록 설계된 소프트웨어 솔루션입니다.
그림 2. IDPS 소프트웨어에서 교통과 기타 노변 이상 현상을 감지하는 방법입니다. (이미지 출처: Arilou)
특수 보안 MCU
위 섹션에서는 보안 기능을 통합하여 물리 및 원격 공격에 대응하는 MCU에 대해 간략히 살펴보았습니다. 이 섹션에서는 I2C 또는 단선식 인터페이스를 통해 연결되어 기본 MCU에 대한 컴패니언 칩 역할을 하는 특수 보안 MCU(보안 소자라고도 함)를 설명합니다.
보안 기능 없이 MCU를 지원하는 보안 소자는 특별 용도로 제작된 하드웨어를 기반으로 광범위한 위협에 대한 보안 프레임워크를 제공합니다. 이러한 보안 소자는 간단하고 경제적이며 키 저장소, 암호화 가속 등과 같은 보안 관련 작업으로부터 기본 MCU 또는 CPU의 부담을 들어줍니다. 따라서 보안 소자를 보안 코프로세서라고도 합니다.
보안 소자의 모든 보안 구성 요소는 공통된 범위 하에서 작동하여 인증 키를 소프트웨어와 분리함으로써 해커가 전원 껐다 켜기, 클록 결함, 부채널 공격과 같은 공격을 수행하지 못하도록 차단합니다. 공장의 보안 소자에 보안 키와 인증서를 업로드하여 IP 도난, 설계 복제, 제품 불법 복제를 방지할 수도 있습니다.
NIST(National Institute of Standards and Technology)의 최신 요구 사항을 준수하면서 고유한 키 생성을 위한 난수 생성기(RNG)를 제공하는 Microchip의 ATECC608A 보안 소자(그림 3)를 예로 들어 보겠습니다. 이 소자는 상호 인증을 위해 AES-128, SHA-256, ECC P-256 등과 같은 암호화 가속기도 제공합니다.
그림 3. ATECC608A 보안 요소의 제품 구성도 (이미지: Microchip Technology)
마지막으로 키 저장용 보안 ROM은 해커 및 스푸핑 공격을 통해 변경할 수 없는 환경을 구축하여 변조 및 부채널 공격을 차단합니다. 총괄적으로 ATECC608A는 보안 부트, OTA 검증, IoT 및 클라우드 서비스 인증을 위한 보안 키 저장소 및 전송 등 다양한 서비스를 제공합니다.
보안 구현에 특화된 다른 저비용 MCU로는 전력 제약이 있는 IoT 노드를 오류 주입, 부채널 공격과 같은 위협으로부터 보호하는 Microchip의 SAM L11(그림 4)이 있습니다. 이 장치는 모듈식 GUI로 낮은 수준 보안 세부 정보를 추상화하여 개발자가 관련 보안 기능을 선택할 수 있도록 지원하고 내장형 보안 구현을 간소화합니다.
그림 4. SAM L11 보안 마이크로 컨트롤러를 채택하는 네 가지 보안 사용 사례 (이미지: Microchip Technology)
SAM L11이 추상화하는 보안 기능에는 제3자 프로비저닝 서비스가 포함됩니다. 또한 이 장치는 마이크로 컨트롤러 내에서 보안 코드와 비보안 코드를 분리하는 Arm의 TrustZone 기술을 통합합니다. SAM L11은 AWS(Amazon Web Services)와 같은 클라우드 서비스에 연결하는 동안 IoT 노드의 보안 요구 사항을 간소화합니다.
IoT 에지 응용 분야를 대상으로 하는 NXP의 LPC5500 마이크로 컨트롤러는 보안 기반 MCU의 다른 예입니다. 이 장치는 장치에 고유한 키를 활용하여 변경할 수 없는 하드웨어 RoT를 생성합니다. 최종 사용자와 OEM 간의 폐쇄 루프 트랜잭션을 허용하는 SRAM 기반 PUF(Physical Unclonable Function)를 사용하여 로컬로 키를 생성할 수 있습니다. 그러면 제3자의 키 처리가 필요하지 않습니다.
특수 보안 도구
ATECC608A와 같은 보안 중심 MCU는 보안 구성 요소를 포괄하여 신뢰할 수 있는 에코시스템을 촉진하지만 소프트웨어 분리를 해결하지 않습니다. MCU에서 실행 중인 소프트웨어의 양이 지속적으로 증가하고 있는 시기에 개발자는 대규모 코드베이스를 악의적인 공격으로부터 보호해야 합니다.
예를 들어 IoT 장치에는 Wi-Fi, Bluetooth, TLS 등을 위한 프로토콜 스택이 있으며, 이 프로토콜 스택이 손상될 경우 해커가 보안 키를 훔치지 않더라도 장치 작동에 영향을 줄 수 있습니다. 따라서 핵심 코드를 중요하지 않은 코드와 분리하고 중요 소프트웨어를 보안 환경에 배치해야 합니다.
Arm의 TrustZone 환경(그림 5)에서는 핵심 코드 및 프로토콜 스택을 복잡한 운영 체제(OS) 소프트웨어 및 대규모 코드베이스와 분리하여 펌웨어 백도어가 보안 키 저장 영역에 침입하는 것을 차단합니다. 이 환경에서는 여러 소프트웨어 보안 도메인을 구축하여 마이크로 컨트롤러 내의 특정 메모리, 주변 장치 및 I/O 부품에 대한 액세스를 제한합니다.
그림 5. 소프트웨어를 보안 영역과 비보안 영역으로 분리하기 위한 TrustZone 기술의 기본 프레임워크 (이미지 출처: Arm)
위에서 언급한 세 보안 MCU, 즉 ATECC608A, SAM L11, LPC5500(그림 6)은 모두 보안 코드와 비보안 코드를 분리하기 위해 TrustZone 기술을 통합했습니다. 또한 ATECC608A 보안 소자는 모든 TrustZone 지원 마이크로 컨트롤러와 연동될 수 있습니다.
그림 6. LPC5500 마이크로 컨트롤러의 TrustZone 기술은 구성도의 왼쪽 상단에 표시된 Arm Cortex M-33 프로세서와 함께 번들로 제공됩니다. (이미지 출처: NXP)
또한 TrustZone은 하드웨어 보호가 필요하고 보안 MCU(예: ATECC608A 및 SAM L11)는 IoT 설계 설정 내에서 하드웨어 보호를 촉진한다는 점에서 보안 MCU와 TrustZone 기술은 상호 보완적입니다. 한편 TrustZone은 MCU 중심 내장형 설계에서 콤팩트 소프트웨어 환경을 구축하는 데 도움이 됩니다.
결론
보안 MCU 구조에서는 설계 단계 중에 내장형 보안 구현을 간소화하고 보안 기술 전문성의 측면에서 힘든 학습 과정이 필요하지 않은 보안 MCU를 보여줍니다. 이러한 특수 MCU를 사용하면 제약이 심한 IoT 설계의 두 가지 주요 고려 사항인 비용 오버헤드와 전력 소비를 줄일 수 있습니다.
IoT 장치가 연결된 설계가 안전하게 전개되는 속도보다 빠르게 도입되고 있는 시기에 보안 MCU는 다양한 측면에서 사이버 위협에 대응할 수 있는 실현 가능한 경로를 제공합니다. 또한 보안 설계 에코시스템을 탑재하여 포인트 앤 클릭 개발 환경을 촉진하는 간소화된 솔루션을 제공합니다.
면책 조항: 이 웹 사이트에서 여러 작성자 및/또는 포럼 참가자가 명시한 의견, 생각 및 견해는 DigiKey의 의견, 생각 및 견해 또는 DigiKey의 공식 정책과 관련이 없습니다.