기글 하드웨어 뉴스 리포트
출처: : | http://pc.watch.impress.co.jp/docs/colum...30449.html |
---|
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에서는 특히 보안에 초점을 맞췄습니다.
IoT에서 포괄적인 보안이 필요함하다고 설명하는 키노트 스피치 슬라이드
Simon Segars(Chief Executive Officer, ARM)
Segars는 의료 및 자동차, 도시 공공 서비스 등을 IoT의 예로 들었습니다. 의료 데이터 유출은 큰 문제가 되며 자동차에서는 해킹이 사고로 이어집니다. IoT에서 보안은 중요합니다. Segars는 IoT에서 보안 소프트웨어 계층과 통신뿐만 아니라 디바이스 하드웨어 자체도 필요하다고 지적했습니다. IoT의 보안 실현을 위해 ARM의 보안 솔루션인 TrustZone과 CryptoCell을 IoT용 MCU에도 도입합니다.
IoT 디바이스에 필요한 보안 응용 프로그램의 예
1달러 이하의 MCU 보안 솔루션
보안의 필요성은 ARMTechcon 2015의 첫날에 열린 Mike Muller CTO의 키노트 스피치에서도 강조한 바 있습니다. Muller는 ARM이 창업되고 25년이 지난 지금, 예전과 달라진 점으로 디바이스부터 클라우드에 이르기까지 모든 분야에서 공격을 받게 돼 보안이 중요해졌었다고 설명했습니다. IoT 디바이스에 보안을 보급시키기 위해서는 보안에 대한 경험이 전혀 없는 엔지니어도 처리할 수 있는 1달러 이하의 안전한 MCU 설계가 필요하다고 선언했습니다.
최소 비용으로 사용하기 쉬운 보안 기능을 갖춘 MCU를 설계할 필요가 있다고 보는 ARM
디바이스부터 클라우드까지 모든 영역에서 보안이 필요하다고 지적
구조적으로 통합된 하드웨어 설계 및 소프트웨어 개발이 쉬운 보안 기능을 최소의 비용으로 실현, 이것이 ARM IoT 보안의 비전입니다. ARM은 Cortex-M을 위한 TrustZone 아키텍처을 차기 Cortex-M 제품군을 위한 새로운 명령어 세트 아키텍처인 ARMv8-M '에 통합했습니다. 이 ARM TrustZone for ARMv8-M이 IoT 시대의 디바이스에서 ARM의 보안 기반을 이룹니다.
보안을 가장 중요한 확장으로 내세운 ARMv8-M
ARMv8-M 자체는 기존의 Cortex-M 제품군의 명령 세트 아키텍처인 ARMv6-M, ARMv7-M을 대체하는 새로운 명령 셋트입니다. 모바일 등 퍼포먼스 CPU 용 Cortex-A 제품군의 명령 세트 아키텍처 ARMv8-A와 다르게, 같은 ARMv8 세대라 해도 ARMv8-M은 64비트 명령이 아니라 32비트까지의 명령입니다. T32 / Thumb 명령어 기반으로 명령 세트가 확장됩니다.
기존의 명령 아키텍처 제품군
새로운 명령 아키텍처 제품군
베이스 라인과 메인 라인의 2가지 명령어 세트 프로필에 더불어 메인 라인에 다양한 명령 옵션이 포함됩니다. 보안뿐만 아니라 다양한 기능 확장이 새로운 명령에 포함됐습니다. ARM의 지금가지 패턴을 보면 새로운 명령어 세트 ARMv8-M을 기반으로 여러 Cortex-M 제품군의 구현이 설계되어 그 코어를 라이센스한 공급 업체가 다수의 MCU를 만들게 됩니다.
명령 세트 아키텍처를 정의하고 구현한 CPU 코어 설계를 라이센스, 이를 받은 칩 공급 업체가 제품을 판매하는 ARM의 비즈니스 모델
지금까지는 ARMv6-M이 베이스라인이고 ARMv7-M은 메인라인이었습니다. ARMv8-M은 새로운 두 계층의 하위 프로파일이 정의됩니다.
한정적인 베이스라인 프로파일
ARMv8-M 메인라인 프로필에 DSP 명령 등의 옵션이 추가
보안과 생산성 향상이 ARMv8-M의 2가지 핵심
Cortex-A 용과는 크게 다른 TrustZone 아키텍처
ARM은 상위의 Cortex-A 제품군 등에 전부터 TrustZone 보안 기술을 제공해 왔습니다. Cortex-A를 위한 TrustZone에는 여러 구현 형태가 있지만 모두 구현 비용이 상대적으로 높은 솔루션입니다. 추가 하드웨어의 규모가 크고 메모리 풋 프린트가 늘어나 대기 시간이 길어지는 경우가 많습니다. 따라서 Cortex-A의 TrustZone을 그대로 임베디드의 Cortex-M에 적용할 순 없습니다. 칩의 다이 면적과 메모리 양도 늘어나기에 칩 생산 단가가 늘어나고 성능에도 영향을 주기 때문입니다.
보안 모니터, 보안 OS, 일반 OS를 처리하는 기존의 TrustZone
그래서 ARM은 Cortex-M를 위해 더 저렴한 보안 기능을 옵션으로 개발했습니다. Cortex-M 코어 자체 보안 스테이트를 마련하고, 스테이트 전환을 통해 보안 월드와 일반 월드를 구현합니다. 보안 코프로세서는 사용하지 않습니다. 메모리 맵에 보안 영역을 넣고, 메모리와 스토리지의 보안 영역 및 보안 주변 장치에 액세스 할 수 있도록 합니다. 보안 스테이트로 전환은 인터럽트 처리하고 레지스터도 안전하게 푸시&팝 합니다. Cortex-M을위한 TrustZone은 이름 그대로 Cortex-A 용과 같은 TrustZone이지만 내용은 크게 다릅니다.
ARMv8-M의 TrustZone의 개념
TrustZone의 기본 개념
일반 월드와 보안 월드를 1개의 CPU에서 제공
새로운 인터럽트 명령어로 스테이트 전환
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)는 설명합니다.
하드웨어 스테이트 전환 및 보안 스테이트를 관리
메모리 어드레싱 스위치
메모리 맵에 보안 영역을 마련
메모리 액세스 등은 전용 하드웨어 모니터링
이러한 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를 향한 마지막 관문을 돌파하려 하고 있습니다.