IoT에서 보안의 중요성을 호소


IoT(The Internet of Things)의 필수 요소는 보안

 

임베디드 용 MCU(Micro Controller)에서 압도적인 점유율을 자랑하는 ARM이 IoT도 지배하려 하고 있습니다. 그러나 ARM의 현재 IoT 솔루션에는 약점이 있습니다. 그것은 보안입니다. IoT 디바이스 용 MCU 코어 Cortex-M 제품군은 구조적으로 보안 통합이 빠져 있습니다. 그래서 ARM은 차세대 Cortex-M 아키텍처에서 보안 기능을 옵션으로 넣기로 했습니다.

 

ARM 기술 컨퍼런스 ARMTechcon 2015에서 키노트 스피치를 담당한 Simon Segars(Chief Executive Officer, ARM)는 IoT 시대가 본격화되고 있다고 설명했습니다. IoT를 실현하기 위한 필수 요소로서 공통된 표준 디바이스 개발, 모든 수준에서 보안을 실현하는 에코 시스템을 포괄하는 파트너십이 중요하다고 말하면서, 이번 ARMTechcon에서는 특히 보안에 초점을 맞췄습니다.

 

1.jpg

 

2.jpg

 
IoT에서 포괄적인 보안이 필요함하다고 설명하는 키노트 스피치 슬라이드

 

3.jpg

 

Simon Segars(Chief Executive Officer, ARM)

 

Segars는 의료 및 자동차, 도시 공공 서비스 등을 IoT의 예로 들었습니다. 의료 데이터 유출은 큰 문제가 되며 자동차에서는 해킹이 사고로 이어집니다. IoT에서 보안은 중요합니다. Segars는 IoT에서 보안 소프트웨어 계층과 통신뿐만 아니라 디바이스 하드웨어 자체도 필요하다고 지적했습니다. IoT의 보안 실현을 위해 ARM의 보안 솔루션인 TrustZone과 CryptoCell을 IoT용 MCU에도 도입합니다.

 

4.jpg

 


IoT 디바이스에 필요한 보안 응용 프로그램의 예


 

1달러 이하의 MCU 보안 솔루션


보안의 필요성은 ARMTechcon 2015의 첫날에 열린 Mike Muller CTO의 키노트 스피치에서도 강조한 바 있습니다. Muller는 ARM이 창업되고 25년이 지난 지금, 예전과 달라진 점으로 디바이스부터 클라우드에 이르기까지 모든 분야에서 공격을 받게 돼 보안이 중요해졌었다고 설명했습니다. IoT 디바이스에 보안을 보급시키기 위해서는 보안에 대한 경험이 전혀 없는 엔지니어도 처리할 수 ​​있는 1달러 이하의 안전한 MCU 설계가 필요하다고 선언했습니다.

 

5.jpg

 

6.jpg

 
최소 비용으로 사용하기 쉬운 보안 기능을 갖춘 MCU를 설계할 필요가 있다고 보는 ARM 
 


7.jpg

 

8.jpg

 

디바이스부터 클라우드까지 모든 영역에서 보안이 필요하다고 지적


구조적으로 통합된 하드웨어 설계 및 소프트웨어 개발이 쉬운 보안 기능을 최소의 비용으로 실현, 이것이 ARM IoT 보안의 비전입니다. ARM은 Cortex-M을 위한 TrustZone 아키텍처을 차기 Cortex-M 제품군을 위한 새로운 명령어 세트 아키텍처인 ARMv8-M '에 통합했습니다. 이 ARM TrustZone for ARMv8-M이 IoT 시대의 디바이스에서 ARM의 보안 기반을 이룹니다.

 

9.jpg

 

10.jpg

 


보안을 가장 중요한 확장으로 내세운 ARMv8-M


ARMv8-M 자체는 기존의 Cortex-M 제품군의 명령 세트 아키텍처인 ARMv6-M, ARMv7-M을 대체하는 새로운 명령 셋트입니다. 모바일 등 퍼포먼스 CPU 용 Cortex-A 제품군의 명령 세트 아키텍처 ARMv8-A와 다르게, 같은 ARMv8 세대라 해도 ARMv8-M은 64비트 명령이 아니라 32비트까지의 명령입니다. T32 / Thumb 명령어 기반으로 명령 세트가 확장됩니다.

 

11.jpg

 


기존의 명령 아키텍처 제품군

 

12.jpg

 

새로운 명령 아키텍처 제품군

 

베이스 라인과 메인 라인의 2가지 명령어 세트 프로필에 더불어 메인 라인에 다양한 명령 옵션이 포함됩니다. 보안뿐만 아니라 다양한 기능 확장이 새로운 명령에 포함됐습니다. ARM의 지금가지 패턴을 보면 새로운 명령어 세트 ARMv8-M을 기반으로 여러 Cortex-M 제품군의 구현이 설계되어 그 코어를 라이센스한 공급 업체가 다수의 MCU를 만들게 됩니다.

 

 

14.jpg 


명령 세트 아키텍처를 정의하고 구현한 CPU 코어 설계를 라이센스, 이를 받은 칩 공급 업체가 제품을 판매하는 ARM의 비즈니스 모델

 

 

15.jpg 

지금까지는 ARMv6-M이 베이스라인이고 ARMv7-M은 메인라인이었습니다. ARMv8-M은 새로운 두 계층의 하위 프로파일이 정의됩니다.

 

 

16.jpg 

한정적인 베이스라인 프로파일

 

 

17.jpg 

ARMv8-M 메인라인 프로필에 DSP 명령 등의 옵션이 추가

 

 

18.jpg 

보안과 생산성 향상이 ARMv8-M의 2가지 핵심

 


Cortex-A 용과는 크게 다른 TrustZone 아키텍처


ARM은 상위의 Cortex-A 제품군 등에 전부터 TrustZone 보안 기술을 제공해 왔습니다. Cortex-A를 위한 TrustZone에는 여러 구현 형태가 있지만 모두 구현 비용이 상대적으로 높은 솔루션입니다. 추가 하드웨어의 규모가 크고 메모리 풋 프린트가 늘어나 대기 시간이 길어지는 경우가 많습니다. 따라서 Cortex-A의 TrustZone을 그대로 임베디드의 Cortex-M에 적용할 순 없습니다. 칩의 다이 면적과 메모리 양도 늘어나기에 칩 생산 단가가 늘어나고 성능에도 영향을 주기 때문입니다.

 

 19.jpg

 


보안 모니터, 보안 OS, 일반 OS를 처리하는 기존의 TrustZone


그래서 ARM은 Cortex-M를 위해 더 저렴한 보안 기능을 옵션으로 개발했습니다. Cortex-M 코어 자체 보안 스테이트를 마련하고, 스테이트 전환을 통해 보안 월드와 일반 월드를 구현합니다. 보안 코프로세서는 사용하지 않습니다. 메모리 맵에 보안 영역을 넣고, 메모리와 스토리지의 보안 영역 및 보안 주변 장치에 액세스 할 수 있도록 합니다. 보안 스테이트로 전환은 인터럽트 처리하고 레지스터도 안전하게 푸시&팝 합니다. Cortex-M을위한 TrustZone은 이름 그대로 Cortex-A 용과 같은 TrustZone이지만 내용은 크게 다릅니다.

 

20.jpg

 


ARMv8-M의 TrustZone의 개념

 

21.jpg

 

TrustZone의 기본 개념
 

22.jpg

 


일반 월드와 보안 월드를 1개의 CPU에서 제공

 

23.jpg

 

새로운 인터럽트 명령어로 스테이트 전환

 

24.jpg

 

MCU에 최적화 된 낮은 지연 콜

 

 

보안 하이퍼 바이저를 필요로하는 아키텍처


Cortex-A를위한 TrustZone은 보안 모니터링 소프트웨어가 Hypervisor로 보안 OS 및 비보안 OS를 처리합니다. 그러나 Cortex-M을 위한 TrustZone에서 보안 스테이트와 노멀 스테이트 사이의 스테이트 스위치 자체는 하드웨어 기반으로 제어합니다. 따라서 보안 하이퍼 바이저를 필요로 하지 않습니다. 메모리 스페이스도 보안과 기본적으로 분리돼 하드웨어 Secure Attribution Unit(SAU)으로 액세스를 제어합니다.

 

IoT 시장에서는 메모리 관리 유닛(MMU) 등 하드웨어가 늘어나는 것은 바람직하지 않습니다. 하이퍼 바이저 소프트웨어도 최소 30 ~ 40KB의 메모리를 차지하며 소프트웨어에서는 전환 과정에 10 사이클 이상이 걸립니다. 이것을 보안 기능을 가능한 유지하며 짧은 지연 시간안에 처리하고 소프트웨어의 메모리 사용량을 줄이는 식으로 하드웨어의 규모를 최소로 구현합니다. 그것이 TrustZone for ARMv8-M의 개념이라고 ARM의 Nandan Nayampally (Vice President , Marketing, CPU Group, ARM)는 설명합니다.

 

25.jpg

 


하드웨어 스테이트 전환 및 보안 스테이트를 관리

 

26.jpg

 

메모리 어드레싱 스위치

 

27.jpg

 

메모리 맵에 보안 영역을 마련
 

28.jpg

 

29.jpg

 


메모리 액세스 등은 전용 하드웨어 모니터링

이러한 ARM의 Cortex-M 보안 솔루션은 동일한 MC라 해도 Imagination Technologies의 MIPS 아키텍처 계열과는 크게 다릅니다. Imagination Technologies는 자사의 MIPS 기반의 MCU에 가상화 기반의 보안 솔루션을 도입했습니다. 이 회사가 MCU 급 제​​품까지 MMU를 탑재해 가상화 하드웨어 지원을 쉽게 하도록 만들었기에 가능한 것입니다. ARM은 MIPS와는 다른 해결책을 선택했습니다.

 

TrustZone 옵션을 포함한 ARMv8-M 명령 세트 호환 Cortex-M 디자인은 앞으로 ARM에서 등장합니다. ARMv8-M 기반 MCU 제품이 시장에 나오는 것은 다음의 일입니다. 보안을 포함하면서 Cortex-M은 마침내 IoT를 향한 마지막 관문을 돌파하려 하고 있습니다.

기글하드웨어(http://gigglehd.com/zbxe)에 올라온 모든 뉴스와 정보 글은 다른 곳으로 퍼가실 때 작성자의 허락을 받아야 합니다. 번역한 뉴스와 정보 글을 작성자 동의 없이 무단 전재와 무단 수정하는 행위를 금지합니다.