CPU 벤더의 보안 사양에 대한 의문
규격서를 의심해 보아야 할 때가 있습니다. 경쟁사의 규격서에 기재된 사항을 종종 비교해 보지만 솔직히 제대로 비교하기가 어렵습니다. 특정한 조건 하에서만 사양대로 작동하는 경우도 있습니다. 제조업체가 최적 상태에서의 사양을 타사의 “평균” 사양에 비교하는 경우도 있습니다.
보안의 경우도 크게 다르지 않습니다. 자사 제품이 “안전”하다고 주장하지 않는 MCU 벤더는 찾아보기 힘듭니다. 하지만 이 말이 실제로 의미하는 바는 무엇일까요? 암호화가 내장되어 있다는 말일 수도 있고, 타사의 보안 서비스를 받는다는 의미일 수도 있고, Arm의 TrustZone(그림 1)과 같은 기술을 활용한다는 것일 수도 있습니다.
그림 1: TrustZone은 Arm의 Cortex 프로세서 IP를 기반으로 하는 MCU에 설계되었습니다. 이는 OS에서 기능적으로 중요한 코드를 분리하는 방식으로써 내장형 보안에 대한 시스템 차원의 접근 방식을 나타냅니다. (이미지 출처: Embedded Computing Design)
MCU 기반 보안을 추가하는 수단으로 각광을 받고 있는 TrustZone은 운영 체제에서 기능적으로 중요한 코드와 프로토콜 스택을 분리하여 펌웨어 백도어가 보안 키 저장 영역에 들어오지 못하도록 방지합니다. 또한 여러 소프트웨어 보안 도메인을 생성하여 특정 메모리, 주변 장치, 마이크로 컨트롤러 내부의 I/O 부품에 대한 접근을 제한합니다.
무선 업데이트
MCU 제조 업체에서 보안을 유지하기 위해 사용하는 또 다른 방식은 무선(OTA) 업데이트를 제공하는 것입니다. 이 기술을 사용하면 적어도 이론상으로는 시스템이 보안 프로토콜 측면에서 항상 최신 상태를 유지합니다. 예를 들어 Renesas의 RX651 마이크로 컨트롤러는 TSIP(Trusted Secure IP)와 신뢰성이 있는 플래시 영역 보호를 통합하여 보안 네트워크 통신을 통해 현장에서 플래시 펌웨어 업데이트가 가능합니다.
TSIP를 통해 강력한 키 관리, 암호화 통신, 침입 감지가 가능하여 다양한 외부 위협으로부터 강력한 보안을 유지할 수 있습니다. 내장형 시스템 보안 전문 업체인 Secure Thingz와의 협력을 통해 전체 설계 및 제조 가치 사슬에 걸쳐 32비트 RX MCU의 보안을 유지할 수 있습니다.
MCU 제조업체인 STMicroelectronics와 Arilou Information Security Technologies 간에도 비슷한 협력이 이루어지고 있습니다. 두 회사는 협업을 통해 하드웨어와 소프트웨어가 서로 보완하여 데이터 스트림을 모니터링하고 통신 이상을 감지하는 다중 레이어 보안 구조를 만들었습니다.
ST는 32비트 자동차 마이크로 컨트롤러의 SPC58 Chorus 계열에 Arilou의 IDPS(Intrusion Detection and Prevention System) 소프트웨어를 추가하여 비정상적인 교통 상황을 감지하고 사이버 공격에 대한 추가적인 보호 레이어를 형성합니다. IDPS는 계측 제어기 통신망(CAN) 버스를 모니터링하고 자동차 설계 내 전자 제어 장치(ECU) 통신 패턴의 이상을 감지하도록 설계된 소프트웨어 솔루션입니다.
보안 코프로세서
보안 코프로세서라고도 하는 보안 소자의 주 목적은 메인 CPU의 컴패니언 칩의 역할을 수행하여 보안 MCU 없이 설계된 시스템을 보호하는 것입니다. 보안 소자는 위협에 대항하는 보안 프레임워크를 제공합니다. 메인 MCU 또는 CPU에서 키 저장, 암호 가속화 등 보안 관련 작업의 부하를 덜어 주는 단순하고 비용이 적게 드는 장치도 해당됩니다.
보안 소자의 한 예로는 Microchip의 ATECC608A(그림 2)가 있는데, 난수 생성기(RNG)를 통해 고유 키를 생성하며 NIST(National Institute of Standards and Technology)의 최신 요구 사항을 준수합니다. 또한 AES-128, SHA-256, ECC P-256 등의 암호 가속 장치를 통한 상호 인증을 제공합니다. ATECC608A는 OTA 인증과 보안 부팅을 통해 IoT와 클라우드 서비스 인증을 위한 키 저장 및 전송이 안전한 수단을 통해 처리되도록 합니다.
그림 2: Microchip의 ATECC608A는 보안 코프로세서로 볼 수 있는 보안 소자의 한 예시입니다. (이미지 출처: Microchip)
중요한 것은 보안이 필요하다는 것이며, 이는 여러분이 최종 시스템에 내장한 MCU에 이미 포함되어 있을 수 있습니다. 하지만 절대로 추정하지 마시고 규격서를 분석할 때에는 정보가 암시하는 바를 파악해야 합니다. 이 중요한 주제에 대한 자세한 내용은 기사 IoT 응용 분야를 위한 보안 마이크로 컨트롤러의 구조를 참고하시기 바랍니다.
Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum