نرم افزار ابزار امضای سری STM32MPx
اطلاعات محصول
مشخصات:
- نام محصول: STM32MP-SignTool
- نسخه: UM2543 - Rev 4
- تاریخ انتشار: ژوئن 2024
دستورالعمل استفاده از محصول
نصب و راه اندازی:
برای نصب STM32MP-SignTool، مراحل ارائه شده در دفترچه راهنمای کاربر را دنبال کنید.
رابط خط فرمان:
هنگام استفاده از STM32MP-SignTool از خط فرمان دستورات زیر در دسترس هستند:
- -باینری-تصویر(-bin)، -ورودی(-in)
- -نسخه-تصویر (-iv)
- -کلید خصوصی (-prvk)
- کلید عمومی -pubk
Exampموارد:
رجوع به پیشین شودampبرای درک نحوه استفاده مؤثر از STM32MP-SignTool، در زیر توضیح می دهیم:
- Example 1: انتخاب و خروجی الگوریتم پیش فرض file ایجاد
- Example 2: امضای یک باینری file با هدر نسخه 2 و چندین کلید عمومی.
حالت مستقل:
هنگام استفاده از STM32MP-SignTool در حالت مستقل، این مراحل را دنبال کنید:
- ابتدا مسیر مطلق را وارد کنید.
- اطلاعات مورد نیاز مانند انتخاب الگوریتم، نسخه تصویر، نقطه ورودی و آدرس بار را ارائه دهید.
سوالات متداول (سؤالات متداول)
- چگونه تصویر خروجی را تایید کنم file?
با تجزیه خروجی می توانید تصویر حاصل را تأیید کنید file و هر فیلد هدر را بررسی کنید. از دستور استفاده کنید:./STM32MP_SigningTool_CLI.exe -dump /home/user/output.stm32
- تفاوت نسخه های هدر برای امضا چیست؟
نسخه هدر تعداد کلیدهای عمومی مورد نیاز برای احراز هویت را تعیین می کند. برای مثالampهدر نسخه 1 به یک مسیر کلیدی برای محصولات STM32MP15xx نیاز دارد، در حالی که هدر نسخه 2 و بالاتر به هشت مسیر کلیدی برای محصولات دیگر نیاز دارد.
مقدمه
- نرم افزار ابزار امضای سری STM32MPx (به نام STM32MP-SignTool در این سند) در STM32CubeProgrammer (STM32CubeProg) یکپارچه شده است.
- STM32MP-SignTool یک ابزار کلیدی است که یک پلت فرم ایمن را تضمین می کند و امضای تصاویر باینری را با استفاده از کلیدهای ECC تولید شده توسط نرم افزار STM32MP-KeyGen تضمین می کند (برای جزئیات بیشتر به توضیحات نرم افزار تولید کلید سری STM32MPx (UM2542) مراجعه کنید).
- تصاویر باینری امضا شده در طول دنباله راهاندازی امن MPU سری STM32MPx استفاده میشوند که از زنجیره راهاندازی مطمئن پشتیبانی میکند. این عمل تأیید اعتبار و بررسی یکپارچگی تصاویر بارگذاری شده را تضمین می کند.
- STM32MP-SignTool یک تصویر باینری تولید می کند file، یک کلید عمومی fileو یک کلید خصوصی file.
- تصویر باینری file حاوی داده های باینری است که باید برای دستگاه برنامه ریزی شود.
- کلید عمومی file حاوی کلید عمومی ECC در قالب PEM است که با STM32MP-KeyGen تولید شده است.
- کلید خصوصی file حاوی کلید خصوصی رمزگذاری شده ECC در قالب PEM است که با STM32MP-KeyGen تولید شده است.
- یک باینری امضا شده file همچنین می تواند از یک امضا شده از قبل تولید شود file با دسته file حالت در این مورد، پارامترهای زیر اجباری نیستند: نقطه ورود تصویر، آدرس بارگذاری تصویر، و پارامترهای نسخه تصویر.
STM32MP-SignTool را نصب کنید
- این ابزار با بسته STM32CubeProgrammer (STM32CubeProg) نصب می شود. برای اطلاعات بیشتر در مورد مراحل راه اندازی، به بخش 1.2 راهنمای کاربر توضیحات نرم افزار STM32CubeProgrammer (UM2237) مراجعه کنید.
- این نرم افزار برای MPU های مبتنی بر Arm® سری STM32MPx کاربرد دارد.
توجه: Arm یک علامت تجاری ثبت شده Arm Limited (یا شرکت های تابعه آن) در ایالات متحده و/یا جاهای دیگر است.
رابط خط فرمان STM32MP-SignTool
بخش های زیر نحوه استفاده از STM32MP-SignTool را از خط فرمان شرح می دهد.
دستورات
دستورات موجود در زیر لیست شده است:
- -باینری-تصویر(-bin)، -ورودی(-in)
- توضیحات: تصویر باینری file مسیر (پسوند bin.)
- نحو: 1 -bin /home/User/binaryFile.bin
- نحو :2 -in /home/User/binaryFile.bin
- -نسخه-تصویر (-iv)
- توضیحات: نسخه تصویری تصویر امضا شده را وارد می کند file
- نحو: -IV
- -کلید خصوصی (-prvk)
- توضیحات: کلید خصوصی file مسیر (پسوند pem.)
- نحو: -prvkfile_path>
- Exampدر: -prvk ../privateKey.pem
- کلید عمومی -pubk
- توضیحات: کلید عمومی file مسیرها
- نحو: -pubkFile_مسیر{1..8}>
- برای هدر v1: فقط از یک مسیر کلیدی برای محصولات STM32MP15xx استفاده کنید
- برای هدر نسخه 2 و بالاتر: از هشت مسیر کلیدی برای دیگران استفاده کنید
- – رمز عبور (-pwd)
- توضیحات: رمز عبور کلید خصوصی (این رمز عبور باید حداقل چهار کاراکتر داشته باشد)
- Exampدر: -pwd azerty
- – آدرس بار (-la)
- توضیحات: آدرس بارگذاری تصویر
- Exampدر: -لا
- – نقطه ورود (-ep)
- توضیحات: نقطه ورود تصویر
- Exampدر: -ep
- -گزینه-پرچم ها (-of)
- توضیحات: پرچم های گزینه تصویر (مقدار پیش فرض = 0)
- Exampدر: -از
- الگوریتم (-a)
- توضیحات: یکی از prime256v1 (مقدار 1، پیشفرض) یا brainpoolP256t1 (مقدار 2) را مشخص میکند.
- Exampدر: -a <2>
- خروجی (-o)
- توضیحات: خروجی file مسیر این پارامتر اختیاری است. اگر مشخص نیست، خروجی file در همان منبع تولید می شود file مسیر (برای مثالample، تصویر باینری file C:\Binary استFileبن). باینری امضا شده file C:\Binary استFile_امضا.بین.
- نحو: -oFile_مسیر>
- – نوع (-t)
- توضیحات: نوع باینری مقادیر ممکن عبارتند از ssbl، fsbl، teeh، teed، teex و copro
- نحو: -t
- – بی صدا (-s)
توضیحات: هیچ پیامی برای جایگزینی یک خروجی موجود نمایش داده نمی شود file - کمک (-h و -؟)
توضیحات: کمک نشان می دهد - -نسخه (-v)
توضیحات: نسخه ابزار را نمایش می دهد - –enc-dc (-encdc)
- توضیحات: ثابت مشتق رمزگذاری برای رمزگذاری FSBL [header v2]
- نحو: -encdc
- –enc-key (-enck)
- توضیحات: راز نصب شده file برای رمزگذاری FSBL [header v2]
- نحو: -Enck
- –سربرگ (–dump)
- توضیحات: هدر تصویر را تجزیه و تحلیل کنید
- نحو: - تخلیهFile_مسیر>
- – نسخه هدر (-hv)
- توضیحات: نسخه هدر امضا، مقادیر ممکن: 1، 2، 2.1، 2.2
- Example برای STM32MP15: -hv 2
- Example برای STM32MP25: -hv 2.2
- -بدون کلید (-nk)
- توضیحات: اضافه کردن هدر خالی بدون گزینه های کلیدی
- توجه: باید با دستور Option flags گزینه احراز هویت را غیرفعال کنید.
Examples برای STM32MP-SignTool
سابق زیرampروشهای استفاده از STM32MP-SignTool را نشان میدهد:
- Example 1
الگوریتم پیش فرض (prime256v1) انتخاب شده و مقدار پرچم گزینه 0 (مقدار پیش فرض) است. باینری خروجی امضا شده file (دودوییFile_Signed.bin) در پوشه /home/user/ ایجاد می شود - Example 2
الگوریتم BrainpoolP256t1 در این مورد انتخاب شده است. حتی اگر Folder2 و Folder3 وجود نداشته باشند، ایجاد می شوند. با دستور –s حتی اگر a file با همان نام مشخص شده وجود دارد، به طور خودکار بدون هیچ پیامی جایگزین می شود.
- Example 3
باینری را امضا کنید file با استفاده از هدر نسخه 2 که شامل هشت کلید عمومی برای جریان احراز هویت است. - Example 4
باینری را امضا کنید file با استفاده از هدر نسخه 2 که شامل هشت کلید عمومی برای احراز هویت و جریان رمزگذاری است. - Example 5
تصویر حاصل را با تجزیه خروجی بررسی کنید file و هر فیلد هدر را بررسی کنید. - Example 6
هدر را بدون امضا و بدون استقرار کلید اضافه کنید.
حالت مستقل
هنگام اجرای STM32MP-SignTool در حالت مستقل، ابتدا باید یک مسیر مطلق وارد شود. همانطور که در شکل زیر نشان داده شده است، سپس دو بار برای تایید، رمز عبور درخواست می شود.
مراحل بعدی به شرح زیر است:
- یکی از دو الگوریتم را انتخاب کنید.
- نسخه تصویر، نقطه ورود تصویر و آدرس بارگذاری تصویر را وارد کنید.
- مقدار پرچم گزینه را وارد کنید.
خروجی دیگر file در صورت نیاز می توان مسیر را مشخص کرد یا برای ادامه مسیر موجود، اینتر را فشار دهید.
راه حل PKCS#11
- تصاویر باینری امضا شده در طول دنباله راهاندازی امن STM32MP استفاده میشوند که از زنجیره راهاندازی قابل اعتماد پشتیبانی میکند. این عمل تأیید اعتبار و بررسی یکپارچگی تصاویر بارگذاری شده را تضمین می کند.
- دستور امضای کلاسیک درخواست می کند که تمام کلیدهای عمومی و خصوصی به عنوان ورودی ارائه شوند fileس اینها مستقیماً توسط هر شخصی که مجاز به اجرای سرویس امضا است قابل دسترسی است. در نهایت، این می تواند به عنوان یک نشت امنیتی در نظر گرفته شود. چندین راه حل برای محافظت از کلیدها در برابر هرگونه تلاش برای سرقت داده های کلید وجود دارد. در این زمینه، راه حل PKCS#11 اتخاذ شده است.
- API PKCS#11 را می توان برای نگهداری و نگهداری کلیدهای رمزنگاری استفاده کرد. این رابط نحوه ارتباط با دستگاه های رمزنگاری مانند HSM (ماژول های امنیتی سخت افزار) و کارت های هوشمند را مشخص می کند. هدف این دستگاه ها تولید کلیدهای رمزنگاری و امضای اطلاعات بدون افشای مواد کلید خصوصی به دنیای خارج است.
- برنامه های نرم افزاری می توانند API را فراخوانی کنند تا از این اشیاء برای موارد زیر استفاده کنند:
- کلیدهای متقارن/نامتقارن تولید کنید
- رمزگذاری و رمزگشایی
- محاسبه و تایید امضای دیجیتال
- PKCS #11 به برنامه های کاربردی یک امر معمول و منطقی ارائه می دهد view دستگاهی که توکن رمزنگاری نامیده می شود و به هر توکن یک شناسه اسلات اختصاص می دهد. یک برنامه با مشخص کردن شناسه اسلات مناسب، رمزی را که میخواهد به آن دسترسی داشته باشد، شناسایی میکند.
- STM32SigningTool برای مدیریت اشیاء کلیدی ذخیره شده در کارت های هوشمند و نشانه های امنیتی مشابه PKCS#11 استفاده می شود که در آن کلیدهای خصوصی حساس هرگز از دستگاه خارج نمی شوند.
- STM32SigningTool از رابط PKCS#11 برای دستکاری و امضای باینری های ورودی بر اساس کلیدهای عمومی/خصوصی ECDSA استفاده می کند. این کلیدها در توکن های امنیتی (سخت افزار یا نرم افزار) ذخیره می شوند.
دستورات اضافی PKCS#11
- – ماژول (-m)
- توضیحات: یک مسیر ماژول/کتابخانه PKCS#11 برای بارگیری مشخص کنید (dll، بنابراین)
- نحو:-m
- کلید-شاخص (-ki)
- کلید-شاخص (-ki)
- توضیحات: فهرست شاخص های کلیدهای استفاده شده در قالب هگز
از یک ایندکس برای هدر v1 و از هشت شاخص برای هدر v2 استفاده کنید (با فاصله از هم جدا شده اند) - نحو: -ki
- -شاخص اسلات (-si)
- توضیحات: شاخص شکاف مورد استفاده را مشخص کنید (پیشفرض 0x0)
- نحو:-si
- –active-keyIndex (-aki)
- توضیحات: شاخص واقعی کلید فعال را مشخص کنید (پیشفرض 0)
- نحو: -aki < hexValue >
PKH/PKTH file نسل
پس از پردازش عملیات امضا، ابزار به طور سیستماتیک PKH را تولید می کند files برای استفاده از after برای فیوز OTP.
- PKH file با نام pkcsHashPublicKey0x{active_key_index}.bin برای هدر v1
- PKTH file به نام pkcsPublicKeysHashHashes.bin برای هدر v2
Examples
ابزار می تواند ورودی را امضا کند files برای هر دو هدر v1 و هدر v2، با حداقل تفاوت در خط فرمان.
- هدر v1
- هدر v2
- یک خطا در خط فرمان یا ناتوانی ابزار در شناسایی اشیاء کلیدی که مطابقت دارند، باعث می شود یک پیام خطا نمایش داده شود. این نشان دهنده منبع مشکل است.
- SigningTool فقط قادر به استفاده از HSM های از پیش تنظیم شده است و برای مدیریت یا ایجاد اشیاء امنیتی جدید طراحی نشده است. بنابراین، نصب نرم افزار رایگان برای راه اندازی یک محیط مناسب ضروری است. سپس می توان کلیدها را تولید کرد و اطلاعاتی در مورد اشیاء به دست آورد.
خطای سابقampموارد:
- فهرست اسلات نامعتبر است
- شی کلید ناشناخته که در دستور –key-index ذکر شده است
این ابزار با اشیاء به صورت متوالی رفتار می کند. اگر در اولین تلاش نتواند اشیاء کلیدی منطبق را شناسایی کند، عملیات امضای فرآیند را متوقف می کند. سپس یک پیغام خطا برای نشان دادن منبع مشکل نمایش داده می شود.
تاریخچه تجدید نظر
تاریخ | نسخه | تغییرات |
14-2019 فوریه | 1 | انتشار اولیه |
26-نوامبر-2021 |
2 |
به روز شده:
• بخش 2.1: دستورات • بخش 2.2: مثالamples برای STM32MP-SignTool • اضافه شدن بخش 2.4: راه حل PKCS#11 |
27 ژوئن-2022 | 3 | به روز شده بخش 2.1: دستورات |
26 ژوئن-2024 |
4 |
در کل سند جایگزین شده است:
• سری STM32MP1 توسط سری STM32MPx • STM32MP1-SignTool توسط STM32MP-SignTool • STM32MP1-KeyGen توسط STM32MP-KeyGen -public-key -pubk و نسخه header-version (-hv) و -no-keys (-nk) در بخش 2.1: دستورات اضافه شده است. "مثال 6" در بخش 2.2 اضافه شد: مثالamples برای STM32MP-SignTool. |
اطلاعیه مهم - با دقت بخوانید
- STMicroelectronics NV و شرکتهای تابعه آن ("ST") این حق را برای خود محفوظ میدارند که در هر زمان بدون اطلاع قبلی، تغییرات، اصلاحات، بهبودها، اصلاحات و بهبودهایی را در محصولات ST و/یا این سند ایجاد کنند. خریداران باید آخرین اطلاعات مربوط به محصولات ST را قبل از ثبت سفارش به دست آورند. محصولات ST مطابق با شرایط و ضوابط فروش ST در زمان تایید سفارش فروخته می شوند.
- خریدار تنها مسئول انتخاب، انتخاب و استفاده از محصولات ST است و ST هیچ مسئولیتی در قبال کمک برنامه یا طراحی محصولات خریداران نمی پذیرد.
- هیچ مجوز صریح یا ضمنی برای هیچ گونه حق مالکیت معنوی توسط ST در اینجا اعطا نمی شود.
- فروش مجدد محصولات ST با مقرراتی متفاوت از اطلاعات مندرج در اینجا هرگونه ضمانت اعطا شده توسط ST برای چنین محصولی را باطل می کند.
- ST و آرم ST علائم تجاری ST هستند. برای اطلاعات بیشتر در مورد علائم تجاری ST، به www.st.com/trademarks مراجعه کنید. سایر نام های محصول یا خدمات متعلق به صاحبان مربوطه می باشد.
- اطلاعات این سند جایگزین اطلاعاتی می شود که قبلاً در هر نسخه قبلی این سند ارائه شده است.
© 2024 STMicroelectronics – کلیه حقوق محفوظ است
اسناد / منابع
![]() |
نرم افزار ابزار امضای سری ST STM32MPx [pdf] دفترچه راهنمای کاربر نرم افزار ابزار امضای سری STM32MPx، سری STM32MPx، نرم افزار ابزار امضا، نرم افزار ابزار، نرم افزار |