
Funktionell säkerhet enligt IEC 61508
Ingen skulle komma på tanken att flyga med ett flygplan som inte var säkert genom sin design. De flesta tänker likadant när de köper bil. Varför skulle cybersäkerhet vara annorlunda?

Genom hela sidan används ett och samma exempel. Det är inte hypotetiskt. Det är jag som är ute på spaningsuppdrag i en SH 37 Viggen mellan Kaliningrad och Hoburgen. Jag har,förutom att flyga på låg höjd, fullt fokus att leta efter spaningsobjektet i radarn, ett ryskt fartyg, det är uppdraget. Farten ligger någonstans kring 900 km/h.
Plötsligt ett klonk, allt utom 24 volt slocknar, tystnad.
På resten av sidan är den händelsen exempel genom IEC 61508:s faser.
Vad funktionell säkerhet är
Funktionell säkerhet är att göra allt för att upprätthålla funktionen, och att se till att den, när den ändå degraderar, gör det på ett säkert och förutsägbart sätt.
Det förutsätter att funktionen ska upprätthållas. För en kemisk process är svaret ofta det motsatta: säkert läge är att stänga ventilen. Men för ett flygplan, en järnväg eller en samhällsviktig tjänst finns inget säkert läge att stanna i, och då är meningen ovan hela arbetet.
Standardens egen formulering är försiktigare: funktionell säkerhet är den del av säkerheten som beror på att de säkerhetsrelaterade systemen fungerar korrekt. Det är samma sak sett från andra hållet. Beror säkerheten på att funktioner fungerar, är säkerhetsarbetet att få dem att fungera, och att hantera fallet när de inte gör det.
Utrustningen, kontrollsystemet och operatören
Funktionell säkerhet börjar med utrustningen som ska hållas säker. IEC 61508 kallar den EUC, equipment under control: utrustning, maskiner, apparater eller anläggningar som används för tillverkning, process, transport, medicinsk verksamhet eller annat. Ett flygplan är ett EUC. Elsystemet är ett annat.
Till varje EUC hör ett kontrollsystem. Det tar emot signaler från utrustningen eller från en operatör och får utrustningen att göra det den ska. Operatören är en del av kontrollsystemet, i ett flygplan är det uppenbart, i en fabrik glöms det bort. Bidrar kontrollsystemet väsentligt till säkerheten räknas det självt som ett säkerhetsrelaterat system.
Därför står EUC:t i centrum i IEC 61508, inte säkerhetssystemet. Det är utrustningens egen risk som säkerhetsfunktionerna ska reducera till en tolerabel nivå. Den som börjar med att rita sitt skydd har hoppat över det som avgör vad skyddet ska göra.
Förkortningar
| EUC | Utrustningen under kontroll, equipment under control |
| SRS | Säkerhetsrelaterat system, det som utför säkerhetsfunktionen |
| FSR | Funktionella säkerhetskrav, vad säkerhetsfunktionen ska göra |
| SIR | Säkerhetsintegritetskrav, hur säkra ska säkerhetsfunktionerna varagöra det |
| SIL | Säkerhetsintegritetsnivå, 1 till 4 |
| NRR | Nödvändig riskreduktion |
Huvuddelarna i IEC 61508
IEC 61508, Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems, är en internationell standard för funktionssäkerhet i elektriska, elektroniska och programmerbara elektroniska system. Den ställer krav på hur säkerhetssystem utvecklas och förvaltas för att minska risker i farliga tillämpningar.
- Systemkrav och specificering. Standarden anger hur system ska specificeras så att alla säkerhetsrelaterade funktioner är tydligt definierade och förstådda.
- Riskbedömning. En detaljerad riskanalys krävs för att identifiera och bedöma faror och deras konsekvenser.
- Säkerhetsintegritetsnivåer. SIL säger hur mycket riskreduktion en säkerhetsfunktion måste leverera, SIL 1 till SIL 4. Det är inget mått på hur bra systemet är, utan på hur stor del av risken det ska ta bort.
- Livscykel. Säkerhetsarbetet pågår genom hela systemets liv — från design och utveckling, genom drift och underhåll, till avveckling.
- Verifiering och validering. Systematiska kontroller, tester och revisioner krävs för att visa att systemet uppfyller sina säkerhetskrav.
- Teknisk och administrativ hantering. Standarden omfattar också ansvar, kompetens och organisation, inte bara teknik.
Riskreducering, säkerhetsintegritet och SIL
Risker i systemet:
- Grundrisken är EUC:ts risk utan säkerhetssystem.
- Restrisken är den risk som återstår när säkerhetssystemet finns på plats.
Maximal riskreduktion får du om säkerhetssystemet var felfritt. Dock går vissa farliga situationer inte att ta bort, dessutom är säkerhetssystemet är självt en ny riskkälla. Hur mycket risk som går bort beror därför på säkerhetssystemets funktionalitet och tillgänglighet.
- Nödvändig riskreduktion (NRR) är den del av risken som säkerhetssystemet måste ta bort för att restrisken ska bli tolerabel.
- Säkerhetsintegritet är sannolikheten att säkerhetssystemet utför sina specificerade funktioner och därmed åstadkommer den nödvändiga riskreduktionen.
- Säkerhetsintegritetsnivå (SIL) är en siffra från 1 till 4, där 4 har hårdast krav.
Skilj på två saker som lätt blandas samman. Säkerhetsintegritetskrav (SIR) är kravet, hur säkert funktionen måste vara. SIL är nivån kravet hamnar på. Kravet kommer först, nivån följer av det.
Innan någon räknar på tillförlitlighet ska det vara visat att funktionen, om den fungerar felfritt, räcker för den nödvändiga riskreduktionen. Går inte det finns ingen tillförlitlighet i världen som hjälper.
Det är den vanligaste förväxlingen i säkerhetsarbete, och i cybersäkerhet är den regel: man frågar hur tillförlitlig kontrollen är, aldrig hur mycket risk den tar bort. En brandvägg med 99,99 procents tillgänglighet som skyddar mot fel sak har hög säkerhetsintegritet och noll riskreduktion.
Flyget är ovanligt bland branscher genom att verkligen räkna. Civil luftfart sätter katastrofalt fel till mindre än 10⁻⁹ per flygtimme, och IEC 61508 sätter sitt golv för kontinuerlig drift i samma storleksordning. Det är samma sorts resonemang om hur sällan något får hända när konsekvensen är att människor dör.
Den övergripande säkerhetslivscykeln
Livscykeln strukturerar de aktiviteter som skapar säkerhetsintegritet i det säkerhetsrelaterade systemet. IEC 61508-1 avsnitt 7 beskriver den i sexton faser. Förverkligandet detaljeras i del 2, mjukvaran i del 3.
Iteration är nödvändig. Du kommer att gå tillbaka, och standarden räknar med det.
Nedan följer de faser som avgör om säkerhetskraven blir rätt. Faserna 6 till 8 handlar om planering av drift, validering och driftsättning och tas inte upp här.
Fas 1. Koncept
Syftet är att förstå EUC:t, dess kontrollsystem och dess miljö tillräckligt väl för att säkerhetsbedömningen ska vara möjlig. Det motsvarar ISO 15288 avsnitt 6.4.1, business/mission analysis. Observera att analysen här handlar om EUC:t och kontrollsystemet, inte säkerhetssystemet.
Fasen kräver god kännedom om EUC, kontrollsystem och fysisk miljö, att troliga källor till faror identifieras, information om farorna och om tillämpliga regelverk, och att samverkan med andra system beaktas.
Mitt exempel, viggen med pilot är EUC
EUC:t är flygplanet med föraren. Kontrollsystemet är styrsystemet inkluderande mig och flyginstrumenten. Det är svårt att styra utan en konstgjord horisont när man ligger i moln.
Miljön avgör: Mitt ute på Östersjön, långt från Sverige, kallt hav, ensam, om jag tvingas skjuta ut mig är det Sovjet som plockar upp mig först ur havet. Samma elbortfall på marken hade blivit en anmärkning i loggboken. Det är miljön som gör det till en säkerhetsfråga, inte felet.
Och farten var satt av flera hänsyn som ingen hade lagt intill varandra:
| Fart | Vad innebär farten | Satt av |
|---|---|---|
| 300–700 km/h | Reservgeneratorns arbetsfönster | säkerhetskonstruktionen |
| 675 km/h | Marschfart fram till anfall, AJ 37, innanför | den ursprungliga taktiken |
| 840 km/h | Marschfart med spaningsversionerna, utanför | den vidareutvecklade taktiken |
| ~900 km/h | Farten jag höll dagen | uppdraget |
Reservgeneratorn hade en övre gräns och en undre. Över 700 km/h gick den sönder, under 300 slutade den fungera.
Och läs nu tabellen en gång till. 675 ligger innanför fönstret. 840 ligger utanför.
AJ 37 som kom före spaningsversionerna flög i 675 km/h fram till anfallet, 25 km/h under millans hållfasthetsgräns. Ingenjörerna och den som satte den taktiska profilen var överens.
Sedan kom spaningsviggen, den taktiska användningen utvecklades, och marschfarten höjdes till 840. Hon var lite drögig i 675, i 840 var hon trevligare att flyga lågt med. En utveckling av taktiken är man kanske missade att man hamnade 140 km/h över millans hållfasthetsgräns.
När du ändrar kontexten, kör 175 km/h fortare, så måste hela riskbedömningen göras om.
Gipsat.nu, vård är EUC
EUC:t är vårdkedjan. Hardy äger ingen del av vårdkedjan, patienten, taxin, sjukhuset och försäkringen är alla andras, vilket gör tillgänglighet till affärsmodellens bärande del och inte en teknisk kvalitet. Som risk väger samhällsviktig tjänst högst, 35 procent, och det avgör: patienten får inte vård är ett "dyrare" utfall än personuppgifter läcker.
Ensions metod
Konceptfasen görs som en kontextanalys: intressenter och deras drivkrafter, deras säkerhetskrav, förmågan att möta dem via SWOT och TOWS, och ett vägt risktak över fyra konsekvensområden. Det är där EUC:t, dess omgivning och vad som är värt att skydda blir bestämt.
Fas 2. Övergripande specifikation av omfattning
Syftet nu är att definiera omfattningen av risk- och faroanalysen och att sätta gränsen för EUC och kontrollsystem.
Följande ska specificeras:
- gränsytorna så att system med människor förknippade med faror kommer med;
- vilken utrustning som ingår; vilka yttre händelser som ska beaktas;
- vilka typer av initierande händelser, komponentfel, procedurfel, mänskliga fel, beroende felmekanismer.
Här fastställs gränserna för analysarbetet. EUC:ts gränser specificerades i fas 1.
Mitt exempel
Analysen på den här sidan omfattar en sak: bortfall av elförsörjning under flygning. Inte vapensystem, inte navigering, inte landningsställ. En sådan avgränsning är vad som gör en analys möjlig att slutföra.
Men lägg märke till att gränsen inte får utesluta människor man är beroende av. Vid en nödlandning ligger en del av säkerhetsfunktionen hos flygledaren och flygplatsen.
Gipsat.nu, samhällsviktig tjänst
En skadad får transport och vård. Den säkerhetskritiska processen är att larma ut ett vårduppdrag. Analysen omfattar den processen, inte fakturering, inte marknadsföring, inte försäkringsärendet efteråt.
Ensions metod
Avgränsningen görs i första halvan av den preliminära riskanalysen: HAZID över människa, process, teknik och omgivning, och därefter beslutet om vilka tjänster som är samhällsviktiga och vilka processer som är säkerhetskritiska. Det är den avgränsningen som gör resten möjlig att slutföra.
Fas 3. Risk- och faroanalys
Faror, farliga händelser och farliga situationer ska identifieras tillsammans med de händelseförlopp som leder till dem. Fastställ farorna under alla rimligen förutsebara omständigheter — inklusive feltillstånd, förutsebar felanvändning och skadliga eller obehöriga handlingar — händelseförloppen, sannolikheten, konsekvenserna, och EUC-risken för varje farlig händelse.
Har skadliga eller obehöriga handlingar identifierats ska en analys av säkerhetshot göras. Det är den mening i IEC 61508 som leder över till cybersäkerhet. Standarden kräver sårbarhetsanalysen men ger ingen metod för den. Metoden hör till IEC 62443 och till arbetet den här sidan beskriver.
Analysen ska omfatta mänskligt beteende, med särskild uppmärksamhet på avvikande och sällan förekommande driftlägen. Resultatet ska bevaras genom hela livscykeln.
3.1 Fastställ faror, farliga händelser och situationer
Faror ska fastställas i alla driftsätt och under alla rimligen förutsebara omständigheter, normala tillstånd, onormala tillstånd och feltillstånd.
Mitt exempel, faran är att vara utan flyginstriument
Jag fick ett klonk och fem varningar: ELFEL, TANKPUMP, HÅLL-FUNK, RHM FEL, NAV-SYST. Fem indikeringar, diagnosen var väl inövad i simulator, generatorfel.
Men, faran är inte elbortfall. Faran är att stå utan flyginstrument i moln.
Utan horisont utanför rutan och utan instrument inne i den har en människa ingen referens. Det som följer är desorientering och förlorad kontroll, och det tar inte många sekunder. Det är faran. Elbortfallet är en orsak till den.
Det låter som en hårklyvning. Det är motsatsen, för de tre nivåerna leder till helt olika krav:
| Fara | flyginstrumenten är borta i moln — förlorad kontroll |
| Orsak | bortfall av växelström |
| Svaghet i säkerhetsfunktionen |
reservgeneratorns arbetsfönster |
Gipsat.nu, patienten får inte vård
Rapporterad händelse är servern svarade inte. Men det är vad som syntes i övervakningen. Kedjan kan ha börjat hos API-leverantören, i DNS, eller hos mobiloperatörens SMS-gateway, tre ställen där ingen på Gipsat har vare sig insyn eller mandat.
Och här finns motsvarigheten till generatorns urkoppling, DDoS-skyddet som gör sitt jobb. Det ser en anstormning och stänger ute den. Utifrån är det oskiljaktigt från ett haveri.
Värre än så. En bussolycka ser inifrån ut precis som en DDoS-attack, tjugo larm på några sekunder från samma plats. Skyddet kan alltså blockera exakt den trafik det finns till för att skydda, i det ögonblick tjänsten behövs som mest.
Då blir kravet Förmedlarservern ska klara 10 000 samtidiga larm per sekund något annat än ett kapacitetsmål. Det är gränsen mellan en verklig anstormning och ett angrepp, och någon måste sätta den medvetet, för skyddet kommer att dra den någonstans vare sig ni bestämt var eller inte.
Gipsat.nu, patienten får inte vård
Förloppen kartläggs i syntesdelen av den preliminära riskanalysen, där HAZID och HAZOP vävs ihop till orsakskedjor: hur ett yttre hot tar sig genom de interna processerna fram till den farliga händelsen. Poängen med steget är att samma fara nås via flera kedjor, och att en av dem oftast är kortare än någon trott.
3.2 Fastställ förloppen som leder till faran.
Förutsättningarna och händelseförloppen ska fastställas. Steget är viktigt av två skäl:
- kunskap om vad som orsakar en farlig händelse kan leda till att den undviks helt, och
- eliminera faran är nästan alltid att föredra framför att bygga ett system som hanterar den, och det underlättar uppskattningen av hur ofta den inträffar.
Mitt exempel
Jag identifierade var generatorbortfall. all ström utom 24 volt försvinner. Reservgeneratorn, millan, fälls direkt ut automatiskt, klonket, och 400 hz kommer tillbaks. Jag snabbreser flyglägesindikatorn, och åtrstartar sedan huvudgeneratorn (en vippströmbrytare med "magnetfäste" i tillläget, positiv känsla från fingret när den fasytnar i till).
Men var det förloppet? Avionik kräver växelström med exakt frekvens, en jetmotors varvtal varierar hela tiden. Mellan dem sitter en konstantvarvtalsväxellåda som jämnar ut varvtalet, inom en tolerans. Drev det utanför toleransen kopplade skyddet ur generatorn, avsiktligt, eftersom dålig ström kan vara värre än ingen ström.
Det var alltså ett skydd av avioniken som gjorde precis vad det skulle, det var därför jag lyckades återinkoppla generatorn. Tänk på hur många gånger ni inte hörta att det är signalfel när tunnelbanan står stilla, det är signalsystemet som skyddat passagrarna.
Gipsat.nu, patienten får inte vård
Förloppet rapporteras som servern svarade inte. Men det är vad som syntes i övervakningen. Kedjan kan ha börjat hos API-leverantören, i DNS, eller hos mobiloperatörens SMS-gateway, tre ställen där ingen på Gipsat har vare sig insyn eller mandat.
Och här finns motsvarigheten till generatorns urkoppling: DDoS-skyddet som gör sitt jobb. Det ser en anstormning och stänger ute den. Utifrån är det oskiljaktigt från ett haveri.
Värre än så. En bussolycka ser inifrån ut precis som en DDoS-attack, tjugo larm på några sekunder från samma plats. Skyddet kan alltså blockera exakt den trafik det finns till för att skydda, i det ögonblick tjänsten behövs som mest.
Då blir kravet Förmedlarservern ska klara 10 000 samtidiga larm per sekund något annat än ett kapacitetsmål. Det är gränsen mellan en verklig anstormning och ett angrepp, och någon måste sätta den medvetet, för skyddet kommer att dra den någonstans vare sig ni bestämt var eller inte.
Ensions metod i preliminär riskanalys
Förloppen kartläggs i syntesdelen av den preliminära riskanalysen, där HAZID och HAZOP vävs ihop till orsakskedjor: hur ett yttre hot tar sig genom de interna processerna fram till den farliga händelsen. Poängen med steget är att samma fara nås via flera kedjor, och att en av dem oftast är kortare än någon trott.
3.3 Fastställ risken
Riskerna ska fastställas. Risk är en kombination av sannolikhet och konsekvens, och uppskattningen vilar tungt på förståelsen av EUC, kontrollsystem och miljö från fas 1. Har den varit slarvig går det inte att reparera här.
Standarden ger ett alternativ: är konsekvenserna kända går det att uttrycka kravet som en tolerabel frekvens av farliga händelser i stället för att uppskatta risken.
Förlorad kontroll i moln behöver ingen matris för att klassas
Konsekvensen av faran behöver ingen matris för att klassas: förlorad kontroll i moln betyder förlorat flygplan och förlorad förare. Samma fel i klart väder är en teknisk rapport.
Och här får glappet från fas 1 sin verkan på risken. Millans arbetsfönster och flygplanets driftområde överlappade inte vid spaningsoperationer. Detta gör att lutar sig mer på det som finns kvar, tre minuter flygning på trådrullen till klart väder. Vad det betyder står i fas 5.
Gipsat.nu, tre scenarier en farlig händelse.
Tre scenarier leder till samma farliga händelse: DDoS gör plattformen oåtkomlig, en komprometterad API-leverantör öppnar patient- och transportdata, och en hybridattack förfalskar sjukhusadresser samtidigt som schemaläggningen manipuleras. Prioriteringen ger Vårdkaos 3,90 och Patient får inte vård 3,80, högre än Brott mot patientdatalagen 3,60, vilket är risktaket från fas 1 som gör sitt jobb. Tre helt olika angrepp, en analys.
Ensions metod i systemriskanalysen
Förloppen och risknivån arbetas fram i systemriskanalysen: hitta arkitekturen, klassa informationstillgångarna, analysera hoten, bygg scenarier ur angriparens perspektiv, följ förloppen till den farliga händelsen och prioritera. Prioriteringen görs med Weighted Prioritised Risk First, som väger samhällsviktig tjänst, personlig integritet, kundnöjdhet och intäkt mot varandra i stället för att låta den högsta siffran vinna.
Fas 4. Övergripande säkerhetskrav
Här specificeras vad säkerhetsfunktionerna ska göra (FSR) och hur säkert de ska göra det (SIR). Identifierade fas 3 säkerhetshot ska fasen dessutom innehålla en sårbarhetsanalys — det är där cybersäkerheten kommer in i standarden.
En regel om kontrollsystemet är lätt att missa. Måste en enskild kontrollsystemfunktion hålla sig under 10⁻⁵ farliga fel per timme, är kontrollsystemet självt ett säkerhetsrelaterat system och lyder under standardens krav. Det du förlitar dig på blir en del av säkerhetsargumentet och ärver dess krav.
Vill man undvika den klassningen får man ändå inte hävda bättre än 10⁻⁵, felfrekvensen ska stödjas på erfarenhet, tillförlitlighetsanalys eller branschdata, och kontrollsystemet ska vara oberoende av säkerhetssystemen.
4.1 Definiera de övergripande säkerhetsfunktionerna
Identifiera funktionerna utifrån de faror fas 3 gav. Ordet övergripande innebär att specifikationen ska vara oberoende av om funktionen realiseras som ett säkerhetsrelaterat system, som en annan riskreducerande åtgärd, eller båda. Här hör ALARP-principen hemma; IEC 61508-5 ger vägledning.
Att bibehålla flyginstrumentens funktion.
Det övergripande kravet är: Piloten ska ha flyginstrument så att flygningen kan säkras. Det föreskriver en funktion, inte lösning.
Elförsörjning är en väg till instrument som fungerar, det finns andra och formulerar man funktionen som lösningen har man låst sig innan man vet vad som behövs.
Lägg märke till ledet så att flygningen kan säkras. Det ser överflödigt ut och är det inte: det är vad som gör funktionen degraderbar. "Bibehåll instrumentfunktionen" kan bara vara uppfylld eller inte.
Med syftet utskrivet går det att fråga vad som är minsta funktion som ändå säkrar flygningen, och det är den frågan 4.2 besvarar med tre nivåer.
Gipsat.nu, säkerhetsställ hämtning
På säkerhetsåtgärdssidan finns tretton namngivna säkerhetsåtgärder för Gipsat. De är bra, och de ligger på tre olika nivåer, vilket är precis den skillnad fas 4 och fas 5 finns till för att göra.
Övergripande säkerhetsfunktioner, det fas 4 ska producera. De följer ur farorna, inte ur tekniken:
- Uppdraget ska nå fram till någon som kan hämta patienten
- Uppdraget ska vara korrekt när det kommer fram
- Avvikelser ska upptäckas medan de går att göra något åt
Säkerhetsrelaterade system de realiserar funktionerna, och hör i fas 5: Dubblerade nät, Geografisk spridning, Kapacitetshantering, DDoS-skyddad drift, Alternativ tjänst för avrapportering, Rimlighetskontroll av resultat, Övervakning, Nätverkssäkerhet.
Andra riskreducerande åtgärder, de sänker sannolikheten för många orsaker samtidigt utan att vara knutna till en enskild fara: Safety by design, Säker kodning, Utbildning i säkerhet, UX-policy, Skydd mot skadlig kod.
Sorteringen är inte formalia. Går man direkt till de tretton har man börjat med lösningarna, och då upptäcker ingen om en fara saknar åtgärd, eftersom det inte finns någon lista att jämföra emot.
Pröva själv: de fem första åtgärderna är utmärkta och nödvändiga. Men vilken fara skulle sakna sin täckning om de togs bort? Frågan går inte att besvara, och det är just det fas 4 ska göra möjligt.
Ensions metod
Funktionerna identifieras ur de farliga händelserna i steg 2 av säkerhetsåtgärder och säkerhetskrav. Steg 1 på samma sida uppdaterar strategierna ur riskanalysen, och strategierna kommer från säkerhetspolicyn, där varje strategi får ett värde:
Strategins värde = Σ (riskpoäng × täckningsgrad) / insats
Riskpoängen bär fyra viktade perspektiv från WPRF: samhällsviktig tjänst, personlig integritet, kundnöjdhet och intäkt. Täckningsgraden är hur stor del av varje risk strategin tar bort. Insatsen är organisationens förändringskapacitet, inte kronor — en policy som kräver att fyrahundra personer ändrar arbetssätt är dyr även om den inte kostar en rad kod.
Det är nytta vägd mot uppoffring, alltså ALARP:s form, med nyttan vägd över fyra konsekvensområden i stället för uttryckt i ett tal. Formeln gynnar åtgärden som tar bort en del av många risker framför den som tar bort hela en enda. Det är nästan alltid rätt och nästan aldrig det man känner för.
Skillnaden mot fas 4.1 är nivån. Formeln rangordnar strategier. Fas 4.1 frågar om en enskild säkerhetsfunktion: säkerhetsrelaterat system, annan riskreducerande åtgärd, eller båda? Samma avvägning ett steg ner, med riskreduktionen räknad per funktion.
4.2 Fastställ de funktionella säkerhetskraven
Fastställ FSR för de funktioner som ska hantera farorna. Ett användbart sätt: börja med formuleringen av faran och vänd den till ett funktionskrav som säger vad som måste göras, inte hur.
Mitt exempel, kravet är bibehållen funktion hos huvudinstrumenten
Kravet som ställdes var bibehållen funktion hos huvudinstrumenten. Inte "reservgenerator", inte "redundant elförsörjning" — en funktion, och alla lösningar öppna. Sidans inledande definition, formulerad som tekniskt krav:
Flyginstrumentens funktion ska bibehållas. Acceptabel degradering är att uppdraget måste avbrytas, med bibehållen förmåga till säker hemflygning på ordinarie instrument. Om ordinarie instrument slutar fungerera ska det finnas en degraderad funktion som medger att piloten kan ta sig till bättre väder.
Det säger två saker, och de flesta krav säger bara den första: vad som ska hålla, och hur det får gå sönder. Stannar kravet vid det första blir varje degradering ett oplanerat tillstånd som den som sitter i det får bedöma själv.
Det är en trappa, inte ett av eller på:
| Nivå | Vad som finns kvar | Vad som offras |
|---|---|---|
| Full funktion | instrumenten fungerar | ingenting |
| Första degradering | säker hemflygning på ordinarie instrument | uppdraget |
| Andra degradering | förmåga att nå bättre väder | allt utom överlevnaden |
Varje steg säger både vad som bevaras och vad som ges upp. Och lägg märke till hur snävt sista ledet är: ta sig till bättre väder. Inte flyga hem, inte landa, inte navigera. Bara nå dit man ser ut igen.
Det är den formuleringen som avgör vad som går att bygga. Hade det stått piloten ska kunna flyga hem vore en reservhorisont på tre minuter ett skämt. Som nå bättre väder blir tre minuter ett konstruktionsmål.
Hur snävt den sista degraderingsnivån formuleras avgör om den lösning man har råd med är acceptabel.
Om du skriver degraderingen så snävt att den precis bryter faran, och det går att bygga något.
Gipsat.nu, säkerhetsställ hämtning
Dubblerade nät beskrivs som att kritisk kommunikation går via både SMS och internet. Det är en utmärkt lösning — men det är inte kravet, det är svaret på ett krav ingen skrivit ut.
Vänd i stället faran från 3.1 och skriv funktionen med samma trappa som flygets krav:
Förmågan att larma ut ett komplett vårduppdrag ska finnas kvar även när den primära kanalen inte gör det. Första acceptabla degradering är att uppdraget blir långsammare och delvis manuellt, men fortfarande komplett och till rätt mottagare. Slutar även reservkanalen fungera ska den som larmar få veta det, och hänvisas till 112.
| Nivå | Vad som finns kvar | Vad som offras |
|---|---|---|
| Full funktion | automatisk utlarmning, komplett uppdrag | ingenting |
| Första degradering | uppdraget går fram, rätt och komplett | snabbhet, och en människas tid |
| Andra degradering | den skadade får hjälp | hela Gipsats tjänst |
Sista nivån är lika snävt formulerad som flygets nå bättre väder: den räddar inte tjänsten, den räddar patienten. Den kräver nästan ingen teknik , endast ett meddelande om att det inte fungerar, ring 112, det sista som håller när allt annat är borta.
Nu är Dubblerade nät en av flera möjliga realiseringar och kan jämföras med andra. Och kravet kan bli ogiltigt, vilket en lösning aldrig kan.
Ensions metod
De funktionella säkerhetskraven formuleras i steg 3 av säkerhetsåtgärder och säkerhetskrav, vad funktionen ska göra, med sina egenskaper, och inte hur den byggs.
4.3 Fastställ säkerhetsintegritetskraven
Enligt IEC 61508-1 avsnitt 7.5.2.4 ska kraven uttryckas antingen som den riskreduktion som krävs för att uppnå tolerabel risk, eller som den tolerabla frekvensen av farliga händelser.
FSR säger vad funktionen ska göra. SIR anger hur mycket riskreduktion den måste leverera. Det andra alternativet är oftast det mer praktiska, och kräver att konsekvenserna är kända.
Mitt exempel
Konsekvensen av total elförlust över hav, ensam, långt från Sverige, behöver ingen riskmatris för att klassas. I moln hade jag endast reservinstrument ett horisontinstrument vi kallade trådrullen. Det gör att kravet kan uttryckas som tolerabel frekvens direkt. Detta sätter krav på säkerhetsintegritet på två säkerhetsfunktioner: millan och på trådrullen.
Gipsat.nu, säkerhetsställ hämtning
Bland de tretton åtgärderna finns två tal: Kapacitetshantering kräver minst 10 000 samtidiga användare, och svarstiden ska vara under 50 ms. Båda säger hur mycket och hur snabbt. Ingetdera säger hur säkert, det är prestanda, inte integritet.
Integritetsfrågan är den svåraste på sidan: hur ofta får ett vårduppdrag gå till fel mottagare?
Svaret blir lätt aldrig. Men aldrig är en önskan, och en önskan går varken att konstruera mot eller verifiera. Någon måste säga ett tal.
Och talet betyder olika saker vid olika volym. Säg 10⁻⁵ per uppdrag:
| Uppdrag per dygn | Fel mottagare |
|---|---|
| 500 | ungefär två gånger om året |
| 50 000 | ungefär varannan dag |
Samma krav, samma system, oacceptabelt i det andra fallet. Tillväxt upphäver säkerhetsargumentet precis som marschfarten gjorde för millan.
Funktionerna behöver inte samma nivå. Att uppdraget når fram och att det är korrekt är olika krav, och en gemensam siffra betyder att man överinvesterar i det ena eller underinvesterar i det andra. Standarden vill ha ett krav per funktion. Det är inte formalia, det är där pengarna ligger.
Ensions metod
Säkerhetsintegritetsnivån bestäms i steg 4 av säkerhetsåtgärder och säkerhetskrav, genom att förloppskedjorna analyseras. Samma sida som gav funktionerna och kraven, men nu handlar det om hur säkert de ska utföras.
Fas 5. Allokering av övergripande säkerhetskrav
Fasen har två mål: att fördela säkerhetsfunktionerna på säkerhetsrelaterade system och andra riskreducerande åtgärder, och att fördela en säkerhetsintegritetsnivå till var och en av dem.
5.1 Fördela funktionerna på system och åtgärder
Mitt exempel
Kravet var bibehållen instrumentfunktion. Så här fördelades det:
| Åtgärd | Typ | Begränsning |
|---|---|---|
| Millan, reservgeneratorn | säkerhetsrelaterat system | arbetsfönster 300–700 km/h |
| Ordinarie instrument | del av EUC:t som ska överleva | — |
| Trådrullen, en liten reservhorisont | säkerhetsrelaterat system | max tre minuter |
| Nödåtgärderna | annan riskreducerande åtgärd | ett tiotal punkter |
| Simulatorträningen | annan riskreducerande åtgärd | det som var inövat |
| Föraren | del av kontrollsystemet | en människa |
Ta du bort en rad uppfylls inte kravet. Två av nödåtgärdernas tiotal punkter handlade om millans fönster: fart under 700 för att den ska hålla, fart över 300 under landning för att den ska leverera ström.
Detta uppfyllde jag genom simulatorträning och erfarenhet. Jag steg för att byta fart mot höjd, jag var människan i sista raden.
Trådrullen är ingen påhittad extralösning utan tredje nivån i kravet från 4.2, realiserad: den degraderade funktion som skulle ta piloten till bättre väder.
Gipsat.nu, säkerhetsställ hämtning
| Åtgärd | Typ | Begränsning |
|---|---|---|
| SMS-kanalen | säkerhetsrelaterat system | ett meddelande |
| Geografisk redundans | säkerhetsrelaterat system | — |
| Manuell inringning till sjukhuset | annan riskreducerande åtgärd | jourens tillgänglighet |
| Rutinen för degraderat läge | annan riskreducerande åtgärd | måste gå att läsa under press |
| Jouroperatören | del av kontrollsystemet | en människa |
SMS-kanalen är Gipsats trådrulle. Den var det som gick att få, inte det man önskade, och den bär ett meddelande. Skrivs den gränsen ner är restrisken accepterad. Skrivs den inte ner är den förbisedd.
Ensions metod
Funktionerna fördelas på den logiska arkitekturen i steg 5 av säkerhetsåtgärder och säkerhetskrav, och i steg 6 stäms åtgärderna av mot ISO 27002 och landar i ett Statement of Applicability.
I en SoA tvingas man skriva ner vilka kontroller man inte tillämpar och varför — trådrullens tre minuter i ett formulär: en accepterad risk i stället för en förbisedd.
5.2 Fördela säkerhetsintegritetsnivå till varje funktion
Målen uttrycks som sannolikhet för farligt fel vid begäran, eller som frekvens vid kontinuerlig drift. Vilket som gäller avgörs av hur ofta funktionen anropas. Skillnaden återkommer längre ner på sidan.
Tre regler:
- Ingen enskild funktion får ha ett mål lägre än 10⁻⁵ vid begäran eller 10⁻⁹ per timme vid kontinuerlig drift.
- Leder fördelningen till SIL 4 ska tillämpningen omprövas för att se om behovet går att undvika. Beslutas SIL 4 ändå krävs ytterligare kvantitativ bedömning med hänsyn till gemensamma orsaker.
- Fördela inte orimligt låga felfrekvenser på mänskliga operatörer.
Mitt exempel, tre minuters reservhorisont var resultatet av en iterativ process.
Ingen valde tre minuter. Det är vad batteri, vikt och utrymme tillät och som kunde accepteras av provflygarna. Det är därför standarden kräver iteration.
Så till slut blir detta ett krav på föraren och utbildningen, att lära sig hitta bättre väder på tre minuter, annars får du kliva av. En gräns man inte kan konstruera bort försvinner inte. Den flyttar.
Gipsat.nu, säkerhetsställ hämtning
Gipsat.nu, och det är sista raden i tabellen som är den svåra. Jouroperatören och Manuell inringning fördelar riskreduktion på en människa. Det är tillåtet och ofta rätt — men då gäller standardens villkor: rutinen måste vara övad, inte bara skriven, och träningen är en säkerhetsåtgärd som ska verifieras.
En rutin för degraderat läge som ingen har läst sedan den skrevs är ingen riskreducering. Den är ett dokument.
Ensions metod
Säkerhetsintegritetsnivån sätts i steg 4 av säkerhetsåtgärder och säkerhetskrav, och bärs sedan av den logiska arkitekturen i steg 5.
Fas 9. Säkerhetskravspecifikation för säkerhetssystemet
Här går arbetet från de övergripande kraven till krav på det system som ska bygga dem. IEC 61508-1 avsnitt 7.10 anger att specifikationen ska härledas ur allokeringen i fas 5.
Specifikationen ska beskriva systemets funktionssätt på funktionell nivå: alla säkerhetsfunktioner och hur de samverkar; prestandaegenskaperna för varje funktion, inklusive tidskrav; alla gränssnitt; alla relevanta driftsätt hos EUC:t; systemets svar på onormala förhållanden; och systemets beteende vid egna fel.
Och här ska kravens tillräcklighet vara visad innan tillförlitligheten räknas. Det är regeln från avsnittet om riskreducering, nu tillämpad på ett konkret system.
Riktningen vänder också här. Fram till nu har härledningen varit deduktiv, uppifrån och ner. Nu blir den induktiv, nedifrån och upp.
Mitt exempel
Fas 5 gav två säkerhetsrelaterade system. Fas 9 skriver kraven på dem, och standardens lista styr vad som måste stå:
| Ska specificeras | Millan och trådrullen |
|---|---|
| Funktionerna och hur de samverkar | trådrullen gäller när ordinarie instrument (FLI och SI) är döda, inte när millan felar |
| Prestanda och tidskrav | trådrullens tre minuter, millans tid till återställd 400 Hz |
| Gränssnitten | föraren: huvudvarning, flaggade instrument, snabbresa FLI, återinkoppla generatorn |
| EUC:ts driftsätt | millans driftområde |
| Svar på onormala förhållanden | huvudvarning och flagga, föraren går över på reservinstrument |
| Beteende vid egna fel | varje instrument flaggar sig självt, även reservinstrumentet; millan utanför sitt fönster: nödåtgärdernas fartpunkter |
Lägg märke till första raden. Specificeras de två var för sig äger ingen övergången mellan dem, och det är i övergången faran ligger.
Och det är raden om driftsätt / millans driftområde som avgör. Är du utanför millans driftområde sjunker dess förmåga att verka och därmed säkerhetsintegriteten.
Gipsat.nu, och här delar sig faran i två.
Patienten får inte vård kan uppstå på två sätt, och de hamnar i olika lager:
| Felklass | Vad som händer | OSI | Lösning |
|---|---|---|---|
| Tillgänglighet | uppdraget kommer inte fram | 1–4 | diversifierade kanaler, geografisk redundans |
| Integritet | uppdraget kommer fram men är fel | 7 | tre parallella beräkningar med röstning |
Den som bara bygger tillgänglighet har byggt en plattform som med hög driftsäkerhet skickar patienten till fel sjukhus.
Och tre datorer räcker inte: tre likadana datorer som kör samma kod mot samma förfalskade sjukhusadress är överens tre gånger. Redundans skyddar mot slumpfel, diversifiering mot systematiska fel och mot angripare. Det är samma skillnad som mellan safety och security, och den syns först här nere.
Ensions metod
Kraven blir mätbara och knyts till namngivna komponenter i kravspecifikation och systemkrav — det funktionella kravet systemet ska motstå överlastattacker blir systemkravet Förmedlarservern ska klara 10 000 samtidiga larm per sekund med aktivt DDoS-skydd, allokerat och testbart. Arkitekten anger vad, inte hur.
Sedan realiseras det i systemarkitekturen, som är standardens fas 10: kraven översätts till OSI-lagren, där lager 1 till 4 bär tillgänglighet och lager 7 bär integritet och systematiska fel. Det är där ett integritetskrav landar i tre parallella beräkningar med röstning, och där diversifiering över skilda plattformar skiljs från ren redundans.
Säkert läge, där arvet leder fel
IEC 61508 vilar på att det finns ett säkert läge: ett tillstånd utrustningen kan föras till där faran inte finns — stäng ventilen, bryt strömmen.
Järnvägen ärvde tanken och kallar stillastående tåg säkert, fast uppgiften är att passagerare kommer fram; flyget hade aldrig det valet, för på niotusen meter finns inget läge att stanna i.
Det beror på nivån: elsystemet kunde koppla bort sin generator, flygplanet kunde inte koppla bort sig självt, och en samhällsviktig tjänst kan det allra minst — att koppla ner en angripen tjänst är precis den skada lagen finns för att förhindra.
Säkert läge för Gipsat.nu
Säkert läge är inte plattformen nere. Det är att den skadade blir hämtad. Kopplar man ner tjänsten vid ett intrång har man åstadkommit exakt den farliga händelsen man skyddar mot.
Dokumentation
Målet är att ange vad som måste dokumenteras för att livscykeln ska kunna genomföras och för att verifiering och bedömning ska vara möjlig.
Dokumentationen ska vara strukturerad enligt standardens avsnitt, tillgänglig, sökbar, versionshanterad, och korrekt, kortfattad och lätt att förstå för sin målgrupp.
Mitt exempel
Den sista punkten läser som en floskel i varje ledningssystem jag sett. Pröva den på nödåtgärderna vid elbortfall: ett tiotal punkter, fem varningar lysande samtidigt, 900 km/h, ensam över Östersjön, och några av punkterna gäller inte den flygningen, vilket föraren ska räkna ut på plats.
Där är kravet inte en ambition. Det är en konstruktionsspecifikation med ett mätbart acceptanskriterium: går den att följa i det läge den är skriven för?
Notera vad kravet inte säger. Det säger inte komplett. En instruktion som täcker varje variant blir längre, och längre är sämre just när den ska användas. Standarden väljer användbarhet framför fullständighet.
Gipsat.nu, i CAE-form:
- Påstående, ett komplett vårduppdrag kan larmas ut på reservkanalen
- Argument, SMS-kanalen är oberoende av den primära och bär uppdragets innehåll
- Evidens, ett test som skickar ett verkligt vårduppdrag över SMS och visar att det kommer fram komplett
Och här är fyndet: evidensen var giltig för den nyttolast som fanns när testet kördes. Sedan lades triagedata till, så att sjukhuset vet vad som kommer in. Påståendet stod kvar, argumentet stod kvar, och beviset blev tyst gammalt.
Ett bevis har ett bäst-före-datum, och datumet sätts av nästa ändring i det som bevisades.
Ensions metod
Dokumentationen som ska bevisa något samlas i säkerhetsbeviset: påstående, argument och evidens i CAE-form, riskkalkyl på den arkitektur man faktiskt byggt, FMEDA och SIL-verifiering, och spårbarhet mellan regelkrav och kontroller. Det är först där restrisken blir ett tal, det är därför riskkalkylen hör sist i kedjan och inte i en workshop i början.
Verifiering och validering
Verifiering svarar på om varje steg gjordes rätt: motsvarar kravspecifikationen allokeringen, motsvarar konstruktionen kraven. Validering svarar på en annan fråga: gör systemet det som behövdes, i den miljö det faktiskt hamnade i?
Skillnaden är hela den här sidans exempel. Millan verifierades mot sitt krav och klarade det, varje gång. Ingen validerade om kravet fortfarande beskrev flygplanet.
Verifiering frågar om vi byggde rätt. Validering frågar om vi byggde det som behövdes.
Validering är inte en engångsaktivitet vid leverans. Den förfaller, och datumet sätts av nästa ändring i det som validerades.
Management av funktionell säkerhet
Målet är att ange säkerhetsansvaret för systemet och för livscykelns faser: vilka aktiviteter som ska utföras och av vem, gränssnitten mellan interna och externa faser, policy och strategi för säkerhet, samordning av säkerhetsbedömningar, och krav på periodiska säkerhetsrevisioner.
Rutiner ska utvecklas för kommunikation mellan parter, hantering av rekommendationer från riskanalys och incidenter, ändringshantering, konfigurationshantering, och kompetenssäkring hos alla som medverkar.
Den sista punkten binder ihop sidan. Min simulatorträning var inte personalutveckling. Den var en del av säkerhetsfunktionen, och den hör därför hit — specificerad och verifierad, inte i en kompetensmatris hos HR.
Och bakom träningen fanns en roll: övningsledaren, vars uppgift var att bygga de värsta realistiska fallen utifrån vad som faktiskt hade hänt, och få oss att möta dem. Det är den rollen som omvandlar analys till tillförlitlighet. En riskanalys är en lista. En övning är ett minne.
Hela metoden, fas för fas
Standarden säger vad som ska göras. Nedan står var det görs.
| IEC 61508 | Ensions metodsteg |
|---|---|
| Fas 1. Koncept | Kontext |
| Fas 2. Omfattning | Preliminär riskanalys, HAZID och avgränsning |
| Fas 3. Risk- och faroanalys | Preliminär riskanalys, HAZOP → Systemriskanalys |
| Fas 4. Övergripande säkerhetskrav | Säkerhetspolicy → Säkerhetsåtgärder och säkerhetskrav |
| Fas 5. Allokering | Säkerhetsåtgärder och säkerhetskrav, SIL och logisk arkitektur |
| Fas 9. Kravspecifikation | Kravspecifikation och systemkrav |
| Fas 10. Realisering | Systemarkitektur, OSI och fysisk lösning |
| Verifiering, validering, säkerhetsbevis |
Bevisa säkerhet |
Lägg märke till att kedjan går hela vägen från en intressents drivkraft till tre parallella datorer med röstning, och därefter till ett tal. Det är den kedjan som gör skillnad på ett säkerhetsarbete och en riskmatris.