Balans nr 2 1981

Elektroniskt Sigill – en innovation i datasäkerhet

Säkerhetsnivån i ADB-miljön höjs nu med hjälp av ett s k Elektroniskt Sigill.

” Sannerligen säger jag Eder: Intill dess himmel och jord förgås, skall icke den minsta bokstav, icke en enda prick av lagen förgås.”

Jesus Kristus

(Matt 5:18)

” Vad jag har skrivit, det har jag skrivit.”

Pontius Pilatus

(Joh 19:22)

0 SAMMANFATTNING

I dag finns vanligen inga reella möjligheter att enkelt kunna verifiera att transmitterad eller på datacentralen lagrad, värdefull datainformation ej utsatts för obehöriga förändringar efter den tidpunkt då informationen först skapades. Vidare saknas normalt också möjlighet att maskinellt kunna verifiera att data kommer från behörig avsändare; t ex leverantörsfakturor transmitterade till datacentralen efter lokal satsvis registrering.

Artikeln beskriver en helt ny skyddsmetod, Elektroniska Sigill. De består av ytterst kvalificerade checksummor med kryptologiska egenskaper som beräknas på basis av den information som skall skyddas och en unik, hemlig nyckel. Obehöriga förändringar av den skyddade informationen upptäcks genom användning av SIGILL-metoden under förutsättning att SIGILL-nyckeln hållits hemlig.

Några tillämpningar av SIGILL-metoden beskrivs, särskilt vid Bankgirocentralen, där metoden tagits i praktiskt bruk. Program för Elektroniska Sigill är nu kommersiellt tillgängliga.

1 ATT SKYDDA DATA FÖRR OCH NU

Det har sen urminnes tid, i alla kultursamhällen varit viktigt att kunna konstatera om dokumenterad information var äkta och ej blivit föremål för obehöriga förändringar.

Moses fick lagen på stentavlor. Dessa förvarades i en ark, som det var livsfarligt för en vanlig människa att vidröra. Våra förfäder skrev sina runor på sten, och det var bara ett fåtal som kunde skriva och läsa dem. Assyrierna skrev på lertavlor, som sedan brändes och därigenom blev omöjliga att förändra. När vi sedan i Europa gick över till mera lättförändrade material som pergament och papper, försågs viktiga dokument med praktfulla sigill, fästade med långa band vid dokumentet. Sedan dess har vi fått nöja oss med den säkerhet som namnteckningen ger. Man fick bevara informationen i inbundna böcker skrivna med arkivbeständigt bläck, och sekreterare fick skriva om hela sidor för en enda felaktig bokstavs skull, för att envar skulle kunna se, att dokumentet var i originalskick. Penningmedel skyddades mot förfalskning genom att sedlar framställdes med en avancerad tryckeriteknik på ett speciellt svåråtkomligt papper försett med vattenstämpel.

Allt detta har ändrats radikalt vid inträdet i dataåldern. Vi kan inte som Moses göra anspråk på ett gudomligt dataskydd, och det är lättare att förändra data på band än på runstenar.

Vi kan tyvärr heller inte med våra ögon avgöra huruvida information lagrad på ett magnetband, disk, disketter eller kassettband har utsatts för obehöriga förändringar. Maskinella avstämningstotaler måste till men kan endast ge kontroll avseende oavsiktliga förändringar på vissa delar (vanligen belopp) av informationen. Avstämningstotaler lämnar dessvärre ett dåligt skydd mot avsiktliga förändringar eftersom det ju är lätt för en ohederlig person att också ändra berörd avstämningstotal. Totalkontroll över informationsfält såsom lönegrad, tjänstetid, återstående semesterdagar, artikelpris, kundrabatt m m saknas nästan alltid.

Den nya lösningen, för att höja säkerhetsnivån i ADB-miljö till minst vad som bedömts nödvändigt i konventionell miljö, består i att åsätta viktig information som skall skyddas ett s k Elektroniskt Sigill.

2 DET ELEKTRONISKA SIGILLET

Sigillet är en kryptologiskt baserad, kvalificerad checksumma (18 siffror). Med utgångspunkt från all den information man vill skydda samt en hemlig nyckel (max 35 tecken) räknar Sigill-algoritmen fram ett Sigill som lagras sist på den datafil som skyddas. Den datainformation (klartext) som skyddas förblir sålunda opåverkad av Sigillalgoritmen men den har fått en komprimerad ”spegelbild” i form av ett mot klartexten och den hemliga nyckeln unikt svarande Sigill.

Kontroll av att Sigillet är ”obrutet” tillgår så att man vid läsning av den ”sigillerade” datafilen räknar fram ett nytt Sigill som jämförs med det på datafilen lagrade gamla Sigillet. Vid överensstämmelse mellan dessa kan konstateras att informationen förblivit oförändrad från den tidpunkt då filen skapades till dess den ånyo lästes. Konstaterandet förutsätter naturligtvis att nyckelhemligheten bevarats.

Resursmässigt kräver Sigillet ca 1 CPU-sekund för att skydda 200 000 tecken i en dator med prestanda som en IBM 3033.

Sigillalgoritmen har följande egenskaper:

  • Algoritmen styrs av en nyckel

  • Algoritmen är säker, under förutsättning att nyckeln är hemlig. Vid kryptoanalys betraktas algoritmen som känd

  • Varje känslig del av filen bidrar i hög grad till checksumman (Sigillet)

  • Man kan inte lista ut nyckeln, ens om man känner till ett stort antal filer med motsvarande summor.

Vanliga checksummor duger inte till detta ändamål. Vi sammanfattar de säkerhets krav som har ställts vid utvecklingen av Sigillalgoritmen:

  • Checksumman får inte vara för liten

  • Alla siffror i checksumman bör förekomma med samma sannolikhet

  • Även en enbitsförändring i den datainformation som skall skyddas ger en ”stor” förändring i checksumman

  • En ändring av ett enda tecken i skyddad datainformation får inte kunna kompenseras av ändringar i ett fåtal tecken

  • Checksumman måste vara känslig för tillägg av tecken i den skyddade informationen, även om det gäller blanka tecken eller nollor

  • Checksumman måste vara känslig för omordningar av skyddad information såväl mellan enstaka tecken som mellan längre följder av tecken

  • Alla tecken i den skyddade informationen bör bidra till summan i stor utsträckning. Full symmetri mellan de olika tecknens inverkan krävs dock inte

  • Algoritmen måste vara tillräckligt enkel för att möjliggöra dels en grundlig kryptologisk analys och dels en effektiv kontroll av programmeringen

  • Algoritmen måste kunna motstå allvarliga försök till forcering.

3 BEHOV OCH ANVÄNDNINGSOMRÅDEN

Den successivt ökade datoriseringen har bl a inneburit att säkerhetsåtgärder som anpassats till de manuella rutinerna ofta bortfallit och ej ersatts vid övergång till ADB. När företagen tidigare sände kontanter i form av sedlar vidtogs rigorösa säkerhetsåtgärder. I dag får däremot utomstående eller yngsta budet ofta förtroendet att transportera mycket stora kontantbelopp lagrade på datamedia utan några egentliga säkerhetskontroller alls.

Gamla säkerhetsrutiner lever kvar, även om miljön har ändrats. Vid inlämning av batch-jobb arbetar man som om man fortfarande lämnade in jobben över disk, medan man i själva verket läser in jobben över en obetjänad terminal, utan någon som helst kontroll av inlämnarens identitet. Vanliga terminaler skyddas endast av lösenord, som sänds i klartext över telelinjen, fastän man med billig utrustning kan avlyssna linjen. Känsliga produktionsprogram lagras på samma sätt som förr, fastän datacentralen betjänar ett mycket större antal användare, både internt och externt.

Systemen blir alltmer komplexa. Knappast någon enskild har överblick över sitt företags hela datasystem. Det är lättare för en angripare att hitta den svaga punkten.

Allt fler lär sig databehandling. Vi får snart dataundervisning redan i grundskolan. Bara i Sverige har vi nu 40000 människor som arbetar med data i någon form, och 10 000 programmerare och systemmän. Datorspråken är dessutom internationella. Det går inte längre, att med post eller lastbil skicka en mängd kassetter, disketter och band, och fortfarande tro, att bara ett fåtal människor skulle kunna läsa eller ändra dem.

Att dessa brister inte påtalas oftare, behöver inte bero på, att säkerhetscheferna inte är medvetna om problemen. De väljer att ingenting säga, för att inte underlätta för angripare, eller för att deras organisationer inte skall drabbas av dåligt anseende. Upptäckta angreppsförsök tystas helst ned och görs upp i godo.

Nödvändiga förändringar och anpassningar av erforderliga säkerhetsåtgärder har sålunda ofta inte identifierats i den takt som företagens administrativa rutiner datoriserats. Härvid utgör Sigill-rutinen ett nytt, avancerat hjälpmedel för att bevara datainformationens integritet i dataarkiv eller under transport.

Låt till exempel den enligt svensk datalag personregisteransvarige (löneregister, kundregister m m) ensam hålla i den hemliga Sigill-nyckeln. Därigenom har den registeransvarige, för första gången, fått ett kontrollinstrument som gör det möjligt för honom/henne att praktiskt leva upp till sitt lagliga ansvar.

Vi har inte upplevt något stort databrott i Sverige än. Men när det brottet kommer och blir känt för allmänhet och massmedia, kommer det att skada inte bara berörd organisation, utan också hela branschen. Aversionen mot data kan då komma att breda ut sig än mera, när man inser att våra system inte bara är allmänt otillförlitliga utan också lätta offer för tjuvar och bedragare. Därför är det ytterst angeläget att förebygga en sådan situation.

Fyra användningsområden kan urskiljas för Sigillet:

  1. Kontroll av avsändaridentitet.

    Endast en avsändare med riktig nyckel kan skapa det Sigill som finns på den datainformation som transporterats till annan datacentral fysiskt eller via tele.

    Vid remote data entry (satsvisa transaktioner via tele) saknar man de behörighetskontroller som man är van vid från vanliga bildskärmar. Normalt finns behörighetsskydd för enstaka realtidstransaktioner, men detta saknas när 1 000-tals transaktioner, t ex leverantörsfakturor, på en gång sänds in via tele. Har den sändande utrustningen möjlighet att räkna ut ett Sigill får man möjlighet att kontrollera såväl användaridentitet, informationsintegritet som att det inte sker någon dubbelinläsning. De två sistnämnda funktionerna beskrivs nedan.

  2. Integritetsskydd av datafiler. Sigillet räknas ut på nytt då skyddad datafil ånyo läses. Data är oförändrade endast då det nya framräknade Sigillet överensstämmer med det Sigill som finns lagrat på den skyddade filen.

    Företagets löneregister vill man skydda speciellt för den egna datacentralens personal, som kan förväntas ha både detaljerade kunskaper om rutiner inom företaget och motiv att förändra data. Hela lönebandet bör därför förses med ett sigill, som kontrolleras och uppdateras vid varje lönekörning.

    Även andra känsliga register kan med fördel skyddas av Sigillet, t ex kund- och leverantörsreskontra, prisregister, valutaregister m fl.

    Dessutom kan enskilda program i datacentralens produktionsbibliotek åsättas Sigill. Härigenom kan man lätt (t o m dagligen) maskinellt kontrollera att endast behöriga programversioner av känsliga program finns i produktion.

  3. Dubblettkontroll. Sigillet kan användas för att kontrollera att inte samma indatafil av misstag läses in flera gånger. Man spar t ex de 4–5 sist inlästa, godkända Sigillen för infiler som lästs in i datacentralens generella inläsningsprogram. När en ny fil lästs in och dess Sigill godkänts jämför man detta Sigill med de tidigare sparade. Om något av de sparade Sigillen är identiskt med det nyss inlästa och godkända har det med 99,99 % sannolikhet skett en dubbelinläsning.

  4. Kontroll av identiska datamängder

  • Realtidsuppdatering. I dag saknas en tillfredsställande verifiering på att alla transaktioner som inkommit till datorns kommunikations-programvara verkligen också når sitt register eller databas. ”Mjuka” programlåsningar eller programfel som ej lämnar indikation till operatör kan leda till under lång tid oupptäckta transaktionsförluster.

    Räkna fram ett Sigill som omfattar dagens inkommande transaktioner och motsvarande för transaktioner som nått (uppdaterat) sin databas. Jämför Transaktionskontroll-Sigillet vid dagens slut med Databaskontroll-Sigillet. Vid likhet har alla uppdateringar genomförts fullständigt. Annars får man återskapa aktuell databas med utgångspunkt från transaktionslogg och databasback-up. Även rekonstruktion kan kontrolleras med Sigill.

  • Distribuerade databaser. Vi kommer att få alltfler distribuerade databaser, där hela företagets data finns centralt, men där varje lokalkontor dessutom har hand om sina egna data. De flesta transaktionerna behöver bara tillgång till den lokala databasen, medan ett fåtal transaktioner sänds vidare till den centrala datorn. Varje natt uppdateras de lokala och centrala databaserna i batch med de transaktioner som ännu inte nått dit.

    I dessa fall måste man kontrollera, att de lokala och centrala baserna överensstämmer, särskilt efter systemfel. En god första kontroll är att se att Sigillen överensstämmer. Det är billigare att beräkna och skicka över ett sigill än att skicka över och jämföra filerna tecken för tecken. Tar man Sigill över lagom stora bitar åt gången, kan man säkert lokalisera eventuella fel till en rimligt liten del av databasen och minimera antalet tillfällen, då databaserna måste jämföras i sin helhet.

4 PRAKTISKA TILLÄMPNINGAR

En av de första som använder Sigillet är Bankgirocentralen. Där får man varje dag ta emot betalningsuppdrag från hundratals kunder via band, disketter, kassetter eller teletransmission. Man vill skydda sig mot att någon obehörig ändrar innehållet i ett kundband under transporten till Bankgirocentralen. Likaså använder man Sigillet för att kontrollera behörigheten.

På Bankgirocentralen är det också tänkt att använda Sigillet som identitet för att förhindra dubbelinläsningar av band.

Systemet har f n (januari 1981) varit i drift i några månader och arbetat utan problem. Installationen hos kunderna av Sigillmodulen har tagit högst en dag.

För Bankgirocentralens kunder är det givetvis en extra trygghet att veta att de egna transaktionerna kontrolleras effektivt med Sigill-metoden.

5 SIGILLSTANDARD

Eftersom Sigillet i stor utsträckning även kommer att användas vid datautbyte mellan olika datacentraler med kanske olika datorfabrikat/typer föreligger ett starkt behov av att standardisera Sigillet. Arbetet med framtagandet av det Elektroniska Sigillet har pågått allt sedan våren -77 och målsättningen har varit att kunna erbjuda marknaden ett standardiserat Elektroniskt Sigill vilket i och med idrifttagande av sigillet hos BGC också har blivit fallet. Programmeringsspecialister har hämtats från ett välkänt mjukvaruhus. Kryptoexpertis inom försvarsmakten har också ingående granskat och godkänt Sigillets kryptologisk-/matematiska kvalitet.

SIGILLETS UPPHOVSMÄN

Christer Lindén är konsult och delägare i SÄKdata AB. Lindén samarbetar med revisionsfirman Sillén & Jacobsson i ADB-revisionsfrågor. Tidigare har han bl a arbetat som datasäkerhetschef vid Försvarets Datacentral. Han har varit idégivare och totalansvarig för framtagning av Sigillrutinen i samarbete med Bankgirocentralen.

Hans Block är från början matematiker. Med erfarenheter av militära kryptosystem har han arbetat som projektledare vid Statistiska Centralbyrån med utveckling av metoder för sekretessteknik. Han har, på uppdrag av SÄKdata, utarbetat de matematiska principerna för Sigill-metodens kryptobaserade algoritm.

Christer Lindén och Hans Block