SEK | EUR | USD

Säkra IoT-säkerheten enkelt med SRAM-baserade PUF-nycklar och TrustZone-isolering

By Majeed Ahmad

Contributed By Digi-Keys nordamerikanska redaktörer

Konstruktioner byggda runt sakernas internet (IoT) blir allt mer komplexa och kräver förbättrade lösningar för att säkerställa systemsäkerheten samt för att övervaka de ständiga lokala attackerna och fjärrattackerna. Dock har användandet av säkerhet på resursbegränsade IoT-enheten varit långsamt och begränsats till antingen löst konstruerade programvarukorrigeringar eller mycket sofistikerade och dyra kretsar byggda på komplexa krypteringsalgoritmer. Utvecklarna behöver en mer omfattande, men mer lättanvänd lösning om de ska använda och implementera säkerhet snabbare.

Tekniker som SRAM-baserade fysiska okloningsbara funktioner (PUF) och Arms TrustZone har växt fram och utvecklats för att uppfylla säkerhetsbehoven för inbäddade och IoT-utvecklare. Den här artikeln presenterar PUF och TrustZone och hur de kan användas med lösningar från NXP Semiconductors, Microchip Technology, och Maxim Integrated.

SRAM PUF-teknik

SRAM PUF, ett lätt autentiseringsalternativ till traditionell kryptografi, integreras i säkerhetscentrerade kretsar som NXP:s LPC55S6x-familj där de lägger till förtroenderot och distribuering (figur 1).

Blockdiagram över NXP LPC55S6x-familjens MCU:erFigur 1: Blockdiagrammet för LPC55S6x-familjens MCU:er visar integrering av säkerhetsbyggstenar som SRAM-baserad PUF-teknik. (Bildkälla: NXP)

PUF-tekniken skiljer sig från traditionell lagring av säkerhetsnycklar i icke flyktigt minne där OEM infogar säkerhetsnycklar antingen genom en traditionell säkringsbaserad metod eller via engångsprogrammerbara (OTP) minnestekniker. Istället tar PUF-tekniken naturliga, slumpmässiga elektriska variationer i SRAM-bitcellerna och gör detta unika "fingeravtryck" till en hemlig krypteringsnyckel som fungerar som grunden för ett säkerhetsdelsystem. Den här säkra högkvalitetsnyckeln kan rekonstrueras som samma krypteringsnyckel varje gång och under alla förhållanden. Det finns ett antal fördelar med den här metoden:

  • Det eliminerar behovet av hantering av tredjepartsnycklar i potentiellt osäkra miljöer
  • Systemet för att lagra och distribuera nycklar behöver inte läsas in vid chiptillverkningen
  • Det kan installeras senare i tillförselkedjan och kan till och med eftermonteras på distribuerade enheter
  • Utan fysisk åtkomst till ett individuellt SRAM-chip blir avkrypteringen av dessa säkerhetsnycklar nästan omöjlig
  • Nycklar genereras endast när det krävs och de lagras inte i systemet
  • Nyckeln lagras inte permanent och finns inte när enheten inte är aktiv vilket gör det mycket svårt för en angripare att fysiskt försöka skada minnesinnehållet

Arm TrustZone

TrustZone-tekniken är optimerad för inbäddade tillämpningar med ultralåg effekt och är tillgänglig i Arm Cortex®-M23- och Cortex-M33-behandlingsplattformarna. Den placerar säkerhetskritiska rutiner som bootkod, säker konfiguration, säkerhetsnycklar, krypteringsbibliotek och uppdateringar av fast programvara i en skyddad miljö (figur 2). I en TrustZone-aktiverad mikrostyrenhet, till exempel, testas den uppdragskritiska koden fullständigt efter att ha separerats från stora kodstackar för at hindra den från att påverkas av en bugg som genererats av utvecklarna.

Diagram över NXP TrustZone möjliggör flera programvarusäkerhetsdomänerFigur 2: TrustZone möjliggör flera programvarusäkerhetsdomäner som var och en begränsar tillgången till säkert minne och I/O till endast betrodda säkerhetsmiljöer. (Bildkälla: NXP)

När det gäller konfidentiella data och kod säkerställer TrustZone dess säkerhet genom att isolera de kritiska delarna av programvarudesignen och kör programvaran på en maskinvaruövervakare i en miljö som är läs- och skrivskyddad från programvara på användarnivå.

Med TrustZone kan utvecklarna dela in minnet i säkra och icke säkra regioner så att till och med ett felsökningsförsök kan blockeras från säker kod och data när det inte har autentiserats. Dessutom kan en CPU i en icke säker status endast komma åt data från icke säkert minne och därigenom inte köra från icke säkert programminne.

TrustZone tillhandahåller dessa säkerhetsfunktioner, men behåller ändå låga avbrottslatenser för både säkra och icke säkra domäner. Dessutom medför det inte kodtak, cykeltak eller komplexiteten hos en virtualiseringsbaserad lösning.

Fysisk implementering av PUF och TrustZone

NXP har integrerat maskinvaru-IP – och stödprogramvarubiliotek – från PUF-utvecklaren Intrinsic ID för att implementera PUF:er i sina LPC55Sxx-mikrostyrenheter (figur 3). Intrinsic ID:s inbäddade maskinvaru-IP, QuiddiKey, hanterar nyckelgenerering, nyckellagring, enhetsautentisering, nyckeldistribuering och chiptillgångshantering.

Diagram över NXP har integrerad maskinvaru-IP och stödprogramvarubiliotek från Intrinsic IDFigur 3: NXP har integrerat maskinvaru-IP och stödprogramvarubiliotek från Intrinsic ID för att implementera PUF:er i sina LPC55Sxx-mikrostyrenheter. IP hanterar generering och hantering av nycklar. (Bildkälla: Intrinsic ID)

NXP har även antagit TrustZone för sina LPC55Sxx-mikrostyrenheter. TrustZones CPU-centrerade metod för IoT-säkerhet skapar isolering mellan de säkra och icke säkra delarna av den inbäddade designen.

Till exempel, som i implementeringen på Microchip Technologys SAM L10/11 mikrostyrenheter ger TrustZone ett systemtäckande skyddsarrangemang där IoT-konstruktioner kan delas in i säkra och icke säkra statusar. Dock körs både säker och icke säker kod på en enskild CPU för effektiv inbäddad implementering.

Den här centrerade metoden är viktig eftersom mängden programvara snabbt växer i moderna mikrostyrenheter, med protokollstackar som hanterar anslutningstekniker som Wi-Fi, Bluetooth och Transport Layer Security (TLS). Den här ökande kodbasen ökar en IoT-enhets exponering för skadliga attacker betydligt. I exempelvis smarta hem och byggnader kan en skadad protokollstack göra anslutna dörrlås, garagedörröppnare och säkerhetskameror mycket sårbara.

Om däremot IoT-utvecklarna flyttar den uppdragskritiska koden till en TrustZone-skyddad miljö kan inte ens ett fel i en tredjepartsprotokollstack påverka enhetens funktion allvarligt.

Kortnivåsäkerhet

Ett anat tydligt mönster i IoT-säkerhetsparadigmet gäller tillgängligheten till referensdesigner som förenklar kommunikation lokalt och mellan lokala resurser och molnet genom att övervinna de problem som är förknippade med säkerhets- och kommunikationsprotokoll. MAXREFDES155# DeepCover® referensdesign från Maxim Integrated och Microchips AC164164 PIC®-IoT WG-utvecklingskort är ett aktuellt exempel.

I MAXREFDES155# säkerhetsdesignen är en Arm mbed™-skärmning ansluten till en sensorslutpunkt med en 300 millimeter (mm) kabel. Sensorändpunkten innehåller en DS28C36 DeepCover säker autentiserare, en infraröd (IR) värmesensor och en riktningslaser för IR-sensorn (figur 4).

Diagram över Maxim Integrateds MAXREFDES155# DeepCover IoT inbäddade säkerhetsreferensdesignFigur 4: Maxim Integrateds MAXREFDES155# DeepCover IoT-inbäddade säkerhetsreferensdesign innehåller en Arm mbed-skärmning, en sensorslutpunkt ansluten via I2C och anslutning till molnet via Wi-Fi. (Bildkälla: Maxim Integrated)

DS28C36 säkerhetschip ger två autentiserade universella in/ut-stift (GPIO) med säker statuskontroll (tillval) och nivåavkänning. Detta tillåter IoT-utvecklarna att övervaka och begränsa användningen av perfieriutrustning med autentiserade EEPROM-inställningar och en 17-bitars nedräknare. Tillämpningarna som DS28C36 underlättar är dubbelriktad autentisering, säker lagring av systemdata som kryptografiska nycklar, verifiering av uppdragskritiska data, säker bootning och användningskontroll för slutprodukter.

mbed-skärmningen i MAXREFDES155# referensdesignen inkluderar en DeepCover-säkerhetshjälpprocessor, Wi-Fi-kommunikation, LCD-display, tryckknappsreglage och statuslysdioder. Referensdesignen använder MAX32600MBED# mbed-utvecklingskortet för omedelbar testning och skärmningens Wi-Fi-kretsar underlättar kommunikation med webbservern.

I MAXREFDES155#-designen kompletterar en säkerhetshjälpprocessor på mbed-skärmningen DS28C36-autentiseringskretsen. Den underlättar kraven på HMAC- (Hash-based Message Authentication) och ECDSA-beräkningar (Elliptic Curve Digital Signature Algorithm) som är en del av DS28C36:s säkerhetsfunktioner.

Hjälpprocessorn tillhandahåller en kärnuppsättning krypteringsverktyg för att hjälpa IoT-konstruktörer att implementera krypteringsmotorer och integrera en äkta FIPS/NIST (Federal Information Processing Standards/National Institute of Standards and Technology) slumptalsgenerator (RNG). De offentliga och privata säkerhetsnycklarna arbetar enligt de standarder som definierats av NIST, vilket inkluderar FIPS 186, ECDSA-signaturgenererings- och verifieringsmekanismen som stödjer en dubbelriktad asymmetrisk nyckelautentiseringsmodell.

Förenkling av molnlänksäkerhet

Microchips AC164164 PIC-IoT WG-utvecklingskort har liknande element. men fokuserar på att förenkla IoT-nodens länk till molnplattformar som Google Cloud. Utvecklingsplattformen är byggd runt företagets PIC-mikrostyrenheter och använder ATECC608A-hjälpprocessorn för att åtgärda säkerhetsrisker som finns i stora programvarusystem och plattformar för realtidsoperativsystem (RTOS).

AC164164 är en IoT-designplattform där säkerheten i edge till moln-länken säkerställs med ett säkert element som är förregistrerat för Google Cloud IoT Core-tjänsten och är klart att använda med beröringsfri distribuering. Tillsammans med ATECC608A-säkertehtshjälpprocessorn har utvecklingskortet PIC24FJ128GA705-mikrostyrenheten som hanterar komplexa tillämpningar med mindre kod och med lägre strömförbrukning.

En helcertifierad IEEE 802.11b/g/n IoT-Wi-Fi-styrenhet länkar IoT-noden till Google Cloud. Det innebär att IoT-utvecklare inte behöver vara experter på trådlösa nätverksprotokoll, säkerhet och maskinvarukompatibilitet för att säkerställa en säker IoT-produktdesign.

Slutsats

Tillgängligheten till specialiserade säkerhetschip, som fungerar som kompletterande kretsar till huvudprocessorn eller mikrostyrenheten i IoT-konstruktioner, gör att utvecklarna kan säkra IoT-noder och länkar till slutpunkter samt till molnplattformar utan att vara säkerhetsexperter. Integreringen av kompletterande tekniker som PUF och TrustZone förstärker säkerhetsegenskaperna ytterligare hos dessa kostnadseffektiva mikrostyrenheter med låg effekt i takt med att IoT-säkerhetskraven ökar.

Utöver detta förenklar referensdesigner och utvecklingskort säkerhetsekvationen ytterligare genom att tillämpa flera nivåer av inbäddat skydd i ett stort urval av IoT-tillämpningar.

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of Digi-Key Electronics or official policies of Digi-Key Electronics.

Om skribenten

Majeed Ahmad

Majeed Ahmad är elektronikingenjör med mer än 20 års erfarenhet av B2B-teknikmedia. Han är tidigare chefredaktör på EE Times Asia, en systertidskrift till EE Times.

Majeed har skrivit sex böcker om elektronik. Han skriver ofta i tidskrifter om elektronikdesign, inklusive All About Circuits, Electronic Products och Embedded Computing Design.

Om utgivaren

Digi-Keys nordamerikanska redaktörer