ST Microelectronics STM32 parakstīšanas rīka programmatūra

Ievads
STM32 parakstīšanas rīka programmatūra (šajā dokumentā nosaukta STM32-SignTool) ir integrēta STM32CubeProgrammer (STM32CubeProg). STM32-SignTool ir galvenais rīks, kas garantē drošu platformu un nodrošina bināro attēlu parakstīšanu, izmantojot STM32-KeyGen programmatūras ģenerētas ECC atslēgas (sīkāku informāciju skatiet lietotāja rokasgrāmatā STM32 atslēgu ģeneratora programmatūras aprakstu (UM2542). Parakstītie binārie attēli tiek izmantoti STM32 drošās sāknēšanas secībā, kas atbalsta uzticamu sāknēšanas ķēdi. Šī darbība nodrošina ielādēto attēlu autentifikāciju un integritātes pārbaudi. STM32-SignTool ģenerē bināru attēlu file, publiskā atslēga fileun privāto atslēgu file. Binārais attēls file satur bināros datus, kas jāieprogrammē ierīcei. Publiskā atslēga file satur ECC publisko atslēgu PEM formātā, kas ģenerēta ar STM32-KeyGen. Privātā atslēga file satur šifrētu ECC privāto atslēgu PEM formātā, kas ģenerēta ar STM32-KeyGen. Parakstīts binārs file var ģenerēt arī no jau parakstīta file ar partiju file režīmā. Šajā gadījumā šādi parametri nav obligāti: attēla ievades punkts, attēla ielādes adrese un attēla versijas parametri. Šis dokuments attiecas uz produktiem, kas uzskaitīti zemāk esošajā tabulā.
1. tabula. Piemērojamie produkti
| Produkta veids | Daļas numurs vai produktu sērija |
| Microcontroller | STM32N6 sērija |
| Mikroprocesors | STM32MP1 un STM32MP2 sērija |
Turpmākajās sadaļās STM32 attiecas uz iepriekš tabulā norādītajiem produktiem, ja vien nav norādīts citādi.
Instalējiet STM32-SignTool
Šis rīks ir instalēts kopā ar STM32CubeProgrammer pakotni (STM32CubeProg). Papildinformāciju par iestatīšanas procedūru skatiet lietotāja rokasgrāmatas STM1.2CubeProgrammer programmatūras apraksta (UM32) sadaļā 2237. Šī programmatūra atbalsta STM32 produktus, kuru pamatā ir Arm® Cortex® procesors.
Piezīme. Arm ir Arm Limited (vai tā meitasuzņēmumu) reģistrēta preču zīme ASV un/vai citur.
STM32-SignTool komandrindas interfeiss
Nākamajās sadaļās ir aprakstīts, kā komandrindā izmantot STM32-SignTool.
Komandas
Pieejamās komandas ir uzskaitītas zemāk:
- –binārais attēls(-bin), –input(-in)
- Apraksts: binārs attēls file ceļš (.bin paplašinājums)
- Sintakse: 1 -bin /home/User/binaryFile.bin
- Sintakse: 2 -in /home/User/binaryFile.bin
- -attēla versija (-iv)
- Apraksts: ievada parakstītā attēla attēla versiju file
- Sintakse: -iv
- -privātā atslēga (-prvk)
- Apraksts: privātā atslēga file ceļš (.pem paplašinājums)
- Sintakse: -prvkfile_ceļš>
- Example: -prvk ../privateKey.pem
- -publiskā atslēga -pubk
- Apraksts: publiskā atslēga file ceļi
- Sintakse: -pubkFile_Ceļš{1..8}>
- Galvenes v1: izmantojiet tikai vienu atslēgas ceļu STM32MP15xx produktiem
- Galvenes v2 un jaunākām versijām: citiem izmantojiet astoņus galvenos ceļus
- - parole (-pwd)
- Apraksts: privātās atslēgas parole (šajā parolē jābūt vismaz četrām rakstzīmēm)
- Example: -pwd azerty
- • –slodzes adrese (-la)
- Apraksts: attēla ielādes adrese
- Example: -la
- -ieejas punkts (-ep)
- Apraksts: attēla ievades punkts
- Example: -ep
- -opciju karogi (-of)
- Apraksts: attēla opciju karodziņi (noklusējuma vērtība = 0)
- Example: -of
- -algoritms (-a)
- Apraksts: norāda vienu no prime256v1 (vērtība 1, noklusējuma vērtība) vai brainpoolP256t1 (vērtība 2)
- Example: -a <2>
- -izvade (-o)
- Apraksts: izvade file ceļš. Šis parametrs nav obligāts. Ja nav norādīts, izvade file tiek ģenerēts tajā pašā avotā file ceļš (piemēram,ample, binārais attēls file ir C:\BinārsFile.bin). Parakstīts binārs file ir C:\BinārsFile_Signed.bin.
- Sintakse: -oFile_Ceļš>
- -tips (-t)
- Apraksts: binārais tips. Iespējamās vērtības ir ssbl, fsbl, teeh, teed, teex un copro
- Sintakse: -t
- – kluss (-s)
- Apraksts: netiek parādīts ziņojums par esošās izvades aizstāšanu file
- -palīdzība (-h un -?)
- Apraksts: parāda palīdzību
- – versija (-v)
- Apraksts: parāda rīka versiju
- –enc-dc (-encdc)
- Apraksts: šifrēšanas atvasināšanas konstante FSBL šifrēšanai [header v2]
- Sintakse: -encdc
- -enc-taustiņš (-enck)
- Apraksts: OEM noslēpums file FSBL šifrēšanai [header v2]
- Sintakse: -enck
- – izgāztuves virsraksts (–dump)
- Apraksts: parsēt un izmest attēla galveni
- Sintakse: -dumpFile_Ceļš>
- -galvenes versija (-hv)
- Apraksts: parakstīšanas galvenes versija, iespējamās vērtības: 1, 2, 2.1, 2.2 un 2.3
- Example STM32MP15xx: -hv 2
- Example STM32MP25xx: -hv 2.2
- Example STM32N6xxx: -hv 2.3
- – nav taustiņu (-nk)
- Apraksts: tukšas galvenes pievienošana bez atslēgu opcijām
- Piezīme: ir jāatspējo autentifikācijas opcija ar komandu opciju karodziņi
Examples par STM32-SignTool
Nākamais exampparāda, kā izmantot STM32-SignTool:
Examp1
-bin /home/User/BinaryFile.bin –pubk /home/user/publicKey.pem –prvk /home/user/privateKey.pem –iv 5 –pwd azerty –la 0x20000000 –ep 0x08000000 Tiek atlasīts noklusējuma algoritms (prime256v1) un tiek atlasīta 0 opcijas karogafault vērtība. Parakstīts izvades binārs file (BinārsFile_Signed.bin) tiek izveidots mapē /home/user/
Examp2
-bin /home/User/Folder1/BinaryFile.bin –pubk /home/user/publicKey.pem –prvk /home/user/privateKey.pem –iv 5 –pwd azerty –s –la 0x20000000 –ep 0x08000000 –a 2 –o /home/user/Folder2/sign3/FolFile.bin Šajā gadījumā ir atlasīts BrainpoolP256t1 algoritms. Pat ja mape2 un mape3 neeksistē, tās tiek izveidotas. Ar komandu –s, pat ja a file pastāv ar tādu pašu norādīto nosaukumu, tas tiek automātiski aizstāts bez ziņojuma.
Examp3
Parakstiet bināru file izmantojot galvenes versiju 2, kas ietver astoņas publiskās atslēgas autentifikācijas plūsmai.
./STM32_SigningTool_CLI.exe -bin /home/user/input.bin -pubk publicKey00.pem publicKey01.pem publicKey02.pem publicKey03.pem publicKey04.pem publicKey05.pem publicKey06.pem - privateKeyprwd.kpem. azerty -t fsbl -iv 07x00 -la 0x00000000 -ep 0x20000000 -of 0x08000000 -o /home/user/output.stm0
Examp4
Parakstiet bināru file izmantojot galvenes versiju 2, kas ietver astoņas publiskās atslēgas autentifikācijai un šifrēšanas plūsmu.
./STM32_SigningTool_CLI.exe -bin /home/user/input.bin -pubk publicKey00.pem publicKey01.pem publicKey02.pem publicKey03.pem publicKey04.pem publicKey05.pem publicKey06.pem - privateKeyprv.kpem - publicKeyprv.kpem 07x00 -pwd azerty -la 0x00000000 -ep 0x20000000 -t fsbl -of 0x08000000 -encdc 0x00000003f0e -enck /home/user/OEM_SECRET/stmo/outhoput.stm
Examp5
Pārbaudiet iegūto attēlu, parsējot izvadi file un pārbaudiet katru galvenes lauku. ./STM32_SigningTool_CLI.exe -dump /home/user/output.stm32
Examp6
Pievienojiet galveni bez paraksta un bez atslēgu izvietošanas. STM32_SigningTool_CLI.exe -in input.bin -nk -of 0x0 -iv 1 -hv 2.2 -o output.stm32
Savrupais režīms
Palaižot STM32-SignTool savrupajā režīmā, vispirms jāievada absolūtais ceļš. Pēc tam apstiprināšanai divreiz tiek pieprasīta parole, kā parādīts attēlā zemāk.
1. attēls. STM32-SignTool savrupajā režīmā

Nākamās darbības ir šādas:
- Izvēlieties vienu no diviem algoritmiem.
- Ievadiet attēla versiju, attēla ievades punktu un attēla ielādes adresi.
- Ievadiet opcijas karoga vērtību.
Vēl viena izeja file ceļu var norādīt, ja nepieciešams, vai nospiediet taustiņu Enter, lai turpinātu ar esošo.
PKCS#11 risinājums
Parakstītie binārie attēli tiek izmantoti STM32 drošās sāknēšanas secībā, kas atbalsta uzticamu sāknēšanas ķēdi.
Šī darbība nodrošina ielādēto attēlu autentifikāciju un integritātes pārbaudi.
Klasiskā parakstīšanas komanda pieprasa kā ievadi nodrošināt visas publiskās un privātās atslēgas files. Šīs ir
ir tieši pieejama jebkurai personai, kurai ir atļauts veikt parakstīšanas pakalpojumu. Galu galā to var apsvērt
būt drošības noplūde. Ir vairāki risinājumi, kā aizsargāt atslēgas pret jebkādiem mēģinājumiem nozagt atslēgas datus. Šajā
kontekstā ir pieņemts PKCS#11 risinājums.
PKCS#11 API var izmantot, lai apstrādātu un uzglabātu kriptogrāfiskās atslēgas. Šajā saskarnē ir norādīts, kā
sazināties ar kriptogrāfijas ierīcēm, piemēram, HSM (aparatūras drošības moduļiem) un viedkartēm. The
Šo ierīču mērķis ir ģenerēt kriptogrāfiskās atslēgas un parakstīt informāciju, neatklājot privāto atslēgu
materiāls ārpasaulei.
Programmatūras lietojumprogrammas var izsaukt API, lai izmantotu šos objektus:
• Izveidojiet simetriskas/asimetriskas atslēgas
• Šifrēšana un atšifrēšana
• Digitālā paraksta aprēķināšana un pārbaude
PKCS #11 piedāvā lietojumprogrammām kopīgu, loģisku view ierīces, ko sauc par kriptogrāfisko marķieri, un tā
katram marķierim piešķir slota ID. Lietojumprogramma identificē marķieri, kuram tā vēlas piekļūt, norādot
atbilstošo slota ID.
STM32SigningTool tiek izmantots, lai pārvaldītu viedkartēs saglabātos galvenos objektus un līdzīgu PKCS#11 drošību.
marķieri, kur sensitīvas privātās atslēgas nekad neatstāj ierīci.
STM32SigningTool izmanto saskarni PKCS#11, lai manipulētu un parakstītu ievades bināros failus, kuru pamatā ir ECDSA
publiskās/privātās atslēgas. Šīs atslēgas tiek glabātas drošības marķieros (aparatūrā vai programmatūrā).
Papildu PKCS#11 komandas
- – modulis (-m)
- Apraksts: norādiet ielādējamā PKCS#11 moduļa/bibliotēkas ceļu (dll, tātad)
- Sintakse: -m
- • –atslēgas indekss (-ki)
- -atslēgas indekss (-ki)
- Apraksts: izmantoto atslēgu indeksu saraksts hex formātā
- Izmantojiet vienu indeksu galvenei v1 un astoņus indeksus galvenei v2 (atdalot ar atstarpi)
- Sintakse: -ki
- Apraksts: izmantoto atslēgu indeksu saraksts hex formātā
- – slota indekss (-si)
- Apraksts: norādiet izmantojamā slota indeksu (noklusējums 0x0)
- Sintakse: -si
- – slots – identifikators (-sid)
- Apraksts: norādiet izmantojamā slota identifikatoru (neobligāti, decimālā vai heksadecimālā formātā)
- Sintakse:-sid
- Ja opcija –slot-identifier tiek izmantota vienlaikus ar –slot-index, rīks pārbauda, vai šī konfigurācija atbilst tam pašam slotam. Identifikators atspoguļo indeksu, kas tika minēts; pretējā gadījumā rodas kļūda.
- Ir iespējams izmantot –slot-identifier, neminot –slot-index. Rīki sistemātiski meklē slotu indeksu.
- –active-keyIndex (-aki)
- Apraksts: norādiet faktisko aktīvās atslēgas indeksu (noklusējuma 0)
- Sintakse: -aki < hexValue >
PKH/PKTH file paaudzei
Pēc parakstīšanas darbības apstrādes rīks sistemātiski ģenerē PKH files izmantot pēc OTP drošinātāja.
- PKH file ar nosaukumu pkcsHashPublicKey0x{active_key_index}.bin galvenei v1
- PKTH file ar nosaukumu pkcsPublicKeysHashHashes.bin galvenei v2
Examples
Rīks var parakstīt ievadi files gan galvenei v1, gan galvenei v2, ar minimālu atšķirību komandrindā.
- Galvenes v1
-bin ievade.bin -iv -pwd -la -ep -t -no –
-atslēgas indekss -aki 0 -modulis – slota indekss -o izvade.stm32 - Galvenes v2
-bin ievade.bin -iv -pwd -la -ep -t -no – -atslēgas indekss -aki - modulis – slota indekss -o izvade.stm0
Kļūda komandrindā vai rīka nespēja identificēt atbilstošos galvenos objektus izraisa kļūdas ziņojuma rādīšanu. Tas norāda problēmas avotu. SigningTool var izmantot tikai iepriekš konfigurētus HSM, un tas nav paredzēts jaunu drošības objektu pārvaldībai vai izveidei. Tāpēc ir nepieciešams instalēt bezmaksas programmatūru, lai iestatītu piemērotu vidi. Pēc tam var ģenerēt atslēgas un iegūt informāciju par objektiem.
Slota identifikatora opcija:
- -bin input.bin –tips fsbl -hv 1 –atslēgas indekss 0x40 -aki 0 –modulis softhsm2.dll –parole prg-dev -ep 0x2ffe4000 -s -si 0 -sid 0x51a53ad8 -la 0x2ffc2500 -iv 0 -0 no 80000000xm32.
Kļūda, piemampmazāk:
- Nederīgs slota indekss
2. attēls. HSM TOKEN_NOT_RECOGNIZED
Nezināms atslēgas objekts, kas minēts komandā –key-index
3. attēls. HSM OBJECT_HANDLE_INVALID
Rīks apstrādā objektus secīgi. Ja tā nevar identificēt atbilstošos atslēgas objektus pirmajā mēģinājumā, parakstīšanas darbība aptur procesu. Pēc tam tiek parādīts kļūdas ziņojums, kas norāda problēmas avotu.
Pārskatīšanas vēsture
2. tabula. Dokumentu pārskatīšanas vēsture
| Datums | Versija | Izmaiņas |
| 14. gada 2019. februāris | 1 | Sākotnējā izlaišana. |
|
26. gada 2021. novembris |
2 |
Atjaunināts:
• 2.1. sadaļa: komandas • 2.2. sadaļa: Piemamples par STM32-SignTool • Pievienota 2.4. sadaļa: PKCS#11 risinājums |
| 27-jūnijs-2022 | 3 | Atjaunināta 2.1. sadaļa: komandas |
|
26-jūnijs-2024 |
4 |
Aizstāts visā dokumentā:
• STM32MP1 sērija pēc STM32MPx sērijas • STM32MP1-SignTool no STM32MP-SignTool • STM32MP1-KeyGen no STM32MP-KeyGen Atjaunināts -publiskās atslēgas -pubk un pievienots -header-version (-hv) un -no-keys (- nk) sadaļā 2.1: Komandas. Pievienots “Piemample 6” 2.2. sadaļā: Piemamples par STM32-SignTool. |
|
14. gada 2024. novembris |
5 |
Pievienots:
• STM32N6 sērija piemērojamiem produktiem Aizstāts visā dokumentā: • STM32MP ar STM32 Atjaunināts: • 2.1. sadaļa: komandas |
|
06. gada 2025. marts |
6 |
Atjaunināts:
• 2.4.1. sadaļa: PKCS#11 papildu komandas • 2.4.3. sadaļa: Piemamples |
SVARĪGS PAZIŅOJUMS – UZMANĪGI IZLASIET
STMicroelectronics NV un tā meitasuzņēmumi (“ST”) patur tiesības jebkurā laikā bez brīdinājuma veikt izmaiņas, labojumus, uzlabojumus, modifikācijas un uzlabojumus ST izstrādājumos un/vai šajā dokumentā. Pirms pasūtījuma veikšanas pircējiem jāiegūst jaunākā atbilstošā informācija par ST produktiem. ST produkti tiek pārdoti saskaņā ar ST pārdošanas noteikumiem un nosacījumiem, kas ir spēkā pasūtījuma apstiprināšanas brīdī. Pircēji ir pilnībā atbildīgi par ST produktu izvēli, izvēli un lietošanu, un ST neuzņemas nekādu atbildību par palīdzību pielietošanā vai pircēja produktu dizainu. ST šeit nepiešķir nekādas tiešas vai netiešas licences jebkādām intelektuālā īpašuma tiesībām. ST produktu tālākpārdošana ar noteikumiem, kas atšķiras no šeit norādītās informācijas, anulē jebkādu ST piešķirto garantiju šādam produktam. ST un ST logotips ir ST preču zīmes. Papildinformāciju par ST preču zīmēm skatiet vietnē www.st.com/trademarks. Visi pārējie produktu vai pakalpojumu nosaukumi ir to attiecīgo īpašnieku īpašums. Informācija šajā dokumentā aizstāj un aizstāj informāciju, kas iepriekš sniegta jebkurās iepriekšējās šī dokumenta versijās.
© 2025 STMicroelectronics – visas tiesības paturētas
FAQ
- J: Ko darīt, ja, izmantojot STM32-SignTool, rodas kļūdas?
- A: Pārbaudiet komandas sintaksi, pārliecinieties, ka visi nepieciešamie parametri ir norādīti pareizi, un skatiet lietotāja rokasgrāmatu, lai iegūtu padomus par problēmu novēršanu.
- J: Vai es varu izmantot STM32-SignTool dažādās operētājsistēmās?
- A: STM32-SignTool ir paredzēts darbam noteiktās operētājsistēmās. Sīkāku informāciju par saderību skatiet programmatūras specifikācijās.
Dokumenti / Resursi
![]() |
ST Microelectronics STM32 parakstīšanas rīka programmatūra [pdfLietotāja rokasgrāmata STM32N6 sērija, STM32MP1, STM32MP2 sērija, STM32 parakstīšanas rīka programmatūra, STM32, parakstīšanas rīka programmatūra, rīku programmatūra, programmatūra |

