آموزش رمزنگاری و رمزگذاری در سیستم‌های نهفته (Embedded Systems) - آخرین آپدیت

دانلود Embedded Systems Cryptography & Encryption

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: امنیت داده‌ها در سیستم‌های نهفته: AES, RSA, HASH و غیره پیاده‌سازی تکنیک‌های پیشرفته رمزنگاری: تسلط بر AES، RSA و ECC برای ایمن‌سازی سیستم‌های نهفته و محافظت موثر از داده‌های حساس. توسعه پروتکل‌های رمزنگاری: طراحی و یکپارچه‌سازی راهکارهای رمزنگاری متناسب با میکروکنترلرهای STM32 و سیستم‌های نهفته. تحلیل و بهینه‌سازی امنیت: ارزیابی و بهبود امنیت فریم‌ور (Firmware) برای کاهش تهدیدات سایبری در کاربردهای واقعی سیستم‌های نهفته. درک استانداردهای رمزنگاری: یادگیری متدهای استاندارد صنعتی برای رمزگذاری، هشینگ و مدیریت امن کلیدها در سیستم‌های نهفته. پیش نیازها: برد توسعه NUCLEO-F411

با اعتماد به نفس کامل، رمزنگاری واقعی را در فریم‌ور سیستم‌های نهفته پیاده‌سازی کنید.

بیاموزید که چگونه بلوک‌های کاربردی رمزنگاری از جمله AES، SHA-256، HMAC، RSA، ECC، DRBG و میان‌افزارهای رمزنگاری STM32 را برای میکروکنترلرهای مبتنی بر ARM طراحی، درک و یکپارچه کنید.

این یک دوره تئوری محض رمزنگاری نیست.

بلکه یک آموزش عملی سیستم‌های نهفته است که برای مهندسانی طراحی شده که می‌خواهند بدانند رمزنگاری مدرن در عمل چگونه در فریم‌ور اعمال می‌شود.

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

• رمزنگاری متقارن با AES

• هشینگ با SHA-256

• احراز هویت پیام با HMAC

• تولید اعداد تصادفی با DRBG

• مبانی کلید عمومی با RSA و ECC

• یکپارچه‌سازی کتابخانه رمزنگاری STM32

• ابزارهای پایتون در سمت میزبان برای اعتبارسنجی و تست

اگر سیستم‌های نهفته‌ای می‌سازید که داده ذخیره می‌کنند، ارتباط خارجی دارند، آپدیت دریافت می‌کنند یا با محیط‌های متصل تعامل دارند، این مهارتی است که همین حالا باید کسب کنید.


چرا این دوره اهمیت دارد؟

امنیت در سیستم‌های نهفته دیگر یک گزینه نیست، بلکه یک ضرورت است.

از محصولات نهفته مدرن انتظار می‌رود فراتر از عملکرد صحیح، از داده‌ها محافظت کنند، در برابر دستکاری مقاوم باشند، ارتباطات امن را پشتیبانی کنند و بخشی از یک سیستم قابل اعتماد باشند.

با این حال، بسیاری از مهندسان سیستم‌های نهفته هرگز یاد نگرفته‌اند که رمزنگاری در سطح فریم‌ور چگونه پیاده‌سازی می‌شود.

آن‌ها ممکن است با اصطلاحات آشنا باشند.

ممکن است مفاهیم سطح بالا را درک کنند.

اما وقتی زمان کار با رمزگذاری، هشینگ، احراز هویت، اعداد تصادفی یا امنیت مبتنی بر کلید در یک گردش کار واقعی می‌رسد، این اعتماد به نفس اغلب از بین می‌رود.

این دوره برای پر کردن این شکاف ایجاد شده است.

شما از تعاریف انتزاعی فراتر رفته و درک خواهید کرد که رمزنگاری کاربردی چگونه در مهندسی سیستم‌های نهفته جای می‌گیرد.

چه چیزی این آموزش را متمایز می‌کند؟

طراحی شده برای مهندسان سیستم‌های نهفته، نه مخاطبان عمومی نرم‌افزار

بسیاری از آموزش‌های رمزنگاری یا بیش از حد آکادمیک هستند یا ارتباطی با واقعیت‌های فریم‌ور ندارند.

این دوره رویکرد متفاوتی دارد.

تمرکز بر نیازهای عملی توسعه‌دهندگان سیستم‌های نهفته است که با میکروکنترلرهای ARM و تجهیزات کلاس STM32 کار می‌کنند. به جای آموزش رمزنگاری به عنوان یک موضوع صرفاً ریاضی، آن را به عنوان یک قابلیت مهندسی آموزش می‌دهد.

شما نه تنها اجزای اصلی رمزنگاری را می‌شناسید، بلکه یاد می‌گیرید چگونه از آن‌ها استفاده کنید، چگونه آن‌ها را با هم ترکیب کنید و چگونه در محیط توسعه واقعی درباره آن‌ها استدلال کنید.

مباحثی که پوشش خواهید داد:

• چرا رمزنگاری در محصولات نهفته اهمیت دارد

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

• رمزنگاری متقارن در مقابل نامتقارن

• گردش‌های کاری عملی رمزگذاری (Cipher)

• مدیریت Padding و بلوک‌ها

• دایجست‌های امن و احراز هویت

• تولید بیت‌های تصادفی معین (Deterministic)

• مبانی کلید عمومی

• جریان پیاده‌سازی در سیستم نهفته با استفاده از ابزارها و کتابخانه‌های STM32

• تایید صحت در سمت میزبان با استفاده از پایتون


نتایج یادگیری

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

• نقش رمزنگاری در سیستم‌های نهفته را توضیح دهید

• تفاوت بین رمزگذاری، هشینگ، احراز هویت و تصادفی‌سازی را تشخیص دهید

• گردش‌های کاری مبتنی بر AES را پیاده‌سازی و تحلیل کنید

• به طور صحیح با PKCS#7 padding کار کنید

• مفاهیم SHA-256 و HMAC را درک و اعمال کنید

• از اصول تولید اعداد تصادفی مبتنی بر DRBG استفاده کنید

• هدف کاربردی RSA و ECC را در محیط‌های نهفته درک کنید

• اجزای نرم‌افزاری رمزنگاری STM32 را در جریان کاری فریم‌ور یکپارچه کنید

• رفتارهای کلیدی رمزنگاری را با ابزارهای پشتیبان پایتون اعتبارسنجی کنید

• آگاهی امنیتی قوی‌تری به عنوان مهندس فریم‌ور سیستم‌های نهفته کسب کنید


نگاهی به سرفصل‌های دوره

یک مسیر کاربردی از مبانی تا پیاده‌سازی

این آموزش شامل یک پیشروی ساختاریافته در حوزه‌های کلیدی است که مهندسان برای شروع کار با اعتماد به نفس در زمینه رمزنگاری به آن‌ها نیاز دارند.

حوزه‌های اصلی عبارتند از:

۱. زمینه امنیتی و آگاهی از تهدیدات سیستم‌های نهفته

درک دلیل اهمیت رمزنگاری، نقاط آسیب‌پذیر سیستم‌های نهفته و نحوه قرارگیری قابلیت‌های امنیتی در طراحی محصولات مدرن.

۲. مبانی رمزنگاری

ایجاد درکی شفاف از دسته‌های اصلی سیستم‌های رمزنگاری و زمان استفاده از هر یک.

۳. گردش‌های کاری رمزنگاری متقارن

یادگیری اصول رویکردهای عملی رمزگذاری از جمله AES و ملاحظات عملیاتی رایج.

۴. هشینگ و احراز هویت پیام

درک اینکه SHA-256 و HMAC چگونه به یکپارچگی (Integrity) و اعتماد کمک می‌کنند.

۵. تصادفی‌سازی و مبانی مرتبط با کلید

مطالعه مفاهیم DRBG و دلیل اهمیت تصادفی بودن در سیستم‌های رمزنگاری.

۶. رمزنگاری کلید عمومی

توسعه درک کاربردی از RSA و ECC در موارد استفاده سیستم‌های نهفته.

۷. گردش‌های کاری پیاده‌سازی و اعتبارسنجی در STM32

اجرای یکپارچه‌سازی متمرکز بر فریم‌ور با استفاده از نرم‌افزارهای رمزنگاری STM32 و ابزارهای پشتیبان پایتون.


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

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

• مهندسان فریم‌ور سیستم‌های نهفته که با میکروکنترلرهای ARM کار می‌کنند

• توسعه‌دهندگان STM32 که خواهان دانش کاربردی امنیت هستند

• مهندسانی که محصولات متصل (Connected) یا قابل آپدیت می‌سازند

• توسعه‌دهندگانی که در حال انتقال به مسئولیت‌های امنیت سیستم‌های نهفته هستند

• متخصصان فنی که می‌خواهند رمزنگاری را فراتر از کلمات تبلیغاتی درک کنند

• دانشجویان و مهندسان تازه‌کار که به دنبال مهارت‌های واقعی و کاربردی در سیستم‌های نهفته هستند

این دوره برای افراد زیر طراحی نشده است:

• کسانی که به دنبال یک برنامه صرفاً ریاضی در مورد رمزنگاری هستند

• یادگیرندگانی که فقط تئوری انتزاعی بدون بافت فریم‌ور می‌خواهند

• مخاطبان عمومی نرم‌افزاری که هیچ علاقه‌ای به سیستم‌های نهفته ندارند


چرا اکنون یاد بگیرید؟

مهندس سیستم‌های نهفته‌ای که امنیت را درک کند، برتری دارد

با متصل‌تر شدن محصولات و قرار گرفتن در معرض محیط‌های خصمانه، تیم‌های سیستم‌های نهفته به طور فزاینده‌ای به مهندسانی نیاز دارند که فراتر از درایورها و محیط‌های جانبی فکر کنند.

آن‌ها به مهندسانی نیاز دارند که مفاهیم اعتماد، یکپارچگی، محرمانگی و رفتار امن سیستم را درک کنند.

این به معنای تبدیل شدن هر مهندس به متخصص رمزنگاری نیست، اما به این معناست که سواد امنیتی کاربردی در حال تبدیل شدن به یک قابلیت بسیار ارزشمند است.

این دوره به شما کمک می‌کند این قابلیت را به گونه‌ای بسازید که در واقعیت‌های سیستم‌های نهفته ریشه داشته باشد.


یادگیری از مدرس سیستم‌های نهفته با تجربه مهندسی واقعی

این آموزش توسط Israel Gbati، مدرس سیستم‌های نهفته، مهندس و مؤسس EmbeddedExpertIO تدریس می‌شود.

Israel به مهندسان سراسر جهان سیستم‌های نهفته را آموزش داده و به دلیل آموزش‌های کاربردی و متمرکز بر پیاده‌سازی که فراتر از تئوری و در جریان‌های کاری واقعی فریم‌ور است، شناخته شده است.

تدریس او بر یک اصل محوری استوار است:

مهندسان باید با مهارت‌هایی خارج شوند که واقعاً بتوانند آن‌ها را به کار بگیرند.

همین فلسفه شکل‌دهنده این دوره است.

شما فقط تعاریف را نمی‌شنوید، بلکه درکی را می‌سازید که در کارهای واقعی سیستم‌های نهفته قابل استفاده باشد.




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

خوش‌آمدگویی Welcome

  • مقدمه Introduction

ضرورت رمزنگاری در سیستم‌های نهفته Imperative Of Encryption in Embedded Systems

  • دلیل نیاز به رمزنگاری در تجهیزات نهفته The Case for Encryption in Embedded Devices

  • مروری بر ویژگی‌های امنیتی در STM32 Overview Of Security Features in STM32

  • ویژگی‌های کلیدی امنیت Key Properties of Security

تحلیل تهدیدات Threat Analysis

  • مروری بر تهدیدات اصلی Overview of the Main Threats

  • یکپارچگی داده‌ها در سیستم‌های نهفته Data Integrity in Embedded Systems

  • دارایی‌ها، تهدیدات و آسیب‌پذیری‌ها Assets, Threats and Vulnerabilities

  • فرآیند ۴ مرحله‌ای تحلیل تهدید The 4-Step Process Of Threat Analysis

  • مطالعه موردی: تحلیل تهدید برای دستگاه ترموستات هوشمند CaseStudy- Threat Analysis for a Smart Thermostat Device

راه‌اندازی و آماده‌سازی Setting Up

  • دانلود CubeIDE Downloading CubeIDE

  • نصب CubeIDE Installing CubeIDE

  • دسترسی به مستندات مورد نیاز Getting the Required Documentation

  • انتخاب پکیج مناسب و تنظیم ساختار پروژه Getting the right Package and Setting Up the Project Tree

  • تست تنظیمات پروژه Testing the Project Setup

توسعه درایورهای سیستم برای پیاده‌سازی مثال‌های واقعی Developing some System Drivers for Implementing Real World Examples

  • برنامه‌نویسی: فعال‌سازی واحد ممیز شناور (FPU) Programming: Enabling the Floating Point Unit

  • برنامه‌نویسی: توسعه درایور UART و تحلیل مستندات Programming: Developing the UART Driver-Analyzing the Documentation

  • برنامه‌نویسی: توسعه درایور UART و لیست کردن مراحل Programming: Developing the UART Driver- Listing out the Steps

  • برنامه‌نویسی: توسعه درایور UART و پیاده‌سازی تابع Init Programming: Developing the UART Driver- Implementing the Init. Function

  • برنامه‌نویسی: توسعه درایور UART و پیاده‌سازی تابع Write Programming: Developing the UART Driver- Implementing the Write Function

  • برنامه‌نویسی: توسعه درایور UART و تست Programming: Developing the UART Driver- Testing

  • برنامه‌نویسی: توسعه Timebase سیستم و تحلیل مستندات Programming: Developing the System Timebase- Analyzing the Documentation

  • برنامه‌نویسی: توسعه Timebase سیستم و پیاده‌سازی تابع Init Programming: Developing the System Timebase- Implementing the Init. Function

  • برنامه‌نویسی: توسعه Timebase سیستم و پیاده‌سازی سایر توابع Programming: Developing the System Timebase- Implementing other Functions

  • برنامه‌نویسی: تست Timebase سیستم Programmming: Developing the System Timebase-Testing

  • برنامه‌نویسی: توسعه BSP سیستم و لیست توابع مورد نیاز Programming: Developing the System BSP- Listing out the Required Functions

  • برنامه‌نویسی: توسعه BSP سیستم و پیاده‌سازی درایور LED Programming: Developing the System BSP- Implementing the LED Driver

  • برنامه‌نویسی: توسعه BSP سیستم و پیاده‌سازی درایور Push Button Programming: Developing the System BSP- Implementing the Push Button Driver

  • برنامه‌نویسی: توسعه BSP سیستم و تست Programming: Developing the System BSP- Testing

  • برنامه‌نویسی: توسعه درایور ADC سیستم و تحلیل مستندات Programming: Developing the System ADC Driver-Analyzing the Documentation

  • برنامه‌نویسی: توسعه درایور ADC سیستم و لیست کردن مراحل Programming: Developing the System ADC Driver- Listing out the Steps

  • برنامه‌نویسی: توسعه درایور ADC سیستم و پیاده‌سازی تابع Init Programming: Developing the System ADC Driver- Implementing the Init. Function

  • برنامه‌نویسی: توسعه درایور ADC سیستم و پیاده‌سازی تابع Read Programming: Developing the System ADC Driver- Implementing the ADC Read Func.

مفاهیم بنیادی رمزنگاری Foundational Concepts of Cryptography

  • برخی اصطلاحات رایج در رمزنگاری Some Common Terms in Cryptography

  • مفهوم Cipher The Cipher

  • دانلود سورس کد Source Code Download

رمز سزار (Ceasar Cipher) The Ceasar Cipher

  • رمز سزار The Ceasar Cipher

  • رمز ROT13 The ROT13 Cipher

  • برنامه‌نویسی: به‌روزرسانی فضای کاری (Workspace) Programming: Updating the Workspace

  • برنامه‌نویسی: توسعه تابع رمزگذاری سزار Programming: Developing the Ceasar Cipher Encryption Function

  • برنامه‌نویسی: توسعه تابع رمزگشایی سزار Programming: Developing the Ceasar Cipher Decryption Function

  • برنامه‌نویسی: رمزگذاری و رمزگشایی اعداد صحیح با رمز سزار Programming: Encrypting and Decrypting Integers with Ceasar Cipher

  • برنامه‌نویسی: شکستن رمز سزار Programming: Cracking the Ceasar Cipher

رمز تک‌الفبایی (MonoAlphabetic Cipher) The MonoAlphabetic Cipher

  • رمز تک‌الفبایی The MonoAlphabetic Cipher

  • برنامه‌نویسی: توسعه تابع رمزگذاری تک‌الفبایی Programming: Developing the MonoAlphabetic Cipher Encryption Function

  • برنامه‌نویسی: توسعه تابع رمزگشایی تک‌الفبایی Programming: Developing the MonoAlphabetic Cipher Decryption Function

رمز چندالفبایی (PolyAlphabetic Cipher) The PolyAlphabetic Cipher

  • درک رمزهای چندالفبایی Understanding PolyAlphabetic Ciphers

  • برنامه‌نویسی: توسعه تابع رمزگذاری ویژنر (Vigenere) Programming: Developing the Vigenere Cipher Encryption Function

  • برنامه‌نویسی: توسعه تابع رمزگشایی ویژنر Programming: Developing the Vigenere Cipher Decryption Function

  • برنامه‌نویسی: بهبود رمز ویژنر Programming: Improving the Vigenere Cipher

رمز ضربی (Multiplicative Cipher) The Multiplicative Cipher

  • رمز ضربی The Multiplicative Cipher

  • برنامه‌نویسی: تابع رمزگذاری ضربی Programming: The Multiplicative Cipher Encryption Function

  • برنامه‌نویسی: تابع رمزگشایی ضربی Programming: The Multiplicative Cipher Decryption Function

توسعه اپلیکیشن میزبان برای دریافت و رمزگشایی داده‌های ارسالی Developing a Host Application for Receiving and Decrypting Transmitted Data

  • راه‌اندازی پایتون Setting Up Python

  • راه‌اندازی VSCode Setting Up VSCode

  • برنامه‌نویسی: توسعه الگوریتم رمزگذاری سزار در پایتون Programming: Developing The Ceasar Cipher Encryption Algorithm in Python

  • برنامه‌نویسی: توسعه الگوریتم رمزگشایی سزار Programming: Developing The Ceasar Cipher Decryption Algorithm

  • برنامه‌نویسی: تست رمز سزار Programming: Testing the Ceasar Cipher

  • برنامه‌نویسی: رمزگشایی داده‌های ارتباطی از فریم‌ور به میزبان Programming: Decrypting Communication Data from Firmware to Host

  • برنامه‌نویسی: توسعه الگوریتم رمزگذاری تک‌الفبایی Programming: Developing The Monoalphabetic Encryption Algorithm

  • برنامه‌نویسی: توسعه الگوریتم رمزگشایی تک‌الفبایی Programming: Developing The Monoalphabetic Decryption Algorithm

  • برنامه‌نویسی: تست رمز تک‌الفبایی Programming: Testing The Monoalphabetic Cipher

  • برنامه‌نویسی: رمزگشایی داده‌های ارتباطی از فریم‌ور با رمز تک‌الفبایی Programming: Monoalphabetic Cipher- Decrypting Communication Data from Firmware

مبانی رمزگذاری و رمزنگاری Foundations of Encryption and Cryptography

  • تعاریف و تفاوت‌های بین رمزگذاری و رمزنگاری Definitions and Distinctions between Encryption and Cryptography

  • خلاصه‌ای از درخت طبقه‌بندی Cipherها Summary of the Cipher Classification Tree

  • رمزنگاری متقارن در برابر نامتقارن: تحلیل مقایسه‌ای Sysmetric vs Assymetric Encryption- a Comparative Analysis

  • توابع هش رمزنگاری Cryptographic Hash Functions

  • دینامیک رمزگذاری/رمزگشایی The Encryption/Decryption Dynamics

  • استراتژی‌های پیاده‌سازی در سیستم‌های نهفته Implementation Strategies in Embedded Systems

پیکربندی کتابخانه رمزنگاری STM32 Configuring the STM32 Cryptogrqphic Library

  • دریافت کتابخانه رمزنگاری STM32 Getting the STM32 Cryptographic Library

  • دانلود میان‌افزار Cryptolib Cryptolib Middleware Download

  • برنامه‌نویسی: یکپارچه‌سازی کتابخانه رمزنگاری STM32 Programming: Integrating the STM32 Cryptographic Library

  • برنامه‌نویسی: تحلیل فایل‌های کتابخانه Programming: Analyzing the Files of the Library

  • برنامه‌نویسی: پیاده‌سازی فایل سطح پایین CMOX Programming: Implementing the CMOX Low Level File

استاندارد پیشرفته رمزگذاری (AES) The Advanced Encryption Standard(AES)

  • مروری بر استاندارد پیشرفته رمزگذاری (AES) Overview of the Advanced Encryption Standard

  • برنامه‌نویسی: کار با AES CBC و مقداردهی اولیه بافرها Programming: Working with AES-CBC: Initializing the Buffers

  • برنامه‌نویسی: لیست کردن مراحل Programming: Listing Out the Steps

  • برنامه‌نویسی: رمزگذاری داده‌ها با الگوریتم AES CBC (بخش ۱) Programming: Encrypting Data with the AES-CBC Algorithm(Pt.1)

  • برنامه‌نویسی: رمزگذاری داده‌ها با الگوریتم AES CBC (بخش ۲) Programming: Encrypting Data with the AES-CBC Algorithm(Pt.2)

  • برنامه‌نویسی: مقایسه متن رمز شده مورد انتظار با متن رمز شده محاسبه شده Programming: Comparing the Expected Ciphertext to the Computed Ciphertext

  • برنامه‌نویسی: رمزگشایی داده‌ها با الگوریتم AES CBC Programming: Decrypting Data with the AES-CBC Algorithm

  • برنامه‌نویسی: تست پیاده‌سازی Programming: Testing the Implementing

کار با داده‌های سنسور Working with Sensor Data

  • برنامه‌نویسی: تجزیه و ترکیب مجدد مقادیر ADC Programming: Decomposing and Recombining ADC Values

  • برنامه‌نویسی: تعریف بافرها Programming: Declaring the Buffers

  • برنامه‌نویسی: لیست کردن مراحل Programming: Listing Out the Steps

  • برنامه‌نویسی: تکمیل سیستم Programming: Completing the System

پدینگ PKCS#7 PKCS#7 Padding

  • درک پدینگ PKCS#7 Understaning PKCS#7 Padding

  • برنامه‌نویسی: نیاز به پدینگ (Padding) Programming: The Need for Padding

  • برنامه‌نویسی: پیاده‌سازی توابع پدینگ Programming: Implementing the Padding Functions

  • برنامه‌نویسی: اعمال پدینگ PKCS#7 Programming: Applying PKCS#7 Padding

الگوریتم AES 256 AES-256

  • برنامه‌نویسی: کار با الگوریتم AES 256 Programming: Working with the AES-256 Algorithm

تولیدکننده بیت‌های تصادفی معین (DRBG) The Determininstic Random Bit Generator(DRBG)

  • برنامه‌نویسی: ساخت Context برای DRBG Programming: Contructing the DRBG Context

  • برنامه‌نویسی: تعریف پارامترهای ورودی Programming: Declaring the Input Parameters

  • برنامه‌نویسی: تولید داده‌های تصادفی با DRBG Programming: Generating Random Data with the DRBG

  • برنامه‌نویسی: پیاده‌سازی تابع تولید کلید و IV برای الگوریتم AES Programming: Implementing the Key and IV Generating Function for the AES Algo

  • برنامه‌نویسی: تست سیستم با کلید و IV تولید شده توسط DRBG Programming: Testing the System with Key and IV Generated by the DRBG

ضروریات تولید دایجست (Digest) Essentials of Digest Generation

  • دایجست (Digest) چیست؟ What is a Disgest?

  • ویژگی‌های کلیدی توابع هش Key Properties of Hash Functions

  • هشینگ برای یکپارچگی داده‌ها Hashing for Data Integrity

  • خانواده‌های اصلی الگوریتم‌های دایجست Major Families of Digest Algorithms

  • شناسایی توابع هش امن و ایمن Identifying Safe and Secure Hash Functions

  • بهترین روش‌ها در سیستم‌های نهفته Best Practises in Embedded Systems

  • برنامه‌نویسی: هش کردن یک پیام با استفاده از SHA 256 Programming: Hashing a Message using SHA-256

احراز هویت داده‌ها با هشینگ کلیددار Data Authentication with Keyed Hashing

  • چالش‌های تکیه بر یکپارچگی (Integrity) به تنهایی Challenges with the Integrity Alone

  • درک هشینگ کلیددار Understanding Keyed Hashing

  • مدیریت کلید و بهترین روش‌ها در هشینگ کلیددار Key Management and Best Practises in Keyed Hashing

تولید کد احراز هویت پیام (MAC) Message Authentication Code (MAC) Generation

  • مقدمه‌ای بر تولید کد احراز هویت پیام (MAC) Introductiont to Message Authentication Code(MAC) Generation

  • کاربردهای MAC Applications of MACs

  • مقدمه‌ای بر کد احراز هویت پیام مبتنی بر هش (HMAC) Introduction to Hash-Based Message Authentication Code (HMAC)

  • چرا از HMAC استفاده کنیم؟ Why Use HMACs?

  • خلاصه‌ای از HMACها HMACs in Summary

  • برنامه‌نویسی: کار با HMACها Programming: Working with HMACs

رمزنگاری نامتقارن Asymmetric Encryption

  • مروری بر رمزنگاری متقارن Recap on Symmetric Enryption

  • رمزنگاری نامتقارن و مشکل توزیع کلید Asymmetric Encryption-The Key Distribution Problem

  • رمزنگاری نامتقارن به عنوان راهکاری برای توزیع کلید Asymmetric Encryption as a Solution to the Key Distribution Problem

  • الگوریتم RSA: یک الگوریتم کلاسیک رمزنگاری نامتقارن RSA: A Classic Asymmetric Encryption Algorithm

امضاهای دیجیتال و عدم انکار Digital Signatures and Non-Repudiation

  • مشکل کلیدهای مشترک و انکارپذیری (Repudiation) The Problem with Shared Keys- Repudiation

  • برخی کاربردهای عدم انکار (Non Repudiation) Some Applications of Non-Repudiation

  • دستیابی به عدم انکار با امضاهای دیجیتال Achieving Non-Repudiation with Digital Signatures

  • درک نحوه عملکرد امضاهای دیجیتال Understanding How Digital Signatures Work

رمزنگاری RSA RSA (Rivest–Shamir–Adleman) Cryptography

  • مروری بر RSA Overview of RSA

  • مقدمه‌ای بر امضاهای دیجیتال RSA Introduction to RSA Digital Signatures

  • خلاصه و محدودیت‌های RSA Summary and Limitations of RSA

  • درک پارامترهای RSA Understanding RSA Parameters

  • برنامه‌نویسی: تعریف بافرهای ورودی Programming: Declaring the Input Buffers

  • برنامه‌نویسی: ساخت Context و تولید کلید خصوصی Programming: Constructing the Context and Generating the Private Key

  • برنامه‌نویسی: رمزگشایی متن رمز شده با استفاده از کلید خصوصی Programming: Decrypting Ciphertext Using the Private Key

  • برنامه‌نویسی: رمزگذاری داده‌ها با استفاده از کلیدهای عمومی Programming: Encrypting Data Using Public Keys

رمزنگاری منحنی بیضوی (ECC) Elliptic Curve Cryptography (ECC)

  • مقدمه‌ای بر رمزنگاری منحنی بیضوی (ECC) Introduction to Elliptic Curve Cryptography

  • امضا کردن با ECC Signing with ECC

  • انواع ECC Variants of ECC

  • مروری بر تبادل کلید دیفی-هلمن منحنی بیضوی (ECDH) Overview of Elliptic-Curve Diffie–Hellman (ECDH)

  • مروری بر انواع الگوریتم ECDH Overview of ECDH Algorithm Variants

  • برنامه‌نویسی: تعریف کلیدهای خصوصی و عمومی Programming: Defining the Private and Public_keys

  • برنامه‌نویسی: محاسبه راز مشترک (Shared Secret) Programming: Computing the Shared Secret

بررسی دقیق محیط جانبی CRC در STM32 The STM32's CRC Peripheral: A Closer Look

  • مروری بر محیط جانبی CRC در STM32 Overview of the STM32 CRC Peripheral

  • درک فرآیند محاسبه CRC Understanding the CRC Calculation Process

  • مثال گام به گام از فرآیند محاسبه CRC Step-by-step Example of the CRC Computation Process

نمایش نظرات

آموزش رمزنگاری و رمزگذاری در سیستم‌های نهفته (Embedded Systems)
جزییات دوره
14.5 hours
137
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
458
4.6 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Israel Gbati Israel Gbati

Embedded Firmware Engineer نام من اسرائیل است ، من بیش از 7 سال است که در فضای سیستم جاسازی شده تحقیق و کار می کنم. در Udemy ده ها هزار دانش آموز در سیستم های جاسازی شده با تمرکز بر موضوعاتی مانند برنامه نویسی Assembly ، طراحی سیستم عامل های زمان واقعی ، توسعه سیستم عامل و پردازش سیگنال دیجیتال آموزش داده ام. من قادر به آموزش این مباحث هستم زیرا در کارهای روزمره مفاهیمی را از این مباحث استفاده می کنم. به یکی از دوره های من بپیوندید و ببینید چطور پیش می رود. همیشه می توانید درخواست بازپرداخت کنید.

BHM Engineering Academy BHM Engineering Academy

آکادمی مهندسی قرن بیست و یکم