트러스트존에 대해서 조사를 해봤어요.

2년 이상 동영상 발송 서비스의 앱 개발을 맡았지만 트러스트존에 대해 완전히 이해하지 못해 조사를 진행했다.

개시하다


많은 동영상 발송 서비스에서는 발송 콘텐츠 유출을 막기 위해 DRM 기술을 사용했다.
당사가 제작한 콘텐츠라면 단순한 DRM만으로도 충분하지만, 영화사와 배급사에 상영권료를 지급한 뒤 제공한 콘텐츠를 나눠주면 높은 안전 수준이 필요하다.
TrustZone은 영화사와 영화 배급사의 높은 안전성 조건을 보장하기 위해 구조가 필요하다.

TrustZone 사양


다음은 본론.
TrustZone은 ARM의 코텍스-A 시리즈 표준에 탑재된 보안 기술로, 주요 사양은 다음과 같다.
· ARM의 실행 환경을 '정규 월드 (아래 그림의 파란색)' 와 'Secure 월드 (아래 그림의 녹색)' 로 분리한다
• Android와 같은 Rich OS가 정규 World에 설치되어 있으며 다양한 애플리케이션이 실행되고 있음
・Secure World에서 일반적으로 TEE(Trusted Execution Environment) 규격을 탑재하고 표준화된 집행 환경 및 응용
· Secure World 측면에서 정규 World의 모든 정보를 액세스할 수 있음
· 정규 World 쪽에서 Secure World로의 통신이 제한되어 있으며, 일반적으로 TEE 규격의 API를 통해 접근할 수 있다

Cortex-A용 TrustZone 아키텍처(출처: ARM)

TrustZone+TEE의 보안 강화 이유


TrustZone+TEE 메커니즘이 없으면 기본 OS의 모든 기능이 실행됩니다.
주 OS에서 DRM 해제 키 정보와 DRM 해제 후 원본 내용을 처리해야 하기 때문에 주 OS가 해킹당하면 유출될 위험이 있다.
한편, TrustZone+TEE의 구조를 사용하면 보안 구역 내의 응용 프로그램이 DRM의 해제, 키의 관리, DRM의 해제 후의 원시 내용의 관리부터 유저에 대한 출력까지 실행하고 메인 OS 측에서 이 정보에 접근할 수 없기 때문에메인 OS의 해킹을 받더라도 보안 영역의 데이터를 보호할 수 있다.

안드로이드의 TEE


TEE 기술을 사용하는 Android KeyStore
http://dev.fjuts.com:83/android/reference/android/security/keystore/KeyInfo.html#isUserAuthenticationRequirementEnforcedBySecureHardware()

참고 가치가 있는 사이트


IoT 시대의 안전한 ARM을 보호하는 "TrustZone"은 무엇인가
https://the01.jp/p0002745/
보안 하드웨어의 등장과 분석
http://www.ffri.jp/assets/files/monthly_research/MR201303_TrustZone.pdf

좋은 웹페이지 즐겨찾기