Softwarový balíček X-CUBE-SAFEA1
Specifikace
- Název produktu: STSAFE-A110 Secure Element
- Verze: X-CUBE-SAFEA1 v1.2.1
- Integrováno v: softwarovém balíčku STM32CubeMX
- Klíčové vlastnosti:
- Zabezpečené vytvoření kanálu se vzdáleným hostitelem včetně
handshake zabezpečení transportní vrstvy (TLS). - Služba ověřování podpisu (zabezpečené spouštění a firmware
vylepšit) - Monitorování využití pomocí zabezpečených čítačů
- Spárování a zabezpečený kanál s hostitelským aplikačním procesorem
- Zabalení a rozbalení obálek místního nebo vzdáleného hostitele
- Generování páru klíčů na čipu
- Zabezpečené vytvoření kanálu se vzdáleným hostitelem včetně
Návod k použití produktu
1. Obecné informace
Bezpečnostní prvek STSAFE-A110 je navržen tak, aby poskytoval
služby autentizace a správy dat na místní nebo vzdálené
hostitelé. Je vhodný pro různé aplikace, jako jsou zařízení IoT,
systémy pro chytré domácnosti, průmyslové aplikace a další.
2. Začínáme
Chcete-li začít používat bezpečnostní prvek STSAFE-A110:
- Viz datový list dostupný na oficiálním STSAFE-A110
web stránka s podrobnými informacemi. - Stáhněte si softwarový balíček STSAFE-A1xx middleware z
Internetová stránka STSAFE-A110 nebo STM32CubeMX. - Zajistěte kompatibilitu s podporovanými IDE, jako je STM32Cube IDE nebo
System Workbench pro STM32.
3. Popis middlewaru
3.1 Obecný popis
Middleware STSAFE-A1xx usnadňuje interakci mezi nimi
zařízení Secure Element a MCU, což umožňuje různé případy použití.
Je integrován do softwarových balíčků ST pro zvýšení bezpečnosti
funkce.
3.2 Architektura
Middleware se skládá z různých softwarových komponent,
včetně:
- STSAFE-A1xx API (základní rozhraní)
- CORE CRYPTO
- MbedTLS Kryptografické servisní rozhraní SHA/AES
- Hardwarové servisní rozhraní X-CUBECRYPTOLIB
Často kladené otázky (FAQ)
Otázka: Kde najdu katalogový list STSAFE-A110?
Odpověď: Technický list je k dispozici na STSAFE-A110 web stránka pro
další informace o zařízení.
Otázka: Jaká jsou podporovaná integrovaná vývojová prostředí
pro middleware STSAFE-A1xx?
Odpověď: Mezi podporovaná IDE patří STM32Cube IDE a System Workbench
pro STM32 (SW4STM32) v balíčku X-CUBE-SAFEA1 v1.2.1.
UM2646
Uživatelská příručka
Začínáme se softwarovým balíčkem X-CUBE-SAFEA1
Zavedení
Tato uživatelská příručka popisuje, jak začít se softwarovým balíčkem X-CUBE-SAFEA1. Softwarový balík X-CUBE-SAFEA1 je softwarová součást, která poskytuje několik demonstračních kódů, které využívají funkce zařízení STSAFE-A110 z hostitelského mikrokontroléru. Tyto demonstrační kódy využívají middleware STSAFE-A1xx postavený na softwarové technologii STM32Cube pro usnadnění přenositelnosti mezi různými mikrokontroléry STM32. Navíc je odolný vůči MCU pro přenositelnost na jiné MCU. Tyto demonstrační kódy ilustrují následující funkce: · Autentizace · Párování · Vytvoření klíče · Místní balení obálek · Generování páru klíčů
UM2646 – Rev 4 – březen 2024 Pro další informace kontaktujte místní prodejní kancelář STMicroelectronics.
www.st.com
1
Poznámka: Poznámka:
UM2646
Obecné informace
Obecné informace
Softwarový balíček X-CUBE-SAFEA1 je odkazem na integraci služeb zabezpečených prvků STSAFE-A110 do operačního systému (OS) hostitelského MCU a jeho aplikace. Obsahuje ovladač STSAFE-A110 a demonstrační kódy pro spuštění na 32bitových mikrokontrolérech STM32 založených na procesoru Arm® Cortex®-M. Arm je registrovaná ochranná známka společnosti Arm Limited (nebo jejích dceřiných společností) v USA a/nebo jinde. Softwarový balík X-CUBE-SAFEA1 je vyvinut v ANSI C. Nicméně architektura nezávislá na platformě umožňuje snadnou přenositelnost na řadu různých platforem. Níže uvedená tabulka uvádí definice zkratek, které jsou relevantní pro lepší pochopení tohoto dokumentu.
Softwarový balíček STSAFE-A1xx je integrován v X-CUBE-SAFEA1 v1.2.1 jako middleware a je integrován jako BSP pro softwarový balíček pro STM32CubeMX.
UM2646 – Rev 4
strana 2/23
UM2646
Bezpečnostní prvek STSAFE-A110
2
Bezpečnostní prvek STSAFE-A110
STSAFE-A110 je vysoce bezpečné řešení, které funguje jako zabezpečený prvek poskytující služby ověřování a správy dat místnímu nebo vzdálenému hostiteli. Skládá se z kompletního řešení na klíč se zabezpečeným operačním systémem běžícím na nejnovější generaci zabezpečených mikrokontrolérů.
STSAFE-A110 lze integrovat do zařízení IoT (Internet of things), inteligentních domácností, chytrých měst a průmyslových aplikací, zařízení spotřební elektroniky, spotřebního materiálu a příslušenství. Jeho klíčové vlastnosti jsou:
·
Ověřování (periferních zařízení, IoT a zařízení USB Type-C®)
·
Zabezpečené vytvoření kanálu se vzdáleným hostitelem včetně handshake zabezpečení transportní vrstvy (TLS).
·
Služba ověřování podpisu (zabezpečené spouštění a upgrade firmwaru)
·
Monitorování využití pomocí zabezpečených čítačů
·
Spárování a zabezpečený kanál s hostitelským aplikačním procesorem
·
Zabalení a rozbalení obálek místního nebo vzdáleného hostitele
·
Generování páru klíčů na čipu
Viz katalogový list STSAFE-A110 dostupný na STSAFE-A110 web stránce pro další informace o zařízení.
UM2646 – Rev 4
strana 3/23
UM2646
Popis middlewaru STSAFE-A1xx
3
Popis middlewaru STSAFE-A1xx
Tato část podrobně popisuje obsah softwarového balíčku STSAFE-A1xx a způsob jeho použití.
3.1
Obecný popis
Middleware STSAFE-A1xx je sada softwarových komponent navržených tak, aby:
·
rozhraní zařízení STSAFE-A110 se zabezpečeným prvkem s MCU
·
implementovat nejobecnější případy použití STSAFE-A110
Middleware STSAFE-A1xx je plně integrován do softwarových balíčků ST jako middlewarová komponenta pro přidání funkcí bezpečnostních prvků (např.ample X-CUBE-SBSFU nebo X-CUBE-SAFEA1).
Lze jej stáhnout z internetové stránky STSAFE-A110 přes záložku Tools & Software nebo jej lze stáhnout z STM32CubeMX.
Software je poskytován jako zdrojový kód v rámci licenční smlouvy na software ST (SLA0088) (další podrobnosti naleznete v části Informace o licenci).
Podporována jsou následující integrovaná vývojová prostředí:
·
IAR Embedded Workbench® for Arm® (EWARM)
·
Keil® Microcontroller Development Kit (MDK-ARM)
·
STM32Cube IDE (STM32CubeIDE)
·
System Workbench for STM32 (SW4STM32) podporovaný pouze v balíčku X-CUBE-SAFEA1 v1.2.1
Informace o podporovaných verzích IDE najdete v poznámkách k vydání v kořenové složce balíčku.
3.2
Architektura
Tato část popisuje softwarové součásti softwarového balíku middlewaru STSAFE-A1xx.
Obrázek níže představuje a view architektury middlewaru STSAFE-A1xx a souvisejících rozhraní.
Obrázek 1. Architektura STSAFE-A1xx
STSAFE-A1xx API (základní rozhraní)
JÁDRO
CRYPTO
MbedTM TLS
Rozhraní kryptografických služeb SHA/AES
SERVIS
Izolovaná oblast
Vhodné pro ochranu bezpečnostními prvky MCU
(MPU, Firewall, TrustZone® atd.)
Hardwarové servisní rozhraní
X-CUBECRYPTOLIB
UM2646 – Rev 4
strana 4/23
Poznámka:
UM2646
Popis middlewaru STSAFE-A1xx
Middleware obsahuje tři různá rozhraní:
·
STSAFE-A1xx API: Je to hlavní aplikační programovací rozhraní (API), které poskytuje plný přístup všem
služby STSAFE-A110 exportovány do vyšších vrstev (aplikace, knihovny a zásobníky). Toto rozhraní je
také označováno jako základní rozhraní, protože všechna exportovaná rozhraní API jsou implementována v modulu CORE.
Horní vrstvy, které potřebují integrovat middleware STSAFE-A1xx, musí mít přístup k STSAFE-A110
funkcí prostřednictvím tohoto rozhraní.
·
Hardwarové servisní rozhraní: Toto rozhraní používá middleware STSAFE-A1xx k dosažení nejvyšší úrovně
nezávislost na hardwarové platformě. Obsahuje sadu obecných funkcí pro připojení konkrétní MCU, IO sběrnice
a časovací funkce. Tato struktura zlepšuje znovupoužitelnost kódu knihovny a zaručuje snadnou přenositelnost
další zařízení.
Tyto generické funkce, definované jako slabé funkce, musí být implementovány na aplikační úrovni podle příkladuampsoubor poskytnutý v rámci šablony stsafea_service_interface_template.c poskytované pro snadnou integraci
a přizpůsobení v rámci horních vrstev.
·
Rozhraní kryptografických služeb: Toto rozhraní používá k přístupu middleware STSAFE-A1xx
kryptografické funkce platformy nebo knihovny, jako je SHA (secure hash algorithm) a AES (pokročilý
šifrovací standard) vyžadovaný middlewarem pro některé ukázky.
Tyto kryptografické funkce, definované jako slabé funkce, musí být implementovány na aplikační úrovni
po example opatřen dvěma různými šablonami:
stsafea_crypto_mbedtls_interface_template.c pokud je použita kryptografická knihovna Arm® MbedTM TLS; stsafea_crypto_stlib_interface_template.c pokud je použita kryptografická knihovna ST;
·
Alternativní kryptografické knihovny lze použít jednoduchým přizpůsobením zdroje šablony files. The
šablona files jsou poskytovány pro snadnou integraci a přizpůsobení v rámci horních vrstev.
Arm a Mbed jsou registrované ochranné známky nebo ochranné známky společnosti Arm Limited (nebo jejích dceřiných společností) v USA a/nebo jinde.
UM2646 – Rev 4
strana 5/23
UM2646
Popis middlewaru STSAFE-A1xx
Obrázek níže ukazuje middleware STSAFE-A1xx integrovaný ve standardní aplikaci STM32Cube běžící na rozšiřující desce X-NUCLEO-SAFEA1 namontované na desce STM32 Nucleo.
Obrázek 2. Blokové schéma aplikace STSAFE-A1xx
Middleware STSAFE-A1xx v aplikaci STM32Cube
Blokové schéma X-CUBE-SAFEA1 pro STM32CubeMX
Pro zajištění nejlepší nezávislosti na hardwaru a platformě není middleware STSAFE-A1xx připojen přímo k STM32Cube HAL, ale prostřednictvím rozhraní fileje implementováno na aplikační úrovni (stsafea_service_interface_template.c, stsafea_interface_conf.h).
UM2646 – Rev 4
strana 6/23
UM2646
Popis middlewaru STSAFE-A1xx
3.3
Modul CORE
Modul CORE je jádrem middlewaru. Implementuje příkazy volané vyššími vrstvami (aplikace, knihovny, zásobník atd.), aby bylo možné správně používat funkce STSAFE-A1xx.
Obrázek níže představuje a view architektury modulu CORE.
Obrázek 3. Architektura modulu CORE
Externí horní vrstvy (aplikace, knihovny, zásobníky atd.)
JÁDRO
Vnitřní modul CRYPTO
SERVIS interní modul
Modul CORE je softwarový komponent s více rozhraními připojený k:
·
Horní vrstvy: externí připojení prostřednictvím exportovaných rozhraní API popsaných ve dvou tabulkách níže;
·
Kryptografická vrstva: vnitřní připojení k modulu CRYPTO;
·
Hardwarová servisní vrstva: vnitřní připojení k modulu SERVICE;
Softwarový balík middlewaru STSAFE-A1xx poskytuje kompletní dokumentaci API modulu CORE v kořenové složce (viz STSAFE-A1xx_Middleware.chm file).
Stručné vysvětlení sady příkazů, ke které se vztahují příkazová rozhraní API uvedená v následující tabulce, naleznete v datovém listu STSAFE-A110.
Kategorie API Konfigurace inicializace
Univerzální příkazy
Příkazy datových oddílů
Tabulka 1. CORE modul exportovaný API
Funkce StSafeA_Init Chcete-li vytvořit, inicializovat a přiřadit ovladač zařízení STSAFE-A1xx. StSafeA_GetVersion Vrátí revizi middlewaru STSAFE-A1xx. StSafeA_Echo Pro příjem dat předávaných v příkazu. StSafeA_Reset Obnovení nestálých atributů na jejich počáteční hodnoty. StSafeA_GenerateRandom To generuje počet náhodných bajtů. StSafeA_Hibernate Pro přepnutí zařízení STSAFE-Axxx do režimu spánku. StSafeA_DataPartitionQuery
UM2646 – Rev 4
strana 7/23
UM2646
Popis middlewaru STSAFE-A1xx
kategorie API
Funkce Dotaz k načtení konfigurace datové oblasti.
StSafeA_Decrement Pro snížení jednosměrného čítače v zóně čítače.
Příkazy datových oddílů
StSafeA_Read Čtení dat ze zóny datového oddílu.
StSafeA_Update Aktualizace dat prostřednictvím oddílu zóny.
StSafeA_GenerateSignature Vrácení podpisu ECDSA přes výtah zprávy.
Příkazy soukromého a veřejného klíče
StSafeA_GenerateKeyPair Pro generování páru klíčů ve slotu soukromého klíče.
StSafeA_VerifyMessageSignature Pro ověření ověření zprávy.
StSafeA_EstablishKey K vytvoření sdíleného tajemství mezi dvěma hostiteli pomocí asymetrické kryptografie.
StSafeA_ProductDataQuery Dotazový příkaz k načtení dat produktu.
StSafeA_I2cParameterQuery Dotazový příkaz pro získání adresy I²C a konfigurace režimu nízké spotřeby.
StSafeA_LifeCycleStateQuery Dotazový příkaz k načtení stavu životního cyklu (Born, Operational, Terminated, Born and Locked nebo Operational a Locked).
Administrativní příkazy
StSafeA_HostKeySlotQuery Dotazový příkaz k načtení informací o klíči hostitele (přítomnost a čítač C-MAC hostitele).
StSafeA_PutAttribute Vložení atributů do zařízení STSAFE-Axxx, jako jsou klíče, heslo, parametry I²C podle atributu TAG.
StSafeA_DeletePassword Slouží k odstranění hesla ze slotu.
StSafeA_VerifyPassword Pro ověření hesla a zapamatování výsledku ověření pro budoucí autorizaci příkazu.
StSafeA_RawCommand Spuštění příkazu raw a obdržení související odpovědi.
StSafeA_LocalEnvelopeKeySlotQuery Dotazový příkaz k načtení informací o klíči místní obálky (číslo slotu, přítomnost a délka klíče) pro dostupné sloty klíče.
Místní příkazy obálek
StSafeA_GenerateLocalEnvelopeKey Ke generování klíče v místním slotu klíče obálky.
StSafeA_WrapLocalEnvelope K zalamování dat (obvykle klíčů), která jsou zcela spravována hostitelem, pomocí místního klíče obálky a algoritmu [AES key wrap].
StSafeA_UnwrapLocalEnvelope Rozbalení místní obálky pomocí místního klíče obálky.
UM2646 – Rev 4
strana 8/23
UM2646
Popis middlewaru STSAFE-A1xx
kategorie API
Příkaz konfigurace autorizace příkazu
Tabulka 2. Exportovaná rozhraní API modulu STSAFE-A110 CORE
Funkce StSafeA_CommandAuthorizationConfigurationQuery Dotazový příkaz k načtení podmínek přístupu pro příkazy s konfigurovatelnými podmínkami přístupu.
3.4
Modul SERVIS
Modul SERVICE je nízkou vrstvou middlewaru. Implementuje úplnou hardwarovou abstrakci z hlediska MCU a hardwarové platformy.
Obrázek níže představuje a view architektury modulu SERVICE.
Obrázek 4. Architektura modulu SERVICE
Vnitřní modul CORE
SERVIS
Vnější spodní vrstvy (BSP, HAL, LL atd.)
Modul SERVICE je softwarová komponenta se dvěma rozhraními připojená k:
·
Vnější spodní vrstvy: jako BSP, HAL nebo LL. Slabé funkce musí být implementovány na externí vyšší
vrstvy a jsou založeny na šabloně stsafea_service_interface_template.c file;
·
Core layer: interní připojení k CORE modulu prostřednictvím exportovaných API popsaných v tabulce
níže;
Softwarový balíček middlewaru STSAFE-A1xx poskytuje kompletní dokumentaci API modulu SERVICE v kořenové složce (viz STSAFE-A1xx_Middleware.chm file).
Tabulka 3. Exportovaná rozhraní API modulu SERVICE
Kategorie API Konfigurace inicializace
Nízkoúrovňové provozní funkce
Funkce
StSafeA_BSP_Init K inicializaci komunikační sběrnice a IO pinů potřebných pro provoz zařízení STSAFE-Axxx.
StSafeA_Transmit Příprava příkazu k přenosu a volání nízkoúrovňového rozhraní API sběrnice, které se má provést. Vypočítejte a zřetěďte CRC, pokud je podporováno.
StSafeA_Receive Pro příjem dat z STSAFE-Axxx pomocí nízkoúrovňových funkcí sběrnice k jejich načtení. Zkontrolujte CRC, pokud je podporováno.
UM2646 – Rev 4
strana 9/23
UM2646
Popis middlewaru STSAFE-A1xx
3.5
CRYPTO modul
Modul CRYPTO představuje kryptografickou část middlewaru. Musí se spoléhat na kryptografické zdroje platformy.
Modul CRYPTO je zcela nezávislý na ostatních modulech middlewaru a z tohoto důvodu může být snadno zapouzdřen v izolované zabezpečené oblasti vhodné pro ochranu bezpečnostními funkcemi MCU, jako je jednotka ochrany paměti (MPU), firewall nebo TrustZone®.
Obrázek níže představuje a view architektury modulu CRYPTO.
Obrázek 5. Architektura modulu CRYPTO
Vnitřní modul CORE
CRYPTO
Externí kryptografické vrstvy
(MbedTM TLS, X-CUBE-CRYPTOLIB)
Modul CRYPTO je softwarový komponent se dvěma rozhraními připojený k:
·
externí kryptografická knihovna: aktuálně jsou podporovány Mbed TLS a X-CUBE-CRYPTOLIB. Slabý
funkce musí být implementovány na externích vyšších vrstvách a jsou založeny na:
šablona stsafea_crypto_mbedtls_interface_template.c file pro kryptografickou knihovnu Mbed TLS;
šablona stsafea_crypto_stlib_interface_template.c file pro kryptografickou knihovnu ST;
Další kryptografické knihovny lze snadno podporovat přizpůsobením kryptografického rozhraní
šablona file.
·
základní vrstva: vnitřní připojení k modulu CORE prostřednictvím exportovaných API popsaných v tabulce
níže;
Softwarový balík middlewaru STSAFE-A1xx poskytuje kompletní dokumentaci API modulu CRYPTO v kořenové složce (viz STSAFE-A1xx_Middleware.chm file).
Tabulka 4. Exportovaná rozhraní API modulu CRYPTO
kategorie API
Funkce
StSafeA_ComputeCMAC Pro výpočet hodnoty CMAC. Používá se na připravený příkaz.
StSafeA_ComputeRMAC Pro výpočet hodnoty RMAC. Použito na přijatou odpověď.
StSafeA_DataEncryption Cryptographic API Pro provedení šifrování dat (AES CBC) ve vyrovnávací paměti dat STSAFE-Axxx.
StSafeA_DataDecryption Pro provedení dešifrování dat (AES CBC) ve vyrovnávací paměti dat STSAFE-Axxx.
StSafeA_MAC_SHA_PrePostProcess Pro předběžné nebo následné zpracování MAC a/nebo SHA před přenosem nebo po příjmu dat ze zařízení STSAFE_Axxx.
UM2646 – Rev 4
strana 10/23
3.6
Poznámka:
UM2646
Popis middlewaru STSAFE-A1xx
Šablony
Tato část obsahuje podrobný popis šablon dostupných v rámci softwarového balíku middlewaru STSAFE-A1xx.
Všechny šablony uvedené v tabulce níže jsou k dispozici ve složce Interface dostupné na kořenové úrovni softwarového balíčku middlewaru.
Šablona files jsou poskytovány jako exampsoubory, které lze zkopírovat a upravit do horních vrstev, aby bylo možné snadno
integrujte a nakonfigurujte middleware STSAFE-A1xx:
·
Šablona rozhraní files poskytnout exampimplementace __slabých funkcí nabízených jako prázdné nebo
částečně prázdné funkce uvnitř middlewaru. Musí být správně implementovány v uživatelském prostoru nebo v
horní vrstvy podle kryptografické knihovny a podle hardwarových voleb uživatele.
·
Šablona konfigurace files poskytují snadný způsob konfigurace middlewaru a funkcí STSAFE-A1xx
které lze použít v uživatelské aplikaci, jako jsou optimalizace nebo specifický hardware.
Kategorie šablony
Šablony rozhraní
Šablony konfigurace
Tabulka 5. Šablony
Šablona file
stsafea_service_interface_template.c Přampšablona souboru ukazuje, jak podporovat hardwarové služby požadované middlewarem STSAFE-A a nabízené konkrétním hardwarem, nízkoúrovňovou knihovnou nebo BSP vybranými v uživatelském prostoru. stsafea_crypto_mbedtls_interface_template.c Přampšablona souboru ukazuje, jak podporovat kryptografické služby požadované middlewarem STSAFE-A a nabízené kryptografickou knihovnou Mbed TLS (správa klíčů, SHA, AES atd.). stsafea_crypto_stlib_interface_template.c Přampšablona, která ukazuje, jak podporovat kryptografické služby požadované middlewarem STSAFE-A a nabízené rozšířením softwaru kryptografické knihovny STM32 pro STM32Cube (XCUBE-CRYPTOLIB) (správa klíčů, SHA, AES atd.). stsafea_conf_template.h Přampšablona, která ukazuje, jak nakonfigurovat middleware STSAFE-A (zejména pro účely optimalizace). stsafea_interface_conf_template.h Přampšablony, která ukazuje, jak nakonfigurovat a přizpůsobit rozhraní filejsou uvedeny výše.
Výše uvedené šablony se nacházejí pouze ve složce BSP balíčku X-CUBE-SAFEA1.
UM2646 – Rev 4
strana 11/23
UM2646
Popis middlewaru STSAFE-A1xx
3.7
Struktura složek
Obrázek níže ukazuje strukturu složek softwarového balíku STSAFE-A1xx middlewaru v1.2.1.
Obrázek 6. Projekt file struktura
Projekt file struktura STSAFE-A1xx middleware
UM2646 – Rev 4
Projekt file struktura pro X-CUBE-SAFEA1 pro STM32CubeMX
strana 12/23
3.8
3.8.1
3.8.2
UM2646
Popis middlewaru STSAFE-A1xx
Jak na to: integrace a konfigurace
Tato část popisuje, jak integrovat a konfigurovat middleware STSAFE-A1xx v uživatelské aplikaci.
Integrační kroky
Chcete-li integrovat middleware STSAFE-A1xx do požadované aplikace, postupujte takto:
·
Krok 1: Zkopírujte (a volitelně přejmenujte) soubor stsafea_service_interface_template.c file a buď
stsafea_crypto_mbedtls_interface_template.c nebo stsafea_crypto_stlib_interface_template.c uživateli
prostor podle kryptografické knihovny, která byla přidána do aplikace (bez ohledu na to
kryptografickou knihovnu vybranou/používanou uživateli, mohou si dokonce vytvořit/implementovat vlastní kryptografickou
rozhraní file od začátku přizpůsobením vhodné šablony).
·
Krok 2: Zkopírujte (a volitelně přejmenujte) soubory stsafea_conf_template.ha stsafea_interface_conf_template.h
files do uživatelského prostoru.
·
Krok 3: Ujistěte se, že jste přidali právo include do hlavního nebo jakéhokoli jiného zdroje uživatelského prostoru file že je potřeba
rozhraní middlewaru STSAFE-A1xx:
#include „stsafea_core.h“ #include „stsafea_interface_conf.h“
·
Krok 4: Přizpůsobte filese používá ve třech výše uvedených krocích podle preferencí uživatele.
Kroky konfigurace
Aby bylo možné správně nakonfigurovat middleware STSAFE-A1xx v uživatelské aplikaci, ST poskytuje dva různé
konfigurační šablona files ke kopírování a přizpůsobení v uživatelském prostoru podle volby uživatele:
·
stsafea_interface_conf_template.h: Tento příkladampŠablona souboru se používá a ukazuje, jak nakonfigurovat
kryptografická a servisní middlewarová rozhraní v uživatelském prostoru prostřednictvím následujícího #define
prohlášení:
USE_PRE_LOADED_HOST_KEYS
MCU_PLATFORM_INCLUDE
MCU_PLATFORM_BUS_INCLUDE
MCU_PLATFORM_CRC_INCLUDE
·
stsafea_conf_template.h: Tento exampŠablona souboru se používá a ukazuje, jak nakonfigurovat STSAFE-A
middleware prostřednictvím následujících příkazů #define:
STSAFEA_USE_OPTIMIZATION_SHARED_RAM
STSAFEA_USE_OPTIMIZATION_NO_HOST_MAC_ENCRYPT
STSAFEA_USE_FULL_ASSERT
USE_SIGNATURE_SESSION (pouze pro STSAFE-A100)
Chcete-li integrovat middleware STSAFE-A1xx do požadované aplikace, postupujte podle těchto kroků:
·
Krok 1: Zkopírujte (a volitelně přejmenujte) soubory stsafea_interface_conf_template.ha stsafea_conf_template.h
files do uživatelského prostoru.
·
Krok 2: Potvrďte nebo upravte příkaz #define ve dvou výše uvedených záhlavích files podle
uživatelská platforma a kryptografické volby.
UM2646 – Rev 4
strana 13/23
4
4.1
Poznámka:
4.2
Poznámka:
UM2646
Demonstrační software
Demonstrační software
Tato část ilustruje demonstrační software založený na middlewaru STSAFE-A1xx.
Autentizace
Tato ukázka ilustruje tok příkazů, kde je STSAFE-A110 připojen k zařízení, které se ověřuje ke vzdálenému hostiteli (případ zařízení IoT), přičemž místní hostitel se používá jako průchod ke vzdálenému serveru. Scénář, kde je STSAFE-A110 namontován na periferii, která se ověřuje k místnímu hostiteli, napřample pro hry, mobilní příslušenství nebo spotřební materiál, je úplně stejný.
Tok příkazů Pro demonstrační účely jsou zde místní a vzdálení hostitelé stejným zařízením. 1. Extrahujte, analyzujte a ověřte veřejný certifikát STSAFE-A110 uložený v zóně datového oddílu 0 zařízení
za účelem získání veřejného klíče: Přečtěte si certifikát pomocí middlewaru STSAFE-A1xx přes zónu 110 STSAFE-A0. Analyzujte certifikát pomocí analyzátoru kryptografické knihovny. Přečtěte si certifikát CA (dostupný prostřednictvím kódu). Analyzujte certifikát CA pomocí analyzátoru kryptografické knihovny. Ověřte platnost certifikátu pomocí certifikátu CA prostřednictvím kryptografické knihovny. Získejte veřejný klíč z certifikátu STSAFE-A110 X.509. 2. Vygenerujte a ověřte podpis nad číslem výzvy: Vygenerujte číslo výzvy (náhodné číslo). Hash výzvu. Získejte podpis nad hashovanou výzvou pomocí slotu 110 soukromého klíče STSAFE-A0 prostřednictvím
Middleware STSAFE-A1xx. Analyzujte vygenerovaný podpis pomocí kryptografické knihovny. Ověřte vygenerovaný podpis pomocí veřejného klíče STSAFE-A110 prostřednictvím kryptografické knihovny. Když je to platné, hostitel ví, že periferní zařízení nebo IoT je autentické.
Párování
Tento kód exampSoubor vytvoří párování mezi zařízením STSAFE-A110 a MCU, ke kterému je připojen. Párování umožňuje autentizaci (tj. podepsání a ověření) výměny mezi zařízením a MCU. Zařízení STSAFE-A110 je použitelné pouze v kombinaci s MCU, se kterým je spárováno. Párování spočívá v tom, že hostitelská MCU odešle hostitelský MAC klíč a hostitelský šifrovací klíč do STSAFE-A110. Oba klíče jsou uloženy v chráněném NVM STSAFE-A110 a měly by být uloženy ve flash paměti zařízení STM32. Standardně v tomto example, hostitelský MCU odešle dobře známé klíče do STSAFE-A110 (viz postup příkazů níže), které se důrazně doporučuje používat pro demonstrační účely. Kód také umožňuje generování náhodných klíčů. Navíc kód example generuje místní klíč obálky, když odpovídající slot ještě není obsazen v STSAFE-A110. Když je místní slot pro obálky obsazen, zařízení STSAFE-A110 umožňuje hostitelskému MCU zabalit/rozbalit místní obálku pro bezpečné uložení klíče na straně hostitelského MCU. Párovací kód napřampsoubor musí být úspěšně proveden před provedením všech následujících kódů, napřamples.
Tok příkazů
1. Vygenerujte místní klíč obálky v STSAFE-A110 pomocí middlewaru STSAFE-A1xx. Ve výchozím nastavení je tento příkaz aktivován. Uvědomte si, že odkomentování následujících definujících příkazů v par iring.c file deaktivuje generování místního klíče obálky: /* #define _FORCE_DEFAULT_FLASH_ */
K této operaci dojde pouze v případě, že slot místního klíče obálky STSAFE-A110 již není obsazen.
UM2646 – Rev 4
strana 14/23
UM2646
Demonstrační software
2. Definujte dvě 128bitová čísla, která se mají použít jako klíč MAC hostitele a šifrovací klíč hostitele. Standardně se používají zlaté známé klíče. Mají následující hodnoty: 0x00,0x11,0x22,0x33,0x44,0x55,0x66,0x77,0x88,0x99,0xAA,0xBB,0xCC,0xDD,0xEE,0xFF / * Klíč hostitele MAC */ 0x11,0x11,0, 22,0x22,0x33,0x33,0x44,0x44,0x55,0x55,0x66,0x66,0x77,0x77,0x88,0x88 / * šifrovací klíč hostitele */
Chcete-li aktivovat generování náhodného klíče, přidejte do souboru pairing.c následující příkaz define file: #define USE_HOST_KEYS_SET_BY_PAIRING_APP 1
3. Uložte hostitelský MAC klíč a hostitelský šifrovací klíč do příslušného slotu v STSAFE-A110. 4. Uložte hostitelský MAC klíč a hostitelský šifrovací klíč do flash paměti STM32.
4.3
Klíčové zřízení (stanovit tajemství)
Tato ukázka ilustruje případ, kdy je zařízení STSAFE-A110 namontováno na zařízení (jako je zařízení IoT), které komunikuje se vzdáleným serverem a potřebuje vytvořit zabezpečený kanál pro výměnu dat s ním.
V tomto exampZařízení STM32 hraje roli jak vzdáleného serveru (vzdáleného hostitele), tak místního hostitele, který je připojen k zařízení STSAFE-A110.
Cílem tohoto případu použití je ukázat, jak vytvořit sdílené tajemství mezi místním hostitelem a vzdáleným serverem pomocí schématu Diffie-Hellman eliptické křivky se statickým (ECDH) nebo efemérním (ECDHE) klíčem v STSAFE-A110.
Sdílené tajemství by mělo být dále odvozeno od jednoho nebo více pracovních klíčů (zde není znázorněno). Tyto pracovní klíče pak mohou být použity v komunikačních protokolech, jako je TLS, napřample pro ochranu důvěrnosti, integrity a pravosti dat, která jsou vyměňována mezi místním hostitelem a vzdáleným serverem.
Tok příkazů
Obrázek 7. Tok příkazů pro vytvoření klíče ilustruje tok příkazů.
·
Soukromé a veřejné klíče vzdáleného hostitele jsou pevně zakódovány v kódu example.
·
Místní hostitel odešle příkaz StSafeA_GenerateKeyPair do STSAFE-A110, aby vygeneroval
klíčový pár na jeho pomíjivém slotu (slot 0xFF).
·
STSAFE-A110 odešle zpět veřejný klíč (který odpovídá slotu 0xFF) do STM32 (představující
vzdálený hostitel).
·
STM32 vypočítá tajemství vzdáleného hostitele (pomocí veřejného klíče zařízení STSAFE a vzdáleného
soukromý klíč hostitele).
·
STM32 odešle veřejný klíč vzdáleného hostitele do STSAFE-A110 a požádá STSAFE-A110, aby
vypočítejte tajemství místního hostitele pomocí rozhraní API StSafeA_EstablishKey.
·
STSAFE-A110 posílá zpět tajemství místního hostitele do STM32.
·
STM32 porovná dvě tajemství a vytiskne výsledek. Pokud jsou tajemství stejná, tajemství
založení je úspěšné.
UM2646 – Rev 4
strana 15/23
Obrázek 7. Tok příkazů pro vytvoření klíče
UM2646
Demonstrační software
Vzdálený hostitel
STM32
Místní hostitel
STSAFE
Výpočet tajemství vzdáleného hostitele (pomocí soukromého klíče vzdáleného hostitele a veřejného klíče místního hostitele (STSAFE slot 0xFF))
Tajemství vzdáleného hostitele
Vygenerujte pár klíčů
Generujte klíčový pár na slotu 0xFF
Veřejný klíč STSAFE vygenerován dne
Generován veřejný klíč STSAFE
slot 0xFF
Veřejný klíč vzdáleného hostitele
STM32 porovnává tajný klíč vzdáleného hostitele s
tajný místní hostitel a vytiskne výsledek
Vytvořit klíč (veřejný klíč vzdáleného hostitele)
Odeslání tajemství místního hostitele
Výpočet tajemství místního hostitele (pomocí soukromého klíče místního hostitele (STSAFE slot 0xFF) a veřejného klíče vzdáleného hostitele)
Tajemství místního hostitele
4.4
Poznámka:
4.5
Zabalte/rozbalte místní obálky
Tato ukázka ilustruje případ, kdy STSAFE-A110 zabalí/rozbalí místní obálku, aby bezpečně uložil tajemství do jakékoli energeticky nezávislé paměti (NVM). Šifrovací/dešifrovací klíče lze tímto způsobem bezpečně uložit do další paměti nebo do paměti uživatelských dat STSAFEA110. Mechanismus obtékání se používá k ochraně tajného nebo prostého textu. Výstupem balení je obálka zašifrovaná algoritmem zalamování klíče AES, která obsahuje klíč nebo prostý text, který má být chráněn.
Tok příkazů
Místní a vzdálení hostitelé jsou zde stejné zařízení. 1. Generujte náhodná data asimilovaná do místní obálky. 2. Zabalte místní obálku pomocí middlewaru STSAFE-A110. 3. Uložte zabalenou obálku. 4. Rozbalte zabalenou obálku pomocí middlewaru STSAFE-A110. 5. Porovnejte rozbalenou obálku s původní místní obálkou. Měli by si být rovni.
Generování páru klíčů
Tato ukázka ilustruje tok příkazů, kde je zařízení STSAFE-A110 připojeno k místnímu hostiteli. Vzdálený hostitel požádá tohoto místního hostitele, aby vygeneroval pár klíčů (soukromý klíč a veřejný klíč) na slotu 1 a poté podepsal výzvu (náhodné číslo) vygenerovaným soukromým klíčem.
Vzdálený hostitel je pak schopen ověřit podpis pomocí vygenerovaného veřejného klíče.
Tato ukázka je podobná ukázce ověření se dvěma rozdíly:
·
Pár klíčů v ukázce Authentication je již vygenerován (na slotu 0), zatímco v tomto příkladuample,
vygenerujeme pár klíčů na slotu 1. Zařízení STSAFE-A110 může také vygenerovat pár klíčů na slotu 0xFF,
ale pouze pro klíčové účely založení.
·
Veřejný klíč v ukázce Authentication je extrahován z certifikátu v zóně 0. V tomto
example, veřejný klíč je zaslán zpět s odpovědí STSAFE-A110 na
Příkaz StSafeA_GenerateKeyPair.
UM2646 – Rev 4
strana 16/23
UM2646
Demonstrační software
Poznámka:
Tok příkazů
Pro demonstrační účely jsou zde místní a vzdálení hostitelé stejným zařízením. 1. Hostitel odešle příkaz StSafeA_GenerateKeyPair do STSAFE-A110, který odešle zpět
veřejný klíč k hostitelskému MCU. 2. Hostitel vygeneruje výzvu (48bajtové náhodné číslo) pomocí rozhraní API StSafeA_GenerateRandom. The
STSAFE-A110 odešle zpět vygenerované náhodné číslo. 3. Hostitel vypočítá hash generovaného čísla pomocí kryptografické knihovny. 4. Hostitel požádá STSAFE-A110, aby vygeneroval podpis vypočítaného hashe pomocí
StSafeA_GenerateSignature API. STSAFE-A110 odešle zpět vygenerovaný podpis.
5. Hostitel ověří vygenerovaný podpis pomocí veřejného klíče zaslaného STSAFE-A110 v kroku 1. 6. Výsledek ověření podpisu se vytiskne.
UM2646 – Rev 4
strana 17/23
UM2646
Historie revizí
Tabulka 6. Historie revizí dokumentu
Datum
Revize
Změny
09. prosince - 2019
1
Počáteční vydání.
13. ledna 2020
2
Odstraněná sekce s informacemi o licenci.
Aktualizovaný seznam funkcí ilustrovaných demonstračními kódy v Úvodu. Odebrána tabulka Seznam zkratek a vložen slovník na konec.
Malá změna textu a aktualizované barvy na obrázku 1. Architektura STSAFE-A1xx.
Aktualizováno Obrázek 2. Blokové schéma aplikace STSAFE-A1xx.
Aktualizovaná tabulka 1. Modul CORE exportovaný API.
07. února 2022
3
Odebrány StSafeA_InitHASH a StSafeA_ComputeHASH z tabulky 4. Modul CRYPTO exportoval API.
Aktualizována část 3.8.2: Konfigurační kroky.
Aktualizována část 4.2: Párování.
Aktualizován oddíl 4.3: Zřízení klíče (stanovit tajemství).
Přidána sekce 4.5: Generování páru klíčů.
Malé změny textu.
Přidaný softwarový balík STSAFE-A1xx je integrován v X-CUBE-SAFEA1 v1.2.1 jako middleware
a je integrován jako BSP pro softwarový balíček pro STM32CubeMX. a výše uvedené šablony
07-března-2024
4
jsou přítomny pouze ve složce BSP balíčku X-CUBE-SAFEA1..
Aktualizována část 3.1: Obecný popis, část 3.2: Architektura a část 3.7: Struktura složek.
UM2646 – Rev 4
strana 18/23
Glosář
Pokročilý šifrovací standard AES ANSI American National Standards Institute API Rozhraní pro programování aplikací Balíček podpory BSP Board CA Certification Authority CC Common Criteria C-MAC Command message autentizační kód ECC Eliptická křivka kryptografie ECDH Eliptická křivka DiffieHellman ECDHE Eliptická křivka DiffieHellman – efemérní EWARM IAR Embedded Workbench® pro Arm® HAL Hardwarová abstraktní vrstva I/O Vstup/výstup IAR Systems® Světová jednička v softwarových nástrojích a službách pro vývoj vestavěných systémů. IDE Integrované vývojové prostředí. Softwarová aplikace, která poskytuje počítačovým programátorům komplexní možnosti pro vývoj softwaru. IoT Internet věcí I²C Interintegrovaný obvod (IIC) LL Nízkoúrovňové ovladače MAC Autentizační kód zprávy MCU Jednotka mikrokontroléru MDK-ARM Vývojová sada mikrokontroléru Keil® pro Arm® MPU Jednotka ochrany paměti NVM Energeticky nezávislá paměť
OS Operační systém SE Secure element SHA Secure Hash algoritmus SLA Licenční smlouva k softwaru ST STMicroelectronics TLS Zabezpečení transportní vrstvy USB Univerzální sériová sběrnice
UM2646
Glosář
UM2646 – Rev 4
strana 19/23
UM2646
Obsah
Obsah
1 Obecné informace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 2 Bezpečnostní prvek STSAFE-A110. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 Popis middlewaru STSAFE-A1xx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1 Obecný popis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.2 Architektura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.3 Modul CORE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.4 Modul SERVIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.5 CRYPTO modul. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.6 Šablony . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.7 Struktura složek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.8 Jak na to: integrace a konfigurace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.8.1 Integrační kroky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.8.2 Kroky konfigurace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4 Demonstrační software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14 4.1 Autentizace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.2 Párování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.3 Zřízení klíče (stanovit tajemství) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.4 Zabalení/rozbalení místních obálek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.5 Generování páru klíčů. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Historie revizí. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 Seznam tabulek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Seznam obrázků . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
UM2646 – Rev 4
strana 20/23
UM2646
Seznam tabulek
Seznam tabulek
Tabulka 1. Tabulka 2. Tabulka 3. Tabulka 4. Tabulka 5. Tabulka 6.
Modul CORE exportoval API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Exportovaná rozhraní API modulu STSAFE-A110 CORE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Exportovaná rozhraní API modulu SERVICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Rozhraní API exportovaného modulu CRYPTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 šablon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Historie revizí dokumentu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
UM2646 – Rev 4
strana 21/23
UM2646
Seznam figur
Seznam figur
Obrázek 1. Obrázek 2. Obrázek 3. Obrázek 4. Obrázek 5. Obrázek 6. Obrázek 7.
Architektura STSAFE-A1xx. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Blokové schéma aplikace STSAFE-A1xx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Architektura modulu 6 CORE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Architektura modulu SERVICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Architektura modulu CRYPTO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Projekt file struktura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Tok příkazů pro vytvoření klíče . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
UM2646 – Rev 4
strana 22/23
UM2646
DŮLEŽITÉ UPOZORNĚNÍ ČTĚTE POZORNĚ STMicroelectronics NV a její dceřiné společnosti (“ST”) si vyhrazují právo provádět změny, opravy, vylepšení, úpravy a vylepšení produktů ST a/nebo tohoto dokumentu kdykoli bez upozornění. Kupující by měli před zadáním objednávky získat nejnovější relevantní informace o produktech ST. Produkty ST jsou prodávány v souladu s prodejními podmínkami ST platnými v době potvrzení objednávky. Kupující jsou výhradně odpovědní za výběr, výběr a použití produktů ST a ST nepřebírá žádnou odpovědnost za pomoc s aplikací nebo design produktů kupujících. Společnost ST zde neuděluje žádnou výslovnou ani předpokládanou licenci k právu duševního vlastnictví. Další prodej produktů ST s ustanoveními odlišnými od informací uvedených v tomto dokumentu ruší jakoukoli záruku poskytnutou společností ST na takový produkt. ST a logo ST jsou ochranné známky společnosti ST. Další informace o ochranných známkách ST najdete na www.st.com/trademarks. Všechny ostatní názvy produktů nebo služeb jsou majetkem jejich příslušných vlastníků. Informace v tomto dokumentu nahrazují a nahrazují informace dříve uvedené v předchozích verzích tohoto dokumentu.
© 2024 STMicroelectronics Všechna práva vyhrazena
UM2646 – Rev 4
strana 23/23
Dokumenty / zdroje
![]() |
Softwarový balíček STMicroelectronics X-CUBE-SAFEA1 [pdfUživatelská příručka STSAFE-A100, STSAFE-A110, X-CUBE-SAFEA1 softwarový balíček, X-CUBE-SAFEA1, softwarový balíček, balíček |