Intel Agilex 7-toestelsekuriteit
Produk inligting
Spesifikasies
- Modelnommer: UG-20335
- Vrystellingsdatum: 2023.05.23
Produkgebruiksinstruksies
1. Verbintenis tot produksekuriteit
Intel is verbind tot produksekuriteit en beveel gebruikers aan om hulself te vergewis van die produksekuriteitshulpbronne wat verskaf word. Hierdie hulpbronne moet regdeur die leeftyd van die Intel-produk gebruik word.
2. Beplande sekuriteitskenmerke
Die volgende sekuriteitskenmerke word beplan vir 'n toekomstige vrystelling van Intel Quartus Prime Pro Edition-sagteware:
- Gedeeltelike herkonfigurasie bitstroomsekuriteitsverifikasie: Verskaf bykomende versekering dat gedeeltelike herkonfigurasie (PR) bitstrome nie toegang tot ander PR-persona-bitstrome kan verkry of daarmee inmeng nie.
- Toestel Selfmoord vir Fisiese Anti-Tamper: Voer 'n toesteluitvee of toestelnuleringsreaksie uit en programmeer eFuses om te verhoed dat die toestel weer konfigureer.
3. Beskikbare sekuriteitsdokumentasie
Die volgende tabel lys die beskikbare dokumentasie vir toestelsekuriteitskenmerke op Intel FPGA en Structured ASIC-toestelle:
Dokument Naam | Doel |
---|---|
Sekuriteitsmetodologie vir Intel FPGA's en gestruktureerde ASIC's-gebruiker Gids |
Topvlak dokument wat gedetailleerde beskrywings van sekuriteitskenmerke en -tegnologie in Intel Programmeerbare Oplossings Produkte. Help gebruikers om die nodige sekuriteitskenmerke te kies om hul sekuriteitsdoelwitte bereik. |
Intel Stratix 10 Device Security Gebruikersgids | Instruksies vir gebruikers van Intel Stratix 10-toestelle om te implementeer die sekuriteitskenmerke wat met behulp van die Sekuriteitsmetodologie geïdentifiseer is Gebruikersgids. |
Intel Agilex 7 Device Security Gebruikersgids | Instruksies vir gebruikers van Intel Agilex 7-toestelle om te implementeer die sekuriteitskenmerke wat met behulp van die Sekuriteitsmetodologie geïdentifiseer is Gebruikersgids. |
Intel eASIC N5X Device Security Gebruikersgids | Instruksies vir gebruikers van Intel eASIC N5X-toestelle om te implementeer die sekuriteitskenmerke wat met behulp van die Sekuriteitsmetodologie geïdentifiseer is Gebruikersgids. |
Intel Agilex 7 en Intel eASIC N5X HPS Cryptographic Services Gebruikersgids |
Inligting vir HPS sagteware-ingenieurs oor die implementering en gebruik van HPS-sagtewarebiblioteke om toegang tot kriptografiese dienste te verkry verskaf deur die SDM. |
AN-968 Black Key Voorsieningsdiens Vinnige Begingids | Voltooi stel stappe om die Black Key-voorsiening op te stel diens. |
Gereelde Vrae
V: Wat is die doel van die Gebruikersgids vir Sekuriteitsmetodologie?
A: Die Sekuriteitsmetodologie-gebruikersgids verskaf gedetailleerde beskrywings van sekuriteitskenmerke en -tegnologieë in Intel Programmeerbare Oplossings-produkte. Dit help gebruikers om die nodige sekuriteitskenmerke te kies om hul sekuriteitsdoelwitte te bereik.
V: Waar kan ek die Intel Agilex 7 Device Security Gebruikersgids vind?
A: Die Intel Agilex 7 Device Security Gebruikersgids kan gevind word op die Intel Resource and Design Center webwebwerf.
V: Wat is die Black Key-voorsieningdiens?
A: Die Black Key-voorsieningdiens is 'n diens wat 'n volledige stel stappe verskaf om sleutelvoorsiening vir veilige bedrywighede op te stel.
Intel Agilex® 7 Device Security Gebruikersgids
Opgedateer vir Intel® Quartus® Prime Design Suite: 23.1
Aanlyn weergawe Stuur terugvoer
UG-20335
683823 2023.05.23
Intel Agilex® 7 Device Security Gebruikersgids 2
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 3
683823 | 2023.05.23 Stuur terugvoer
1. Intel Agilex® 7
Toestelsekuriteit verbyview
Intel® ontwerp die Intel Agilex® 7-toestelle met toegewyde, hoogs konfigureerbare sekuriteitshardeware en -firmware.
Hierdie dokument bevat instruksies om jou te help om Intel Quartus® Prime Pro Edition-sagteware te gebruik om sekuriteitskenmerke op jou Intel Agilex 7-toestelle te implementeer.
Boonop is die Sekuriteitsmetodologie vir Intel FPGA's en Gestruktureerde ASIC's Gebruikersgids beskikbaar op die Intel Resource & Design Center. Hierdie dokument bevat gedetailleerde beskrywings van die sekuriteitskenmerke en -tegnologie wat deur Intel Programmable Solutions-produkte beskikbaar is om jou te help om die sekuriteitskenmerke te kies wat nodig is om jou sekuriteitsdoelwitte te bereik. Kontak Intel Ondersteuning met verwysingsnommer 14014613136 om toegang te verkry tot die Sekuriteitsmetodologie vir Intel FPGA's en gestruktureerde ASIC's Gebruikersgids.
Die dokument is soos volg georganiseer: · Verifikasie en magtiging: Verskaf instruksies om te skep
stawingsleutels en handtekeningkettings, pas toestemmings en herroepings toe, teken voorwerpe en programverifikasiekenmerke op Intel Agilex 7-toestelle. · AES Bitstream Encryption: Verskaf instruksies om 'n AES-wortelsleutel te skep, konfigurasie-bitstrome te enkripteer en die AES-wortelsleutel aan Intel Agilex 7-toestelle te voorsien. · Toestelvoorsiening: Verskaf instruksies om die Intel Quartus Prime Programmeerder en Secure Device Manager (SDM) voorsiening-firmware te gebruik om sekuriteitskenmerke op Intel Agilex 7-toestelle te programmeer. · Gevorderde kenmerke: Verskaf instruksies om gevorderde sekuriteitskenmerke te aktiveer, insluitend veilige ontfoutmagtiging, harde verwerkerstelsel (HPS) ontfouting, en afgeleë stelselopdatering.
1.1. Verbintenis tot produksekuriteit
Intel se langdurige verbintenis tot sekuriteit was nog nooit sterker nie. Intel beveel sterk aan dat jy vertroud raak met ons produksekuriteitshulpbronne en beplan om dit regdeur die leeftyd van jou Intel-produk te gebruik.
Verwante inligting · Produksekuriteit by Intel · Intel Product Security Centre Advisories
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
1. Intel Agilex® 7-toestelsekuriteit verbyview 683823 | 2023.05.23
1.2. Beplande sekuriteitskenmerke
Kenmerke wat in hierdie afdeling genoem word, word beplan vir 'n toekomstige vrystelling van Intel Quartus Prime Pro Edition-sagteware.
Let wel:
Die inligting in hierdie afdeling is voorlopig.
1.2.1. Gedeeltelike herkonfigurasie Bitstroomsekuriteitsverifikasie
Bevestiging van gedeeltelike herkonfigurasie (PR) bitstroomsekuriteit help om bykomende versekering te bied dat PR-persona-bitstrome nie toegang tot ander PR-persona-bitstrome kan verkry of daarmee inmeng nie.
1.2.2. Toestel Selfmoord vir Fisiese Anti-Tamper
Toestel-selfdoding voer 'n toestel-uitvee of toestelnulstellingsreaksie uit en programmeer ook eFuses om te verhoed dat die toestel weer konfigureer.
1.3. Beskikbare sekuriteitsdokumentasie
Die volgende tabel som die beskikbare dokumentasie vir toestelsekuriteitskenmerke op Intel FPGA en Structured ASIC-toestelle op:
Tabel 1.
Beskikbare toestelsekuriteitsdokumentasie
Dokument Naam
Sekuriteitsmetodologie vir Intel FPGA's en gestruktureerde ASIC's Gebruikersgids
Doel
Topvlakdokument wat gedetailleerde beskrywings van sekuriteitskenmerke en -tegnologie in Intel Programmeerbare Oplossings-produkte bevat. Bedoel om jou te help om die sekuriteitskenmerke te kies wat nodig is om jou sekuriteitsdoelwitte te bereik.
Dokument ID 721596
Intel Stratix 10 Device Security Gebruikersgids
Intel Agilex 7 Device Security Gebruikersgids
Vir gebruikers van Intel Stratix 10-toestelle, bevat hierdie gids instruksies om Intel Quartus Prime Pro Edition-sagteware te gebruik om die sekuriteitskenmerke te implementeer wat met die Sekuriteitsmetodologie-gebruikersgids geïdentifiseer is.
Vir gebruikers van Intel Agilex 7-toestelle, bevat hierdie gids instruksies om Intel Quartus Prime Pro Edition-sagteware te gebruik om die sekuriteitskenmerke te implementeer wat met die Sekuriteitsmetodologiegebruikersgids geïdentifiseer is.
683642 683823
Intel eASIC N5X Device Security Gebruikersgids
Vir gebruikers van Intel eASIC N5X-toestelle, bevat hierdie gids instruksies om Intel Quartus Prime Pro Edition-sagteware te gebruik om die sekuriteitskenmerke te implementeer wat met die Sekuriteitsmetodologiegebruikersgids geïdentifiseer is.
626836
Intel Agilex 7 en Intel eASIC N5X HPS Cryptographic Services Gebruikersgids
Hierdie gids bevat inligting om HPS-sagteware-ingenieurs te help met die implementering en gebruik van HPS-sagtewarebiblioteke om toegang te verkry tot kriptografiese dienste wat deur die SDM verskaf word.
713026
AN-968 Black Key Voorsieningsdiens Vinnige Begingids
Hierdie gids bevat volledige stel stappe om die Black Key Provisioning-diens op te stel.
739071
Ligging Intel Resource en
Ontwerpsentrum
Intel.com
Intel.com
Intel Hulpbron- en Ontwerpsentrum
Intel Hulpbron- en Ontwerpsentrum
Intel Hulpbron- en Ontwerpsentrum
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 5
683823 | 2023.05.23 Stuur terugvoer
Om die verifikasiekenmerke van 'n Intel Agilex 7-toestel te aktiveer, begin jy deur die Intel Quartus Prime Pro Edition-sagteware en gepaardgaande gereedskap te gebruik om 'n handtekeningketting te bou. 'n Handtekeningketting bestaan uit 'n wortelsleutel, een of meer ondertekeningsleutels en toepaslike magtigings. Jy pas die handtekeningketting toe op jou Intel Quartus Prime Pro Edition-projek en saamgestelde programmering files. Gebruik die instruksies in Toestelvoorsiening om jou wortelsleutel in Intel Agilex 7-toestelle te programmeer.
Verwante inligting
Toestelvoorsiening op bladsy 25
2.1. Skep 'n handtekeningketting
Jy kan die quartus_sign-nutsding of die agilex_sign.py-verwysingsimplementering gebruik om handtekeningkettingbewerkings uit te voer. Hierdie dokument verskaf bvamples met behulp van quartus_sign.
Om die verwysingsimplementering te gebruik, vervang jy 'n oproep na die Python-tolk wat by Intel Quartus Prime-sagteware ingesluit is en laat die –family=agilex-opsie weg; alle ander opsies is gelykstaande. Byvoorbeeldample, die quartus_sign-opdrag wat later in hierdie afdeling gevind word
quartus_sign –family=agilex –operation=make_root root_public.pem root.qky kan omgeskakel word in die ekwivalente oproep na die verwysingsimplementering soos volg
pgm_py agilex_sign.py –operation=make_root root_public.pem root.qky
Intel Quartus Prime Pro Edition-sagteware sluit die quartus_sign-, pgm_py- en agilex_sign.py-nutsgoed in. U kan die Nios® II-opdragdop-instrument gebruik, wat outomaties toepaslike omgewingsveranderlikes stel om toegang tot die gereedskap te verkry.
Volg hierdie instruksies om 'n Nios II-opdragdop op te roep. 1. Bring 'n Nios II-opdragdop op.
Opsie Windows
Linux
Beskrywing
Op die Start-kieslys, wys na Programme Intel FPGA Nios II EDS en klik Nios II Command Shell.
In 'n opdragdop verander na die /nios2eds en voer die volgende opdrag uit:
./nios2_command_shell.sh
Die eksamples in hierdie afdeling aanvaar handtekeningketting en konfigurasiebitstroom files is geleë in die huidige werkgids. As jy kies om die examples waar sleutel files word op die gehou file stelsel, dié eksamples neem die sleutel aan files is
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
2. Stawing en magtiging 683823 | 2023.05.23
geleë in die huidige werkgids. Jy kan kies watter gidse om te gebruik, en die gereedskap ondersteun relatief file paaie. As jy kies om sleutel te hou files op die file stelsel, moet u toegangstoestemmings daarvoor sorgvuldig bestuur files.
Intel beveel aan dat 'n kommersieel beskikbare Hardware Security Module (HSM) gebruik word om kriptografiese sleutels te stoor en kriptografiese bewerkings uit te voer. Die quartus_sign-instrument en verwysingsimplementering sluit 'n Publieke Sleutel Cryptography Standard #11 (PKCS #11) Application Programming Interface (API) in om met 'n HSM te kommunikeer terwyl handtekeningkettingbewerkings uitgevoer word. Die agilex_sign.py verwysingsimplementering sluit 'n koppelvlak-abstrak sowel as 'n example koppelvlak na SoftHSM.
Jy kan hierdie bvample-koppelvlakke om 'n koppelvlak na jou HSM te implementeer. Verwys na die dokumentasie van jou HSM-verskaffer vir meer inligting oor die implementering van 'n koppelvlak na en die werking van jou HSM.
SoftHSM is 'n sagteware-implementering van 'n generiese kriptografiese toestel met 'n PKCS #11-koppelvlak wat deur die OpenDNSSEC®-projek beskikbaar gestel word. Jy kan dalk meer inligting vind, insluitend instruksies oor hoe om OpenHSM af te laai, te bou en te installeer, by die OpenDNSSEC-projek. Die eksampLese in hierdie afdeling gebruik SoftHSM weergawe 2.6.1. Die eksampLese in hierdie afdeling gebruik ook die pkcs11-tool-nutsding van OpenSC om bykomende PKCS #11-bewerkings met 'n SoftHSM-token uit te voer. Jy kan dalk meer inligting vind, insluitend instruksies oor hoe om pkcs11tool van OpenSC af te laai, te bou en te installeer.
Verwante inligting
· Die OpenDNSSEC-projek Beleidsgebaseerde sone-ondertekenaar vir die outomatisering van die proses van DNSSEC-sleutelopsporing.
· SoftHSM Inligting oor die implementering van 'n kriptografiese winkel wat toeganklik is deur 'n PKCS #11-koppelvlak.
· OpenSC Verskaf 'n stel biblioteke en nutsprogramme wat met slimkaarte kan werk.
2.1.1. Skep stawingsleutelpare op die plaaslike File Stelsel
Jy gebruik die quartus_sign-nutsding om verifikasiesleutelpare op die plaaslike te skep file stelsel met behulp van die make_private_pem en make_public_pem nutsding bedrywighede. Jy genereer eers 'n private sleutel met die make_private_pem-bewerking. Jy spesifiseer die elliptiese kurwe om te gebruik, die private sleutel filenaam, en opsioneel of die private sleutel met 'n wagwoordfrase beskerm moet word. Intel beveel die gebruik van die secp384r1-kromme aan en die volgende industrie se beste praktyke om 'n sterk, ewekansige wagwoordfrase op alle private sleutels te skep files. Intel beveel ook aan om die file stelseltoestemmings op die private sleutel .pem files om slegs deur eienaar te lees. Jy kry die publieke sleutel van die private sleutel met die make_public_pem-bewerking. Dit is nuttig om die sleutel .pem te noem files beskrywend. Hierdie dokument gebruik die konvensie _ .pem in die volgende examples.
1. In die Nios II-opdragdop, voer die volgende opdrag uit om 'n private sleutel te skep. Die private sleutel, wat hieronder getoon word, word as die wortelsleutel in latere bvamples wat 'n handtekeningketting skep. Intel Agilex 7-toestelle ondersteun veelvuldige wortelsleutels, sodat jy
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 7
2. Stawing en magtiging 683823 | 2023.05.23
herhaal hierdie stap om jou vereiste aantal wortelsleutels te skep. BvampLese in hierdie dokument verwys almal na die eerste wortelsleutel, alhoewel jy handtekeningkettings op 'n soortgelyke wyse met enige wortelsleutel kan bou.
Opsie Met wagwoordfrase
Beskrywing
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 root0_private.pem Voer die wagwoordfrase in wanneer jy gevra word om dit te doen.
Sonder wagwoordfrase
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 –no_passphrase root0_private.pem
2. Voer die volgende opdrag uit om 'n publieke sleutel te skep met die private sleutel wat in die vorige stap gegenereer is. Jy hoef nie die vertroulikheid van 'n publieke sleutel te beskerm nie.
quartus_sign –family=agilex –operation=make_public_pem root0_private.pem root0_public.pem
3. Voer die opdragte weer uit om 'n sleutelpaar te skep wat gebruik word as die ontwerptekensleutel in die handtekeningketting.
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 design0_sign_private.pem
quartus_sign –family=agilex –operation=make_public_pem design0_sign_private.pem design0_sign_public.pem
2.1.2. Skep stawingsleutelpare in SoftHSM
Die SoftHSM examples in hierdie hoofstuk is selfkonsekwent. Sekere parameters hang af van jou SoftHSM-installasie en 'n token-inisialisering binne SoftHSM.
Die quartus_sign-nutsding hang af van die PKCS #11 API-biblioteek vanaf jou HSM.
Die eksamples in hierdie afdeling aanvaar dat die SoftHSM-biblioteek op een van die volgende liggings geïnstalleer is: · /usr/local/lib/softhsm2.so op Linux · C:SoftHSM2libsofthsm2.dll op 32-bis weergawe van Windows · C:SoftHSM2libsofthsm2-x64 .dll op 64-bis weergawe van Windows.
Inisialiseer 'n teken binne SoftHSM met behulp van die softhsm2-util-nutsding:
softhsm2-util –init-token –etiket agilex-token –pen agilex-token-pen –so-pen agilex-so-pen –vry
Die opsieparameters, veral die tekenetiket en tekenpen, is bvamples wat regdeur hierdie hoofstuk gebruik word. Intel beveel aan dat jy instruksies van jou HSM-verskaffer volg om tokens en sleutels te skep en te bestuur.
Jy skep stawingsleutelpare met behulp van die pkcs11-tool-nutsding om met die teken in SoftHSM te kommunikeer. In plaas daarvan om uitdruklik na die private en publieke sleutel .pem te verwys files in die file stelsel bvamples, verwys jy na die sleutelpaar deur sy etiket en die instrument kies die toepaslike sleutel outomaties.
Intel Agilex® 7 Device Security Gebruikersgids 8
Stuur terugvoer
2. Stawing en magtiging 683823 | 2023.05.23
Voer die volgende opdragte uit om 'n sleutelpaar te skep wat as die wortelsleutel in latere bvamples sowel as 'n sleutelpaar wat gebruik word as 'n ontwerptekensleutel in die handtekeningketting:
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pen –keypairgen –meganisme ECDSA-SLEUTELPAIR-GEN –sleuteltipe EC :secp384r1 –gebruiksteken –etiket root0 –id 0
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pen –keypairgen –meganisme ECDSA-SLEUTELPAIR-GEN –sleuteltipe EC :secp384r1 –gebruiksteken –etiketontwerp0_teken –id 1
Let wel:
Die ID-opsie in hierdie stap moet uniek aan elke sleutel wees, maar dit word slegs deur die HSM gebruik. Hierdie ID-opsie is nie verwant aan die sleutelkansellasie-ID wat in die handtekeningketting toegewys is nie.
2.1.3. Die skep van die handtekeningkettingwortelinskrywing
Omskep die wortel publieke sleutel in 'n handtekening ketting wortel inskrywing, gestoor op die plaaslike file stelsel in die Intel Quartus Prime-sleutel (.qky)-formaat file, met die make_root-bewerking. Herhaal hierdie stap vir elke wortelsleutel wat jy genereer.
Voer die volgende opdrag uit om 'n handtekeningketting met 'n wortelinskrywing te skep, met behulp van 'n wortel publieke sleutel van die file stelsel:
quartus_sign –family=agilex –operation=make_root –key_type=eienaar root0_public.pem root0.qky
Voer die volgende opdrag uit om 'n handtekeningketting met 'n wortelinskrywing te skep, met behulp van die wortelsleutel van die SoftHSM-token wat in die vorige afdeling vasgestel is:
quartus_sign –family=agilex –operation=make_root –key_type=owner –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsosofthsm2 ” root0 root0.qky
2.1.4. Skep 'n handtekeningketting publieke sleutelinskrywing
Skep 'n nuwe publieke sleutelinskrywing vir 'n handtekeningketting met die append_key-bewerking. Jy spesifiseer die vorige handtekeningketting, die private sleutel vir die laaste inskrywing in die vorige handtekeningketting, die volgende vlak publieke sleutel, die toestemmings en kansellasie ID wat jy aan die volgende vlak publieke sleutel toewys, en die nuwe handtekeningketting file.
Let daarop dat die softHSM-biblioteek nie beskikbaar is met Quartus-installasie nie en eerder apart geïnstalleer moet word. Vir meer inligting oor softHSM verwys na Afdeling Skep 'n handtekeningketting hierbo.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 9
2. Stawing en magtiging 683823 | 2023.05.23
Afhangende van jou gebruik van sleutels op die file stelsel of in 'n HSM, gebruik jy een van die volgende bvample-opdragte om die design0_sign publieke sleutel by die wortelhandtekeningketting te voeg wat in die vorige afdeling geskep is:
quartus_sign –family=agilex –operation=append_key –previous_pem=root0_private.pem –previous_qky=root0.qky –permission=6 –cancel=0 –input_pem=design0_sign_public.pem design0_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2_name” –vorige sleutel root0 –previous_qky=root0.qky –permission=6 –cancel=0 –input_keyname=design0_sign design0_sign_chain.qky
Jy kan die append_key-bewerking tot nog twee keer herhaal vir 'n maksimum van drie publieke sleutelinskrywings tussen die wortelinskrywing en kopblokinskrywing in enige handtekeningketting.
Die volgende example neem aan dat jy nog 'n publieke stawingsleutel geskep het met dieselfde toestemmings en kansellasie-ID 1 genaamd design1_sign_public.pem geskep het, en hierdie sleutel by die handtekeningketting van die vorige eks voegample:
quartus_sign –family=agilex –operation=append_key –previous_pem=design0_sign_private.pem –previous_qky=design0_sign_chain.qky –permission=6 –cancel=1 –input_pem=design1_sign_public.pem design1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2_name” –vorige sleutel design0_sign –previous_qky=design0_sign_chain.qky –permission=6 –cancel=1 –input_keyname=design1_sign design1_sign_chain.qky
Intel Agilex 7-toestelle sluit 'n bykomende sleutelkansellasie-teller in om die gebruik van 'n sleutel te vergemaklik wat periodiek kan verander deur die lewe van 'n gegewe toestel. Jy kan hierdie sleutelkansellasieteller kies deur die argument van die –cancel opsie te verander na pts:pts_value.
2.2. Teken van 'n konfigurasiebitstroom
Intel Agilex 7-toestelle ondersteun Security Weergawenommer (SVN) tellers, wat jou toelaat om die magtiging van 'n voorwerp te herroep sonder om 'n sleutel te kanselleer. Jy ken die SVN-teller en die toepaslike SVN-tellerwaarde toe tydens die ondertekening van enige voorwerp, soos 'n bitstroomafdeling, firmware .zip file, of kompakte sertifikaat. Jy ken die SVN-teller en SVN-waarde toe deur gebruik te maak van die –cancel opsie en svn_counter:svn_value as die argument. Geldige waardes vir svn_counter is svnA, svnB, svnC en svnD. Die svn_waarde is 'n heelgetal binne die reeks [0,63].
Intel Agilex® 7 Device Security Gebruikersgids 10
Stuur terugvoer
2. Stawing en magtiging 683823 | 2023.05.23
2.2.1. Quartus Sleutel File Opdrag
Jy spesifiseer 'n handtekeningketting in jou Intel Quartus Prime-sagtewareprojek om die verifikasiekenmerk vir daardie ontwerp te aktiveer. Van die Assignments-kieslys, kies Toestel Toestel en Pin Options Sekuriteit Quartus Sleutel File, blaai dan na die handtekeningketting .qky file jy geskep het om hierdie ontwerp te onderteken.
Figuur 1. Aktiveer konfigurasie-bitstroom-instelling
Alternatiewelik kan jy die volgende opdragstelling by jou Intel Quartus Prime-instellings voeg file (.qsf):
set_global_assignment -naam QKY_FILE ontwerp0_teken_ketting.qky
Om 'n .sof file van 'n voorheen saamgestelde ontwerp, wat hierdie instelling insluit, kies vanaf die Verwerking-kieslys Begin Begin Assembler. Die nuwe uitset .sof file sluit die opdragte in om verifikasie met die verskafde handtekeningketting moontlik te maak.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 11
2. Stawing en magtiging 683823 | 2023.05.23
2.2.2. Mede-ondertekening SDM-firmware
Jy gebruik die quartus_sign-nutsding om die toepaslike SDM-firmware .zip te onttrek, te teken en te installeer file. Die mede-ondertekende firmware word dan deur die programmering ingesluit file kragopwekker instrument wanneer jy .sof omskakel file in 'n konfigurasie bitstroom .rbf file. Jy gebruik die volgende opdragte om 'n nuwe handtekeningketting te skep en SDM-firmware te onderteken.
1. Skep 'n nuwe ondertekende sleutelpaar.
a. Skep 'n nuwe ondertekening sleutelpaar op die file stelsel:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 firmware1_private.pem
quartus_sign –family=agilex –operation=make_public_pem firmware1_private.pem firmware1_public.pem
b. Skep 'n nuwe ondertekende sleutelpaar in die HSM:
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pen –keypairgen -meganisme ECDSA-KEY-PAIR-GEN –sleuteltipe EC :secp384r1 –gebruiksteken –etiketfirmware1 –id 1
2. Skep 'n nuwe handtekeningketting wat die nuwe publieke sleutel bevat:
quartus_sign –family=agilex –operation=append_key –previous_pem=root0_private.pem –previous_qky=root0.qky –permission=0x1 –cancel=1 –input_pem=firmware1_public.pem firmware1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2_name” –vorige sleutel root0 –previous_qky=root0.qky –permission=1 –cancel=1 –input_keyname=firmware1 firmware1_sign_chain.qky
3. Kopieer die firmware .zip file vanaf jou Intel Quartus Prime Pro Edition sagteware installasie gids ( /devices/programmer/firmware/ agilex.zip) na die huidige werkgids.
quartus_sign –family=agilex –get_firmware=.
4. Teken die firmware .zip file. Die instrument pak outomaties die .zip uit file en individueel teken alle firmware .cmf files, dan herbou die .zip file vir gebruik deur die gereedskap in die volgende afdelings:
quartus_sign –family=agilex –operation=sign –qky=firmware1_sign_chain.qky –cancel=svnA:0 –pem=firmware1_private.pem agilex.zip signed_agilex.zip
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so”
Intel Agilex® 7 Device Security Gebruikersgids 12
Stuur terugvoer
2. Stawing en magtiging 683823 | 2023.05.23
–keyname=firmware1 –cancel=svnA:0 –qky=firmware1_sign_chain.qky agilex.zip signed_agilex.zip
2.2.3. Ondertekening van konfigurasie-bitstroom deur die quartus_sign-opdrag te gebruik
Om 'n konfigurasiebitstroom te teken deur die quartus_sign-opdrag te gebruik, skakel jy eers die .sof om file na die ongetekende rou binêre file (.rbf)-formaat. U kan opsioneel mede-ondertekende firmware spesifiseer deur die fw_source opsie tydens die omskakelingstap te gebruik.
Jy kan die ongetekende rou bitstroom in .rbf-formaat genereer deur die volgende opdrag te gebruik:
quartus_pfg c o fw_source=signed_agilex.zip -o sign_later=ON design.sof unsigned_bitstream.rbf
Voer een van die volgende opdragte uit om die bitstroom te teken deur die quartus_sign-instrument te gebruik, afhangende van die ligging van jou sleutels:
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 unsigned_bitstream.rbf signed_bitstream.rbf
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so” –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_bitstream.rbf signed_bitstream.rbf
Jy kan getekende .rbf omskakel files na ander konfigurasie bitstroom file formate.
Byvoorbeeldample, as jy die Jam* Standard Test and Programming Language (STAPL) Player gebruik om 'n bisstroom oor J te programmeerTAG, gebruik jy die volgende opdrag om 'n .rbf om te skakel file na die .jam-formaat wat die Jam STAPL Player vereis:
quartus_pfg -c signed_bitstream.rbf signed_bitstream.jam
2.2.4. Gedeeltelike herkonfigurasie multi-owerheid ondersteuning
Intel Agilex 7-toestelle ondersteun gedeeltelike herkonfigurasie multi-owerheid-verifikasie, waar die toesteleienaar die statiese bitstroom skep en onderteken, en 'n aparte PR-eienaar skep en teken PR-persona-bitstrome. Intel Agilex 7-toestelle implementeer multi-owerheid-ondersteuning deur die eerste verifikasie-wortelsleutelgleuwe aan die toestel of statiese bitstroom-eienaar toe te wys en die finale verifikasie-wortelsleutelgleuf aan die gedeeltelike herkonfigurasie-persoonlike bitstroom-eienaar toe te wys.
As die verifikasiekenmerk geaktiveer is, moet alle PR-persona-beelde onderteken word, insluitend geneste PR-persona-beelde. PR-persona-beelde kan deur óf die toesteleienaar óf deur die PR-eienaar onderteken word; statiese streek-bitstrome moet egter deur die toesteleienaar onderteken word.
Let wel:
Gedeeltelike herkonfigurasie statiese en persona-bitstroom-enkripsie wanneer multi-owerheid-ondersteuning geaktiveer is, word in 'n toekomstige vrystelling beplan.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 13
2. Stawing en magtiging 683823 | 2023.05.23
Figuur 2.
Die implementering van gedeeltelike herkonfigurasie multi-owerheid ondersteuning vereis verskeie stappe:
1. Die toestel of statiese bitstroom eienaar genereer een of meer stawing wortelsleutels soos beskryf in Skep stawing sleutel pare in SoftHSM op bladsy 8, waar die –key_type opsie waarde eienaar het.
2. Die gedeeltelike herkonfigurasie-bitstroom-eienaar genereer 'n verifikasie-wortelsleutel maar verander die –key_type opsiewaarde na sekondêre_eienaar.
3. Beide die statiese bitstroom- en gedeeltelike herkonfigurasie-ontwerpeienaars verseker dat die Aktiveer Multi-Owerheid-ondersteuning-merkblokkie geaktiveer is in die Assignments Device Device and Pin Options Security-oortjie.
Intel Quartus Prime Aktiveer multi-owerheid-opsie-instellings
4. Beide die statiese bitstroom- en gedeeltelike herkonfigurasie-ontwerpeienaars skep handtekeningkettings gebaseer op hul onderskeie wortelsleutels soos beskryf in Skep 'n handtekeningketting op bladsy 6.
5. Beide die statiese bitstroom en gedeeltelike herkonfigurasie ontwerp eienaars skakel hul saamgestelde ontwerpe om na .rbf formaat files en teken die .rbf files.
6. Die toestel of statiese bitstroom eienaar genereer en onderteken 'n PR publieke sleutel program magtiging kompakte sertifikaat.
quartus_pfg –ccert o ccert_type=PR_PUBKEY_PROG_AUTH of eienaar_qky_file="root0.qky;root1.qky" unsigned_pr_pubkey_prog.ccert
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 unsigned_pr_pubkey_prog.ccert signed_pr_pubkey_prog.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=s10-token –user_pin=s10-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so” –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_pr_pubkey_prog.ccert signed_pr_pubkey_prog.ccert
Intel Agilex® 7 Device Security Gebruikersgids 14
Stuur terugvoer
2. Stawing en magtiging 683823 | 2023.05.23
7. Die toestel of statiese bitstroom eienaar verskaf hul stawing wortel sleutel hashes aan die toestel, programmeer dan die PR publieke sleutel program magtiging kompakte sertifikaat, en verskaf uiteindelik die gedeeltelike herkonfigurasie bitstroom eienaar wortel sleutel aan die toestel. Die Toestelvoorsiening-afdeling beskryf hierdie voorsieningsproses.
8. Intel Agilex 7-toestel is gekonfigureer met die statiese streek .rbf file.
9. Intel Agilex 7-toestel is gedeeltelik herkonfigureer met die persona-ontwerp .rbf file.
Verwante inligting
· Skep 'n handtekeningketting op bladsy 6
· Skep stawingsleutelpare in SoftHSM op bladsy 8
· Toestelvoorsiening op bladsy 25
2.2.5. Verifieer konfigurasie Bitstream Signature Chains
Nadat jy handtekeningkettings en getekende bitstrome geskep het, kan jy seker maak dat ’n getekende bitstroom ’n toestel wat met ’n gegewe wortelsleutel geprogrammeer is, korrek konfigureer. Jy gebruik eers die fuse_info-bewerking van die quartus_sign-opdrag om die hash van die wortel publieke sleutel na 'n teks te druk file:
quartus_sign –family=agilex –operation=fuse_info root0.qky hash_fuse.txt
Jy gebruik dan die check_integrity-opsie van die quartus_pfg-opdrag om die handtekeningketting op elke afdeling van 'n getekende bitstroom in .rbf-formaat te inspekteer. Die check_integrity opsie druk die volgende inligting:
· Status van die algehele bitstroom-integriteitkontrole
· Inhoud van elke inskrywing in elke handtekeningketting wat aan elke afdeling in die bitstroom .rbf geheg is file,
· Verwagte smeltwaarde vir die hash van die wortel publieke sleutel vir elke handtekeningketting.
Die waarde van die fuse_info-uitvoer moet ooreenstem met die Fuse-lyne in die check_integrity-uitvoer.
quartus_pfg –check_integrity signed_bitstream.rbf
Hier is 'n example van die check_integrity opdrag uitvoer:
Info: Opdrag: quartus_pfg –check_integrity signed_bitstream.rbf Integriteitstatus: OK
Afdeling
Tipe: CMF
Handtekeningbeskrywing …
Handtekeningketting #0 (inskrywings: -1, verreken: 96)
Inskrywing #0
Fuse: 34FD3B5F 7829001F DE2A24C7 3A7EAE29 C7786DB1 D6D5BC3C 52741C79
72978B22 0731B082 6F596899 40F32048 AD766A24
Genereer sleutel …
Kromme: secp384r1
X
: 29C39C3064AE594A36DAA85602D6AF0B278CBB0B207C4D97CFB6967961E5F0ECA
456FF53F5DBB3A69E48A042C62AB6B0
Y
: 3E81D40CBBBEAC13601247A9D53F4A831308A24CA0BDFFA40351EE76438C7B5D2
2826F7E94A169023AFAE1D1DF4A31C2
Genereer sleutel …
Kromme: secp384r1
X
: 29C39C3064AE594A36DAA85602D6AF0B278CBB0B207C4D97CFB6967961E5F0ECA
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 15
2. Stawing en magtiging 683823 | 2023.05.23
456FF53F5DBB3A69E48A042C62AB6B0
Y
: 3E81D40CBBBEAC13601247A9D53F4A831308A24CA0BDFFA40351EE76438C7B5D2
2826F7E94A169023AFAE1D1DF4A31C2
Inskrywing #1
Genereer sleutel …
Kromme: secp384r1
X
: 015290C556F1533E5631322953E2F9E91258472F43EC954E05D6A4B63D611E04B
C120C7E7A744C357346B424D52100A9
Y
: 68696DEAC4773FF3D5A16A4261975424AAB4248196CF5142858E016242FB82BC5
08A80F3FE7F156DEF0AE5FD95BDFE05
Inskrywing #2 Sleutelhanger-toestemming: SIGN_CODE Sleutelhanger kan gekanselleer word deur ID: 3 Handtekeningketting #1 (inskrywings: -1, verreken: 648)
Inskrywing #0
Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6
DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Inskrywing #1
Genereer sleutel …
Kromme: secp384r1
X
: 1E8FBEDC486C2F3161AFEB028D0C4B426258293058CD41358A164C1B1D60E5C1D
74D982BC20A4772ABCD0A1848E9DC96
Y
: 768F1BF95B37A3CC2FFCEEB071DD456D14B84F1B9BFF780FC5A72A0D3BE5EB51D
0DA7C6B53D83CF8A775A8340BD5A5DB
Inskrywing #2
Genereer sleutel …
Kromme: secp384r1
X
: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432
76896E771A9C6CA5A2D3C08CF4CB83C
Y
: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1
49F91CABA72F6A3A1C2D1990CDAEA3D
Inskrywing #3 Sleutelhanger toestemming: SIGN_CODE Sleutelhanger kan gekanselleer word deur ID: 15 Handtekeningketting #2 (inskrywings: -1, verreken: 0) Handtekeningketting #3 (inskrywings: -1, verreken: 0) Handtekeningketting #4 (inskrywings: -1, offset: 0) Handtekening ketting #5 (inskrywings: -1, offset: 0) Handtekening ketting #6 (inskrywings: -1, offset: 0) Handtekening ketting #7 (inskrywings: -1, offset: 0)
Afdeling Tipe: IO Handtekening Descriptor … Handtekening ketting #0 (inskrywings: -1, offset: 96)
Inskrywing #0
Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6
DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Intel Agilex® 7 Device Security Gebruikersgids 16
Stuur terugvoer
2. Stawing en magtiging 683823 | 2023.05.23
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Inskrywing #1
Genereer sleutel …
Kromme: secp384r1
X
: 646B51F668D8CC365D72B89BA8082FDE79B00CDB750DA0C984DC5891CDF57BD21
44758CA747B1A8315024A8247F12E51
Y
: 53513118E25E16151FD55D7ECDE8293AF6C98A74D52E0DA2527948A64FABDFE7C
F4EA8B8E229218D38A869EE15476750
Inskrywing #2
Genereer sleutel …
Kromme: secp384r1
X
: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432
76896E771A9C6CA5A2D3C08CF4CB83C
Y
: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1
49F91CABA72F6A3A1C2D1990CDAEA3D
Inskrywing #3 Sleutelhanger toestemming: SIGN_CORE Sleutelhanger kan gekanselleer word deur ID: 15 Handtekeningketting #1 (inskrywings: -1, verreken: 0) Handtekeningketting #2 (inskrywings: -1, verreken: 0) Handtekeningketting #3 (inskrywings: -1, offset: 0) Handtekening ketting #4 (inskrywings: -1, offset: 0) Handtekening ketting #5 (inskrywings: -1, offset: 0) Handtekening ketting #6 (inskrywings: -1, offset: 0) Handtekening ketting #7 (inskrywings: -1, verreken: 0)
Afdeling
Tipe: HPS
Handtekeningbeskrywing …
Handtekeningketting #0 (inskrywings: -1, verreken: 96)
Inskrywing #0
Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6
DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Inskrywing #1
Genereer sleutel …
Kromme: secp384r1
X
: FAF423E08FB08D09F926AB66705EB1843C7C82A4391D3049A35E0C5F17ACB1A30
09CE3F486200940E81D02E2F385D150
Y
: 397C0DA2F8DD6447C52048CD0FF7D5CCA7F169C711367E9B81E1E6C1E8CD9134E
5AC33EE6D388B1A895AC07B86155E9D
Inskrywing #2
Genereer sleutel …
Kromme: secp384r1
X
: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432
76896E771A9C6CA5A2D3C08CF4CB83C
Y
: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1
49F91CABA72F6A3A1C2D1990CDAEA3D
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 17
2. Stawing en magtiging 683823 | 2023.05.23
Inskrywing #3 Sleutelhanger toestemming: SIGN_HPS Sleutelhanger kan gekanselleer word deur ID: 15 Handtekeningketting #1 (inskrywings: -1, verreken: 0) Handtekeningketting #2 (inskrywings: -1, verreken: 0) Handtekeningketting #3 (inskrywings: -1, offset: 0) Handtekening ketting #4 (inskrywings: -1, offset: 0) Handtekening ketting #5 (inskrywings: -1, offset: 0) Handtekening ketting #6 (inskrywings: -1, offset: 0) Handtekening ketting #7 (inskrywings: -1, verreken: 0)
Afdeling Tipe: KERN Handtekening Descriptor … Handtekening ketting #0 (inskrywings: -1, offset: 96)
Inskrywing #0
Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6
DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Genereer sleutel …
Kromme: secp384r1
X
: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765
0411C4592FAFFC71DE36A105B054781
Y
: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8
6B7312EEE8241189474262629501FCD
Inskrywing #1
Genereer sleutel …
Kromme: secp384r1
X
: 646B51F668D8CC365D72B89BA8082FDE79B00CDB750DA0C984DC5891CDF57BD21
44758CA747B1A8315024A8247F12E51
Y
: 53513118E25E16151FD55D7ECDE8293AF6C98A74D52E0DA2527948A64FABDFE7C
F4EA8B8E229218D38A869EE15476750
Inskrywing #2
Genereer sleutel …
Kromme: secp384r1
X
: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432
76896E771A9C6CA5A2D3C08CF4CB83C
Y
: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1
49F91CABA72F6A3A1C2D1990CDAEA3D
Inskrywing #3 Sleutelhanger toestemming: SIGN_CORE Sleutelhanger kan gekanselleer word deur ID: 15 Handtekeningketting #1 (inskrywings: -1, verreken: 0) Handtekeningketting #2 (inskrywings: -1, verreken: 0) Handtekeningketting #3 (inskrywings: -1, offset: 0) Handtekening ketting #4 (inskrywings: -1, offset: 0) Handtekening ketting #5 (inskrywings: -1, offset: 0) Handtekening ketting #6 (inskrywings: -1, offset: 0) Handtekening ketting #7 (inskrywings: -1, verreken: 0)
Intel Agilex® 7 Device Security Gebruikersgids 18
Stuur terugvoer
683823 | 2023.05.23 Stuur terugvoer
AES Bitstream Enkripsie
Advanced Encryption Standard (AES) bitstroom-enkripsie is 'n kenmerk wat 'n toesteleienaar in staat stel om die vertroulikheid van intellektuele eiendom in 'n konfigurasiebitstroom te beskerm.
Om die vertroulikheid van sleutels te help beskerm, gebruik konfigurasie-bitstroom-enkripsie 'n ketting van AES-sleutels. Hierdie sleutels word gebruik om eienaardata in die konfigurasiebitstroom te enkripteer, waar die eerste tussensleutel geïnkripteer word met die AES-wortelsleutel.
3.1. Die skep van die AES-wortelsleutel
Jy kan die quartus_encrypt-nutsding of stratix10_encrypt.py-verwysingsimplementering gebruik om 'n AES-wortelsleutel in die Intel Quartus Prime-sagteware-enkripsiesleutel (.qek)-formaat te skep file.
Let wel:
Die stratix10_encrypt.py file word gebruik vir Intel Stratix® 10- en Intel Agilex 7-toestelle.
U kan opsioneel die basissleutel spesifiseer wat gebruik word om die AES-wortelsleutel en sleutelafleidingsleutel af te lei, die waarde vir die AES-wortelsleutel direk, die aantal tussensleutels en die maksimum gebruik per tussensleutel.
Jy moet die toestelfamilie spesifiseer, uitvoer .qek file ligging en wagwoordfrase wanneer dit gevra word.
Voer die volgende opdrag uit om die AES-wortelsleutel te genereer deur gebruik te maak van ewekansige data vir die basissleutel en verstekwaardes vir aantal tussensleutels en maksimum sleutelgebruik.
Om die verwysingsimplementering te gebruik, vervang jy 'n oproep na die Python-tolk wat by Intel Quartus Prime-sagteware ingesluit is en laat die –family=agilex-opsie weg; alle ander opsies is gelykstaande. Byvoorbeeldample, die quartus_encrypt-opdrag wat later in die afdeling gevind word
quartus_encrypt –family=agilex –operation=MAKE_AES_KEY aes_root.qek
kan omgeskakel word in die ekwivalente oproep na die verwysingsimplementering soos volg pgm_py stratix10_encrypt.py –operation=MAKE_AES_KEY aes_root.qek
3.2. Quartus-enkripsie-instellings
Om bitstroom-enkripsie vir 'n ontwerp te aktiveer, moet jy die toepaslike opsies spesifiseer deur die Assignments Device Device en Pin Options Security paneel te gebruik. Jy kies die Aktiveer konfigurasie-bitstroom-enkripsie-merkblokkie, en die verlangde Enkripsiesleutel-bergingplek in die aftreklys.
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
Figuur 3. Intel Quartus Prime Enkripsie-instellings
3. AES Bitstream Encryption 683823 | 2023.05.23
Alternatiewelik kan jy die volgende opdragstelling by jou Intel Quartus Prime-instellings voeg file .qsf:
set_global_assignment -naam ENCRYPT_PROGRAMMING_BITSTREAM op set_global_assignment -naam PROGRAMMING_BITSTREAM_ENCRYPTION_KEY_SELECT eFuses
As jy bykomende versagtings teen sykanaalaanvalsvektore wil aktiveer, kan jy die Enkripsie-opdateringsverhouding-aftreklys en Aktiveer deurmekaar-merkblokkie aktiveer.
Intel Agilex® 7 Device Security Gebruikersgids 20
Stuur terugvoer
3. AES Bitstream Encryption 683823 | 2023.05.23
Die ooreenstemmende veranderinge in die .qsf is:
set_global_assignment -naam PROGRAMMING_BITSTREAM_ENCRYPTION_CNOC_SCRAMBLING op set_global_assignment -naam PROGRAMMING_BITSTREAM_ENCRYPTION_UPDATE_RATIO 31
3.3. Enkripteer 'n konfigurasie-bitstroom
U enkripteer 'n konfigurasiebitstroom voordat u die bitstroom onderteken. Die Intel Quartus Prime-programmering File Generator-instrument kan outomaties 'n konfigurasie-bitstroom enkripteer en onderteken deur die grafiese gebruikerskoppelvlak of opdragreël te gebruik.
Jy kan opsioneel 'n gedeeltelik geënkripteerde bitstroom skep vir gebruik met die quartus_encrypt en quartus_sign-nutsgoed of verwysingsimplementeringsekwivalente.
3.3.1. Konfigurasie Bitstroom-enkripsie met behulp van die programmering File Generator grafiese koppelvlak
Jy kan die programmering gebruik File Generator om die eienaarbeeld te enkripteer en te onderteken.
Figuur 4.
1. Op die Intel Quartus Prime File kieslys kies Programmering File Generator. 2. Op die Uitset Files oortjie, spesifiseer die uitset file tik vir jou konfigurasie
skema.
Uitset File Spesifikasie
Konfigurasieskema Uitset file oortjie
Uitset file tipe
3. Op die Invoer Files oortjie, klik Voeg Bitstream by en blaai na jou .sof. 4. Om enkripsie- en verifikasie-opsies te spesifiseer, kies die .sof en klik
Eienskappe. a. Skakel Aktiveer ondertekeningnutsding aan. b. Vir privaat sleutel file kies jou ondertekening sleutel private .pem file. c. Skakel Finaliseer enkripsie aan.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 21
3. AES Bitstream Encryption 683823 | 2023.05.23
Figuur 5.
d. Vir enkripsiesleutel file, kies jou AES .qek file. Invoer (.sof) File Eienskappe vir verifikasie en enkripsie
Aktiveer stawing Spesifiseer private root .pem
Aktiveer enkripsie Spesifiseer enkripsiesleutel
5. Om die getekende en geënkripteerde bitstroom te genereer, op die Invoer Files oortjie, klik Genereer. Wagwoord-dialoogkassies verskyn vir jou om jou wagwoordfrase vir jou AES-sleutel .qek in te voer file en die ondertekening van private sleutel .pem file. Die programmering file kragopwekker skep die geënkripteerde en getekende uitvoer_file.rbf.
3.3.2. Konfigurasie Bitstroom-enkripsie met behulp van die programmering File Generator Command Line Interface
Genereer 'n geënkripteerde en ondertekende konfigurasiebitstroom in .rbf-formaat met die quartus_pfg-opdragreëlkoppelvlak:
quartus_pfg -c encryption_enabled.sof top.rbf -o finalize_encryption=AAN -o qek_file=aes_root.qek -o ondertekening=AAN -o pem_file=ontwerp0_teken_privaat.pem
Jy kan 'n geënkripteerde en ondertekende konfigurasiebitstroom in .rbf-formaat omskakel na ander konfigurasiebitstroom file formate.
3.3.3. Gedeeltelik geënkripteerde konfigurasie-bitstroomgenerering met behulp van die opdraglyn-koppelvlak
Jy kan 'n gedeeltelik geënkripteerde programmering genereer file om enkripsie te finaliseer en die prent later te onderteken. Genereer die gedeeltelik geënkripteerde programmering file in die .rbf-formaat met diequartus_pfgcommand line-koppelvlak: quartus_pfg -c -o finalize_encryption_later=ON -o sign_later=ON top.sof top.rbf
Intel Agilex® 7 Device Security Gebruikersgids 22
Stuur terugvoer
3. AES Bitstream Encryption 683823 | 2023.05.23
Jy gebruik die quartus_encrypt-opdragreëlnutsding om bitstroom-enkripsie te finaliseer:
quartus_encrypt –family=agilex –operation=ENCRYPT –key=aes_root.qek top.rbf encrypted_top.rbf
U gebruik die quartus_sign-opdragreëlnutsding om die geënkripteerde konfigurasiebitstroom te onderteken:
quartus_sign –family=agilex –operation=TEKEN –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 encrypted_top.rbf signed_encrypted_top.rbf
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so” –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 encrypted_top.rbf signed_encrypted_top.rbf
3.3.4. Gedeeltelike herkonfigurasie bitstroom-enkripsie
U kan bitstroom-enkripsie aktiveer op sommige Intel Agilex 7 FPGA-ontwerpe wat gedeeltelike herkonfigurasie gebruik.
Gedeeltelike herkonfigurasie-ontwerpe wat die hiërargiese gedeeltelike herkonfigurasie (HPR) of Static Update Partial Reconfiguration (SUPR) gebruik, ondersteun nie die bitstroom-enkripsie nie. As jou ontwerp veelvuldige PR-streke bevat, moet jy alle personas enkripteer.
Om gedeeltelike herkonfigurasie-bitstroom-enkripsie te aktiveer, volg dieselfde prosedure in alle ontwerphersienings. 1. Op die Intel Quartus Prime File kieslys, kies Assignments Device Device
en Pin Options Sekuriteit. 2. Kies die verlangde enkripsiesleutelbergplek.
Figuur 6. Gedeeltelike herkonfigurasie Bitstroom-enkripsie-instelling
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 23
3. AES Bitstream Encryption 683823 | 2023.05.23
Alternatiewelik kan jy die volgende opdragstelling by die Quartus Prime-instellings byvoeg file .qsf:
set_global_assignment -name –ENABLE_PARTIAL_RECONFIGURATION_BITSTREAM_ENCRYPTION aan
Nadat jy jou basisontwerp en hersienings saamgestel het, genereer die sagteware a.soffile en een of meer.pmsffiles, wat die personas verteenwoordig. 3. Skep geïnkripteer en ondertekende programmering files van.sof en.pmsf files op 'n soortgelyke wyse as ontwerpe met geen gedeeltelike herkonfigurasie geaktiveer nie. 4. Skakel die saamgestelde persona.pmsf om file na 'n gedeeltelik geïnkripteer.rbf file:
quartus_pfg -c -o finalize_encryption_later=AAN -o sign_later=AAN encryption_enabled_persona1.pmsf persona1.rbf
5. Finaliseer bitstroom-enkripsie deur die quartus_encrypt-opdragreëlnutsding te gebruik:
quartus_encrypt –family=agilex –operation=ENCRYPT –key=aes_root.qek persona1.rbf encrypted_persona1.rbf
6. Teken die geënkripteerde konfigurasie-bitstroom met die quartus_sign-opdragreëlnutsding:
quartus_sign –family=agilex –operation=TEKEN –qky=design0_sign_chain.qky –pem=design0_sign_private.pem encrypted_persona1.rbf signed_encrypted_persona1.rbf
quartus_sign –family=agilex –operation=SIGN –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so” –qky= design0_sign_chain.qky –cancel=svnA:0 –keyname=design0_sign encrypted_persona1.rbf signed_encrypted_persona1.rbf
Intel Agilex® 7 Device Security Gebruikersgids 24
Stuur terugvoer
683823 | 2023.05.23 Stuur terugvoer
Toestelvoorsiening
Aanvanklike sekuriteitskenmerkvoorsiening word slegs in die SDM-verskaffingsfirmware ondersteun. Gebruik die Intel Quartus Prime Programmeerder om die SDM-verskaffingsfirmware te laai en voorsieningsbewerkings uit te voer.
Jy mag enige tipe J gebruikTAG aflaai-kabel om die Quartus-programmeerder aan 'n Intel Agilex 7-toestel te koppel om voorsieningsbewerkings uit te voer.
4.1. Gebruik SDM Provision Firmware
Die Intel Quartus Prime Programmeerder skep en laai outomaties 'n fabrieks verstek helper beeld wanneer jy die inisialisering bewerking en 'n opdrag kies om iets anders as 'n konfigurasie bitstroom te programmeer.
Afhangende van die programmeringsopdrag wat gespesifiseer is, is die fabrieksstandaard helperbeeld een van twee tipes:
· Voorsiening helper beeld – bestaan uit een bitstroom afdeling wat die SDM voorsiening firmware bevat.
· QSPI-helperbeeld – bestaan uit twee bitstroomafdelings, een wat die SDM-hooffirmware en een I/O-afdeling bevat.
Jy kan 'n fabriek verstek helper beeld skep file om in jou toestel te laai voordat enige programmeringsopdrag uitgevoer word. Nadat u 'n verifikasie-wortelsleutelhash geprogrammeer het, moet u 'n QSPI-fabrieksversteker-helperbeeld skep en onderteken as gevolg van die ingeslote I/O-afdeling. As jy addisioneel die mede-ondertekende firmware-sekuriteitinstelling eFuse programmeer, moet jy voorsiening en QSPI-fabriekversteurhulpbeelde skep met mede-ondertekende firmware. Jy kan 'n mede-ondertekende fabrieks verstek helper-prent op 'n nie-voorsiende toestel gebruik, aangesien die nie-voorsiende toestel nie-Intel-handtekeningkettings oor SDM-firmware ignoreer. Verwys na Die gebruik van QSPI Fabrieks-standaardhulpprent op toestelle wat besit word op bladsy 26 vir meer besonderhede oor die skep, ondertekening en gebruik van die QSPI-fabrieksverstekerhulpprent.
Die voorsiening fabriek verstek helper beeld voer 'n voorsiening aksie uit, soos die programmering van die stawing wortel sleutel hash, sekuriteit instelling fuses, PUF inskrywing, of swart sleutel voorsiening. Jy gebruik die Intel Quartus Prime-programmering File Generator-opdragreëlnutsding om die voorsiening-helper-beeld te skep, wat die helper_image-opsie, jou helper_device naam, die subtipe van die voorsiening-helper-beeld en opsioneel 'n mede-ondertekende firmware .zip spesifiseer file:
quartus_pfg –helper_image -o helper_device=AGFB014R24A -o subtipe=PROVISION -o fw_source=signed_agilex.zip signed_provision_helper_image.rbf
Programmeer die helperbeeld met behulp van die Intel Quartus Prime Programmer-nutsding:
quartus_pgm -c 1 -mjtag -o “p;signed_provision_helper_image.rbf” –force
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
4. Toestelvoorsiening 683823 | 2023.05.23
Let wel:
U kan die inisialiseringsbewerking weglaat van opdragte, insluitend bvamples wat in hierdie hoofstuk verskaf word, nadat óf 'n voorsieningshulpprent geprogrammeer is óf 'n opdrag gebruik het wat die inisialiseringsbewerking bevat.
4.2. Gebruik QSPI Factory Default Helper Image op besit toestelle
Die Intel Quartus Prime Programmeerder skep en laai outomaties 'n QSPI-fabrieksversteurhulpbeeld wanneer jy die inisialiseringsbewerking vir 'n QSPI-flitsprogrammering kies file. Nadat u 'n verifikasie-wortelsleutel-hash geprogrammeer het, moet u die QSPI-fabriekversteurhulpprent skep en onderteken, en die getekende QSPI-fabriekshulpprent afsonderlik programmeer voordat die QSPI-flits geprogrammeer word. 1. Jy gebruik die Intel Quartus Prime Programmering File Generator command line instrument om
skep die QSPI helper beeld, spesifiseer die helper_image opsie, jou helper_device tipe, die QSPI helper beeld subtipe, en opsioneel 'n co-signed firmware .zip file:
quartus_pfg –helper_image -o helper_device=AGFB014R24A -o subtipe=QSPI -o fw_source=signed_agilex.zip qspi_helper_image.rbf
2. Jy teken die QSPI fabriek verstek helper beeld:
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem qspi_helper_image.rbf signed_qspi_helper_image.rbf
3. Jy mag enige QSPI-flitsprogrammering gebruik file formaat. Die volgende examples gebruik 'n konfigurasie-bitstroom wat na die .jic omgeskakel is file formaat:
quartus_pfg -c signed_bitstream.rbf signed_flash.jic -o device=MT25QU128 -o flash_loader=AGFB014R24A -o mode=ASX4
4. Jy programmeer die getekende helperbeeld deur die Intel Quartus Prime Programmer-nutsding te gebruik:
quartus_pgm -c 1 -mjtag -o “p;signed_qspi_helper_image.rbf” –force
5. Jy programmeer die .jic-prent om te flits deur die Intel Quartus Prime Programmer-nutsding te gebruik:
quartus_pgm -c 1 -mjtag -o “p;signed_flash.jic”
4.3. Stawingswortelsleutelvoorsiening
Om die eienaar se wortelsleutelhassies na fisiese versmeltings te programmeer, moet jy eers die voorsieningsfirmware laai, volgende programmeer die eienaar se wortelsleutelhassies, en dan onmiddellik 'n aanskakel-terugstelling uitvoer. 'n Aanskakel-terugstelling is nie nodig as die programmering van wortelsleutel na virtuele versmeltings verhaas nie.
Intel Agilex® 7 Device Security Gebruikersgids 26
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Om verifikasie-wortelsleutelhassies te programmeer, programmeer jy die voorsiening-firmware-helperbeeld en voer een van die volgende opdragte uit om die wortelsleutel .qky te programmeer files.
// Vir fisiese (nie-vlugtige) eFuses quartus_pgm -c 1 -mjtag -o "p;root0.qky;root1.qky;root2.qky" -nie_vlugtige_sleutel
// Vir virtuele (vlugtige) eFuses quartus_pgm -c 1 -mjtag -o "p;root0.qky;root1.qky;root2.qky"
4.3.1. Gedeeltelike herkonfigurasie Multi-Owerheid wortelsleutelprogrammering
Nadat u die toestel- of statiese streek-bitstroomeienaar se wortelsleutels voorsien het, laai jy weer die toestelvoorsiening-helperbeeld, programmeer die getekende PR publieke sleutel program magtiging kompakte sertifikaat, en voorsien dan die PR persona bitstroom eienaar wortelsleutel.
// Vir fisiese (nie-vlugtige) eFuses quartus_pgm -c 1 -mjtag -o “p;root_pr.qky” –pr_pubkey –non_volatile_key
// Vir virtuele (vlugtige) eFuses quartus_pgm -c 1 -mjtag -o “p;p;root_pr.qky” –pr_pubkey
4.4. Programmering Sleutel Kansellasie ID Versekerings
Begin met Intel Quartus Prime Pro Edition-sagteware weergawe 21.1, vereis programmering van Intel en eienaarsleutel-kansellasie-ID-versmeltings die gebruik van 'n getekende kompakte sertifikaat. Jy kan die sleutelkansellasie-ID kompakte sertifikaat onderteken met 'n handtekeningketting wat FPGA-afdeling-ondertekeningtoestemmings het. Jy skep die kompakte sertifikaat met die programmering file kragopwekker opdragreëlinstrument. Jy teken die ongetekende sertifikaat deur die quartus_sign-nutsding of verwysingsimplementering te gebruik.
Intel Agilex 7-toestelle ondersteun aparte banke van eienaarsleutel-kansellasie-ID's vir elke wortelsleutel. Wanneer 'n eienaarsleutel-kansellasie-ID kompakte sertifikaat in 'n Intel Agilex 7 FPGA geprogrammeer word, bepaal die SDM watter wortelsleutel die kompakte sertifikaat onderteken het en blaas die sleutelkansellasie-ID-lont wat met daardie wortelsleutel ooreenstem.
Die volgende examples skep 'n Intel-sleutelkansellasiesertifikaat vir Intel-sleutel-ID 7. Jy kan 7 vervang met die toepaslike Intel-sleutelkansellasie-ID van 0-31.
Voer die volgende opdrag uit om 'n ongetekende Intel-sleutelkansellasie-ID kompakte sertifikaat te skep:
quartus_pfg –ccert -o ccert_type=CANCEL_INTEL_KEY -o cancel_key=7 unsigned_cancel_intel7.ccert
Voer een van die volgende opdragte uit om die ongetekende Intel-sleutelkansellasie-ID kompakte sertifikaat te onderteken:
quartus_sign –family=agilex –operation=TEKEN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_cancel_intel7.ccert signed_cancel_intel7.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so”
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 27
4. Toestelvoorsiening 683823 | 2023.05.23
–keyname=design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_cancel_intel7.ccert signed_cancel_intel7.ccert
Voer die volgende opdrag uit om 'n ongetekende eienaarsleutel-kansellasie-ID kompakte sertifikaat te skep:
quartus_pfg –ccert -o ccert_type=CANCEL_OWNER_KEY -o cancel_key=2 unsigned_cancel_owner2.ccert
Voer een van die volgende opdragte uit om die ongetekende eienaarsleutel-kansellasie-ID kompakte sertifikaat te onderteken:
quartus_sign –family=agilex –operation=TEKEN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_cancel_owner2.ccert signed_cancel_owner2.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so” –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_cancel_owner2.ccert signed_cancel_owner2.ccert
Nadat jy 'n getekende sleutelkansellasie ID kompakte sertifikaat geskep het, gebruik jy die Intel Quartus Prime Programmer om die kompakte sertifikaat na die toestel te programmeer via JTAG.
//Vir fisiese (nie-vlugtige) eFuses quartus_pgm -c 1 -mjtag -o “pi;signed_cancel_intel7.ccert” –non_volatile_key quartus_pgm -c 1 -mjtag -o “pi;signed_cancel_owner2.ccert” –nie_vlugtige_sleutel
//Vir virtuele (vlugtige) eFuses quartus_pgm -c 1 -mjtag -o “pi;signed_cancel_intel7.ccert” quartus_pgm -c 1 -mjtag -o “pi;signed_cancel_owner2.ccert”
Jy kan ook die kompakte sertifikaat na die SDM stuur deur die FPGA- of HPS-posbuskoppelvlak te gebruik.
4.5. Kanselleer wortelsleutels
Intel Agilex 7-toestelle laat jou die wortelsleutel-hash kanselleer wanneer 'n ander ongekanselleerde wortelsleutel-hash teenwoordig is. Jy kanselleer 'n wortelsleutel-hash deur eers die toestel te konfigureer met 'n ontwerp waarvan die handtekeningketting in 'n ander wortelsleutel-hash gewortel is, en programmeer dan 'n getekende wortelsleutel-hash-kansellasie-kompakte sertifikaat. Jy moet die wortelsleutel hash-kansellasie kompakte sertifikaat onderteken met 'n handtekeningketting wat in die wortelsleutel gewortel is om gekanselleer te word.
Voer die volgende opdrag uit om 'n ongetekende wortelsleutel hash-kansellasie kompakte sertifikaat te genereer:
quartus_pfg –ccert -o –ccert_type=CANCEL_KEY_HASH unsigned_root_cancel.ccert
Intel Agilex® 7 Device Security Gebruikersgids 28
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Voer een van die volgende opdragte uit om die ongetekende wortelsleutel hash-kansellasie kompakte sertifikaat te onderteken:
quartus_sign –family=agilex –operation=TEKEN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_root_cancel.ccert signed_root_cancel.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so” –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_root_cancel.ccert signed_root_cancel.ccert
Jy kan 'n wortelsleutel hash kansellasie kompakte sertifikaat via JTAG, FPGA of HPS posbusse.
4.6. Programmering van teenversmeltings
Jy werk die sekuriteitsweergawenommer (SVN) en Pseudo Time Stamp (PTS) teenversmeltings met getekende kompakte sertifikate.
Let wel:
Die SDM hou tred met die minimum tellerwaarde wat tydens 'n gegewe konfigurasie gesien word en aanvaar nie tellerinkrementsertifikate wanneer die tellerwaarde kleiner as die minimum waarde is nie. Jy moet alle voorwerpe wat aan 'n teller toegewys is opdateer en die toestel herkonfigureer voordat 'n teller-inkrement kompakte sertifikaat geprogrammeer word.
Voer een van die volgende opdragte uit wat ooreenstem met die tellerinkrementsertifikaat wat jy wil genereer.
quartus_pfg –ccert -o ccert_type=PTS_COUNTER -o teller=<-1:495> unsigned_pts.ccert
quartus_pfg –ccert -o ccert_type=SVN_COUNTER_A -o teller=<-1:63> unsigned_svnA.ccert
quartus_pfg –ccert -o ccert_type=SVN_COUNTER_B -o teller=<-1:63> unsigned_svnB.ccert
quartus_pfg –ccert -o ccert_type=SVN_COUNTER_C -o teller=<-1:63> unsigned_svnC.ccert
quartus_pfg –ccert -o ccert_type=SVN_COUNTER_D -o teller=<-1:63> unsigned_svnD.ccert
'n Tellerwaarde van 1 skep 'n tellerinkrementmagtigingsertifikaat. Programmering van 'n tellerinkrementmagtiging kompakte sertifikaat stel jou in staat om verdere ongetekende tellerinkrementsertifikate te programmeer om die onderskeie teller op te dateer. Jy gebruik die quartus_sign-nutsding om die toonbank kompakte sertifikate op 'n soortgelyke wyse as sleutelkansellasie ID kompakte sertifikate te onderteken.
Jy kan 'n wortelsleutel hash kansellasie kompakte sertifikaat via JTAG, FPGA of HPS posbusse.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 29
4. Toestelvoorsiening 683823 | 2023.05.23
4.7. Veilige data-objekdiens-wortelsleutelvoorsiening
Jy gebruik die Intel Quartus Prime Programmeerder om die Secure Data Object Service (SDOS) wortelsleutel te voorsien. Die Programmeerder laai outomaties die voorsieningsfirmware-helperbeeld om die SDOS-wortelsleutel te voorsien.
quartus_pgm c 1 mjtag –dienswortelsleutel –nie_vlugtige_sleutel
4.8. Sekuriteitsinstelling Sekeringvoorsiening
Gebruik die Intel Quartus Prime Programmeerder om toestelsekuriteitsinstellingsversmeltings te ondersoek en skryf dit na 'n teksgebaseerde .fuse file soos volg:
quartus_pgm -c 1 -mjtag -o “ei;programmering_file.fuse;AGFB014R24B"
Opsies · i: Die Programmeerder laai die voorsiening-firmware-helperbeeld na die toestel. · e: Die Programmeerder lees die lont van die toestel af en stoor dit in 'n .fuse file.
Die .lont file bevat 'n lys van smeltnaam-waarde-pare. Die waarde spesifiseer of 'n lont geblaas is of die inhoud van die lontveld.
Die volgende example wys die formaat van die .fuse file:
# Mede-ondertekende firmware
= "Nie geblaas nie"
# Toestelpermit doodmaak
= "Nie geblaas nie"
# Toestel nie veilig nie
= "Nie geblaas nie"
# Deaktiveer HPS-ontfouting
= "Nie geblaas nie"
# Deaktiveer Intrinsieke ID PUF-inskrywing
= "Nie geblaas nie"
# Deaktiveer JTAG
= "Nie geblaas nie"
# Deaktiveer PUF-omhulde enkripsiesleutel
= "Nie geblaas nie"
# Deaktiveer eienaar-enkripsiesleutel in BBRAM = "Nie geblaas nie"
# Deaktiveer eienaar-enkripsiesleutel in eFuses = "Nie geblaas nie"
# Deaktiveer eienaar se wortel publieke sleutel hash 0
= "Nie geblaas nie"
# Deaktiveer eienaar se wortel publieke sleutel hash 1
= "Nie geblaas nie"
# Deaktiveer eienaar se wortel publieke sleutel hash 2
= "Nie geblaas nie"
# Deaktiveer virtuele eFuses
= "Nie geblaas nie"
# Dwing SDM-klok na interne ossillator = "Nie geblaas nie"
# Dwing enkripsiesleutelopdatering af
= "Nie geblaas nie"
# Intel eksplisiete sleutel kansellasie
= "0"
# Sluit sekuriteit eFuses
= "Nie geblaas nie"
# Eienaar-enkripsiesleutelprogram klaar
= "Nie geblaas nie"
# Eienaar-enkripsiesleutelprogram begin
= "Nie geblaas nie"
# Eienaar eksplisiete sleutel kansellasie 0
= ""
# Eienaar eksplisiete sleutel kansellasie 1
= ""
# Eienaar eksplisiete sleutel kansellasie 2
= ""
# Eienaar versmelt
=
"0x00000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000
0000000000000000000000"
# Eienaar se wortel publieke sleutel hash 0
=
"0x00000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000"
# Eienaar se wortel publieke sleutel hash 1
=
"0x00000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000"
# Eienaar se wortel publieke sleutel hash 2
=
"0x00000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000"
# Eienaar se wortel publieke sleutel grootte
= "Geen"
# PTS-toonbank
= "0"
# PTS-toonbankbasis
= "0"
Intel Agilex® 7 Device Security Gebruikersgids 30
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
# QSPI-opstartvertraging # RMA-teller # SDMIO0 is I2C # SVN-teller A # SVN-teller B # SVN-teller C # SVN-teller D
= “10ms” = “0” = “Nie geblaas nie” = “0” = “0” = “0” = “0”
Wysig die .fuse file om jou gewenste sekuriteitsinstelling te stel. 'n Reël wat met # begin, word as 'n opmerkingreël behandel. Om 'n sekuriteitsinstellingsekering te programmeer, verwyder die voorste # en stel die waarde op Blown. Byvoorbeeldample, verander die eerste reël van die lont om die mede-ondertekende Firmware-sekuriteitsinstelling-lont te aktiveer file aan die volgende:
Mede-ondertekende firmware = "Geblaas"
Jy kan ook die Eienaar-versmeltings toewys en programmeer op grond van jou vereistes.
U kan die volgende opdrag gebruik om 'n leë tjek uit te voer, te programmeer en die eienaar se wortel publieke sleutel te verifieer:
quartus_pgm -c 1 -mjtag -o "ibpv;root0.qky"
Opsies · i: Laai die voorsieningsfirmware-helperbeeld na die toestel. · b: Voer 'n blanko tjek uit om te verifieer dat die gewenste sekuriteitsinstelling sekerings nie is nie
reeds geblaas. · p: Programmeer die lont. · v: Verifieer die geprogrammeerde sleutel op die toestel.
Na die programmering van die .qky file, kan jy die lont-inligting ondersoek deur die lont-inligting weer na te gaan om te verseker dat beide die eienaar se publieke sleutel-hash en die eienaar se publieke sleutel-grootte nie-nul waardes het.
Terwyl die volgende velde nie deur die .fuse geskryf kan word nie file metode, word hulle ingesluit tydens die ondersoekoperasie-uitset vir verifikasie: · Toestel nie veilig · Toestelpermit doodmaak · Deaktiveer eienaar se wortel publieke sleutel hash 0 · Deaktiveer eienaar root publieke sleutel hash 1 · Deaktiveer eienaar root publieke sleutel hash 2 · Intel sleutel kansellasie · Eienaar-enkripsiesleutelprogram begin · Eienaar-enkripsiesleutelprogram klaar · Eienaarsleutelkansellasie · Eienaar se publieke sleutel-hash · Eienaar se publieke sleutelgrootte · Eienaar-wortel-publieke sleutel-hash 0 · Eienaar-wortel publieke sleutel-hash 1 · Eienaar-wortel publieke sleutel hash 2
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 31
4. Toestelvoorsiening 683823 | 2023.05.23
· PTS-teller · PTS-tellerbasis · QSPI-opstartvertraging · RMA-teller · SDMIO0 is I2C · SVN-teller A · SVN-teller B · SVN-teller C · SVN-teller D
Gebruik die Intel Quartus Prime Programmer om die .fuse te programmeer file terug na die toestel. As jy die i-opsie byvoeg, laai die Programmeerder outomaties die voorsieningsfirmware om die sekuriteitsinstellings te programmeer.
//Vir fisiese (nie-vlugtige) eFuses quartus_pgm -c 1 -mjtag -o "pi; programmering_file.fuse” –nie_vlugtige_sleutel
//Vir virtuele (vlugtige) eFuses quartus_pgm -c 1 -mjtag -o "pi; programmering_file.fuse”
Jy kan die volgende opdrag gebruik om te verifieer of die toestel se wortelsleutelhash dieselfde is as die .qky wat in die opdrag verskaf word:
quartus_pgm -c 1 -mjtag -o “v;root0_another.qky”
As die sleutels nie ooreenstem nie, misluk die Programmeerder met 'n Operasie misluk foutboodskap.
4.9. AES-wortelsleutelvoorsiening
Jy moet 'n getekende AES-wortelsleutel kompakte sertifikaat gebruik om 'n AES-wortelsleutel na 'n Intel Agilex 7-toestel te programmeer.
4.9.1. AES Root Key Compact Sertifikaat
Jy gebruik die quartus_pfg-opdragreëlnutsding om jou AES-wortelsleutel .qek om te skakel file in die kompakte sertifikaat .ccert-formaat. Jy spesifiseer die sleutelbergplek terwyl jy die kompakte sertifikaat skep. Jy kan die quartus_pfg-nutsding gebruik om 'n ongetekende sertifikaat te skep vir latere ondertekening. Jy moet 'n handtekeningketting gebruik met die AES-wortelsleutelsertifikaat-ondertekeningtoestemming, toestemmingbis 6, geaktiveer om 'n AES-wortelsleutel-kompakte sertifikaat suksesvol te onderteken.
Intel Agilex® 7 Device Security Gebruikersgids 32
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
1. Skep 'n bykomende sleutelpaar wat gebruik word om AES-sleutel kompakte sertifikaat te onderteken deur een van die volgende opdragte bvamples:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 aesccert1_private.pem
quartus_sign –family=agilex –operation=make_public_pem aesccert1_private.pem aesccert1_public.pem
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pen –keypairgen meganisme ECDSA-KEY-PAIR-GEN –sleuteltipe EC: secp384r1 –gebruiksteken –etiket aesccert1 –id 2
2. Skep 'n handtekeningketting met die korrekte toestemmingsbisstel deur een van die volgende opdragte te gebruik:
quartus_sign –family=agilex –operation=append_key –previous_pem=root0_private.pem –previous_qky=root0.qky –permission=0x40 –cancel=1 –input_pem=aesccert1_public.pem aesccert1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM -module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2_name” –vorige root0 –previous_qky=root0.qky –permission=0x40 –cancel=1 –input_keyname=aesccert1 aesccert1_sign_chain.qky
3. Skep 'n ongetekende AES kompakte sertifikaat vir die verlangde AES wortel sleutel stoor plek. Die volgende AES-wortelsleutelbergingsopsies is beskikbaar:
· EFUSE_WRAPPED_AES_KEY
· IID_PUF_WRAPPED_AES_KEY
· UDS_IID_PUF_WRAPPED_AES_KEY
· BBRAM_WRAPPED_AES_KEY
· BBRAM_IID_PUF_WRAPPED_AES_KEY
· BBRAM_UDS_IID_PUF_WRAPPED_AES_KEY
//Skep eFuse AES-wortelsleutel ongetekende sertifikaat quartus_pfg –ccert -o ccert_type=EFUSE_WRAPPED_AES_KEY -o qek_file=aes.qek unsigned_efuse1.ccert
4. Teken die kompakte sertifikaat met die quartus_sign-opdrag of verwysingsimplementering.
quartus_sign –family=agilex –operation=sign –pem=aesccert1_private.pem –qky=aesccert1_sign_chain.qky unsigned_ 1.ccert onderteken_ 1.sert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=”–token_label=agilex-token –user_pin=agilex-token-pen –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so”
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 33
4. Toestelvoorsiening 683823 | 2023.05.23
–sleutelnaam=aesccert1 –qky=aesccert1_teken_ketting.qky unsigned_ 1.ccert onderteken_ 1.ccert
5. Gebruik die Intel Quartus Prime Programmeerder om die AES-wortelsleutel kompakte sertifikaat te programmeer na die Intel Agilex 7-toestel via JTAG. Die Intel Quartus Prime Programmeerder programmeer verstek virtuele eFuses wanneer die EFUSE_WRAPPED_AES_KEY kompakte sertifikaattipe gebruik word.
Jy voeg die –non_volatile_key opsie by om programmering fisiese lont te spesifiseer.
//Vir fisiese (nie-vlugtige) eFuse AES-wortelsleutel quartus_pgm -c 1 -mjtag -o “pi;signed_efuse1.ccert” –non_volatile_key
//Vir virtuele (vlugtige) eFuse AES-wortelsleutel quartus_pgm -c 1 -mjtag -o “pi;signed_efuse1.ccert”
//Vir BBRAM AES wortelsleutel quartus_pgm -c 1 -mjtag -o “pi;signed_bbram1.ccert”
Die SDM-verskaffingsfirmware en hooffirmware ondersteun AES-wortelsleutelsertifikaatprogrammering. Jy kan ook die SDM-posbuskoppelvlak vanaf die FPGA-stof of HPS gebruik om 'n AES-wortelsleutelsertifikaat te programmeer.
Let wel:
Die quartus_pgm-opdrag ondersteun nie opsies b en v vir kompakte sertifikate (.ccert).
4.9.2. Intrinsieke ID® PUF AES-wortelsleutelvoorsiening
Die implementering van die Intrinsieke* ID PUF-omhulde AES-sleutel sluit die volgende stappe in: 1. Inskryf van die Intrinsieke ID PUF via JTAG. 2. Wikkel die AES-wortelsleutel. 3. Programmering van die helper data en toegedraai sleutel in quad SPI flash geheue. 4. Besoek die Intrinsieke ID PUF-aktiveringstatus.
Die gebruik van Intrinsieke ID-tegnologie vereis 'n aparte lisensie-ooreenkoms met Intrinsieke ID. Intel Quartus Prime Pro Edition-sagteware beperk PUF-bedrywighede sonder die toepaslike lisensie, soos inskrywing, sleutelomvou en PUF-dataprogrammering tot QSPI-flits.
4.9.2.1. Intrinsieke ID PUF-inskrywing
Om die PUF in te skryf, moet jy die SDM-verskaffingsfirmware gebruik. Die voorsieningsfirmware moet die eerste firmware wees wat na 'n kragsiklus gelaai word, en jy moet die PUF-inskrywingsbevel voor enige ander opdrag uitreik. Die voorsieningsfirmware ondersteun ander opdragte na PUF-inskrywing, insluitend AES-wortelsleutelomvou en programmering van quad SPI, maar jy moet die toestel aanskakel om 'n konfigurasiebitstroom te laai.
Jy gebruik die Intel Quartus Prime Programmer om PUF-inskrywing te aktiveer en die PUF-helperdata .puf te genereer file.
Intel Agilex® 7 Device Security Gebruikersgids 34
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Figuur 7.
Intrinsieke ID PUF-inskrywing
quartus_pgm PUF Inskrywing
Inskrywing PUF helper data
Veilige toestelbestuurder (SDM)
wrapper.puf Helper Data
Die Programmeerder laai outomaties 'n voorsiening-firmware-helperbeeld wanneer jy beide die i-operasie en 'n .puf-argument spesifiseer.
quartus_pgm -c 1 -mjtag -o “ei;help_data.puf;AGFB014R24A”
As jy mede-ondertekende firmware gebruik, programmeer jy die mede-ondertekende firmware-helperbeeld voordat jy die PUF-inskrywingsbevel gebruik.
quartus_pgm -c 1 -mjtag -o “p;signed_provision_helper_image.rbf” –force quartus_pgm -c 1 -mjtag -o "e;help_data.puf;AGFB014R24A"
Die UDS IID PUF word tydens toestelvervaardiging ingeskryf en is nie beskikbaar vir herregistrasie nie. In plaas daarvan gebruik jy die Programmeerder om die ligging van die UDS PUF-helperdata op IPCS te bepaal, laai die .puf af file direk, en gebruik dan die UDS .puf file op dieselfde wyse as die .puf file uit 'n Intel Agilex 7-toestel onttrek.
Gebruik die volgende Programmeerder-opdrag om 'n teks te genereer file bevat 'n lys van URLs wat na toestelspesifiek wys files op IPCS:
quartus_pgm -c 1 -mjtag -o “e;ipcs_urls.txt;AGFB014R24B” –ipcs_urls
4.9.2.2. Wikkel die AES-wortelsleutel
Jy genereer die IID PUF toegedraaide AES-wortelsleutel .wkey file deur 'n getekende sertifikaat aan die SDM te stuur.
Jy kan die Intel Quartus Prime Programmeerder gebruik om die sertifikaat outomaties te genereer, te onderteken en te stuur om jou AES-wortelsleutel toe te draai, of jy kan die Intel Quartus Prime Programmering gebruik File Generator om 'n ongetekende sertifikaat te genereer. Jy teken die ongetekende sertifikaat met jou eie gereedskap of die Quartus-ondertekeninginstrument. Jy gebruik dan die Programmeerder om die getekende sertifikaat te stuur en jou AES-wortelsleutel toe te draai. Die getekende sertifikaat kan gebruik word om alle toestelle te programmeer wat die handtekeningketting kan valideer.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 35
4. Toestelvoorsiening 683823 | 2023.05.23
Figuur 8.
Wikkel die AES-sleutel met die Intel Quartus Prime-programmeerder
.pem Privaat
Sleutel
.qky
quartus_pgm
Wikkel AES-sleutel
AES.QSKigYnature RootCPhuabilnic Sleutel
Genereer PUF-verpakte sleutel
Toegedraaide AES-sleutel
SDM
.qek Enkripsie
Sleutel
.wkey PUF-toegedraai
AES sleutel
1. Jy kan die IID PUF toegedraaide AES-wortelsleutel (.wkey) met die Programmeerder genereer deur die volgende argumente te gebruik:
· Die .qky file wat 'n handtekeningketting met AES-wortelsleutelsertifikaat-toestemming bevat
· Die private .pem file vir die laaste sleutel in die handtekeningketting
· Die .qek file hou die AES-wortelsleutel in
· Die 16-grepe inisialiseringsvektor (iv).
quartus_pgm -c 1 -mjtag –qky_file=aes0_teken_ketting.qky –pem_file=aes0_sign_private.pem –qek_file=aes.qek –iv=1234567890ABCDEF1234567890ABCDEF -o “ei;aes.wkey;AGFB014R24A”
2. Alternatiewelik kan jy 'n ongetekende IID PUF-verpakking AES-wortelsleutelsertifikaat genereer met die programmering File Generator wat die volgende argumente gebruik:
quartus_pfg –ccert -o ccert_type=IID_PUF_WRAPPED_AES_KEY -o qek_file=aes.qek –iv=1234567890ABCDEF1234567890ABCDEF unsigned_aes.ccert
3. Jy teken die ongetekende sertifikaat met jou eie ondertekeningsinstrumente of die quartus_sign-instrument deur die volgende opdrag te gebruik:
quartus_sign –family=agilex –operation=sign –qky=aes0_sign_chain.qky –pem=aes0_sign_private.pem unsigned_aes.ccert signed_aes.ccert
4. Jy gebruik dan die Programmeerder om die getekende AES-sertifikaat te stuur en die toegedraaide sleutel (.wkey) terug te stuur file:
kwarts_pgm -c 1 -mjtag –ccert_file=signed_aes.ccert -o “ei;aes.wkey;AGFB014R24A”
Let wel: Die i-bewerking is nie nodig as jy voorheen die voorsiening-firmware-helperbeeld gelaai het nie, bvample, om die PUF in te skryf.
4.9.2.3. Programmering van Helper Data en toegedraaide sleutel tot QSPI Flash Memory
Jy gebruik die Quartus-programmering File Generator grafiese koppelvlak om 'n aanvanklike QSPI-flitsbeeld te bou wat 'n PUF-partisie bevat. Jy moet 'n hele flitsprogrammeringsbeeld genereer en programmeer om 'n PUF-partisie by die QSPI-flits te voeg. Die skepping van die PUF
Intel Agilex® 7 Device Security Gebruikersgids 36
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Figuur 9.
datapartisie en gebruik van die PUF-helperdata en toegedraaide sleutel files vir flitsbeeldgenerering word nie deur die programmering ondersteun nie File Generator command line koppelvlak.
Die volgende stappe demonstreer die bou van 'n flitsprogrammeringsbeeld met die PUF-helperdata en toegedraaide sleutel:
1. Op die File kieslys, klik Programmering File Generator. Op die Uitset Files oortjie maak die volgende keuses:
a. Kies Agilex 7 vir Device Family.
b. Kies Active Serial x4 vir konfigurasiemodus.
c. Blaai na jou uitset vir Uitvoergids file gids. Hierdie example gebruik uitvoer_files.
d. Vir Naam, spesifiseer 'n naam vir die programmering file gegenereer te word. Hierdie example gebruik uitvoer_file.
e. Kies die programmering onder Beskrywing files te genereer. Hierdie example genereer die JTAG Indirekte konfigurasie File (.jic) vir toestelkonfigurasie en die Raw Binary File van Programmering Helper Image (.rbf) vir toestel helper beeld. Hierdie example kies ook die opsionele Memory Map File (.map) en rou programmeringsdata File (.rpd). Die rou programmeringsdata file is slegs nodig as u van plan is om 'n derdeparty-programmeerder in die toekoms te gebruik.
Programmering File Generator – Uitset Files Tab – Kies JTAG Indirekte konfigurasie
Toestelfamiliekonfigurasiemodus
Uitset file oortjie
Uitvoergids
JTAG Indirekte (.jic) Geheuekaart File Programmering Helper Rou Programmering Data
Op die Invoer Files oortjie, maak die volgende keuses: 1. Klik Voeg Bitstream by en blaai na jou .sof. 2. Kies jou .sof file en klik dan op Eienskappe.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 37
4. Toestelvoorsiening 683823 | 2023.05.23
a. Skakel Aktiveer ondertekeningnutsding aan. b. Vir privaat sleutel file kies jou .pem file. c. Skakel Finaliseer enkripsie aan. d. Vir enkripsiesleutel file kies jou .qek file. e. Klik OK om terug te keer na die vorige venster. 3. Om jou PUF helper data te spesifiseer file, klik Voeg rou data by. Verander die Files van tipe aftreklys na Quartus Physical Unclonable Function File (*.puf). Blaai na jou .puf file. As jy beide die IID PUF en die UDS IID PUF gebruik, herhaal hierdie stap sodat .puf files vir elke PUF word as invoer bygevoeg files. 4. Om jou toegedraaide AES-sleutel te spesifiseer file, klik Voeg rou data by. Verander die Files van tipe aftreklys na Quartus Wrapped Key File (*.wkey). Blaai na jou .wkey file. As jy AES-sleutels toegedraai het met beide die IID PUF en die UDS IID PUF, herhaal hierdie stap sodat .wkey files vir elke PUF word as invoer bygevoeg files.
Figuur 10. Spesifiseer Invoer Files vir konfigurasie, verifikasie en enkripsie
Voeg bitstroom by Voeg rou data by
Eienskappe
Privaat sleutel file
Finaliseer enkripsie Enkripsiesleutel
Op die Configuration Device-oortjie, maak die volgende keuses: 1. Klik Voeg Toestel by en kies jou flitstoestel uit die lys beskikbare flitser
toestelle. 2. Kies die konfigurasie toestel wat jy sopas bygevoeg het en klik Voeg partisie by. 3. In die Wysig partisie dialoogkassie vir die invoer file en kies jou .sof uit die
drop down list. U kan die verstekwaardes behou of die ander parameters wysig in die dialoogkassie Wysig partisie.
Intel Agilex® 7 Device Security Gebruikersgids 38
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Figuur 11. Spesifikasie van jou .sof-konfigurasie-bitstroompartisie
Konfigurasie toestel
Wysig partisie Voeg .sof file
Voeg partisie by
4. Wanneer jy die .puf en .wkey as invoer byvoeg files, die programmering File Generator skep outomaties 'n PUF partisie in jou konfigurasie toestel. Om die .puf en .wkey in die PUF-partisie te stoor, kies die PUF-partisie en klik Edit. Kies jou .puf en .wkey in die Wysig partisie dialoogkassie files van die aftreklyste. As jy die PUF-partisie verwyder, moet jy die konfigurasietoestel vir die programmering verwyder en weer byvoeg File Generator om nog 'n PUF-partisie te skep. Jy moet seker maak dat jy die korrekte .puf en .wkey kies file vir die IID PUF en UDS IID PUF, onderskeidelik.
Figuur 12. Voeg die .puf en .wkey by files na die PUF-partisie
PUF partisie
Wysig
Wysig partisie
Flitslaaier
Kies Genereer
5. Vir die Flash Loader-parameter kies die Intel Agilex 7-toestelfamilie en toestelnaam wat by jou Intel Agilex 7 OPN pas.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 39
4. Toestelvoorsiening 683823 | 2023.05.23
6. Klik Genereer om die uitset te genereer files wat jy op die Uitset gespesifiseer het Files-oortjie.
7. Die programmering File Generator lees jou .qek file en vra jou vir jou wagwoordfrase. Tik jou wagwoordfrase in reaksie op die Voer QEK-wagfrase-prompt in. Klik die Enter-sleutel.
8. Klik OK wanneer die Programmering File Generator rapporteer suksesvolle generasie.
Jy gebruik die Intel Quartus Prime Programmeerder om die QSPI-programmeringsbeeld na QSPI-flitsgeheue te skryf. 1. Kies Programmer op die Intel Quartus Prime Tools-kieslys. 2. In die Programmeerder, klik Hardware Setup en kies dan 'n gekoppelde Intel
FPGA aflaai kabel. 3. Klik Voeg by File en blaai na jou .jic file.
Figuur 13. Program .jic
Programmering file
Program/konfigureer
JTAG skandeer ketting
4. Ontkies die blokkie wat met die Helper-prent geassosieer word. 5. Kies Program/Configure vir die .jic-uitvoer file. 6. Skakel die Start-knoppie aan om jou quad SPI-flitsgeheue te programmeer. 7. Krag siklus jou bord. Die ontwerp geprogrammeer na die quad SPI-flitsgeheue
toestel laai daarna in die teiken FPGA.
Jy moet 'n hele flitsprogrammeringsbeeld genereer en programmeer om 'n PUF-partisie by die quad SPI-flits te voeg.
Wanneer 'n PUF-partisie reeds in die flits bestaan, is dit moontlik om die Intel Quartus Prime Programmer te gebruik om direk toegang tot die PUF-helperdata en toegedraaide sleutel te verkry files. Byvoorbeeldample, as aktivering onsuksesvol is, is dit moontlik om die PUF weer in te skryf, die AES-sleutel te hervou en daarna slegs die PUF te programmeer files sonder om die hele flits te oorskryf.
Intel Agilex® 7 Device Security Gebruikersgids 40
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Die Intel Quartus Prime Programmeerder ondersteun die volgende bewerkingsargument vir PUF files in 'n reeds bestaande PUF partisie:
· p: program
· v: verifieer
· r: vee uit
· b: blanko tjek
Jy moet dieselfde beperkings volg vir PUF-inskrywing, selfs al bestaan 'n PUF-partisie.
1. Gebruik die i-operasie-argument om die voorsieningsfirmware-helperbeeld vir die eerste bewerking te laai. Byvoorbeeldample, die volgende opdragvolgorde skryf die PUF weer in, hervou die AES-wortelsleutel, vee die ou PUF-helperdata en toegedraaide sleutel uit, programmeer en verifieer dan die nuwe PUF-helperdata en AES-wortelsleutel.
quartus_pgm -c 1 -mjtag -o “ei;new.puf;AGFB014R24A” quartus_pgm -c 1 -mjtag –ccert_file=signed_aes.ccert -o “e;new.wkey;AGFB014R24A” quartus_pgm -c 1 -mjtag -o “r;old.puf” quartus_pgm -c 1 -mjtag -o “r;old.wkey” quartus_pgm -c 1 -mjtag -o “p;new.puf” quartus_pgm -c 1 -mjtag -o “p;new.wkey” quartus_pgm -c 1 -mjtag -o “v;new.puf” quartus_pgm -c 1 -mjtag -o "v;new.wkey"
4.9.2.4. Doen navraag oor intrinsieke ID PUF-aktiveringstatus
Nadat jy die Intrinsieke ID PUF ingeskryf het, draai 'n AES-sleutel in, genereer die flitsprogrammering files, en werk die quad SPI-flits op, skakel jy jou toestel aan om PUF-aktivering en -konfigurasie vanaf die geënkripteerde bitstroom te aktiveer. Die SDM rapporteer die PUF-aktiveringstatus saam met die konfigurasiestatus. As PUF-aktivering misluk, rapporteer die SDM eerder die PUF-foutstatus. Gebruik die quartus_pgm-opdrag om die konfigurasiestatus navraag te doen.
1. Gebruik die volgende opdrag om die aktiveringstatus navraag te doen:
quartus_pgm -c 1 -mjtag –status –status_type="CONFIG"
Hier is sample uitset vanaf 'n suksesvolle aktivering:
Inligting (21597): Antwoord van CONFIG_STATUS-toestel loop in gebruikersmodus 00006000 RESPONSE_CODE=OK, LENGTH=6 00000000 STATE=IDLE 00160300 Weergawe C000007B MSEL=QSPI_NORMAL=1,=STANFIG=1,=STANFIG
CLOCK_SOURCE=INTERNAL_PLL 0000000B CONF_DONE=1, INIT_DONE=1, CVP_DONE=0, SEU_ERROR=1 00000000 Foutligging 00000000 Foutbesonderhede Antwoord van PUF_STATUS 00002000C2=00000500 USER_IID STATUS=PUF_ACTIVATION_SUCCESS,
RELIABILITY_DIAGNOSTIC_SCORE=5, TEST_MODE=0 00000500 UDS_IID STATUS=PUF_ACTIVATION_SUCCESS,
RELIABILITY_DIAGNOSTIC_SCORE=5, TEST_MODE=0
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 41
4. Toestelvoorsiening 683823 | 2023.05.23
As jy net óf die IID PUF óf die UDS IID PUF gebruik en nie 'n helperdata .puf geprogrammeer het nie file vir enige PUF in die QSPI-flits, word daardie PUF nie geaktiveer nie en die PUF-status weerspieël dat PUF-helperdata nie geldig is nie. Die volgende example wys die PUF-status wanneer die PUF-helperdata nie vir enige PUF geprogrammeer is nie:
Reaksie van PUF_STATUS 00002000 RESPONSE_CODE=OK, LENGTH=2 00000002 USER_IID STATUS=PUF_DATA_CORRUPTED,
RELIABILITY_DIAGNOSTIC_SCORE=0, TEST_MODE=0 00000002 UDS_IID STATUS=PUF_DATA_CORRUPTED,
RELIABILITY_DIAGNOSTIC_SCORE=0, TEST_MODE=0
4.9.2.5. Ligging van die PUF in Flash Memory
Die ligging van die PUF file is anders vir ontwerpe wat RSU ondersteun en ontwerpe wat nie die RSU-kenmerk ondersteun nie.
Vir ontwerpe wat nie RSU ondersteun nie, moet jy die .puf en .wkey insluit files wanneer jy opgedateerde flitsbeelde skep. Vir ontwerpe wat RSU ondersteun, oorskryf die SDM nie die PUF-dataafdelings tydens fabrieks- of toepassingsbeeldopdaterings nie.
Tabel 2.
Flits-subpartisies-uitleg sonder RSU-ondersteuning
Flitsverstelling (in grepe)
Grootte (in grepe)
Inhoud
Beskrywing
0K 256K
256K 256K
Konfigurasie Bestuur Firmware Konfigurasie Bestuur Firmware
Firmware wat op SDM loop.
512K
256K
Konfigurasiebestuur-firmware
768K
256K
Konfigurasiebestuur-firmware
1M
32K
PUF data kopie 0
Datastruktuur vir die stoor van PUF-helperdata en PUF-omhulde AES-wortelsleutelkopie 0
1M+32K
32K
PUF data kopie 1
Datastruktuur vir die stoor van PUF-helperdata en PUF-omhulde AES-wortelsleutelkopie 1
Tabel 3.
Flits-subpartisies-uitleg met RSU-ondersteuning
Flitsverstelling (in grepe)
Grootte (in grepe)
Inhoud
Beskrywing
0K 512K
512K 512K
Besluit firmware Besluit firmware
Firmware om die hoogste prioriteit beeld te identifiseer en te laai.
1M 1.5M
512K 512K
Besluit firmware Besluit firmware
2M
8K + 24K
Besluit firmware data
Opvulling
Gereserveer vir Besluit-firmwaregebruik.
2M + 32K
32K
Gereserveer vir SDM
Gereserveer vir SDM.
2M + 64K
Veranderlik
Fabrieksbeeld
'n Eenvoudige prent wat jy as 'n rugsteun skep as alle ander toepassingsbeelde nie kan laai nie. Hierdie beeld sluit die CMF in wat op die SDM loop.
Volgende
32K
PUF data kopie 0
Datastruktuur vir die stoor van PUF-helperdata en PUF-omhulde AES-wortelsleutelkopie 0
voortgesit …
Intel Agilex® 7 Device Security Gebruikersgids 42
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Flitsverstelling (in grepe)
Grootte (in grepe)
Volgende +32K 32K
Inhoud PUF data kopie 1
Volgende + 256K 4K Volgende +32K 4K Volgende +32K 4K
Sub-partisie tabel kopie 0 Sub-partisie tabel kopie 1 CMF wyser blok kopie 0
Volgende +32K _
CMF wyser blok kopie 1
Veranderlike Veranderlike
Veranderlike Veranderlike
Toepassingsbeeld 1 Toepassingsbeeld 2
4.9.3. Swart Sleutel Voorsiening
Beskrywing
Datastruktuur vir die stoor van PUF-helperdata en PUF-omhulde AES-wortelsleutelkopie 1
Datastruktuur om die bestuur van die flitsberging te vergemaklik.
'n Lys met verwysings na toepassingsbeelde in volgorde van prioriteit. Wanneer jy 'n prent byvoeg, word daardie prent die hoogste.
'n Tweede kopie van die lys wysers na toepassingsbeelde.
Jou eerste toepassingsbeeld.
Jou tweede toepassingsbeeld.
Let wel:
Die Intel Quartus PrimeProgrammer help met die vestiging van 'n wedersyds geverifieerde veilige verbinding tussen die Intel Agilex 7-toestel en die swartsleutel-voorsieningsdiens. Die veilige verbinding word via https tot stand gebring en vereis verskeie sertifikate wat met 'n teks geïdentifiseer word file.
Wanneer jy Black Key Provisioning gebruik, beveel Intel aan dat jy vermy om die TCK-pen ekstern te koppel om 'n weerstand op of af te trek terwyl jy dit steeds vir J gebruikTAG. U kan egter die TCK-pen aan die VCCIO SDM-kragbron koppel deur 'n 10 k-weerstand te gebruik. Die bestaande riglyne in die penverbindingsriglyne om TCK aan 'n 1 k aftrekweerstand te koppel, is ingesluit vir geraasonderdrukking. Die verandering in leiding na 'n 10 k optrekweerstand beïnvloed nie die toestel funksioneel nie. Vir meer inligting oor die koppeling van die TCK-pen, verwys na Intel Agilex 7 Pin Connection Guidelines.
Thebkp_tls_ca_certificate staaf jou swart sleutel voorsiening diens instansie na jou swart sleutel voorsiening programmeerder instansie. Thebkp_tls_*sertifikate staaf jou swart sleutel voorsiening programmeerder instansie na jou swart sleutel voorsiening diens instansie.
Jy skep 'n teks file wat die nodige inligting bevat vir die Intel Quartus Prime Programmeerder om aan die swartsleutelvoorsieningdiens te koppel. Om swartsleutelvoorsiening te inisieer, gebruik die Programmeerder-opdragreëlkoppelvlak om die swartsleutelvoorsieningopsiesteks te spesifiseer file. Die voorsiening van swart sleutels gaan dan outomaties voort. Kontak asseblief Intel Ondersteuning vir toegang tot die swart sleutel voorsieningsdiens en gepaardgaande dokumentasie.
U kan die voorsiening van die swart sleutel aktiveer met behulp van thequartus_pgmcommand:
quartus_pgm -c -m -toestel –bkp_options=bkp_options.txt
Die opdragargumente spesifiseer die volgende inligting:
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 43
4. Toestelvoorsiening 683823 | 2023.05.23
· -c: kabelnommer · -m: spesifiseer die programmeringsmodus soos JTAG · –toestel: spesifiseer 'n toestelindeks op die JTAG ketting. Verstekwaarde is 1. · –bkp_options: spesifiseer 'n teks file wat swart sleutel voorsiening opsies bevat.
Verwante inligting Intel Agilex 7 Device Family Pin Connection Riglyne
4.9.3.1. Swart Sleutel Voorsiening Opsies
Die swart sleutel voorsiening opsies is 'n teks file deur die quartus_pgm-opdrag aan die Programmeerder oorgedra. Die file bevat vereiste inligting om swartsleutelvoorsiening te aktiveer.
Die volgende is 'n example van die bkp_options.txt file:
bkp_cfg_id = 1 bkp_ip = 192.167.1.1 bkp_port = 10034 bkp_tls_ca_cert = root.cert bkp_tls_prog_cert = prog.cert bkp_tls_prog_key = prog_key.pem bkp_keytls = bkp_key_1234 192.167.5.5:5000 bkp_proxy_user = proxy_user bkp_proxy_password = proxy_password
Tabel 4.
Swart Sleutel Voorsiening Opsies
Hierdie tabel wys die opsies wat nodig is om swartsleutelvoorsiening te aktiveer.
Opsie Naam
Tik
Beskrywing
bkp_ip
Vereis
Spesifiseer die bediener-IP-adres wat die swartsleutelvoorsieningdiens bestuur.
bkp_poort
Vereis
Spesifiseer swart sleutel voorsiening dienspoort wat nodig is om aan die bediener te koppel.
bkp_cfg_id
Vereis
Identifiseer die swart sleutel voorsiening konfigurasie vloei ID.
Swart sleutel voorsieningsdiens skep die swart sleutel voorsiening konfigurasie vloei insluitend 'n AES wortel sleutel, gewenste eFuse instellings en ander swart sleutel voorsiening magtiging opsies. Die nommer wat tydens die swartsleutel-voorsieningdiensopstelling toegeken is, identifiseer die swartsleutel-voorsieningkonfigurasievloei.
Let wel: Veelvuldige toestelle kan verwys na dieselfde swart sleutel voorsiening diens konfigurasie vloei.
bkp_tls_ca_cert
Vereis
Die wortel-TLS-sertifikaat wat gebruik word om die verskaffingsdienste vir swart sleutels aan die Intel Quartus Prime Programmer (programmeerder) te identifiseer. 'n Betroubare sertifikaatowerheid vir die swartsleutelvoorsieningdiensinstansie reik hierdie sertifikaat uit.
As jy die Programmeerder op 'n rekenaar met Microsoft® Windows®-bedryfstelsel (Windows) laat loop, moet jy hierdie sertifikaat in die Windows-sertifikaatstoor installeer.
bkp_tls_prog_cert
Vereis
'n Sertifikaat geskep vir die geval van die swartsleutelvoorsieningprogrammeerder (BKP Programmer). Dit is die https-kliëntsertifikaat wat gebruik word om hierdie BKP-programmeerder-instansie te identifiseer
voortgesit …
Intel Agilex® 7 Device Security Gebruikersgids 44
Stuur terugvoer
4. Toestelvoorsiening 683823 | 2023.05.23
Opsie Naam
Tik
bkp_tls_prog_key
Vereis
bkp_tls_prog_key_pass Opsioneel
bkp_proxy_address bkp_proxy_user bkp_proxy_password
Opsioneel Opsioneel Opsioneel
Beskrywing
aan die swart sleutel voorsieningsdiens. Jy moet hierdie sertifikaat in die swartsleutelvoorsieningdiens installeer en magtig voordat jy 'n swartsleutelvoorsieningsessie begin. As jy die programmeerder op Windows laat loop, is hierdie opsie nie beskikbaar nie. In hierdie geval sluit die bkp_tls_prog_key reeds hierdie sertifikaat in.
Die private sleutel wat ooreenstem met die BKP Programmeerder-sertifikaat. Die sleutel bekragtig die identiteit van die BKP Programmeerder-instansie tot swartsleutelvoorsieningdiens. As jy die programmeerder op Windows laat loop, sal die .pfx file kombineer die bkp_tls_prog_cert-sertifikaat en die private sleutel. Die bkp_tlx_prog_key opsie slaag die .pfx file in die bkp_options.txt file.
Die wagwoord vir die bkp_tls_prog_key private sleutel. Nie nodig in die swart sleutel voorsiening konfigurasie opsies (bkp_options.txt) teks file.
Spesifiseer die instaanbediener URL adres.
Spesifiseer die proxy-bediener gebruikersnaam.
Spesifiseer die instaanbediener-verifikasiewagwoord.
4.10. Omskakeling van eienaarwortelsleutel, AES-wortelsleutelsertifikate en lont files aan Jam STAPL File Formate
Jy kan die quartus_pfg-opdragreëlopdrag gebruik om .qky, AES-wortelsleutel .ccert en .fuse om te skakel files na Jam STAPL-formaat File (.jam) en Jam Byte Code Format File (.jbc). Jy kan hierdie gebruik files om Intel FPGA's te programmeer deur onderskeidelik die Jam STAPL Player en die Jam STAPL Byte-Code Player te gebruik.
'n Enkele .jam of .jbc bevat verskeie funksies, insluitend 'n firmware-helperbeeldkonfigurasie en -program, blanko tjek en verifikasie van sleutel- en lontprogrammering.
Waarskuwing:
Wanneer jy die AES-wortelsleutel .ccert omskakel file na .jam-formaat, die .jam file bevat die AES-sleutel in gewone teks, maar verduisterde vorm. Gevolglik moet jy die .jam beskerm file wanneer die AES-sleutel gestoor word. U kan dit doen deur die AES-sleutel in 'n veilige omgewing te voorsien.
Hier is eksamples van quartus_pfg-omskakelingsopdragte:
quartus_pfg -c -o helper_device = agfb014r24a “root0.qky; root1.qky; root2.qky” rootkey.jam quartus_pfg -c -o helper_device = agfb014r24a “root0.qky; root1.qky; root2.qky” rootkey.jbccus_pfg -wortelwortel; c -o helper_device=AGFB014R24A aes.ccert aes_ccert.jam quartus_pfg -c -o helper_device=AGFB014R24A aes.ccert aes_ccert.jbc quartus_pfg -c -o helper_device_AGF -o helper_device=AGFB014R24A instellings. fuse settings_fuse.jbc
Vir meer inligting oor die gebruik van die Jam STAPL Player vir toestelprogrammering, verwys na AN 425: Gebruik van die Command-Line Jam STAPL-oplossing vir toestelprogrammering.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 45
4. Toestelvoorsiening 683823 | 2023.05.23
Voer die volgende opdragte uit om die eienaar se wortel publieke sleutel en AES enkripsiesleutel te programmeer:
//Om die hulpbitstroom in die FPGA te laai. // Die helper-bitstroom sluit voorsieningsfirmware in quartus_jli -c 1 -a CONFIGURE RootKey.jam
//Om die eienaar se wortel publieke sleutel in virtuele eFuses te programmeer quartus_jli -c 1 -a PUBKEY_PROGRAM RootKey.jam
//Om die eienaar se wortel publieke sleutel in fisiese eFuses te programmeer quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_EFUSES_FLAG RootKey.jam
//Om die PR-eienaar se wortel publieke sleutel in virtuele eFuses te programmeer quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_PR_PUBKEY_FLAG pr_rootkey.jam
//Om die PR-eienaar se wortel publieke sleutel in fisiese eFuses te programmeer quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_PR_PUBKEY_FLAG -e DO_UNI_ACT_DO_EFUSES_FLAG pr_rootkey.jam
//Om die AES-enkripsiesleutel CCERT in BBRAM quartus_jli -c 1 -a CCERT_PROGRAM EncKeyBBRAM.jam te programmeer
//Om die AES-enkripsiesleutel CCERT in fisiese eFuses te programmeer quartus_jli -c 1 -a CCERT_PROGRAM -e DO_UNI_ACT_DO_EFUSES_FLAG EncKeyEFuse.jam
Verwante inligting AN 425: Gebruik die Command-Line Jam STAPL-oplossing vir toestelprogrammering
Intel Agilex® 7 Device Security Gebruikersgids 46
Stuur terugvoer
683823 | 2023.05.23 Stuur terugvoer
Gevorderde kenmerke
5.1. Veilige ontfoutmagtiging
Om veilige ontfoutmagtiging te aktiveer, moet die ontfouteienaar 'n stawingsleutelpaar genereer en die Intel Quartus Prime Pro Programmeerder gebruik om 'n toestelinligting te genereer file vir die toestel wat die ontfoutingsbeeld laat loop:
quartus_pgm -c 1 -mjtag -o "ei;device_info.txt;AGFB014R24A" -dev_info
Die toesteleienaar gebruik die quartus_sign-nutsding of die verwysingsimplementering om 'n voorwaardelike publieke sleutelinskrywing by 'n handtekeningketting te voeg wat bedoel is vir ontfoutingsbewerkings deur die publieke sleutel van die ontfouteienaar, die nodige magtigings, die toestelinligtingteks te gebruik file, en toepaslike verdere beperkings:
quartus_sign –family=agilex –operation=append_key –previous_pem=debug_chain_private.pem –previous_qky=debug_chain.qky –permission=0x6 –cancel=1 –dev_info=device_info.txt –restriction=”1,2,17,18_pem=input_ debug_authorization_public_key.pem secure_debug_auth_chain.qky
Die toesteleienaar stuur die volledige handtekeningketting terug na die ontfouteienaar, wat die handtekeningketting en hul private sleutel gebruik om die ontfoutingsprent te onderteken:
quartus_sign –family=agilex –operation=sign –qky=secure_debug_auth_chain.qky –pem=debug_authorization_private_key.pem unsigned_debug_design.rbf Authorized_debug_design.rbf
Jy kan die quartus_pfg-opdrag gebruik om die handtekeningketting van elke afdeling van hierdie ondertekende veilige ontfoutbitstroom soos volg te inspekteer:
quartus_pfg –check_integrity Authorized_debug_design.rbf
Die uitvoer van hierdie opdrag druk die beperkingswaardes 1,2,17,18 van die voorwaardelike publieke sleutel wat gebruik is om die getekende bitstroom te genereer.
Die ontfouteienaar kan dan die veilig gemagtigde ontfoutontwerp programmeer:
quartus_pgm -c 1 -mjtag -o “p;authorized_debug_design.rbf”
Die toesteleienaar kan die veilige ontfoutmagtiging herroep deur die eksplisiete sleutelkansellasie-ID wat in die veilige ontfoutmagtiging-handtekeningketting toegeken is, te kanselleer.
5.2. HPS Ontfoutingsertifikate
Aktiveer slegs gemagtigde toegang tot die HPS-ontfouttoegangpoort (DAP) via JTAG koppelvlak vereis verskeie stappe:
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
5. Gevorderde kenmerke 683823 | 2023.05.23
1. Klik op die Intel Quartus Prime-sagtewareopdragte-kieslys en kies Toestel Toestel- en Pin-opsies-konfigurasie-oortjie.
2. Aktiveer die HPS-ontfouttoegangpoort (DAP) in die Konfigurasie-oortjie deur óf HPS-penne óf SDM-penne uit die aftrekkieslys te kies, en verseker dat die Laat HPS-ontfouting sonder sertifikate-merkblokkie nie gekies is nie.
Figuur 14. Spesifiseer óf HPS- óf SDM-penne vir die HPS DAP
HPS-ontfouttoegangpoort (DAP)
Alternatiewelik kan jy die opdrag hieronder in die Quartus Prime-instellings .qsf stel file:
set_global_assignment -naam HPS_DAP_SPLIT_MODE "SDM PINS"
3. Stel saam en laai die ontwerp met hierdie instellings. 4. Skep 'n handtekeningketting met die toepaslike toestemmings om 'n HPS-ontfouting te teken
sertifikaat:
quartus_sign –family=agilex –operation=append_key –previous_pem=root_private.pem –previous_qky=root.qky –permission=0x8 –cancel=1 –input_pem=hps_debug_cert_public_key.pem hps_debug_qky_sign_chain.
5. Versoek 'n ongetekende HPS-ontfoutsertifikaat van die toestel waar die ontfoutontwerp gelaai is:
quartus_pgm -c 1 -mjtag -o "e;unsigned_hps_debug.cert;AGFB014R24A"
6. Teken die ongetekende HPS-ontfoutingsertifikaat deur die quartus_sign-nutsding of verwysingsimplementering en die HPS-ontfouthandtekeningketting te gebruik:
quartus_sign –family=agilex –operation=teken –qky=hps_debug_cert_sign_chain.qky –pem=hps_debug_cert_private_key.pem unsigned_hps_debug.cert signed_hps_debug.cert
Intel Agilex® 7 Device Security Gebruikersgids 48
Stuur terugvoer
5. Gevorderde kenmerke 683823 | 2023.05.23
7. Stuur die ondertekende HPS-ontfoutingsertifikaat terug na die toestel om toegang tot die HPS-ontfouttoegangpoort (DAP) moontlik te maak:
quartus_pgm -c 1 -mjtag -o “p;signed_hps_debug.cert”
Die HPS-ontfoutsertifikaat is slegs geldig vanaf die tyd dat dit gegenereer is tot die volgende kragsiklus van die toestel of totdat 'n ander tipe of weergawe van SDM-firmware gelaai is. Jy moet die getekende HPS-ontfoutsertifikaat genereer, onderteken en programmeer, en alle ontfoutingsbewerkings uitvoer, voordat jy die toestel aanstuur. Jy kan die ondertekende HPS-ontfoutsertifikaat ongeldig maak deur die toestel aan te skakel.
5.3. Platformverklaring
Jy kan 'n verwysingsintegriteitsmanifes (.rim) genereer file gebruik van die programmering file kragopwekker gereedskap:
quartus_pfg -c signed_encrypted_top.rbf top_rim.rim
Volg hierdie stappe om die platformverklaring in jou ontwerp te verseker: 1. Gebruik die Intel Quartus Prime Pro Programmeerder om jou toestel op te stel met die
ontwerp waarvoor jy 'n verwysingsintegriteitsmanifes geskep het. 2. Gebruik 'n platform attest verifieerder om die toestel in te skryf deur opdragte uit te reik aan die
SDM via die SDM-posbus om die toestel-ID-sertifikaat en firmwaresertifikaat te skep tydens herlaai. 3. Gebruik die Intel Quartus Prime Pro-programmeerder om jou toestel met die ontwerp te herkonfigureer. 4. Gebruik die platform attestering verifieerder om opdragte uit te reik na die SDM om die attest toestel ID, firmware, en alias sertifikate te kry. 5. Gebruik die attestasieverifieerder om die SDM-posbusopdrag uit te reik om die attestasiebewyse te kry en die verifieerder kontroleer die terugbesorgde bewyse.
Jy kan jou eie verifieerderdiens implementeer deur die SDM-posbusopdragte te gebruik, of die Intel-platform-attestasieverifikasiediens gebruik. Kontak Intel-ondersteuning vir meer inligting oor Intel-platform attestasie-verifieerderdienssagteware, beskikbaarheid en dokumentasie.
Verwante inligting Intel Agilex 7 Device Family Pin Connection Riglyne
5.4. Fisiese Anti-Tamper
Jy aktiveer die fisiese anti-tamper kenmerke deur die volgende stappe te gebruik: 1. Kies die verlangde reaksie op 'n bespeurde tamper gebeurtenis 2. Die opstel van die gewenste tamper opsporing metodes en parameters 3. Insluitend die anti-tamper IP in jou ontwerplogika om anti-t te help bestuuramper
gebeure
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 49
5. Gevorderde kenmerke 683823 | 2023.05.23
5.4.1. Anti-Tamper Antwoorde
Jy aktiveer fisiese anti-tampdeur 'n antwoord van die Anti-tamper antwoord: aftreklys op die Assignments Device Device and Pin Options Security Anti-Tamper tab. By verstek is die anti-tampdie reaksie is gedeaktiveer. Vyf kategorieë van anti-tampreaksie is beskikbaar. Wanneer jy jou verlangde reaksie kies, is die opsies om een of meer opsporingmetodes te aktiveer geaktiveer.
Figuur 15. Beskikbaar Anti-Tamper Reaksie-opsies
Die ooreenstemmende opdrag in die Quartus Prime-instellings .gsf file is die volgende:
set_global_assignment -naam ANTI_TAMPER_RESPONSE "KENNISGEWING TOESTEL VEIS TOESTELSLOT EN NULLISERING"
Wanneer jy 'n anti-tampas antwoord, kan jy twee beskikbare SDM-toegewyde I/O-penne kies om die t uit te voeramper gebeurtenis opsporing en reaksie status met behulp van die Assignments Device Device and Pin Options Configuration Configuration Pin Options venster.
Intel Agilex® 7 Device Security Gebruikersgids 50
Stuur terugvoer
5. Gevorderde kenmerke 683823 | 2023.05.23
Figuur 16. Beskikbare SDM-toegewyde I/O-penne vir Tamper Gebeurtenisopsporing
Jy kan ook die volgende pen-opdragte in die instellings maak file: set_global_assignment -naam USE_TAMPER_DETECT SDM_IO15 set_global_assignment -naam ANTI_TAMPER_RESPONSE_FAILED SDM_IO16
5.4.2. Anti-Tamper opsporing
Jy kan individueel die frekwensie, temperatuur en voltage opsporing kenmerke van die SDM. FPGA-opsporing hang af van die insluiting van die Anti-Tamper Lite Intel FPGA IP in jou ontwerp.
Let wel:
SDM frekwensie en voltagetamper-opsporingsmetodes is afhanklik van interne verwysings en meetapparatuur wat tussen toestelle kan verskil. Intel beveel aan dat jy die gedrag van t karakteriseeramper opsporing instellings.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 51
5. Gevorderde kenmerke 683823 | 2023.05.23
Frekwensie tamper-opsporing werk op die konfigurasieklokbron. Om frekwensie t te aktiveerampErkenning, moet jy 'n ander opsie as Interne Ossillator spesifiseer in die Configuration clock source dropdown op die Assignments Device Device and Pin Options General-oortjie. U moet verseker dat die Run-konfigurasie-SVE vanaf interne ossillator-merkblokkie geaktiveer is voordat die frekwensie t geaktiveer wordamper opsporing. Figuur 17. Stel die SDM op Interne Ossillator
Om frekwensie t te aktiveerampvir opsporing, kies die Aktiveer frekwensie tamper opsporing merkblokkie en kies die gewenste frekwensie tamper opsporingsreeks vanaf die aftreklys. Figuur 18. Aktivering van frekwensie Tamper opsporing
Intel Agilex® 7 Device Security Gebruikersgids 52
Stuur terugvoer
5. Gevorderde kenmerke 683823 | 2023.05.23
Alternatiewelik kan jy Frekwensie T aktiveeramper Bespeuring deur die volgende veranderinge aan die Quartus Prime-instellings .qsf te maak file:
set_global_assignment -name AUTO_RESTART_CONFIGURATION OFF set_global_assignment -name DEVICE_INITIALIZATION_CLOCK OSC_CLK_1_100MHZ set_global_assignment -name RUN_CONFIG_CPU_FROM_INT_OSC ON set_global_assignment -nameAMPER_DETEKSIE OP set_global_assignment -naam FREQUENCY_TAMPER_DETECTION_RANGE 35
Om temperatuur t te aktiveerampvir opsporing, kies die Aktiveer temperatuur tamper opsporing merkblokkie en kies die gewenste temperatuur boonste en onderste grense in die ooreenstemmende velde. Die boonste en onderste grense word by verstek gevul met die verwante temperatuurreeks vir die toestel wat in die ontwerp gekies is.
Om voltagetampvir opsporing, kies jy een of albei van die Aktiveer VCCL voltagetamper opsporing of Aktiveer VCCL_SDM voltagetamper opsporing merkblokkies en kies die gewenste Voltagetamper opsporing sneller persentasietage in die ooreenstemmende veld.
Figuur 19. Enabling Voltagen Tamper opsporing
Alternatiewelik kan jy Voltagen Tamper Deteksie deur die volgende opdragte in die .qsf file:
set_global_assignment -naam ENABLE_TEMPERATURE_TAMPER_DETECTION ON set_global_assignment -naam TEMPERATURE_TAMPER_UPPER_BOUND 100 set_global_assignment -naam ENABLE_VCCL_VOLTAGE_TAMPER_DETECTION OP set_global_assignment -naam ENABLE_VCCL_SDM_VOLTAGE_TAMPER_DETEKSIE AAN
5.4.3. Anti-Tamper Lite Intel FPGA IP
Die Anti-Tamper Lite Intel FPGA IP, beskikbaar in die IP-katalogus in Intel Quartus Prime Pro Edition-sagteware, fasiliteer tweerigtingkommunikasie tussen jou ontwerp en die SDM vir tamper gebeure.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 53
Figuur 20. Anti-Tamper Lite Intel FPGA IP
5. Gevorderde kenmerke 683823 | 2023.05.23
Die IP verskaf die volgende seine wat jy aan jou ontwerp koppel soos nodig:
Tabel 5.
Anti-Tamper Lite Intel FPGA IP I/O-seine
Sein Naam
Rigting
Beskrywing
gpo_sdm_by_event gpi_fpga_at_event
Uitset-insette
SDM-sein na FPGA-stoflogika wat 'n SDM opgespoor hetamper gebeurtenis. Die FPGA-logika het ongeveer 5ms om enige gewenste skoonmaak uit te voer en op die SDM te reageer via gpi_fpga_at_response_done en gpi_fpga_at_zeroization_done. Die SDM gaan voort met die tamper reaksie-aksies wanneer gpi_fpga_at_response_done beweer word of nadat geen reaksie in die toegelate tyd ontvang is nie.
FPGA onderbreking na SDM wat jou ontwerp anti-tamper-bespeuringskring het bespeur byamper gebeurtenis en die SDM tampdie reaksie moet geaktiveer word.
gpi_fpga_at_response_done
Invoer
FPGA-onderbreking na SDM dat FPGA-logika die gewenste skoonmaak uitgevoer het.
gpi_fpga_at_zeroization_d een
Invoer
FPGA sein aan SDM dat FPGA-logika enige gewenste nulisering van ontwerpdata voltooi het. Hierdie sein is sampgelei wanneer gpi_fpga_at_response_done beweer word.
5.4.3.1. Vrystellinginligting
Die IP-weergaweskema (XYZ) nommer verander van een sagteware weergawe na 'n ander. 'n Verandering in:
· X dui op 'n groot hersiening van die IP. As jy jou Intel Quartus Prime-sagteware opdateer, moet jy die IP herskep.
· Y dui aan dat die IP nuwe kenmerke insluit. Hergenereer jou IP om hierdie nuwe kenmerke in te sluit.
· Z dui aan dat die IP klein veranderinge insluit. Hergenereer jou IP om hierdie veranderinge in te sluit.
Tabel 6.
Anti-Tamper Lite Intel FPGA IP-vrystellinginligting
IP weergawe
Item
Beskrywing 20.1.0
Intel Quartus Prime weergawe
21.2
Vrystellingsdatum
2021.06.21
Intel Agilex® 7 Device Security Gebruikersgids 54
Stuur terugvoer
5. Gevorderde kenmerke 683823 | 2023.05.23
5.5. Gebruik ontwerpsekuriteitskenmerke met afstandstelselopdatering
Remote System Update (RSU) is 'n Intel Agilex 7 FPGA-funksie wat help met die opdatering van konfigurasie files op 'n robuuste manier. RSU is versoenbaar met ontwerpsekuriteitskenmerke soos stawing, firmware-mede-ondertekening en bitstroom-enkripsie aangesien RSU nie afhanklik is van die ontwerpinhoud van konfigurasiebitstrome nie.
Die bou van RSU-beelde met .sof Files
As jy privaat sleutels op jou plaaslike stoor filestelsel, kan jy RSU-beelde genereer met ontwerpsekuriteitskenmerke deur 'n vereenvoudigde vloei met .sof files as insette. Om RSU-beelde te genereer met die .sof file, kan jy die instruksies volg in Afdeling Generering van afstandstelselopdateringsbeeld Files Gebruik van die programmering File Generator van die Intel Agilex 7 Configuration User Guide. Vir elke .sof file gespesifiseer op die Invoer Files oortjie, klik op die Eienskappe ... knoppie en spesifiseer die toepaslike instellings en sleutels vir die ondertekening en enkripsie gereedskap. Die programmering file generator-instrument teken en enkripteer outomaties fabrieks- en toepassingsbeelde terwyl die RSU-programmering geskep word files.
Alternatiewelik, as jy private sleutels in 'n HSM stoor, moet jy die quartus_sign-nutsding gebruik en dus .rbf gebruik files. Die res van hierdie afdeling gee besonderhede oor die veranderinge in die vloei om RSU-beelde met .rbf te genereer files as insette. Jy moet .rbf-formaat enkripteer en onderteken files voordat u dit as invoer kies files vir RSU beelde; egter die RSU selflaai inligting file moet nie geënkripteer word nie en in plaas daarvan slegs onderteken word. Die programmering File Generator ondersteun nie die wysiging van eienskappe van .rbf-formaat nie files.
Die volgende examples demonstreer die nodige wysigings aan die opdragte in Afdeling Generering van Remote System Update Image Files Gebruik van die programmering File Generator van die Intel Agilex 7 Configuration User Guide.
Genereer die aanvanklike RSU-beeld deur .rbf te gebruik Files: Bevelwysiging
Van die generering van die aanvanklike RSU-beeld met .rbf Files afdeling, verander die opdragte in Stap 1. om die ontwerpsekuriteitskenmerke te aktiveer soos verlang deur instruksies uit vroeëre afdelings van hierdie dokument te gebruik.
Byvoorbeeldample, sou jy 'n ondertekende firmware spesifiseer file as jy fermware-cosigning gebruik het, gebruik dan die Quartus-enkripsienutsding om elke .rbf te enkripteer file, en gebruik laastens die quartus_sign-instrument om elkeen te teken file.
In stap 2, as jy firmware-mede-ondertekening geaktiveer het, moet jy 'n bykomende opsie gebruik in die skepping van die selflaai-.rbf vanaf die fabrieksbeeld file:
quartus_pfg -c factory.sof boot.rbf -o rsu_boot=AAN -o fw_source=signed_agilex.zip
Nadat jy die selflaai-inligting .rbf geskep het file, gebruik die quartus_sign-instrument om die .rbf file. Jy moet nie die selflaaiinligting .rbf enkripteer nie file.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 55
5. Gevorderde kenmerke 683823 | 2023.05.23
Genereer 'n toepassingsbeeld: bevelwysiging
Om 'n toepassingsbeeld met ontwerpsekuriteitskenmerke te genereer, wysig jy die opdrag in Generating an Application Image om 'n .rbf te gebruik met ontwerpsekuriteitskenmerke geaktiveer, insluitend mede-ondertekende firmware indien nodig, in plaas van die oorspronklike toepassing .sof file:
quartus_pfg -c cosigned_fw_signed_encrypted_application.rbf secured_rsu_application.rpd -o mode=ASX4 -o bitswap=AAN
Genereer 'n fabrieksopdateringbeeld: bevelwysiging
Nadat jy die selflaai-inligting .rbf geskep het file, gebruik jy die quartus_sign-instrument om die .rbf te teken file. Jy moet nie die selflaaiinligting .rbf enkripteer nie file.
Om 'n RSU-fabrieksopdateringprent te genereer, verander jy die opdrag van Generating a Factory Update Image om 'n .rbf te gebruik file met ontwerpsekuriteitskenmerke geaktiveer en voeg die opsie by om die mede-ondertekende firmwaregebruik aan te dui:
quartus_pfg -c cosigned_fw_signed_encrypted_factory.rbf secured_rsu_factory_update.rpd -o mode=ASX4 -o bitswap=ON -o rsu_upgrade=ON -o fw_source=signed_agilex.zip
Verwante inligting Intel Agilex 7 Configuration User Guide
5.6. SDM Kriptografiese Dienste
Die SDM op Intel Agilex 7-toestelle verskaf kriptografiese dienste wat FPGA-stoflogika of die HPS via die onderskeie SDM-posbuskoppelvlak kan versoek. Vir meer inligting oor die posbusopdragte en dataformate vir alle SDM-kriptografiese dienste, verwys na Bylaag B in die Sekuriteitsmetodologie vir Intel FPGA's en gestruktureerde ASIC's Gebruikersgids.
Om toegang tot die SDM-posbuskoppelvlak tot FPGA-stoflogika vir SDM-kriptografiese dienste te verkry, moet jy die Mailbox Client Intel FPGA IP in jou ontwerp instansieer.
Verwysingskode vir toegang tot die SDM-posbuskoppelvlak vanaf die HPS is ingesluit in die ATF- en Linux-kode wat deur Intel verskaf word.
Verwante inligting Posbuskliënt Intel FPGA IP-gebruikersgids
5.6.1. Verkoper gemagtigde selflaai
Intel verskaf 'n verwysingsimplementering vir HPS-sagteware wat die verskaffer gemagtigde selflaaifunksie gebruik om HPS-selflaaisagteware vanaf die eerste s te verifieertage selflaaiprogram deur na die Linux-kern.
Verwante inligting Intel Agilex 7 SoC Secure Boot Demo Design
Intel Agilex® 7 Device Security Gebruikersgids 56
Stuur terugvoer
5. Gevorderde kenmerke 683823 | 2023.05.23
5.6.2. Veilige data-objekdiens
U stuur die opdragte deur die SDM-posbus om SDOS-objek-enkripsie en -dekripsie uit te voer. U kan die SDOS-kenmerk gebruik nadat u die SDOS-wortelsleutel voorsien het.
Verwante inligting Veilige data-objekdiens-wortelsleutelvoorsiening op bladsy 30
5.6.3. SDM Kriptografiese Primitiewe Dienste
U stuur die opdragte deur die SDM-posbus om SDM-kriptografiese primitiewe diensbedrywighede te begin. Sommige kriptografiese primitiewe dienste vereis dat meer data na en van die SDM oorgedra word as wat die posbuskoppelvlak kan aanvaar. In hierdie gevalle verander die opdrag van die formaat om wysers na data in die geheue te verskaf. Daarbenewens moet jy die instansiasie van die Mailbox Client Intel FPGA IP verander om SDM-kriptografiese primitiewe dienste vanaf die FPGA-stoflogika te gebruik. Jy moet addisioneel die Aktiveer Crypto Service-parameter op 1 stel en die nuut blootgestelde AXI-inisieerderkoppelvlak aan 'n geheue in jou ontwerp koppel.
Figuur 21. Aktivering van SDM Cryptographic Services in die Mailbox Client Intel FPGA IP
5.7. Bitstroomsekuriteitinstellings (FM/S10)
FPGA Bitstream Security opsies is 'n versameling beleide wat die gespesifiseerde kenmerk of werkingsmodus binne 'n bepaalde tydperk beperk.
Bitstream Security-opsies bestaan uit vlae wat jy in Intel Quartus Prime Pro Edition-sagteware stel. Hierdie vlae word outomaties na die konfigurasie-bitstrome gekopieer.
U kan sekuriteitsopsies permanent op 'n toestel afdwing deur die ooreenstemmende sekuriteitinstelling eFuse te gebruik.
Om enige sekuriteitsinstellings in die konfigurasiebitstroom of toestel-eFuses te gebruik, moet jy die verifikasiefunksie aktiveer.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 57
5. Gevorderde kenmerke 683823 | 2023.05.23
5.7.1. Selekteer en aktiveer sekuriteitsopsies
Om sekuriteitsopsies te kies en te aktiveer, doen soos volg: Van die Opdragte kieslys, kies Toestel Toestel en Pin Opsies Sekuriteit Meer Opsies... Figuur 22. Selekteer en Aktiveer Sekuriteit Opsies
En kies dan die waardes uit die aftreklyste vir die sekuriteitsopsies wat u wil aktiveer soos in die volgende bv.ample:
Figuur 23. Seleksie van waardes vir sekuriteitsopsies
Intel Agilex® 7 Device Security Gebruikersgids 58
Stuur terugvoer
5. Gevorderde kenmerke 683823 | 2023.05.23
Die volgende is die ooreenstemmende veranderinge in die Quartus Prime-instellings .qsf file:
set_global_assignment -naam SECU_OPTION_DISABLE_JTAG "ON CHECK" set_global_assignment -naam SECU_OPTION_FORCE_ENCRYPTION_KEY_UPDATE "ON STICKY" set_global_assignment -naam SECU_OPTION_FORCE_SDM_CLOCK_TO_INT_OSC OP set_global_assignment -naam SECU_OPTION_TUAL_Global_toewysing -naam SECU_OPTION_TUAL_Global_toewysing SECU_OPTION_LOCK_SECURITY_EFUSES ON set_global_assignment -naam SECU_OPTION_DISABLE_HPS_DEBUG ON set_global_assignment -naam SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment_name SECU_ENCRY_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment_name SECU_ENCRY ON set_global_assignment -naam SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES OP set_global_assignment -naam SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -naam SECU_OPTION_DISABLE_KEYONglobal_toewysing_INglobal_ENCRY -naam SECU_OPTION_DISABLE_PUF_WRAPPED_ENCRYPTION_KEY AAN
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 59
683823 | 2023.05.23 Stuur terugvoer
Probleemoplossing
Hierdie hoofstuk beskryf algemene foute en waarskuwingsboodskappe wat jy kan teëkom terwyl jy probeer om toestelsekuriteitskenmerke en -maatreëls te gebruik om dit op te los.
6.1. Gebruik Quartus-opdragte in 'n Windows-omgewingsfout
Fout quartus_pgm: opdrag nie gevind nie Beskrywing Hierdie fout verskyn wanneer probeer word om Quartus-opdragte in 'n NIOS II-dop in 'n Windows-omgewing te gebruik deur WSL te gebruik. Resolusie Hierdie opdrag werk in Linux-omgewing; Vir Windows-gashere, gebruik die volgende opdrag: quartus_pgm.exe -h Pas dieselfde sintaksis toe op ander Quartus Prime-opdragte soos quartus_pfg, quartus_sign, quartus_encrypt onder ander opdragte.
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
6. Probleemoplossing 683823 | 2023.05.23
6.2. Genereer 'n private sleutelwaarskuwing
Waarskuwing:
Die gespesifiseerde wagwoord word as onveilig beskou. Intel beveel aan dat ten minste 13 karakters wagwoord gebruik word. U word aanbeveel om die wagwoord te verander deur die OpenSSL-uitvoerbare bestand te gebruik.
openssl ec -in -uit -aes256
Beskrywing
Hierdie waarskuwing hou verband met die wagwoordsterkte en word vertoon wanneer 'n private sleutel probeer genereer word deur die volgende opdragte uit te reik:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp3841 root.pem
Resolusie Gebruik die openssl-uitvoerbare om 'n langer en dus sterker wagwoord te spesifiseer.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 61
6. Probleemoplossing 683823 | 2023.05.23
6.3. Voeg 'n ondertekeningssleutel by die Quartus-projekfout
Fout …File bevat wortelsleutelinligting ...
Beskrywing
Na die byvoeging van 'n ondertekening sleutel .qky file vir die Quartus-projek, moet jy die .sof weer aanmekaarsit file. Wanneer jy hierdie geregenereerde .sof file na die geselekteerde toestel deur Quartus Programmeerder te gebruik, dui die volgende foutboodskap aan dat die file bevat wortelsleutelinligting:
Kon nie byvoeg niefile-pad-naam> na Programmeerder. Die file bevat wortelsleutelinligting (.qky). Programmeerder ondersteun egter nie bitstroom-ondertekeningfunksie nie. Jy kan programmering gebruik File Generator om die om te skakel file na die getekende Raw Binary file (.rbf) vir konfigurasie.
Resolusie
Gebruik die Quartus-programmering file kragopwekker om die om te skakel file in 'n getekende Raw Binary File .rbf vir konfigurasie.
Verwante inligting Ondertekeningkonfigurasie Bitstroom Gebruik die quartus_sign-opdrag op bladsy 13
Intel Agilex® 7 Device Security Gebruikersgids 62
Stuur terugvoer
6. Probleemoplossing 683823 | 2023.05.23
6.4. Genereer Quartus Prime-programmering File was Onsuksesvol
Fout
Fout (20353): X van publieke sleutel van QKY stem nie ooreen met private sleutel van PEM nie file.
Fout (20352): Kon nie die bitstroom onderteken deur python-skrip agilex_sign.py nie.
Fout: Quartus Prime-programmering File Generator was onsuksesvol.
Beskrywing As jy probeer om 'n konfigurasie-bitstroom te onderteken met 'n verkeerde private sleutel .pem file of 'n .pem file wat nie ooreenstem met die .qky wat by die projek gevoeg is nie, word bogenoemde algemene foute vertoon. Resolusie Maak seker dat jy die korrekte private sleutel .pem gebruik om die bitstroom te onderteken.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 63
6. Probleemoplossing 683823 | 2023.05.23
6.5. Onbekende argumentfoute
Fout
Fout (23028): Onbekende argument “ûc”. Verwys na –hulp vir regsargumente.
Fout (213008): Programmering opsie string "ûp" is onwettig. Verwys na –help vir wettige programmeringsopsieformate.
Beskrywing As jy opdragreëlopsies vanaf 'n .pdf kopieer en plak file in die Windows NIOS II Shell, kan jy onbekende argumentfoute teëkom soos hierbo getoon. Resolusie In sulke gevalle kan u die opdragte handmatig invoer in plaas daarvan om vanaf die knipbord te plak.
Intel Agilex® 7 Device Security Gebruikersgids 64
Stuur terugvoer
6. Probleemoplossing 683823 | 2023.05.23
6.6. Bitstroom-enkripsie-opsie gedeaktiveer Fout
Fout
Kan nie die enkripsie finaliseer vir die file ontwerp .sof omdat dit saamgestel is met die bitstroom-enkripsie-opsie gedeaktiveer.
Beskrywing As jy probeer om die bitstroom via GUI of opdragreël te enkripteer nadat jy die projek saamgestel het met die bitstroom-enkripsie-opsie gedeaktiveer, verwerp Quartus die opdrag soos hierbo getoon.
Resolusie Maak seker dat jy die projek saamstel met die bitstroom-enkripsie-opsie geaktiveer, hetsy via GUI of opdragreël. Om hierdie opsie in GUI te aktiveer, moet jy die merkblokkie vir hierdie opsie merk.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 65
6. Probleemoplossing 683823 | 2023.05.23
6.7. Spesifikasie van die korrekte pad na die sleutel
Fout
Fout (19516): Bespeurde programmering File Generator-instellingsfout: Kan nie 'sleutel_ vind niefile'. Maak seker dat die file is op die verwagte plek geleë of werk die setting.sec op
Fout (19516): Bespeurde programmering File Generator-instellingsfout: Kan nie 'sleutel_ vind niefile'. Maak seker dat die file is op die verwagte plek geleë of werk die instelling op.
Beskrywing
As jy sleutels gebruik wat op die file stelsel, moet jy verseker dat hulle die korrekte pad spesifiseer vir die sleutels wat gebruik word vir bitstroom enkripsie en ondertekening. As die programmering File Generator kan nie die regte pad opspoor nie, die bogenoemde foutboodskappe vertoon.
Resolusie
Verwys na die Quartus Prime-instellings .qsf file om die regte paaie vir die sleutels op te spoor. Maak seker jy gebruik relatiewe paaie in plaas van absolute paaie.
Intel Agilex® 7 Device Security Gebruikersgids 66
Stuur terugvoer
6. Probleemoplossing 683823 | 2023.05.23
6.8. Gebruik nie-ondersteunde uitvoer File Tik
Fout
quartus_pfg -c design.sof output_file.ebf -o finalize_operation=AAN -o qek_file=ae.qek -o ondertekening=AAN -o pem_file=teken_privaat.pem
Fout (19511): Ongesteunde uitvoer file tipe (ebf). Gebruik "-l" of "–list" opsie om ondersteunde te vertoon file tik inligting.
Beskrywing Terwyl u die Quartus-programmering gebruik File Generator om die geënkripteerde en ondertekende konfigurasie-bitstroom te genereer, jy kan die bogenoemde fout sien as 'n nie-ondersteunde uitset file tipe gespesifiseer word. Resolusie Gebruik die -l of die -list opsie om die lys van ondersteunde te sien file tipes.
Stuur terugvoer
Intel Agilex® 7 Device Security Gebruikersgids 67
683823 | 2023.05.23 Stuur terugvoer
7. Intel Agilex 7 Device Security Gebruikersgids Argiewe
Vir die nuutste en vorige weergawes van hierdie gebruikersgids, verwys na Intel Agilex 7 Device Security Gebruikersgids. As 'n IP- of sagtewareweergawe nie gelys word nie, is die gebruikersgids vir die vorige IP- of sagtewareweergawe van toepassing.
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
ISO 9001:2015 Geregistreer
683823 | 2023.05.23 Stuur terugvoer
8. Hersieningsgeskiedenis vir die Intel Agilex 7 Device Security Gebruikersgids
Dokumentweergawe 2023.05.23
2022.11.22 2022.04.04 2022.01.20
2021.11.09
Dokumente / Hulpbronne
![]() |
Intel Agilex 7-toestelsekuriteit [pdfGebruikershandleiding Agilex 7 Device Security, Agilex 7, Device Security, Security |