Arm Cortex-M35P: 디바이스의 핵심 기능, 다층 보안 | 반도체네트워크

죄송합니다. 더 이상 지원되지 않는 웹 브라우저입니다.

반도체네트워크의 다양한 최신 기능을 사용하려면 이를 완전히 지원하는 최신 브라우저로 업그레이드 하셔야 합니다.
아래의 링크에서 브라우저를 업그레이드 하시기 바랍니다.

Internet Explorer 다운로드 | Chrome 다운로드

Arm Cortex-M35P: 디바이스의 핵심 기능, 다층 보안



글/Arm의 IP 설계 기술

Arm은 물리적 공격 위협에서 칩을 보호할 수 있는 다양한 IP 설계 기술을 발표하며, Arm의 보안 IP 포트폴리오를 확장해 모든 IoT 제품에 물리적 보안을 구현할 수 있도록 했다. 이제, 해당 기술이 적용된 Arm의 모든 IP에는 물리적 보안(physical security)을 뜻하는 ‘P’ 태그가 붙는다. 여기에는 Cortex-M35P 프로세서와 더불어, 사이드 채널 공격 보호 기능이 추가된 새로운 보안 IP 제품군인 CryptoIsland-300P와 CryptoCell-312P가 포함된다.
이번 기고에서는 Cortex-M35P의 특장점과 성능 활용의 이점에 대해 설명하고자 한다. 고객들은 해당 기술을 통해 변조 방지 보호 기능을 폭넓게 지원할 수 있으며, 사용자 친화적인 Cortex-M 프로세서가 물리적 공격을 방지하도록 할 수 있어, 새로운 시장에 접근할 수 있게 될 것이다.

Cortex-M35P의 주요 특장점
Cortex-M35P는 Armv8-M 프로세서 중 최초로 변조 방지 설계가 내장되어, 다중 레이어 결제 및 통신 인증 보안을 더욱 쉽고 빠르게 구현할 수 있도록 한다. 해당 프로세서는 SecureCore 프로세서 제품군에 탑재된 물리적 보호 기능과 Arm TrustZone 기술을 결합해, 다층 보안으로 프로세서를 안전하게 보호한다. Cortex-M35P는 Arm의 플랫폼 보안 아키텍처(PSA) 원칙을 준수하며 Arm의 포괄적인 보안 포트폴리오를 확장한다.


확실한 설계

광범위하게 지원되며 검증된
보안 기술을 기반으로 설계

유연한 보호

고급 기능 옵션을 갖춘
물리적 보안

성공 촉진

개발 비용 절감을 위한 폭넓은
IP
포트폴리오와 생태계의 지원

·         수십억 개의 SecurCore 프로세서에 탑재된 검증된 물리적 보호기술에 기반함

·         수십 억 개의 Cortex-A 기반 디바이스에서 지원되는 TrustZone 기술 탑재

·         수백만 개의 Cortex-M에 배포된 것과 동일한 프로그래머 모델로 기존 지식 활용

·         기존 Cortex-M 제품군의 성능을 저해하지 않으면서 물리적 보호 기능 추가

·         신호 처리를 포함한 고급 기능 옵션을 갖춰 유연성 제고

·         시스템 안전 기능을 보다 낮은 비용으로 더욱 빠르게 배포할 수 있도록 하는 추가 안전성 제공 (록스텝, 설정 가능한 패러티, 관측성)

·         포괄적인 Arm 보안 솔루션 포트폴리오에 최적화 됨

·         Cortex-M33 프로세서에서 간편하게 업그레이드 가능

·         Cortex-M 기반 디바이스에 구축된 기존 소프트웨어 사용

·         최대 규모의 개방형 지식 기반을 갖춘 세계 1위 임베디드 생태계의 지원을 받음


물리적 공격을 방지해야 하는 이유?
집, 직장, 병원, 산업 현장, 도시 등 일상 속에서 보는 디바이스의 수가 점점 늘어나고 있으며, 그 중에는 연결된 것도 있고 그렇지 않은 것도 있다. 많은 디바이스에 가치 있는 개인 정보가 저장되어 있어, 물리적 공격의 대상이 되기 쉽다. 간편한 데이터 수집 도구가 배포되면서, 물리적 공격은 더욱 저렴하고 쉬워졌다. 물리적 공격이 점점 증가하면서, 부채널 공격은 표준 보안 위협 모델 중 하나로 자리잡았다. 물리적 공격과 관련해 가장 우려되는 부분은 확장성이다. 해커는 한 대의 디바이스만 공격해도 소스 코드를 추출해 취약점을 파악할 수 있어, 더 큰 규모의 네트워크 공격이 가능하다.
테크리퍼블릭(TechRepublic) 및 BGU 수석 강사인 요시 오렌(Yossi Oren)은 IoT 보안 기고를 통해 “물리적 액세스는 단 한 번이면 충분하다. 예를 들어, 특정 카메라 모델의 복제품을 구입한 후 이를 실험실에서 해킹하면, 어디서든 동일한 제품을 원격으로 공격할 수 있는 정보를 얻을 수 있다.” 고 이야기한 바 있다.
Arm이 Cortex-M35P를 개발하게 된 것은 사람들이 집을 지키는 이유와 동일하다. 집에 귀중품이 있다면 모든 출입구를 확실하게 보호하고, 모든 입구에서 도둑이 침입하기 어렵게 만들어야 한다 (아래 그림1 참조).

AR(ARM)-1.jpg
[그림1] 디바이스 보안은 집 방범과 같다. 가장 취약한 지점에 전체 보안의 수준이 달려있다.


예를 들어, 도둑이 옥탑 방에 난 작은 창문으로 침입하기위해서는 사다리와 특수 도구가 필요하기 때문에, 이는 도둑이 우선적으로 고려할 경로가 아니라고 생각할 수 있다. 외부에서 접근하기가 어렵고 복잡하기 때문에 보호를 받는 셈이다. 그러나, 만약 집 안에 있는 물건이 매우 귀중한 물품이거나 다른 곳에 비해 창문을 통해 들어오기가 쉽다면, 도둑은 창문을 통해 침입을 시도할 것이다.
이는 IoT에도 동일하게 적용된다. Arm은 다양한 진입점의 공격을 막을 수 있는 광범위한 보안 포트폴리오를 갖추고 있으며, 물리적 공격에 대한 대응력을 강화해 나가고 있다. Cortex-M35P는 물리적 복원력을 필요로 하는 모든 임베디드 및 IoT 시장을 위해 개발되었다. 물리적 보안이 요구되는 프로젝트를 수행해야하는 Cortex-M 개발자들은 기존 개발 투자를 모두 유지하면서 최신 Cortex-M 프로세서로 업그레이드 하면 된다.
또한, 해당 제품은 Arm IP 포트폴리오의 다른 제품과도 호환되도록 설계되어, 강력하고 포괄적인 보안 솔루션을 구축하고 시장 출시 기간을 단축할 수 있다. 더불어, 개발자들은 다양한 개발 도구와 컴파일러, 디버거, 운영 체제, 미들웨어 등을 제공하는 Arm의 광범위한 생태계를 활용해, 시간과 비용을 절감할 수 있다.

물리적 공격과 기타 공격 유형

공격에 노출되는 부분은 점점 증가하고 IoT는 기하급수적으로 성장하고 있어, 앞으로 사용할 디바이스를 안전하게 보호하는 방법을 찾기가 더욱 어려워 질 수 있다. 그림2에서 볼 수 있듯이, Arm은 커뮤니케이션, 수명 주기, 소프트웨어, 물리적 공격이라는 네 가지 공격 유형을 기반으로 보안을 설명한다. 애플리케이션과 데이터의 가치에 따라 디바이스가 직면하는 위험이 달라진다. 대부분의 디바이스는 소프트웨어 공격 등과 같이 낮은 수준의 공격 주로 고려해야 하며, 이는 Arm TrustZone이 제공하는 격리 기능으로 충분히 보호할 수 있다. 그러나 칩을 겨냥한 물리적 위협과 같이 더욱 정교한 공격의 대상이 되는 디바이스 군도 있다.

AR(ARM)-2.jpg
[그림2] 네 가지 보안 공격 유형에 대한 취약성 평가표


방어해야 할 공격을 식별하는 방법은 무엇이며, 물리적 공격의 위험성을 파악하는 방법은 무엇일까? Arm 플랫폼 시큐리티 아키텍처는 위협 모델링 프로세스를 사용해 분석하는 것으로 보안을 시작할 것을 권장한다. 위협 모델링을 통해, 디바이스를 평가하고 해당 디바이스가 해킹되거나 악용될 수 있는 방식을 알아볼 수 있다. 보안에 대해 잘 모르면 위협 모델링이 어렵게 느껴질 수 있다. 그래서 Arm은 누구나 무료로 사용할 수 있는 세 가지 위협 모델 예시를 제공한다.
디바이스와 관련 위협을 파악했다면, 이제 해당 디바이스를 보호하기 위한 적절한 조치를 취하는 것이 중요하다. Arm은 각 계층에서 디바이스를 보호하기 위한 적절한 대응 방법을 사용할 수 있도록, 계층화 된 접근 방식을 권장한다.
위 그림에서 볼 수 있듯이, Arm은 모든 유형의 보안 위협을 방어할 수 있는 광범위한 IP를 보유하고 있다. 물리적 공격이 큰 위협으로 간주될 경우, 물리적 공격 완화 기능을 갖춘 프로세서를 선택해 사용할 수 있다. Cortex-M35P에서 제공되는 소프트웨어 격리 및 물리적 보안 기능의 조합은 설계자들이 더 높은 수준의 시스템 보안을 구축하여 물리적인 공격과 소프트웨어 공격을 모두 방지할 수 있도록 한다. 부채널 공격(SCA)에 대응하기 위해 하드웨어 가속 암호화가 필요하고 판단되면, CryptoIsland-300P와 CryptoCell-312P를 활용하면 된다.

Arm Cortex-M35P의 핵심 기능 7가지


1. 물리적 보호
보호해야할 자산의 가치가 높으면 해커들은 디바이스를 겨냥한 물리적 공격을 감행한다.   Cortex-M35P 프로세서는 이러한 공격을 감지하고 디바이스를 보호할 수 있는 다양한 요소로 구성되어 있다.
Cortex-M35P는 물리적 공격에 대응하는 몇가지 보안 기능을 갖추고 있다. 여러 기능 중에서도 균일한 타이밍(uniform-timing)은 명령어가 모든 피연산자에 일정한 주기로 실행되도록 하여 정보 유출을 방지한다. 이 기능의 활성화 여부는 선택 가능하다.

또 다른 예로 100% 패러티 적용 범위를 들 수 있다. 프로세서의 모든 플롭(flop)은 구성 가능한 패러티로 보호된다. 이를 통해, 무작위 오류나 의도적으로 삽입된 결함을 탐지할 수 있다. 

AR(ARM)-02.jpg
 

2. 명령 캐시
내장 플래시에서 프로그램을 실행시킬 때 통합 캐시를 사용해 성능을 향상시킬 수 있다. 
플래시의 접근 속도는 RAM처럼 빠르게 증가하지 않아, 성능 저하를 발생시킨다. 이 문제는 내부 캐시 옵션을 활성화하는 방법으로 해결할 수 있다. 캐시에 저장된 정보도 물리적 공격으로부터 보호된다. 

3. Armv8-M용 TrustZone: 전체적인 시스템 보안을 위한 기반
TrustZone은 보안에 치명적인 기능을 보호한다. 실시간 결정론적 응답(deterministic response), 최소 스위칭 오버헤드, 소프트웨어 개발 용이성 등과 같은 임베디드 애플리케이션의 요구 사항을 유지하면서, 코드, 메모리, I/O에 소프트웨어 분리 기능을 제공한다.
아래 그림3에 명시된 바와 같이, TrustZone을 갖춘 Cortex-M35P 프로세서는 보안 및 비보안(Non-secure) 모드라는 두 가지 보안 상태와 여러 가지 관련 기능을 제공한다. 

AR(ARM)-3.jpg

[그림 3] Armv8-M의 추가 보안 상태


4. 태스크 분리를 위한 메모리 보호 유닛(Memory Protection Unit, MPU)
각 모듈이 작동하는데 필요한 특정 메모리 영역에만 액세스 할 수 있도록 하면, 소프트웨어 신뢰성과 시스템 보안을 향상시킬 수 있다. TrustZone을 보완하는 이러한 보호 방식은 중요한 데이터를 덮어쓰는 예기치 못한 접근을 방지한다. 각 보안 영역은 여러 다른 영역으로 구성이 가능한 전용 MPU를 보유할 수 있다. 이 영역을 프로그래밍하는 것은 더욱 쉬워졌으며, 각 영역을 제곱배(power-of-two)의 크기에 정렬시켜야 했던 제약 사항도 사라졌다.
MPU 옵션은 프로그래밍이 가능하며, 보안 및 비보안 상태에 각각 최대 16개의 영역을 제공한다. 멀티태스킹 환경에서 OS는 태스크 문맥 전환(Task context switching) 중에 MPU를 다시 프로그래밍하여, 각 태스크에 대한 메모리 액세스 권한을 정의할 수 있다. 예를 들어, 특정 애플리케이션의 태스크는 일부 애플리케이션 데이터와 특정 주변 장치에 대한 액세스 권한만 부여 받게 될 수 있다. 이런 방식을 통해, MPU는 다른 모든 메모리와 주변 장치를 손상시키거나 무단으로 액세스 하려는 시도를 차단해 시스템 신뢰성을 획기적으로 향상시킬 수 있다.

Cortex-M35P 메모리 보호 아키텍처는 보호 메모리 시스템 아키텍처(PMSA)v8을 기반으로 한다. 해당 버전은 기존의 제곱배 크기 정렬 방식과 달리, 영역을 기반으로 한 제한 스타일 콤퍼레이터(comparators)를 활용한다. 각 영역에는 시작 주소와 끝 주소, 액세스 권한 및 메모리 속성에 대한 설정이 포함된다. 결과적으로, 많은 영역을 함께 연결하는 것을 고려하지 않아도 MPU 영역을 생성할 수 있게 된다. 이러한 이점을 통해, 소프트웨어 개발을 간소화하고 사용을 촉진하며 프로그래밍 단계를 줄여 문맥 전환 시간을 단축시킨다.

AR(ARM)-01.jpg

5. 확장성을 위한 코프로세서(co-processor) 인터페이스
특정 애플리케이션에서는 특수 목적 컴퓨팅으로 변화를 일으킬 수 있다. 이는 최대의 개발 도구, 컴파일러, 디버거, 운영 체제, 미들웨어 옵션을 갖춘 세계 최고의 생태계가 제공하는 모든 이점을 유지하는 방식으로 이뤄져야 한다.
Cortex-M35P 프로세서에는 전용 버스와 같은 인터페이스 옵션을 포함하고 있어, 긴밀하게 결합된 액셀러레이터 하드웨어를 통합한다. 자주 사용되는 연산 집약적인 작업의 경우, 해당 인터페이스는 사용자 정의된 프로세싱 하드웨어를 통해 범용 컴퓨팅 기능을 보강하는 메커니즘을 제공한다. 중요한 것은 생태계를 분할하지 않으면서 이를 수행한다는 점이다. 이러한 인터페이스는 명령어 유형, 관련 레지스터, 연산 필드와 함께 프로세서의 권한 및 보안 상태에 대한 정보, 그리고 최대 8개 코프로세서(co-processors)의 제어 및 데이터 채널을 포함한다.

6. 디지털 신호 처리(DSP) 확장
Arm은 소프트웨어 개발을 촉진하기 위해 CMSIS 프로젝트에서 무료 DSP 라이브러리를 제공한다. 해당 라이브러리에는 다양한 필터, 변환, 행렬과 같은 수학 함수가 포함되어 있으며, 여러 데이터 유형을 지원한다. CMSIS 프로젝트는 현재 오픈 소스로 제공 중이며, 개발 사항은 깃허브(GitHub)에 게시된다.
정수 DSP 옵션 확장으로 85개 명령어가 추가됐다. 대부분의 경우, DSP 명령어는 성능을 평균 3배 가량 높여, 디지털 신호 제어를 중심으로 하는 모든 애플리케이션을 향상시킨다.

7. 단정밀도 부동소수점 유닛
FPv5 기반의 단정밀도 부동소수점 확장 기능 옵션에는 추가 16 엔트리 64 비트 레지스터 파일이 포함되어 있다. 해당 옵션은 45 IEEE754-2008 호환 단정밀도 부동소수점 명령어를 추가한다. 부동소수점 명령어를 사용하면 동일한 소프트웨어 라이브러리보다 평균 10배 정도 성능이 향상된다. FPU는 별도의 전원 도메인에 포함되어 있어, 작동이 불가하거나 사용하지 않을 때 전원을 꺼둘 수 있다.
물리적 공격은 임베디드 및 IoT 장치에 발생할 수 있는 몇 가지 잠재적 공격 중 하나다. Arm의 플랫폼 시큐리티 아키텍처(PSA)는 설계자들에게 위협 모델링 프로세스를 통해 필요한 보안 수준을 평가함으로써 적절한 보안 대책을 적용할 것을 권장한다. 물리적 공격을 위해 드는 비용이 적어지고 더욱 쉬워지면서, 칩 보호 기능을 향상시키는 것이 매우 중요해졌다. 그러나 물리적 보안을 설계하는 것은 아직도 매우 복잡하다. 
Arm이 새로이 선보이는 물리적 보안 IP 제품군은 모든 개발자들이 물리적 복원력을 구축할 수 있도록 한다. Arm Cortex-M35P 프로세서는 TrustZone 기술과 변조 방지 기능을 모두 갖춘 제품으로, 소프트웨어와 물리적 공격을 모두 방지하는 효율적인 보안 솔루션을 제공한다. Arm 생태계의 지원을 바탕으로, Cortex-M35P를 Arm CrytoCell IP, Arm CrytoIsland IP, 또는 독점적인 맞춤형 암호화 솔루션과 결합하면, 임베디드 또는 IoT 솔루션 개발자들은 물리적 복원력을 핵심 기능으로 갖춘 보안 IoT를 구현하고 배포할 수 있는 강력하고 신뢰성 있는 기반을 제공할 수 있다.

leekh@seminet.co.kr
(끝)
<저작권자(c) 반도체네트워크, 무단 전재-재배포 금지>

X


PDF 다운로드

개인정보보호법 제15조에 의한 수집/이용 동의 규정과 관련하여 아래와 같이 PDF 다운로드를 위한 개인정보 수집 및 이용에 동의하십니까? 동의를 거부할 수 있으며, 동의 거부 시 다운로드 하실 수 없습니다.

이메일을 입력하면,
(1) 신규참여자 : 성명/전화번호/회사명/분야를 입력할 수 있는 입력란이 나타납니다.
(2) 기참여자 : 이메일 입력만으로 다운로드가 가능합니다.

×

회원 정보 수정