시큐어모드
Posts
2 posts[Arm프로세서] 트러스트존(TrustZone): 익셉션 레벨과 시큐어 모드와의 관계
트러스트존은 실행 흐름은 시큐워 월드와 논 시큐어 월드로 분류할 수 있는데, 시큐워 월드에 보안성의 수준을 높인 Trusted OS를 구현합니다. 그런데 세세한 트러스트존의 설계 방식은 Arm 아키텍처마다 약간 다릅니다. 이는 Armv8 아키텍처에도 적용됩니다. 다음 그림을 보면서 Armv8 아키텍처의 트러스트존을 알아봅시다. 그림 11.6 Armv8 아키텍처에서 논 시큐어 월드와 시큐어 월드 위 그림은 Armv8 아키텍처에서 논 시큐어 월드와 시큐어 월드가 처리되는 흐름을 나타냅니다. 그림의 가장 왼쪽 부분을 보면 EL0-EL3이 보입니다. 이는 익셉션 레벨을 의미하는데, Armv8 아키텍처에서는 익셉션 레벨을 기준으로 익셉션이 처리되고 실행 권한이 관리됩니다. 그림의 왼쪽 상단에는 논 시큐어
[Arm프로세서] 트러스트존(TrustZone): 시큐어 모드와 모니터 모드
대부분 트러스트존을 설명할 때 논 시큐어 월드와 시큐어 월드의 개념과 smc 명령어까지만 다루는 경우가 많습니다. 하지만 세세한 구현 방식을 파악하려면 모니터 모드와 시큐어 모드는 물론 익셉션 벡터 테이블에 대해 파악해야 합니다. 또한 익셉션의 동작 원리도 알아야 합니다. 논 시큐어 월드에서 시큐어 월드로 진입하거나 반대로 시큐어 월드에서 논 시큐어 월드로 진입할 때 익셉션이 유발되기 때문입니다. 먼저 아래와 같이 각 모드 별로 정의된 익셉션 벡터 테이블을 보면서 이 내용을 배워 봅시다. 표 11.1 arm 동작 모드 별로 정의된 익셉션 벡터 테이블 보다시피 각 arm의 모드 별로 익셉션 벡터 테이블의 세부 내용이 표기돼 있습니다. 먼저 표의 가장 오른쪽에 있는 논 시큐어 모드의 익셉션 벡터 테이블을



