APIer och säkerhet för IoT-eran

Det skrivs mycket om hårdvaruarkitekturer för Internet of Things, men applikationsgränssnitt och mjukvara är minst lika viktigt. Kevin McDermott från Imagination Technologies skall här försöka ge en översikt över vart marknaden är på väg och hur man kan bygga in säkerhet i mjukvaran.

 

Uttrycken API och IoT nämns en hel del numera på utvecklarnas konferenser världen över. Den lavinartade ökningen av antalet uppkopplade utrustningar är en utmaning som hotar att spränga gränserna för den traditionella infrastrukturen. Medan teknikföretag som Imagination är i full färd med att bygga nästa våg av maskinvaruarkitekturer för IoT, är utveckling av programvara ett annat intressant område – och ett ämne jag vill utveckla i denna artikel.

Analytikerna debatterar fortfarande hur IoT-marknaderna för konsumenter och industri kommer att utvecklas, men alla är överens om att två viktiga krav kommer att vara avgörande för framgången för IoT i längden: API-hantering och säkerhet.

APIer växer
Låt oss studera APIer först. APIer kom ursprungligen till för att definiera ett enkelt sätt för programvara att interagera med maskinvara. Det finns fortfarande många exempel på utvecklare som använder APIer på det sättet för programmering av grafik. OpenGL är ett perfekt exempel på en tvärplattforms-API som utnyttjas för att programmera GPUer; många populära spel i Linux, Android eller Windows använder OpenGL för att tolka bilder på många miljarder utrustningsskärmar världen över.

APIer utvecklades med tiden till att vara mer än enkel maskinvaruprogrammering genom tillägg av mer funktionalitet och standardiserad utveckling inom snabbt framväxande marknader. Mozilla Foundation skapade exempelvis WebAPI-specifikationen för att hjälpa utvecklare att snabbt skapa mobila tillämpningar med HTML5.

Det börjar stå klart att nästa utvecklingssteg för APIer kommer att utspelas på IoT-marknaden. IoT-APIer är nyckeln till potentialen för nästa generations maskinvara och kopplar upp utrustning till molnet på ett smart, mer effektivt sätt. Andrew Oliver hos JavaWorld kallar IoT-APIer “klistret och den intressanta delen som gör att IoT börjar blir användbart och mer än bara ett modeord”. IoT-APIer, som ursprungligen fann influenser inom mobiltelefonin, håller på att utvecklas till att bli ett lätt och användarvänligt gränssnitt för utvecklare som vill kombinera och koppla ihop flera utrustningar, och lösa nya och intressanta arbetsflöden

I takt med att allt fler utrustningar kopplas till Internet måste dock vissa återkommande problem lösas. Vi kan antingen fortsätta att ta itu med dessa efter hand, eller utveckla gemensamma lösningar och ramar för de vardagsproblem som IoT medför. Ett viktigt led i att lösa sådana problem sker i API-lagret. Om vi kan få APIer att vara samfungerande, säkra, skalbara, väldokumenterade och möjliga att upptäcka har vi kommit en bra bit på väg mot att lösa många av de svårigheter som IoT har fört med sig. Vi måste också hitta återanvändbara sätt att bygga säker och beständig, realtidskommunikation mellan dessa molnbaserade tjänster och de små utrustningar som körs på IoT.

Standardisering
Ett spännande nytt icke-vinstdrivande konsortium som försöker lösa problemen kring APIer för IoT är alliansen AllSeen. Med programförklaringen att man ska “möjliggöra och driva på ett utbrett antagande av produkter, system och tjänster som stöder IoT med en öppen, universell utvecklingsram som stöds av ett livfullt ekosystem och framgångsrik teknikvärld” är AllSeen-alliansen en av de bredaste tvärindustrigrupperna som försöker att motivera företag att samarbeta i ett öppet forum.

Thread-gruppen är ett annat exempel på hur företag arbetar för att lösa IoT-relaterade problem. Under ledning av Chris Boross (som också är marknadschef för tekniska produkter hos Nest) satsar Thread-gruppen på enkelhet, säkerhet och effektivitet. Thread siktar på att “bygga teknik som utnyttjar och kombinerar det bästa av det som redan finns tillhanda och skapa ett nätverksprotokoll som kan hjälpa IoT att förverkliga sin potential under många år framåt.”

Säkerhet
Standardisering och reglering är helt klart viktigt för utvecklingen av nya industrier, framför allt om de är så fragmenterade som IoT. Men företag som planerar att sälja APIer på IoT-marknaden måste ta säkerheten på allvar.

Det är inte bara säker hantering av personliga data i molnet som är ett stort bekymmer. Säkerhet handlar om så mycket mer eftersom de saker som vi vill ansluta (bilar, vitvaror, försvarssystem) potentiellt kan drabbas av kritiska eller till och med fatala problem. Det är lätt att inse farorna med data- och systemintrång, från att förlora kontrollen över en hackad bil som körs på en motorväg till en trasig babymonitor som används för att övervaka småbarn. Och för varje rapport börjar spelare i hela värdekedjan oroa sig alltmer för integriteten och säkerheten hos sin data och kundernas data, och börjar därmed även ifrågasätta om deras affärsidé håller i längden.

En av de bästa åtgärderna som FTC rekommenderar är “security by design”, det vill saga att säkerheten byggs in i IoT-produkter redan på konstruktionsstadiet och på samtliga steg i utvecklingsarbetet.

Vi menar att det ska börja redan i det inbyggda systemet.

Traditionella inbyggda system är i stort stängda system, så säkerhet har hittills varit en ganska okomplicerad affär. Statiskt baserade angreppssätt har vanligtvis fungerat bra, men sådana metoder brukar fokusera på CPUn samt vara binära (med en säker zon / en osäker zon) och komplicerade att implementera. De är inte skalbara för hantering av de sofistikerade typer av tillämpningar och tjänster som möjliggörs av nästa generation av uppkopplad utrustning och molnet. Det behövs ett mer skalbart och kostnadseffektivt tillvägagångssätt.

Säkerhet över flera domäner
Lösningen är att förse systemkretsar med säkerhet över flera domäner. Ett sådant tillvägagångssätt möjliggör att tjänster som utnyttjas för flera olika ändamål kan fungera på samma maskinvara, där isolering tillhandahålls av maskinvaru-assisterad virtualisering. Virtualisering gör att data och exekvering tillhörande en tjänst kan skyddas från en annan. Genom att skapa flera säkra domäner kan samtliga tillämpningar eller operativsystem arbeta oberoende och tillförlitligt i sina egna separata och pålitliga miljöer. Det innebär att fel som påverkar en tjänst inte har någon inverkan på en annan.

Arkitekturer baserade på separation över flera domäner underlättar också utvecklingen och införandet av tillämpningar och tjänster. Tillvägagångssättet gör att utvecklare säkert kan utveckla och avlusa kod i en virtualiserad miljö och operatörer och andra leverantörer av tjänster kan konfigurera utrustning för tillhandahållandet av tjänster i fält.

Ta en sensorhub i ett hem. Med säkerhet baserad på flera domäner kan virtualiserade behållare möjliggöra individuell uppgradering av vardera sensor – antingen det handlar om larm, manöverdon för dörrar och fönster, belysningsstyrning, vitvaruhantering, insamling och överföring av data från smarta mätare, m m. Systemet kan utformas så att tillverkare och operatörer i efterhand kan skicka programvarubaserade uppdateringar till utrustningen, och el-, vatten- och telebolag kan erhålla statusinformation från utrustningen – allt över nätet, och utan någon möjlighet för andra att påverkas eller för andra att få tillgång till data i systemet.

I första hand möjliggör ett sådant system att nätverksstackarna separeras – Wi-Fi och 6LoWPAN (exempelvis) från tillämpningar som körs i övriga behållare. Det separationsbaserade sättet gör att allt kan isoleras så att certifieringarna fortsätter att vara intakta, medan kraft och utrymme hålls till ett minimum genom integrering.

Grundläggande säkerhet
För att ekosystemet för IoT ska fortsätta att frodas måste vi skapa och utnyttja portabla verktyg på en grundläggande säkerhetsnivå. Det inkluderar betrodda hypervisorer, säkra kanaler för meddelanden, brandväggar m m – allt konstruerat för en multidomän-arkitektur. Öppenkällkodsorganisationen prpl har åtagit sig ansvaret för detta med stöd från ledande företag inom ekosystemet, och driver saken genom sin säkerhetsgrupp (prpl Engineering Group, PEG). Genom vad man kallar OpenSecurity skapar prpl öppna standarder och APIer som kommer att hjälpa till att tillse en fri och öppen marknad för alla inom IoTs värdekedja, samtidigt som data- och informationssäkerheten säkerställs.

Detta tillvägagångssätt löser inte ägandet av personlig data eller andra personuppgifter (det finns fortfarande utrymme för lagstiftning!) och vi kan inte stoppa hackers från att utöva sin konst. Men ett multidomän-baserat tillvägagångssätt för inbyggnadssäkerhet kan begränsa effekterna av hackers genom att isolera deras intrång. Och vi kan låta IoT-industrin växa organiskt och ordentligt genom det arbete som utförs av en rad olika innovatörer och inom olika teknikområden.


Kevin McDermott, Imagination Technologies

Comments are closed.