آموزش ARMv8-M TrustZone روی Cortex-M33 با LPC55S69 - آخرین آپدیت

دانلود ARMv8-M TrustZone on Cortex-M33 with LPC55S69

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: آموزش جامع ARMv8-M TrustZone روی پردازنده Cortex-M33: بررسی حالت‌های امن (Secure) و غیرامن (Non-Secure)، واحدهای SAU/IDAU، امنیت CMSIS و توسعه فرم‌ور بر روی LPC55S69 امنیت سیستم‌های نهفته با ARMv8-M Cortex-M33 و پشتیبانی از TrustZone نوشتن برنامه‌های نرم‌افزاری امن و استاندارد با استفاده از ARM TrustZone درک عمیق انتقال وضعیت امن (Secure Transition) در سطوح نرم‌افزاری و سخت‌افزاری یادگیری مجموعه دستورالعمل‌های ARMv8-M برای مدیریت انتقال بین حالت‌های امن و غیرامن پیش نیازها: دانش پایه در مورد سیستم‌های نهفته (Embedded Systems) دانش مقدماتی در مورد معماری ARM Cortex-M

سیستم‌های نهفته خود را به روش صحیح با استفاده از ARMv8-M TrustZone روی Cortex-M33 ایمن کنید. این دوره پیشرفته به شما می‌آموزد چگونه محیط‌های اجرای مورد اعتماد (TEE) را روی میکروکنترلرهای ARM Cortex-M33 با استفاده از LPC55S69، CMSIS و KEIL-MDK طراحی، پیاده‌سازی و دیباگ کنید.


شما هم تئوری و هم پیاده‌سازی عملی TrustZone، از بخش‌بندی امن/غیرامن گرفته تا پیکربندی حافظه، انتقال وضعیت‌ها و دیباگ جداسازی در سطح سخت‌افزار را خواهید آموخت.

این یک دوره کاربردی و پروژه-محور برای مهندسان سیستم‌های نهفته است که می‌خواهند در امنیت سطح فرم‌ور و سخت‌افزار تخصص یابند.

آنچه خواهید آموخت

  • معماری ARMv8-M و مفاهیم امنیتی TrustZone

  • حالت‌های Secure، Non-Secure و NSC (Non-Secure Callable)

  • نحوه پیکربندی SAU (واحد تخصیص امنیت)

  • نحوه عملکرد IDAU برای امنیت حافظه

  • بخش‌بندی حافظه بر اساس دسترسی و سطح دسترسی (Privilege)

  • دستورالعمل‌های خاص TrustZone مانند (SG, BLXNS, BXNS)

  • مدیریت وقفه‌های امن و غیرامن

  • نوشتن کدهای C امن و غیرامن با استفاده از ماکروهای امنیتی CMSIS

  • ایجاد پروژه‌های TrustZone با استفاده از KEIL-MDK

  • ساخت پروژه‌های C مبتنی بر Makefile برای LPC55S69

  • دیباگ انتقال وضعیت‌ها در سطح زبان C و اسمبلی

  • آزمایشگاه‌های عملی سیستم‌های نهفته به صورت گام‌به‌گام

ابزارها و فناوری‌های مورد استفاده

  • ARMv8-M TrustZone

  • CMSIS / Security Attributes

  • Keil-MDK

  • پروژه‌های C مبتنی بر Makefile

  • دیباگ در سطح سخت‌افزار

این دوره برای چه کسانی است

این دوره برای افراد زیر ایده‌آل است:

  • مهندسان سیستم‌های نهفته و توسعه‌دهندگان فرم‌ور

  • توسعه‌دهندگانی که با Cortex-M33 یا میکروکنترلرهای امن کار می‌کنند

  • مهندسان IoT که در حال ساخت دستگاه‌های امن هستند

  • هر کسی که به دنبال دانش عملی و عمیق در مورد TrustZone است

داشتن تجربه قبلی در برنامه‌نویسی C نهفته و معماری ARM توصیه می‌شود.


در پایان این دوره، شما قادر خواهید بود:   

  • TrustZone را از پایه پیاده‌سازی کنید   

  • فرم‌ورهای امن و غیرامن (Secure + Non-Secure) ایجاد کنید 

  • واحد SAU/IDAU را به درستی پیکربندی کنید 

  • مشکلات TrustZone را در سطح اسمبلی و C دیباگ کنید

  • اپلیکیشن‌های امن IoT و نهفته را با استفاده از LPC55S69 بسازید


سرفصل ها و درس ها

مقدمه و دیاگرام بلوکی Cortex M33 Introduction & Cortex-M33 Block Diagram

  • تکامل معماری ARMv8 M ARMv8-M Architecture Evolution

  • توضیح دیاگرام بلوکی Cortex M33 Cortex-M33 Block Diagram Explained

  • رابط باس پردازنده Armv8 M Cortex M33 Armv8-M Cortex-M33 Processor Bus Interface

  • باس‌های S-AHB و C-AHB در Cortex M33 Cortex-M33 S(System)-AHB and C(Code)-AHB Buses

الگوهای طراحی امنیتی نرم‌افزاری در پیاده‌سازی Trust Zone Software Design Security Motif Bhind Trust-Zone Implementation

  • طراحی اپلیکیشن نرم‌افزاری با استفاده از Trust Zone Software Application Design Using Trust-Zone

  • Trust Zone و محیط اجرای نرم‌افزاری Trust-Zone & Software Execution Context

  • محدودیت‌های دسترسی به تخصیص‌های حافظه Trust Zone Trust-Zone Memory Attributions Access Restrictions

توضیح مفاهیم Armv8 M Trust Zone Armv8-M Trust-Zone Concept Explained

  • توضیح مفهوم سطح بالای ARM Trust Zone ARM Trust-Zone Top Level Concept Explained

  • پیاده‌سازی ARM از مفاهیم Trust Zone: مقایسه ARMv8 M و ARMv8 A ARM Implementation of Trust-Zone Based Concept: ARMv8-M vs ARMv8-A

  • بخش‌بندی حافظه بر اساس ویژگی امنیتی اختصاص یافته Memory Partitionning Based on Assigned Security Attribute

  • بخش‌بندی حافظه با استفاده از بلاک‌های سخت‌افزاری SAU و IDAU Memory Partitionning Using SAU & IDAU Hardware Blocks

  • ترکیبات پشتیبانی شده برای بخش‌بندی حافظه در SAU و IDAU SAU & IDAU Supported Memory Partitionning Combination

  • نحوه عملکرد SAU و IDAU در سطح سخت‌افزار How SAU & IDAU Operate at Hardware Level

  • توضیح انتقال حالت غیرامن به امن در سطح دستورالعمل Non-Secure To Secure State Transition at Instruction level Explained

  • توضیح انتقال حالت غیرامن به امن در سطح نرم‌افزار Non-Secure To Secure State Transition at Software Level Explained

  • توضیح انتقال حالت امن به غیرامن Secure to Non-Secure State Transition Explained

  • درک مبانی ARMv8 M TrustZone Understanding ARMv8-M TrustZone Fundamentals

مودها و حالت‌های پشتیبانی شده در ARMv8 M Cortex M33 ARMv8-M Cortex-M33 Supported Modes & States

  • مودها و سطوح امنیتی پشتیبانی شده در ARMv8 M Cortex M33 ARMv8-M Cotex-M33 Supported Modes and Security Levels

  • جریان انتقال مودها در ARMv8 M Cortex M33 ARMv8-M Cortex-M33 Modes Transtition Flow

  • جریان انتقال سطوح امنیتی در ARMv8 M Cortex M33 ARMv8-M Cortex-M33 Security Levels Transition Flow

  • ثباتی‌های کاربرد عام Banked در مودها و سطوح امنیتی Cortex M33 Cortex-M33 Modes and Security Levels Banked General Purpose Registers

  • ثباتی‌های کاربرد خاص Banked در مودها و سطوح امنیتی Cortex M33 Cortex-M33 Modes and Security Levels Banked Special Purpose Registers

  • بلاک‌های سخت‌افزاری سیستم Banked در سطوح امنیتی Cortex M33 - بخش اول Cortex-M33 Security Levels Banked System Hardware Blocks Part1

  • بلاک‌های سخت‌افزاری سیستم Banked در سطوح امنیتی Cortex M33 - بخش دوم Cortex-M33 Security Levels Banked System Hardware Blocks Part2

بلاک سخت‌افزاری واحد تخصیص تعریف شده توسط پیاده‌ساز (IDAU) Implementation Defined Attribution Unit (IDAU) Hardware Block

  • طرح SAU و IDAU - بخش اول SAU & IDAU Scheme Part1

  • طرح SAU و IDAU - بخش دوم SAU & IDAU Scheme Part2

  • مرور کلی روی یکپارچه‌سازی و اتصال بلاک IDAU IDAU Block Integration and Connection Overview

  • IDAU: منطق رمزگشایی آدرس IDAU: Address Decoding Logic

  • IDAU: مثال بازبخش‌بندی فضای آدرس با استفاده از IDAU IDAU: Address Space repartitionning Using IDAU Example

  • IDAU: منطق رمزگشایی آدرس مبتنی بر محیطی‌ها در مثال IDAU IDAU: Peripherals Based Address Decoding Logic Using IDAU Example

واحد تخصیص امنیت (SAU) Security Attribution Unit (SAU)

  • طرح SAU و IDAU SAU & IDAU Scheme

  • تخصیص ناحیه حافظه در SAU SAU Memory Region Assignement

  • مدل برنامه‌نویسی SAU SAU Programming Model

  • معماری امنیتی ARMv8 M TrustZone و بخش‌بندی حافظه ARMv8-M TrustZone Security Architecture & Memory Partitioning

مجموعه دستورالعمل‌های مرتبط با امنیت در ARMv8 M ARMv8-M Security Related Instructions Set

  • مرور کلی دستورالعمل‌های مبتنی بر امنیت در ARMv8 M ARMv8-M Security Based Instructions Overview

  • دستورالعمل BLXNS BLXNS Instruction

  • توضیح مورد استفاده از BLXNS برای انتقال حالت امن به غیرامن BLXNS for Secure To Non-Secure State Transition Use Case Explained

  • دستورالعمل Secure Gate (SG) Secure Gate (SG) Instruction

  • دستورالعمل‌های SG و BXNS برای انتقال حالت سطوح امنیتی - بخش اول SG & BXNS Instruction for Security Levels State Transition Part1

  • دستورالعمل‌های SG و BXNS برای انتقال حالت سطوح امنیتی - بخش دوم SG & BXNS Instruction for Security Levels State Transition Part2

  • دستورالعمل TT برای تعیین تنظیمات MPU، SAU و IDAU TT Instruction to Determine MPU & SAU & IDAU Settings

  • انواع مختلف دستورالعمل‌های مبتنی بر TT: TT, TTT, TTA, TTAT Different TT Based Instructions Variants : TT, TTT, TTA, TTAT

  • نحوه عملکرد انواع دستورالعمل‌های مبتنی بر TT Different TT Based Instructions Variants: How do they Work

  • فرمت و فراخوانی دستورالعمل TT TT Instruction Format and Invocation

  • فیلدهای پاسخ دستورالعمل TT (TT_RESP) TT Instruction Response Fields (TT_RESP)

  • فراخوانی دستورالعمل‌های مبتنی بر TT از طریق APIهای ماکروی CMSIS TT Based Instructions Invocation Via CMSIS Macros APIs

  • فیلدهای پاسخ دستورالعمل TT به عنوان ساختار بازگشتی CMSIS TT Instruction Response Fields as CMSIS Return Structure

  • ماکروی CMSIS: cmse_check_address_range CMSIS Macro: cmse_check_address_range

مدیریت وقفه‌ها و استثناها در ARMv8 M Cortex M33 ARMv8-M Cortex-M33 Interrupts and Exceptions Handling

  • جدول برداری امن و غیرامن در ARMv8 M (VTOR_S و VTOR_NS) ARMv8-M Secure and Non-Secure Vector Table (VTOR_S & VTOR_NS)

  • مدیریت استثناهای داخلی در ARMv8 M ARMv8-M Internal Exceptions Handling

  • استثناهای ARMv8 M: استثنای HardFault ARMv8-M Exceptions: HardFault Exception

  • استثناهای ARMv8 M: استثناهای NMI و BusFault ARmv8-M Exceptions: NMI & BusFault Exceptions

  • مدیریت وقفه‌ها در ARMv8 M: وقفه‌های امن و غیرامن (NVIC) ARMv8-M Interrupts Handling: Secure & Non-Secure Interrupts (NVIC)

  • جریان اجرای وقفه‌ها و استثناها: از/به سطح امنیتی یکسان Interrupts & Exceptions Execution Flow: From/To Same Security Level

  • جریان اجرای وقفه‌ها و استثناها: از/به سطح امنیتی متفاوت Interrupts & Exceptions Execution Flow: From/To Different Security Level

  • جریان وقفه‌های غیرامن: امن > غیرامن Non-Secure Interrupts Flow: Secure --> Non-Secure

  • چیدمان Stack Frame وقفه‌ها/استثناها Interrupts/Exceptions Stack Frame Layout

  • رمزگذاری بالای Stack Frame در IntSng IntSng Top of The Stack Frame Encoding

  • رمزگذاری EXC_RETURN در وقفه‌ها Interrupt EXC_RETURN Encoding

  • اولویتهای استثناهای داخلی Internal Exceptions Priorities

  • ثباتی‌های اولویت Handler سیستم System Handler Priority Registers

  • اولویتهای وقفه‌ها Interrupts Priorities

  • گروه‌بندی اولویت‌های وقفه‌ها بر اساس امنیت Interrupts Priorities Security Based Grouping

  • کوییز دستورالعمل TT و مدیریت استثناها TT Instruction & Exception Handling Quiz

راه‌اندازی محیط آزمایشگاه‌ها Labs Environment Setup

  • دانلود سورس کد و پروژه Source Code & Project Download

  • لیست ابزارهای مورد نیاز برای پروژه‌های آزمایشگاهی Labs Projects List of Requied Tools

  • نصب بسته make make package installation

  • نصب بسته cygwin cygwin package instllation

  • نصب بسته keil mdk keil-mdk package installation

  • تنظیمات Keil MDK برای برد توسعه LPC55S69 Keil-MDK Setup for LPC55S69 Developement Board

  • بازبخش‌بندی حافظه MCU LPC55S69 بر اساس امنیت MCU LPC55S69 Memory Layout repartitionning Based on Security

آزمایشگاه ۱: جریان انتقال وضعیت امنیتی از حالت امن به غیرامن LAB1: Initially From Secure to Non-Secure Security State Transition Flow

  • مرور کلی پروژه انتقال حالت امن به غیرامن Secure To Non-Secure State Project Overview

  • توضیح اپلیکیشن امن Secure Application Explained

  • توضیح اپلیکیشن غیرامن Non-Secure Application Explained

  • روند ساخت و ایجاد Image غیرامن Non-Secure Image Build & Creation Procedure

  • روند ساخت و ایجاد Image امن Secure Image Build & Creation Procedure

  • دیباگ عملی و درک انتقال حالت امنیتی Hands-On Debugging and Understanding Security State Transition

آزمایشگاه ۲: جریان انتقال وضعیت امنیتی از کاربر غیرامن به حالت امن LAB2: Initially From User Non-Secure to Secure Security State Transition Flow

  • مرور کلی آزمایشگاه پروژه Project Lab Overview

  • پروژه Image امن: توضیح سورس کد Secure Image Project: Source Code Explained

  • پروژه Image امن: ساخت و بررسی باینری خروجی در سطح اسمبلی Secure Image Poject: Building and Inspecting the output binary at assembly level

  • پروژه Image امن: اکسپورت رابط کتابخانه برای اپلیکیشن کاربر غیرامن Secure Image Project: Export Library Interface to non-secure user application

  • پروژه Image امن: بارگذاری باینری روی میکروکنترلر Secure Image Proejct: Loading Binary Into Microcontroller Device

  • پروژه Image غیرامن: توضیح سورس کد Non-Secure Image Project: Source Code Explained

  • دیباگ زنده پروژه کامل: توضیح جریان کامل انتقال حالت امنیتی Full Project Live Debugging: Full Flow of Security State Transition Explained

  • سنجش تسلط بر امنیت و ARMv8 M Trust ARMv8-M Trust & Security Mastery Check

نمایش نظرات

آموزش ARMv8-M TrustZone روی Cortex-M33 با LPC55S69
جزییات دوره
7 hours
81
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,149
5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Wadix Technologies Wadix Technologies

آموزش سیستم های نهفته | وادیکس تکنولوژی