MCU 보안을 위한 TF-M 오픈소스 프로젝트 소개
M2354 는 누보톤에서 제조한 마이크로컨트롤러로, 풍부한 보안 설계로 인해 보안 분야, 특히 인터넷을 통해 연결된 IoT 장치에 적용하기에 특히 적합합니다.
IoT 디바이스는 인터넷에 노출되어 있기 때문에 사용자의 개인 정보를 보호하고 해커의 공격과 침입이 이를 해킹 도구로 만드는 것을 방지하기 위한 충분한 보안 메커니즘이 필요합니다. M2354는 네트워크 디바이스의 보안을 보호하기 위해 Arm의 오픈 소스 펌웨어(TF-M)를 보안 설계에 채택했을 뿐만 아니라, Arm의 오픈 소스 펌웨어(TF-M)를 사용하여 IoT 애플리케이션 플랫폼을 위한 완전한 보안 아키텍처를 함께 형성합니다.
M2354 security platform 은 부트로더, 디바이스 수명 주기 관리, 암호화 하드웨어 가속기, 키 스토어 및 트러스트존 기술을 포함하는 수정할 수 없는 보안 구성 요소로 구성되어 있습니다. 루트 오브 트러스트 검증을 통과한 두 번째 부트로더 프로세스(BL2)와 업데이트 가능한 트러스티드-펌웨어-M과 함께 사용되어 자체 보안을 보장하고 다양한 보안 서비스를 추가로 제공합니다. 이러한 기능 중 TrustZone 기술은 사용자의 애플리케이션 프로세스와 운영 체제의 보안 서비스 운영을 분리하여 시스템 운영의 보안을 더욱 보장하는 데에도 사용됩니다.
▲M2354 플랫폼의 보안 아키텍처
이 보안 아키텍처에 따라 IoT 장치와 클라우드 간의 모든 통신 및 전송은 하드웨어 분리를 전제로 암호화 및 해독 서비스와 민감한 데이터 저장을 제공받게 됩니다.
아래 그림은 보안 아키텍처에서 IoT 디바이스의 작동 예이며, 이 디바이스는 디바이스 위치의 온도를 클라우드에 업로드합니다.
우선, 디바이스가 활성화된 후 등록 메커니즘을 먼저 사용하여 클라우드 서비스의 인증을 통과하고 이 디바이스의 합법성을 증명합니다. 이 인증 메커니즘은 전체 등록 인증 과정에서 보안과 개인정보 보호를 보장하기 위해 TF-M의 보안 영역에 있는 서비스에서 완료됩니다.
디바이스의 등록 인증이 완료되면 이제 디바이스에서 측정한 데이터를 클라우드에 업로드할 수 있습니다. 이 파트에서는 TLS(Transport Layer Security) 전송 프로토콜을 사용하여 클라우드와의 연결을 암호화하고 보호하며, TF-M의 고립된 영역에서 암호화 및 해독 서비스를 통해 암호화 및 해독 프로세스를 완료하여 암호화 및 해독 중에 사용되는 키와 기타 비밀 정보가 비보안 영역에 노출되지 않도록 보장합니다.
사용자가 개발한 애플리케이션 프로세스는 비보안 영역에서 제품의 모든 기능을 구현하는 데 사용됩니다.
M2354 보안 플랫폼 아키텍처에 따르면 제품 개발이 비보안 구역에 집중되어 있고, 필요한 모든 보안 기능이 TF-M에 의해 실현되어 보안 구역에 격리되어 있기 때문에 사용자는 보안 문제에 대해 걱정할 필요 없이 제품 기능 개발에 더 집중할 수 있어 개발 일정과 난이도를 크게 줄이면서 IoT 기기의 보안 요구 사항을 충족하는 데 필요한 보안을 유지할 수 있습니다.
위에서 언급한 다양한 소프트웨어 및 하드웨어 보안 설계 외에도 M2354 IoT 디바이스가 최상의 보호 결과를 얻을 수 있도록 하기 위해 M2354는 시스템 오류를 물리적으로 주입하거나 장치가 작동하는 동안 전압, 전류 또는 전자기파를 모니터링하여 해커의 공격을 받지 않도록 장애 주입 및 사이드 채널 공격에 대한 보호 메커니즘을 추가로 도입했습니다. 이를 통해 M2354 보안 플랫폼 기반 IoT 디바이스는 네트워크의 공격에 대한 보호 기능을 갖출 뿐만 아니라 물리적 공격에 대한 저항력을 갖추고 있어 디바이스의 보안을 한 단계 더 높은 수준으로 업그레이드할 수 있습니다.
M2354 보안 플랫폼에 관심이 있는 사용자를 위해 NuMaker-M2354 평가 보드는 누보톤의 온라인 스토어 (http://direct.nuvoton.com), 에서 구매할 수 있으며, 최신 TF-M 펌웨어는 GitHub (https://www.trustedfirmware.org/projects/tf-m/)에서 직접 다운로드할 수 있습니다.