Uppbyggnaden av säkerhetsmicrocontrollers för IoT-tillämpningar

Av Majeed Ahmad

Bidraget med av DigiKeys nordamerikanska redaktörer

I en tid då implementering av säkerhet i inbäddade system kan framstå som en överväldigande uppgift, blir microcontrollers som specialiserar sig på säkerhetsfunktioner aktuella för att möjliggöra säkerhet vid utformningen av det inbäddade systemet. Det är bra för det finns ingen tvekan om att det behövs en ny form av inbäddade lösningar för att säkra IoT-tillämpningar.

En studie från ABI Research uppskattade att mindre än 4 % av IoT-enheterna som såldes förra året innehöll inbäddad säkerhet. Samtidigt förutspår marknadsundersökningsföretaget att nästan 25 % av cyberattackerna kommer att riktas mot IoT-enheter fram till 2020, vilket gör säkerhetsmicrocontrollers till en het potatis.

Men vad är en säkerhetsmicrocontroller? Många microcontrollers uppges erbjuda säkerhetsfunktioner. En närmare titt visar dock att det mestadels är tomma ord. Den här artikeln gräver djupare i de egenskaper som definierar en säkerhetsmicrocontroller. Den kommer mer ingående att titta på de egenskaper och funktioner som skiljer en säker microcontroller från en som bara påstås vara det.

Låt oss börja med microcontrollerleverantörernas strävan att komplettera sina hårdvarubaserade säkerhetslösningar med ett extra lager av säkerhet för att stärka försvaret mot programvarusårbarheter och nätverksbaserade angrepp.

Berättelse om två microcontrollersamarbeten

Tillkomsten av slutpunktsenheter som används vid gränsen till nätverk kräver säkra trådlösa uppdateringar (OTA) av fast programvara. RX651-microcontrollers från Renesas hanterar detta omprogrammeringskrav genom att integrera Trusted Secure IP (TSIP) och tillförlitligt skydd av flashområdet, vilket möjliggör uppdateringar av fast programvara i fältet genom säker nätverkskommunikation.

TSIP erbjuder robust nyckelhantering, krypterad kommunikation och manipuleringsdetektering för att säkerställa stark säkerhet mot externa hot såsom avlyssning, manipulering och virus (figur 1). På samma sätt gör det integrerade flashminnet med dubbla banker det enklare för enhetstillverkarna att utföra uppdateringar av fast programvara säkert och pålitligt.

Diagram över byggstenarna i Renesas RX651 microcontrollerFigur 1. En vy över säkerhetsbyggstenarna (mitten till höger) i RX651 microcontroller. (Bildkälla: Renesas Electronics)

Flashminnet med dubbla banker gör det möjligt för konstruktörer av inbäddade system att förverkliga de höga säkerhetsnivåerna genom en kombination av TSIP för att skydda krypteringsnycklarna och maskinvaruacceleratorer för kryptering som AES, 3DES, RSA, SHA och TRNG. Det finns också ett kodskyddsområde som skyddar bootkoden från obehörig omprogrammering.

Renesas samarbetar med Secure Thingz, en expert inom inbäddade system, för säkert tillhandahållande av sin RX-familj med 32-bitars microcontrollers. Renesas stödjer därför Secure Deploy-arkitekturen som Secure Thingz har skapat för att förenkla säkerhetsimplementeringarna i design- och tillverkningsvärdekedjor.

En annan microcontrollerleverantör som har samarbetat med en leverantör av inbäddade säkerhetslösningar är STMicroelectronics. Chiptillverkaren samarbetar med Arilou Information Security Technologies för att skapa ett säkerhetsarrangemang med flera skikt där hårdvara och programvara kan komplettera varandra för att övervaka dataströmmarna och detektera kommunikationsavvikelser.

STMicros SPC58 Chorus-serie med 32-bitars microcontrollers för fordon inbäddar en maskinvarusäkerhetsmodul (HSM) som skyddar känslig säkerhetsinformation såsom kryptografiska nycklar och säkerställer därmed skydd mot intrång via kommunikationsbussar i bilkarosser och gateway-tillämpningar. HSM tillhandahåller maskinvarubaserade säkerhetsfunktioner för att underlätta säker kommunikation, OTA-uppdateringar och säker start.

ST har lagt till Arilous IDPS-programvara för detektion och förebyggande av intrång (Intrusion Detection and Prevention system) till sin SPC58 Chorus-serie av microcontrollers för fordon för att detektera trafikavvikelser och bilda ett extra skyddslager mot cyberattacker (figur 2). IDPS är en programvarulösning utformad för att övervaka CAN-bussen (Controller Area Network) och detektera avvikelser i kommunikationsmönstren för elektroniska styrenheter (ECU:er) i fordonskonstruktioner.

Bild av IDPS-programvara som detekterar trafik och andra avvikelser på vägarna (klicka för att förstora)Figur 2. Så här identifierar DPS-programvaran trafiken och andra avvikelser på vägarna. (Bildkälla: Arilou)

Specialiserade säkerhetsmicrocontrollers

Ovanstående avsnitt har beskrivit microcontrollers som integrerar säkerhetsfunktioner för att motverka fysiska angrepp och fjärrangrepp. Det här avsnittet förklarar specialiserade säkerhetsmicrocontrollers, ofta kallade säkra element, som fungerar som en följeslagare till huvudmicrocontrollern samtidigt som de är länkade över ett I2C eller entrådsgränssnitt.

Säkra element, som stöder microcontrollers utan säkerhetsfunktioner, är baserade på specialbyggd hårdvara för att ge en säkerhetsram mot ett brett spektrum av hot. De är enkla, billiga och avlastar huvudmicrocontrollern eller CPU:n från säkerhetsrelaterade uppgifter som nyckellagring, kryptografisk acceleration osv. Det är därför de också kallas säkerhetssamprocessorer.

I ett säkert element fungerar alla säkerhetsbyggstenar under en gemensam gräns, som isolerar autentiseringsnycklar från programvara och därmed förhindrar att hackare utför angrepp som effektcykling, klockfel och sidokanalsangrepp. Uppladdning av säkerhetsnycklar och certifikat i säkra element på fabriker förhindrar också IP-stöld, designkloning och förfalskning av produkter.

Ta till exempel Microchips ATECC608A säkra element (figur 3), som har en slumpgenerator (RNG) för unik nyckelgenerering samtidigt som den uppfyller de senaste kraven från National Institute of Standards and Technology (NIST). Den har också kryptografiska acceleratorer som AES-128, SHA-256 och ECC P-256 för ömsesidig autentisering.

Blockdiagram över det säkra elementet Microchip ATECC608AFigur 3. Blockdiagram över det säkra elementet ATECC608A. (Bild: Microchip Technology)

Säker ROM för nyckellagring möjliggör slutligen en oföränderlig miljö som är svår för hackare och förfalskare att ändra och förhindrar därmed manipulation och sidokanalsangrepp. Sammantaget erbjuder ATECC608A tjänster som sträcker sig från säker start till OTA-validering till säker nyckellagring och överföring för IoT- och molntjänstautentisering.

En annan billig microcontroller som specialiserar sig på säkerhetsimplementeringar är Microchips SAM L11 (figur 4), som skyddar effektbegränsade IoT-noder från hot som felinjektion och sidokanalsangrepp. Den abstraherar säkerhetsdetaljer på låg nivå med ett modulärt GUI som gör det möjligt för utvecklare att välja relevanta säkerhetsfunktioner, och det är så den förenklar den inbäddade säkerhetsimplementeringen.

Diagram över fyra användningsfall för Microchip SAM L11 microcontroller (klicka för att förstora)Figur 4. Fyra fall av säkerhetsanvändning med säkerhetsmicrocontrollern SAM L11. (Bild: Microchip Technology)

Säkerhetsfunktionerna som SAM L11 abstraherar inkluderar tillhandahållningstjänster från tredje part. Den innehåller också Arms TrustZone-teknik som isolerar säker och icke-säker kod i en microcontroller. SAM L11 strömlinjeformar dessutom IoT-nodens säkerhetsbehov medan du ansluter till molntjänster som Amazon Web Services (AWS).

NXP:s LPC5500 microcontroller, som avses i IoT-tillämpningar, är ett annat exempel på säkerhetsbaserade microcontrollers. Den använder enhetsunika nycklar för att skapa en oföränderlig maskinvarubaserad säkerhetsfunktion. Nycklarna kan genereras lokalt av en SRAM-baserad fysiskt okloningsbar funktion (PUF) som tillåter transaktioner med sluten slinga mellan slutanvändaren och OEM. Det eliminerar behovet av hantering av tredjepartsnycklar.

Specialiserade säkerhetsverktyg

Eftersom säkerhetscentrerade microcontrollers som ATECC608A omfattar säkerhetbyggstenar för att underlätta ett pålitligt ekosystem behandlar de inte programvaruisolering. I en tid då mängden programvara som körs på microcontrollers ökar kontinuerligt, måste utvecklare skydda en stor kodbas från skadliga angrepp.

IoT-enheterna har till exempel protokollstackar för Wi-Fi, Bluetooth, TLS osv., och korruption av protokollstackar kan påverka enhetens drift även utan att hackare stjäl säkerhetsnycklarna. Detta kräver en uppdelning av verksamhetskritisk kod från icke-verksamhetskritisk kod och placerar den kritiska programvaran i en säker miljö.

Arms TrustZone-miljö (figur 5) skiljer verksamhetskritiska kod- och protokollstackar från komplex programvara för operativsystem (OS) och stora kodbaser, och förhindrar därmed bakdörrar i fast progamvara i säkerhetsnyckellagringsområden. Det skapar flera programvarusäkerhetsdomäner för att begränsa åtkomsten till det specifika minnet, kringutrustning och I/O-komponenter i microcontrollern.

Diagram över det grundläggande ramverket för TrustZone-teknikenFigur 5. Det grundläggande ramverket för TrustZone-tekniken för att isolera programvara i säkra och icke-säkra zoner. (Bildkälla: Arm)

Alla tre säkerhetsmicrocontrollers som nämns ovan, ATECC608A, SAM L11 och LPC5500 (figur 6), har införlivat TrustZone-tekniken för att separera säker och icke-säker kod. Det säkra elementet ATECC608A kan dessutom fungera med alla TrustZone-aktiverade microcontrollers.

Diagram över TrustZone-tekniken i microcontrollern NXP LPC5500 (klicka för att förstora)Figur 6. TrustZone-tekniken i microcontrollern LPC5500 levereras med Arm Cortex M-33-processorn, som visas längst upp till vänster i diagrammet. (Bildkälla: NXP)

Här är det också värt att nämna att säkerhetsmicrocontrollers och TrustZone-tekniken kompletterar varandra på ett sätt som gör att TrustZone kräver hårdvaruskydd, och säkerhetsmicrocontrollers såsom ATECC608A och SAM L11 underlättar det inom en IoT-designmiljö. Å andra sidan hjälper TrustZone att skapa en kompakt programmiljö i microcontrollercentrerade inbäddade konstruktioner.

Sammanfattning

Uppbyggnaden av säkerhetsmicrocontrollers visar hur de förenklar den inbäddade säkerhetsimplementeringen under designfasen och hur de kringgår den branta inlärningskurvan när det gäller säkerhetsteknisk expertis. Dessa specialiserade microcontrollers minskar också kostnaderna och strömförbrukningen, två viktiga överväganden i de mycket begränsade IoT-konstruktionerna.

Vid en tid då tillkomsten av IoT-enheter överskrider hastigheten med vilken dessa anslutna konstruktioner används på ett säkert sätt, erbjuder säkerhetsmicrocontrollers en realistisk möjlighet för att bemöta cyberhot på flera fronter. De erbjuder en förenklad lösning som är utrustad med ett säkerhetsdesign-ekosystem för att underlätta utvecklingsmiljöer där man pekar och klickar.

DigiKey logo

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 DigiKey or official policies of DigiKey.

Om skribenten

Image of Majeed Ahmad

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

DigiKeys nordamerikanska redaktörer