NO338937B1 - Fremgangsmåte ved frembringelse av sikkerhetskode. - Google Patents

Fremgangsmåte ved frembringelse av sikkerhetskode. Download PDF

Info

Publication number
NO338937B1
NO338937B1 NO20074124A NO20074124A NO338937B1 NO 338937 B1 NO338937 B1 NO 338937B1 NO 20074124 A NO20074124 A NO 20074124A NO 20074124 A NO20074124 A NO 20074124A NO 338937 B1 NO338937 B1 NO 338937B1
Authority
NO
Norway
Prior art keywords
user
service provider
code
user device
security code
Prior art date
Application number
NO20074124A
Other languages
English (en)
Other versions
NO20074124L (no
Inventor
Erik Lindmo
Petter Taugbøl
Original Assignee
Allclear Id Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from NO20050152A external-priority patent/NO20050152D0/no
Application filed by Allclear Id Inc filed Critical Allclear Id Inc
Priority to NO20074124A priority Critical patent/NO338937B1/no
Publication of NO20074124L publication Critical patent/NO20074124L/no
Publication of NO338937B1 publication Critical patent/NO338937B1/no

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Liquid Crystal Substances (AREA)
  • Devices For Executing Special Programs (AREA)
  • Iron Core Of Rotating Electric Machines (AREA)
  • Storage Device Security (AREA)

Description

Denne oppfinnelse gjelder en fremgangsmåte ved frembringelse av en reproduserbar sikkerhetskode for brukerautentisering og for lagring, signering og kryptering/dekryptering av informasjon ved hjelp av en programmerbar brukeranordning. Oppfinnelsen gjelder også fremgangsmåter hvor den reproduserbare sikkerhetskode utnyttes for forskjellige sikkerhetsformål, og en tilsvarende programmerbar brukeranordning.
I mange situasjoner hvor tjenesteleverandører tilbyr tjenester og overføring av informasjon til allmennheten gjennom elektroniske media er det behov for en mekanisme som sørger for verifisert identifisering av den enkelte som mottar tjenesten eller utveksler informasjon med tjenesteleverandøren. Tradisjonelle autentiseringsarrangementer anvender par av brukernavn og passord for å autentisere brukere. Denne enkle metode gir imidlertid minimal sikkerhet. For å oppnå en høyere grad av sikkerhet er det stadig mer vanlig å bruke såkalt to-faktorautentisering. Sådan to-faktorautentisering er basert på en "noe du vet"-komponent (slik som et passord) og en "noe du har"-komponent, idet et eksempel er et bankkort (som du har) og den tilhørende PIN-kode (Personal Identification Number) (som du kjenner til).
Dersom et passord skal sendes over et åpent telekommunikasjons- eller datanett kan det lett fanges opp av andre. Det er derfor ønskelig å tillate bruk av såkalte engangs- passord (dynamiske passord) i stedet for faste (statiske) passord (slik som PIN-koder). For dette formål bruker f.eks. mange banker kortlignende halvlederanordninger (også betegnet "security tokens") som beregner og viser frem en engangspasskode (dvs. et tidsvarierende tall) på en liten skjerm. Ved å legge dette tall inn i et system når autentisering (login) forsøkes, beviser den person som gjør dette at han er i besittelse av anordningen. Et eksempel på en sådan halvlederanordning er beskrevet i US-patent nr. 4 599 4S9. For å øke sikkerheten er halvlederanordningen ofte selv beskyttet med en PIN-kode som fordres for å "åpne" anordningen. I så fall må først den korrekte PIN-kode legges inn før de korrekte passkodetall vises frem.
Et problem med halvlederanordninger av denne type er de betraktelige omkostninger ved deres anskaffelse og distribusjon. Et annet problem er at en person som er en registrert bruker av diverse tjenester, slik som f.eks. banktjenester fra forskjellige institusjoner via Internett, hvor bruken av hver fordrer en separat halvlederanordning, vil måtte ta vare på og håndtere en mengde forskjellige anordninger. Det vil absolutt være fordelaktig for allmennheten om flere tjenesteleverandører kunne benytte en og samme halvlederanordning som en felles eller generisk "flerkodekalkulator" for en mengde tjenester. På den annen side er det kjent arrangementer som muliggjør implementering av sikker-hetstiltak i elektronisk utstyr av forskjellig slag. For eksempel kan programvare lagret i en kommunikasjonsterminal brukes for en sikker kommunikasjonstjeneste mellom en bruker og en tjenesteleverandør. Den programvare som behøves må lagres som selvstendige dataprogrammer i terminalens hukommelse. I en og samme terminal kan det lagres brukerprogrammer som stammer fra forskjellige tjenesteleverandører for mange slags formål.
En person som ønsker å bruke et dataprogram for en tjeneste, slik som en sikker kommunikasjonstjeneste, må normalt registrere programmet hos tjenesteleverandøren før han tillates å kjøre vedkommende program på en datamaskin for sikker kommunikasjon med vedkommende tjenesteleverandør. Så snart han er en registrert bruker kan han kjøre dette program på en hvilken som helst datamaskin, vanligvis ved å legge inn sitt brukernavn og passord, eventuelt en engangspasskode f.eks. fremskaffet av den kortlignende halvlederanordning nevnt ovenfor. Denne prosedyre sikrer at brukeren er i besittelse av det korrekte brukernavn og passord, eller i sistnevnte tilfelle, den korrekte kortlignende halvlederanordning og tilhørende PIN (om nødvendig).
For å unngå de problemer som stammer fra å ha en mengde kortlignende anordninger knyttet til hver enkelt i en mengde av tjenesteleverandører, søker foreliggende oppfinnelse å gjøre bruk av eksisterende og fremtidige, elektroniske informasjonsteknologiske anordninger, typisk sådanne som har kommunikasjonsmulighet, for formålet av sikker identitetsverifisering.
For å oppnå dette mener oppfinnerene at i stedet for å knytte en brukers identitet til en kortlignende halvlederanordning spesielt konstruert og beregnet på ett eneste formål vil det være mindre kostbart og mye mer fleksibelt å knytte brukerens identitet til en utstyrsenhet som allerede er i hans besittelse eller som primært anskaffes for andre, mer generelle formål enn det som gjelder verifisering av identitet.
En intensjon med oppfinnelsen er å unngå behovet for noen modifisering eller supplering av maskinvarekonfigurasjonen i eksisterende brukeranordninger som skal benyttes i systemet i henhold til oppfinnelsen. Således bør elektroniske brukeranordninger som er egnet for den foreskrevne bruk som et minimum være programmerbare og ha i det minste et datainngangsgrensesnitt og mulighet for databehandling, datalagring og dataavgivelse. For at anordningen skal virke i henhold til oppfinnelsen må i tillegg datalagringsutstyret omfatte et lesbart, fiklingssikkert lager hvor en utstyrsidentifikator som entydig identifiserer den enkelte anordning, er lagret.
For å lette informasjonsutvekslingen med utvalgte tjenesteleverandører bør utstyret fortrinnsvis gi brukeren en egnet kommunikasjonsfunksjonalitet. En sådan kommunikasjonsegenskap kan være innebygget i anordningen eller legges til som en funksjonell utvidelse.
I prinsippet kan således mange slags elektroniske brukeranordninger benyttes for implementering av oppfinnelsen. Imidlertid betraktes mobiltelefoner i samsvar med GSMteknikken (Global System for Mobile Communications) å være særlig velegnet for oppfinnelsens formål siden hver GSM-mobiltelefon allerede har en unik utstyrsidentifikator lagret i en hukommelse som står imot fikling, nemlig en "internasjonal mobilutstyrsidentitet"
(IMEI - International Mobile Equipment Identity) som er en kode på siffer som primært brukes for å identifisere en individuell GSM-mobiltelefon overfor et GSMnett eller -operatør. Nærværet av IMEI-koden i en GSM-mobiltelefon er vanligvis obligatorisk for at telefonen skal kunne brukes i GSM-nettet. Således vil fjerning eller endring av IMEI-koden gjøre mobiltelefonen ubrukelig for sitt hovedformål, nemlig telekommunikasjon.
I denne forbindelse er eksempler på bruk av IMEI-koder for henholdsvis å kontrollere en mobil stasjons kompatibilitet og styre en mobil stasjons bruksrettighet/aktivering, kjent fra US-patent nr. 6 164 547 og nr. 5 956 633. I tillegg er det fra US-patentsøknadene med publikasjonsnr. 2003/02369S1 og 2004/0030906 kjent å bruke IMEI-koden som nøkkel ved kryptering av enkeltvise SMS-meldinger (Short Message Service) og autentisering av sådanne meldinger ved hjelp av en digital signatur beregnet med IMEI-koden som nøkkel.
WO 01/31S40 A1 er et ytterligere eksempel på tidligere kjent teknikk, som beskriver hvordan et første engangspassord kan genereres i en mobil stasjon på grunnlag av et personlig identifiseringstall (PIN), en abonnentidentifikator (typisk IMSI i et GSM-nett), en utstyrsidentifikator (typisk IMEI i et GSM-nett) og tiden (altså en tidsvarierende passkode), som så brukes i en autentiseringstjener for å åpne for en telekommunikasjons-
forbindelse mellom den mobile stasjon og et datamaskinsystem. For å utføre identifiseringsprosedyren bruker autentiseringstjeneren abonnentidentifikatoren (IMSI) mottatt fra den mobile stasjon for å søke i en database etter PIN-koden og anordningsidentifikatoren (IMEI) knyttet til vedkommende abonnent, og når alle tre entiteter er gjenvunnet blir de kombinert med tiden for å frembringe et andre engangspassord for sammenligning med det første.
Denne løsning muliggjør autentisering overfor et bestemt datamaskinsystem eller tjenesteleverandør, men kan ikke brukes av mer enn den ene tjenesteleverandør uten å gå på akkord med sikkerheten. Dersom den brukes av mer enn en tjenesteleverandør fordrer løsningen at de samme identifikatorer (PIN, IMEI og IMSI) distribueres til hvert datamaskinsystem og derved kompromitteres sikkerheten for alle involverte parter. Videre kan denne løsning bare brukes for autentisering, men ikke for andre sikkerhetsfunksjoner, slik som signering, kryptering og sikker distribusjon, og den kan heller ikke brukes for lokal kryptering og styring av tilgang til følsom informasjon, slik som f.eks. hemmelige (private) PKI-nøkler (Public Key Infrastructure) lagret i en mobiltelefon.
Den tidligere kjente, identifiserende prosess beskrevet i WO 01/31S40 A1 er en skjult prosess for brukeren som ikke fordrer noe samvirke med brukeren og den representerer bare en svak autentisering av brukeren på autentiseringstidspunktet. I tillegg er alle identifikatorer som behøves i prosessen, innbefattet brukerens PIN, lagret i den mobile stasjon så vel som i datamaskinsystemet hos de respektive tjenesteleverandører. Denne løsning er også begrenset til at tiden brukes som den eneste kilde til varierbar inngangsstørrelse for beregningen av engangspassordet, hvilket begrenser metodens fleksibilitet ytterligere.
US 5657388 beskriver en token basert mekanisme for autentisering basert på å kombinere en hemmelig kode lagret på en fysisk enhet, bruker input (en PIN kode) samt en variabel input (tid eller lignende) for å produsere en ikke-forutsigbar, engangskode for å få adgang til ressurser på en vertsmaskin. Metoden bygger på at vertsmaskinen verifiserer brukerens identitet ved å sammenligne engangskoden som er mottatt fra brukeren med en engangskode som generes på vertsmaskinen der engangskoden genereres på vertsmaskinen fra en kopi av sikkerhetskoden og bruker input som er lagret på vertsmaskinen. US 5657388 tilbyr en metode for å verifisere identiteten hos en bruker mot ett enkelt system ved å bruke en token-generert engangskode, men denne kan ikke benyttes som mekanisme mot flere uavhengige vertsmaskiner. To vertsmaskiner som ønsker å bruke samme token-mekanisme fra en og samme bruker vil i praksis måtte lagre samme sikkerhetskode hos begge og dermed kompromitteres hemmeligheten ved sikkerhetskoden. Videre lagres brukerens PIN på vertsmaskinene. US 5657388 angir en fremgangsmåte for å verifisere identiteten av en bruker, den kan ikke brukes til kryptering av informasjon som sendes fra en tjenestetilbyder til en bruker eller for å signere data fra bruker til brukersted fordi US 5657388 ikke angir hvordan reproduserbare sikkerhetskoder genereres/produseres.
I JP-patentpublikasjon nr. 2003 410949 er det beskrevet et system og en fremgangsmåte som genererer entydige koder og viser frem kodene på en brukers mobiltelefon, f.eks. i form av et bilde. Brukeren benytter bildet og en "brukerhemmelighet" for å autentisere seg selv overfor en tjenesteleverandør eller datamaskinsystem for tilgang til en tjeneste, slik som en kontantuttaks- eller betalingstjeneste. Bortsett fra å fordre ytterligere brukersamvirke har metoden en svakhet ved at koden utilsiktet kan avsløres fra fremviservinduet. Denne metode gjør ikke bruk av mobilterminal-identifikatorer for å generere brukerens autentiseringsdata. Den mobile terminal brukes bare som en kommunikasjonsterminal og ikke som en robust besittelsesfaktor (noe du har) i en tofaktorautentisering.
I sammenheng med foreliggende oppfinnelse vil IMEI-koden for en mobiltelefon utnyttes som den unike utstyrsidentifikator som fordres for at mobiltelefonen skal virke i henhold til oppfinnelsen.
Sikkerhetsmekanismer som kan brukes for å gjøre tilgang til flere ulike tjenesteleverandører er ofte basert på såkalte offentlige nøkkelalgoritmer (public key algorithms). I et PKI-system behøver de hemmelige nøkler (private keys) å bli lagret på en sikker måte, mens de allmenne nøkler (public keys) kan publiseres i kataloger eller sertifikater signert av en betrodd tredjepart. For å være sikker på at hemmelige (private) nøkler kan brukes utelukkende under brukerens styring er det vanlig å ha nøklene lagret i en "nøkkelbeholder" i maskinvare, slik som et smartkort eller SIM-kort (Subscriber Indentity Module). Hovedproblemet med sådanne systemer er omkostningene ved produksjon og distribusjon av maskinvaren. Foreliggende oppfinnelse gir en mye billigere løsning på dette behov for en fiklingsbestandig, brukerstyrt nøkkelbeholder.
Et aspekt av foreliggende oppfinnelse gjelder en fremgangsmåte ved frembringelse av en reproduserbar sikkerhetskode for brukerautentisering og for lagring, signering og kryptering/dekryptering av informasjon ved hjelp av en programmerbar brukeranordning som omfatter i det minste et datainngangsgrensesnitt, databehandlingsutstyr og datalagringsutstyr som omfatter et lesbart, fiklingssikkert lager hvor en utstyrsidentifikator som entydig identifiserer brukeranordningen, er lagret på forhånd, idet fremgangsmåten omfatter trinn hvor: - det via nevnte datainngangsgrensesnitt legges inn en personlig brukerkode i brukeranordningen,
- utstyrsidentifikatoren hentes fra brukeranordningens datalagringsutstyr,
- inne i brukeranordningen beregnes det en sikkerhetskode på grunnlag av en kombinasjon av i det minste nevnte utstyrsidentifikator og nevnte personlige brukerkode, og - den beregnede sikkerhetskode avgis, idet den derved beregnede sikkerhetskode i seg selv representerer både brukeren og brukeranordningen.
Fremgangsmåten i henhold til oppfinnelsen genererer data for brukeridentifisering med to faktorer uten behov for på noen måte å registrere eller lagre den personlige brukerkode.
I en foretrukket utførelse omfatter fremgangsmåten i henhold til oppfinnelsen videre trinn hvor det forut for beregningen inne i brukeranordningen av en sikkerhetskode: - legges inn i brukeranordningen en tjenesteleverandørkode som representerer en tjenesteleverandør som brukeren er registrert hos med sitt brukernavn, - beregnes inne i brukeranordningen en sikkerhetskode på grunnlag av en kombinasjon av utstyrsidentifikatoren, den personlige brukerkode og nevnte tjenesteleverandørkode, og - den beregnede sikkerhetskode avgis, idet den således beregnede sikkerhetskode i seg selv representerer brukeren og brukeranordningen overfor en spesifikk tjenesteleverandør.
Ved å legge inn en tjenesteleverandørkode i beregningen av sikkerhetskoden kan forskjellige sikkerhetskoder frembringes for hver tjenesteleverandør uten behov for å endre noen av de andre identifikatorer (brukerens personlige kode og utstyrsidentifikatoren). Fremgangsmåten i henhold til oppfinnelsen gjør det mulig for en bruker å benytte den samme anordning for brukeridentifisering med to faktorer overfor mer enn en tjenesteleverandør uten å dele følsomme data med flere tjenesteleverandører.
Et spesielt aspekt av oppfinnelsen gjelder en fremgangsmåte ved autentisering av brukeren av en brukeranordning, idet brukeren er registrert i en kundefil hos en tjenesteleverandør med sitt brukernavn og en tilhørende sikkerhetskode oppnådd ved hjelp av en fremgangsmåte i henhold til oppfinnelsen, idet fremgangsmåten omfatter trinn hvor: -et brukernavn angis overfor tjenesteleverandøren, hos tjenesteleverandøren søkes det i kundefilen for å finne det angitte brukernavn og dersom det er tilstede i filen sendes en utfordring tilbake til brukeren, - en personlig brukerkode legges inn i brukeranordningen og fra brukeranordningens datalagringsutstyr hentes brukeranordningens utstyrsidentifikator, - nevnte sikkerhetskode beregnes inne i brukeranordningen, en variabel mottatt fra tjenesteleverandøren som nevnte utfordring legges inn i brukeranordningen og ved å bruke en kryptografisk algoritme beregnes inne i brukeranordningen et engangspassord på grunnlag av nevnte sikkerhetskode og variabel,
- det beregnede engangspassord angis overfor tjenesteleverandøren,
-hos tjenesteleverandøren gjenvinnes fra kundefilen den sikkerhetskode som tilsvarer brukernavnet angitt av brukeren, - ved å bruke den samme kryptografiske algoritme som brukeranordningen beregnes det hos tjenesteleverandøren et engangspassord på grunnlag av sikkerhetskoden gjenvunnet fra kundefilen og den samme variabel som ble sendt tilbake til brukeren og benyttet av brukeranordningen, - hos tjenesteleverandøren sammenlignes det nettopp beregnede engangspassord med det mottatt fra brukeren, og
dersom engangspassordene er identiske er autentiseringsresultatet positivt, idet det bekrefter at brukeren identifisert ved brukernavnet er i besittelse av brukeranordningen og en tilhørende personlig brukerkode, hvis ikke er autentiseringsresultatet negativt.
Det omtales også en fremgangsmåte ved sikker lagring av informasjon på en programmerbar brukeranordning som omfatter i det minste et datainngangsgrensesnitt, databehandlingsutstyr og datalagringsutstyr som omfatter et lesbart, fiklingssikkert lager hvor en utstyrsidentifikator som entydig identifiserer brukeranordningen er lagret på forhånd, idet fremgangsmåten omfatter trinn hvor informasjonen krypteres forut for lagring og informasjonen dekrypteres ved gjenvinning av den lagrede, krypterte informasjon, hvorved: - trinnet hvor informasjonen krypterer omfatter at informasjonen som skal lagres krypteres ved å bruke en sikkerhetskode som krypteringsnøkkel, og - trinnet hvor informasjonen dekrypteres omfatter at den lagrede, krypterte informasjon gjenvinnes ved å bruke den samme sikkerhetskode som dekrypteringsnøkkel, idet nevnte sikkerhetskode frembringes ved hjelp av trinn hvor: - en personlig brukerkode legges inn i brukeranordningen via nevnte datainngangsgrensesnitt,
- utstyrsidentifikatoren hentes fra brukeranordningens datalagringsutstyr,
- inne i brukeranordningen beregnes en sikkerhetskode på grunnlag av en kombinasjon av i det minste nevnte utstyrsidentifikator og nevnte personlige brukerkode, og - den beregnede sikkerhetskode avgis for henholdsvis krypterings- og dekrypteringstrinnet. I fremgangsmåten kan de biometriske data som er representative for brukeren av anordningen utgjøre hele eller en del av den personlige brukerkode.
I nok et aspekt omtales en fremgangsmåte for signering av et informasjonselement som skal utveksles mellom brukeren av en brukeranordning og en tjenesteleverandør, idet brukeren er registrert i en kundefil hos tjenesteleverandøren med sitt brukernavn og en tilhørende sikkerhetskode oppnås ved hjelp av en fremgangsmåte i henhold til oppfinnelsen, idet fremgangsmåten omfatter trinn hvor: - det informasjonselement som skal signeres av brukeren overføres fra tjenesteleverandøren til brukeranordningen dersom informasjonselementet ikke er tilstede i brukeranordningen, - en personlig brukerkode legges inn i brukeranordningen og fra brukeranordningens datalagringsutstyr hentes brukeranordningens utstyrsidentifikator,
- nevnte sikkerhetskode beregnes inne i brukeranordningen,
- ved å bruke en krypteringsalgoritme beregnes inne i brukeranordningen en "signatur" på grunnlag av nevnte sikkerhetskode og informasjonselementet som skal signeres og overføres til tjenesteleverandøren, - brukernavnet og "signaturen" overføres til tjenesteleverandøren og dersom informasjonselementet som skal signeres av brukeren ikke er tilstede hos tjenesteleverandøren overføres også informasjonselementet til tjenesteleverandøren, - hos tjenesteleverandøren gjenvinnes fra kundefilen den sikkerhetskode som tilsvarer brukernavnet mottatt fra brukeren, - ved å bruke den samme kryptografiske algoritme som brukeranordningen beregnes det hos tjenesteleverandøren en "signatur" på grunnlag av sikkerhetskoden mottatt fra kundefilen og informasjonselementet, - hos tjenesteleverandøren sammenlignes den nettopp beregnede "signatur" med den mottatt fra brukeren, og
dersom "signaturene" er identiske bekreftes det at brukeren av brukeranordningen med forsett har signert informasjonselementet og at informasjonselementet ikke er blitt modifisert, og hvis ikke, er signeringsresultatet negativt.
I en spesiell utførelse kan "signaturen" omfatte en digital eller elektronisk signatur, eventuelt en meldingsautentiseringskode (MAC).
I enda et aspekt omtales en fremgangsmåte for sikring av et informasjonselement som skal overføres fra brukeren av en brukeranordning til en tjenesteleverandør, idet brukeren er registrert i en kundefil hos tjenesteleverandøren med sitt brukernavn og en tilhørende sikkerhetskode oppnådd ved hjelp av en fremgangsmåte i henhold til oppfinnelsen,
idet fremgangsmåten omfatter trinn hvor:
- en personlig brukerkode legges inn i brukeranordningen og fra brukeranordningens datalagringsutstyr hentes brukeranordningens utstyrsidentifikator,
- nevnte sikkerhetskode beregnes inne i brukeranordningen,
- ved å bruke en kryptografisk algoritme og nevnte sikkerhetskode som krypteringsnøkkel krypteres inne i brukeranordningen det informasjonselement som skal overføres til tjenesteleverandøren,
- brukernavnet og det krypterte informasjonselement overføres til tjenesteleverandøren,
- hos tjenesteleverandøren gjenvinnes fra kundefilen den sikkerhetskode som tilsvarer brukernavnet mottatt fra brukeren, og - ved å bruke den samme kryptografiske algoritme som brukeranordningen krypteres hos tjenesteleverandøren det krypterte informasjonselement ved å bruke sikkerhetskoden gjenvunnet fra kundefilen som krypteringsnøkkel.
I et ytterligere aspekt omtales en fremgangsmåte ved sikring av et informasjonselement som skal overføres fra en tjenesteleverandør til brukeren av en brukeranordning, idet brukeren er registrert i en kundefil hos tjenesteleverandøren med sitt brukernavn og en tilhørende sikkerhetskode oppnådd ved hjelp av en fremgangsmåte
i henhold til oppfinnelsen, idet fremgangsmåten omfatter trinn hvor:
- sikkerhetskoden for den bruker som informasjonselementet skal overføres til gjenvinnes fra kundefilen hos tjenesteleverandøren, - ved å bruke en kryptografisk algoritme og nevnte sikkerhetskode som krypteringsnøkkel krypteres nevnte informasjonselement,
- det krypterte informasjonselement overføres til brukeren, og
- ved mottagning i brukeranordningen av nevnte krypterte informasjonselement legges en personlig brukerkode inn i brukeranordningen og fra brukeranordningens datalagringsutstyr hentes brukeranordningens utstyrsidentifikator,
- nevnte sikkerhetskode beregnes inne i brukeranordningen, og
- ved å bruke den samme kryptografiske algoritme som tjenesteleverandøren dekrypteres det krypterte informasjonselement i brukeranordningen ved å bruke den nettopp beregnede sikkerhetskode som dekrypteringsnøkkel.
Denne fremgangsmåte ved sikring av informasjonselementer som skal overføres fra en tjenesteleverandør kan være nyttig for å sende meldinger og for å holde informasjon hemmelig overfor andre, så vel som for å sende digitalt innhold som ikke skal kopieres (slik som elektroniske billetter, eller annet digitalt innhold som skal beskyttes mot ulovlig kopiering, musikk, video, programvare, osv.).
Det omtales også en programmerbar brukeranordning som har i det minste et datainngangsgrensesnitt, databehandlingsutstyr og datalagringsutstyr med et lesbart, fiklingssikkert lager hvor en utstyrsidentifikator som entydig identifiserer brukeranordningen er lagret på forhånd, idet den programmerbare brukeranordning er programmert til å kjøre en prosess i samsvar med en hvilken som helst av fremgangsmåtene angitt over.
Utstyrsidentifikatoren for brukeranordningen er fortrinnsvis et serienummer for produktet lagt inn i anordningen forut for levering til en bruker og i tilfellet av en mobiltelefon kan utstyrsidentifikatoren være en internasjonal mobilutstyrsidentitet (dvs. IMEI-koden i tilfellet av en GSM-telefon).
Generelt kan oppfinnelsen la en brukeranordning tjene som en felles eller generisk "flerkodegenerator" for en mengde tjenester fra flere tjenesteleverandører.
Ytterligere trekk ved brukeranordningen og fremgangsmåten ved frembringelse av en sikkerhetskode i henhold til foreliggende oppfinnelse vil fremgå av den etterfølgende beskrivelse av eksempler på utførelsesformer av denne gitt med henvisning til de vedføyde tegninger, på hvilke: Fig. 1 er et blokkskjema som skjematisk viser hovedkomponentene i en brukeranordning i
henhold til oppfinnelsen,
fig. 2 er et flytskjema som skjematisk viser en prosess ved frembringelse av en sikkerhetskode som representerer en bruker av en brukeranordning og selve
anordningen,
fig. 3 er et flytskjema som skjematisk viser en prosess ved sikker, lokal lagring av
informasjon,
fig. 4 er et flytskjema som skjematisk viser en prosess ved bruk av informasjonen som er
sikkert lagret ved hjelp av prosessen vist i fig. 3,
fig. 5 er et flytskjema som skjematisk viser en prosess ved distribusjon fra en
tjenesteleverandør av informasjon kryptert ved hjelp av en brukers offentlige nøkkel, fig. 6 er et flytskjema som skjematisk viser en prosess ved distribusjon fra en
tjenesteleverandør av informasjon kryptert ved hjelp av en brukers sikkerhetskode, fig. 7 er et flytskjema som skjematisk viser en prosess ved autentisering av en bruker i
samsvar med en utførelse av oppfinnelsen,
fig. 8 er et flytskjema som skjematisk viser en prosess ved innledningsvis registrering av en
bruker hos en tjenesteleverandør.
Med henvisning til fig. 1 omfatter en brukeranordning i henhold til oppfinnelsen i det minste et datainngangsgrensesnitt, slik som en numerisk knappsats, et komplett tastatur 1 eller annet grensesnittutstyr, databehandlingsutstyr, slik som en mikroprosessorstyring 2, og datalagringsutstyr 3, slik som et direkteminne (RAM), leseminne (ROM) og/eller hurtigminne
(cache), som omfatter et lesbart, fiklingssikkert lager 4, fortrinnsvis et leseminne, hvor en utstyrsidentifikator som entydig identifiserer anordningen er lagret, og datautgangsmuligheter, slik som et fremviservindu 5, en dataskjerm eller lignende, og eventuelt med tanke på noen utførelser av oppfinnelsen, en kommunikasjonsmodul 6 for enveis eller toveis kommunikasjon med eksternt utstyr, slik som vanlig periferiutstyr for datamaskiner og datanett, eventuelt innbefattet sender/mottagerutstyr for en hvilken som helst type privat eller offentlig telekommunikasjonstjeneste.
Brukeranordningen i henhold til oppfinnelsen er programmerbar, dvs. at den er i stand til å utføre data- og brukerprogrammer lest inn i dens mikroprosessors hukommelse. For å implementere visse utførelser av oppfinnelsen bør brukeranordningen også være i stand til å utveksle informasjon med en tjenesteleverandør som brukeren er registrert som kunde eller abonnent hos. Derfor betraktes mobiltelefoner i samsvar med GSM-teknologien å være særlig egnet for oppfinnelsens formål. Det forutses imidlertid at andre personlige, elektroniske utstyrsenheter, slik som bærbare datamaskiner (laptops) og håndholdte informasjonsanordninger (PDA - Personal Digital Assistant) eller særlig stasjonære, personlige datamaskiner (PCer) samt selvsagt fremtidige mobiltelefoner, også kan brukes når de forsynes med en passende utstyrsidentitet (El - Equipment Identity) på en måte tilsvarende GSM-mobiltelefoner. Fremtidige lommekalkulatorer eller generatorer for det spesielle formål å frembringe generiske passord kan også forutses.
Programvare for beregning av sikkerhetskode
Den programvare som behøves for å beregne sikkerhetskoden kan være permanent lagret i brukeranordningen i henhold til oppfinnelsen. Den kan f.eks. legges inn i anordningen på produksjonstidspunktet. For å muliggjøre bruk av en allerede eksisterende anordning av passende type, som angitt ovenfor, kan et spesielt brukerprogram leveres til anordningen på et hvilket som helst tidspunkt via en hvilken som helst type dataleveransemedium, slik som en diskett, optisk kompaktplate (CD-ROM) og innpluggbart datalagringsutstyr (hukommelsesstav eller -kort). Når anordningen er utstyrt med en kommunikasjonsmulighet kan brukerprogrammet lastes ned til anordningen fra en programvareforhandler via et kommunikasjonsnett for anordningen, for direkte utførelse og/eller lagring for senere utnyttelse.
I henhold til oppfinnelsen er programvaren for beregning av sikkerhetskode et generelt dataprogram som i det hele tatt ikke inneholder noen hemmeligheter. Data- eller brukerprogrammet kan være åpent for publikum for bruk på en hvilken som helst egnet bruker- anordning. I prinsippet kan brukerprogrammet være identisk fra den ene brukeranord-
ning til den neste bortsett fra datamaskinrelaterte forskjeller som skyldes bruk av ulike operativsystemer, programmeringsspråk, kompilatorer og lignende.
Dette trekk med prinsipielt fri distribusjon av programvare for beregning av sikkerhets- kode og muligheten til å kopiere programvaren fra en anordning til en annen uten å gå på akkord
med sikkerheten, er en hovedfordel ved foreliggende oppfinnelse, særlig sammenlignet med sikkerhetsarrangementer som fordrer nærvær av hemmeligheter i selve brukerprogramvaren.
Beregningen som utføres av sikkerhetskodeprogramvaren er typisk basert på bruk av enveis krypteringsalgoritmer (f.eks. en spredealgoritme (hashing)) for å frembringe sikkerhetskoden og toveis krypteringsalgoritmer for å kryptere/dekryptere informasjonselementer, men diverse andre typer krypteringsalgoritmer kan brukes. Den krypteringsmetode som brukes er ikke avgjørende for implementering av oppfinnelsen. 8ikkerhets- koden bør imidlertid være tilstrekkelig unik og det bør ikke være mulig å utlede dens inngangsdataelementer fra selve koden (dvs. enveiskryptering). Et annet viktig trekk ved programvaren for beregning av sikkerhetskode er at den er konstruert for å lese ut utstyrsidentifikatoren som entydig identifiserer vedkommende anordning hver eneste gang en sikkerhetskode skal brukes og at den beregnede sikkerhetskode aldri lagres i anordningen.
Beregning av sikkerhetskode
Med henvisning til fig. 2 omfatter i en utførelse fremgangsmåten i henhold til foreliggende oppfinnelse ved frembringelse av en sikkerhetskode ved hjelp av en programmerbar brukeranordning (se fig. 1) og den nettopp beskrevne brukerprogramvare tre hovedtrinn: brukeren som er i besittelse av anordningen legger inn sin personlige brukerkode i anordningen via et datainngangsgrensesnitt for anordningen (trinn S1),
anordningen henter utstyrsidentifikatoren fra sitt eget datalagringsutstyr 4 (trinn S2), og - på grunnlag av en kombinasjon av den hentede utstyrsidentifikator og den innlagte personlige brukerkode beregner brukeranordningen inne i seg selv en sikkerhetskode (trinn S3).
Den sikkerhetskode som derved oppnås er basert på to faktorer. Betraktet som et autentiseringsarrangement med to faktorer vil således den personlige brukerkode utgjøre "noe du vet"-komponenten, mens utstyrsidentifikatoren er "noe du har"-komponenten. Sikkerhetskoden representerer en unik identifisering av brukeren og brukerens anordning, men de opprinnelige inngangsidentifikatorer (dvs. brukerens personlige kode og utstyrsidentifikatoren) kan ikke rekalkuleres ut fra sikkerhetskoden. Fremgangsmåten i henhold til oppfinnelsen forhindrer at inngangsidentifikatorene blir avslørt overfor noen annen part og er også en fremgangsmåte hvor det ikke er noe behov for å lagre brukerens personlige kode på noen måte.
I prinsippet kan brukeren fritt velge en hvilken som helst egnet personlig kode som skal legges inn for frembringelse av en sikkerhetskode. Den personlige kode kan f.eks. være en annen for forskjellige formål. I foreliggende tilfelle er sikkerhetskoden representativ for både brukeren og brukerens anordning. Koden kan nå avgis via anordningens dataavgivelsesmulighet, slik som ved å vises frem i fremviservinduet 5, eller via kommunikasjonsmodulen 6 for å sendes til et eller annet lokalt eller fjernt plassert eksternt utstyr, slik som kommunikasjonsutstyr som befinner seg på tjenesteleverandørens sted.
Skjønt det ikke er vist i fig. 2 kan beregningen inne i brukeranordningen av sikkerhetskoden alternativt baseres på en kombinasjon av tre faktorer når dette er passende i utførelsesformer av oppfinnelsen. I tillegg til de to faktorer som er nevnt ovenfor, dvs. utstyrsidentifikatoren og brukerens personlige kode, kan en tjenesteleverandørkode valgt av tjenesteleverandøren eller av brukeren selv, for å betegne en tjenesteleverandør, innlemmes i beregningen av sikkerhetskoden. En sådan sikkerhetskode med tre faktorer vil selv representere brukeren og brukeranordningen overfor tjenesteleverandøren eller en bestemt tjeneste tilbudt av vedkommende tjenesteleverandør. Sådanne tjenesteleverandørkoder kan selvsagt lagres i datalagringsutstyret 3 i brukeranordningen for senere bruk.
Som et alternativ til å innføre tjenesteleverandørkoden som en separat tredje kode kan en eller annen type indikasjon på en spesifikk tjenesteleverandør innarbeides i brukerens personlige kode, slik at den blir en todelt kode, og det vil da være en forskjellig sikkerhetskode for hver tjenesteleverandør.
Den mulighet som fremgangsmåten i henhold til foreliggende oppfinnelse har til å frembringe spesifikke eller forskjellige sikkerhetskoder for hver tjenesteleverandør gjør det mulig for brukeren å bruke den samme anordning for sikkerhetstjenester hos mer enn en tjenesteleverandør uten å gå på akkord med sikkerheten. Ingen tjenesteleverandører behøver å dele den samme sikkerhetskode, og ingen tjenesteleverandør er i stand til å rekalkulere inngangsidentifikatorene.
Med utviklingen av biometriske kodeteknikker forutses også den mulighet at biometriske data kan være del av sikkerhetskoden i henhold til oppfinnelsen. Således kan biometriske data som er representative for en bruker utgjøre den personlige brukerkode alene eller som en integrert del av denne, slik at man beveger seg fra en situasjon med "noe du har" til en situasjon med "noe du er". I et sådant tilfelle behøver brukeranordningen å bli utstyrt med eller forbundet med passende inngangsutstyr for å gjøre det mulig å av- søke biometriske detaljer fra brukerens attributter og tilføre dem til brukeranordningen.
Hver personlige brukerkode og tjenesteleverandørkode kan typisk omfatte en sekvens alfabetiske og/eller numeriske tegn som er lette å huske og som i prosessen konverteres til en sekvens binært kodede data. Bruker- og tjenesteleverandørkodene kan også alene eller i kombinasjon med andre opplysninger omfatte et stykke informasjon som allerede er konvertert til en sekvens binært kodede data. Biometriske data som er representative for en bruker er et eksempel på sådanne forhåndskodede, binære data.
I alle tilfeller kan beregningen av sikkerhetskoden omfatte en enkel aritmetisk operasjon eller en kompleks kryptografisk operasjon, eventuelt bruk av andre typer chiffreringsteknikker. Operasjonen bør imidlertid være slik at ingen av de inngående dataelementer til beregningen kan utledes fra koden og/eller fra kjennskap til noen av inngangselementene.
Kryptering/dekryptering av informasjon
Idet det henvises til fig. 3 kan sikkerhetskoden i henhold til oppfinnelsen brukes når informasjonselementer lagres på brukeranordningen, idet informasjonen krypteres forut for lagring ved å bruke sikkerhetskoden som krypteringsnøkkel. Prosessen kan typisk omfatte de etterfølgende trinn: brukeren spesifiserer eller starter, f.eks. ved hjelp av tastaturet 1, en prosess eller et datamaskinprogram som genererer et informasjonselement som behøver å bli lagret på sikker måte (f.eks. en hemmelig nøkkel i et PKI-system (Public Key Infrastructure))
(trinn S1),
brukeren legger inn en personlig brukerkode i anordningen, typisk via tastaturet 1
(trinn S2),
anordningen henter utstyrsidentifikatoren fra sitt eget datalagringsutstyr 4 og
beregner i seg selv en sikkerhetskode (trinn S3 og S4), og
ved å bruke sikkerhetskoden som krypteringsnøkkel krypterer anordningen informasjonselementet og lagrer den krypterte informasjon i anordningens datalagringsutstyr 3 (trinn S5 og S6).
Dersom brukeren velger å benytte forskjellige personlige koder for forskjellige formål kan han/hun velge en bestemt kode f.eks. for det formål å lagre informasjonselementer sikkert lokalt.
I det viste eksempel er det frembragt en "to-faktor"-sikkerhetskode, men en "tre-faktor"sikkerhetskode kan likesåvel benyttes, særlig når det informasjonselement som skal lagres sikkert gjelder en tjenesteleverandør.
Inne i brukeranordningen kan da senere informasjonselementer som på denne måte er blitt kryptert forut for lagring i anordningen, gjenvinnes og dekrypteres forut for bruk ved å benytte sikkerhetskoden som dekrypteringsnøkkel. En sådan prosess kan, slik som vist i fig. 4, omfatte de etterfølgende trinn: brukeren velger f.eks. ved hjelp av tastaturet 1 eller spesifiserer ved hjelp av andre midler, et eller flere informasjonselementer som er sikkert lagret i anordningen (trinn S1),
typisk ved hjelp av tastaturet 1 legger brukeren inn i anordningen den personlige
kode benyttet ved lagringen av vedkommende informasjonselement(er) (trinn S2),
anordningen henter utstyrsidentifikatoren fra sitt eget lagringsutstyr 4 og beregner
inne i seg selv en sikkerhetskode (trinn S3 og S4), og
ved å bruke sikkerhetskoden som dekrypteringsnøkkel dekrypterer anordningen vedkommende informasjonselement(er) og brukeren tillates å lese og/eller benytte den dekrypterte informasjon etter som det passer (trinn S5 og S6).
Av sikkerhetsgrunner blir i en foretrukket realisering det dekrypterte informasjonselement alltid slettet etter å ha blitt brukt, slik at bare kryptert informasjon blir liggende igjen i anordningens datalagringsutstyr 3.
Bruk av sikkerhetskoden forsikker kommunikasjon
I en foretrukket utførelse er brukeranordningen utstyrt med en kommunikasjonsfunksjon som muliggjør enveis og/eller toveis datakommunikasjon med en tjenesteleverandør over et kablet eller trådløst kommunikasjonsnett.
Dersom tjenesteleverandøren i et sådant tilfelle ønsker å bruke et asymmetrisk krypteringsarrangement med to nøkler når informasjon som skal distribueres til brukere må krypteres forut for overføring til en bruker, kan informasjonen, slik som vist i fig. 5, omkastes forut for overføringen ved å bruke en offentlig nøkkel i krypteringsarrangementet (trinn S1). Gitt at det er sørget for at de tilsvarende hemmelige nøkler i krypteringssystemet er lagret på forhånd i brukeranordningen i et kryptert format oppnådd ved å bruke sikkerhetskoden som krypteringsnøkkel kan da brukeranordningen være programmert til ved mottak av omkastet informasjon å: dekryptere den krypterte hemmelige nøkkel lagret i anordningen ved bruk av sikker hetskoden som dekrypteringsnøkkel (trinn S5), og - gjenopprette den omkastede informasjon mottatt fra tjenesteleverandøren ved å bruke den dekrypterte hemmelige nøkkel (trinn S6).
I dette tilfelle behøver sikkerhetskoden ikke være lagret hos tjenesteleverandøren. Den offentlige nøkkel kan spesifiseres av brukeren eller være lagret på forhånd hos tjenesteleverandøren, eventuelt være allment tilgjengelig gjennom en elektronisk oppslagstavletjeneste.
I stedet for å bruke et krypteringsarrangement med to nøkler kan tjenesteleverandøren benytte sikkerhetskoden i henhold til oppfinnelsen i sammenheng med distribusjon av hemmelig informasjon, så sant det er sørget for lagring hos tjenesteleverandøren av sikkerhetskodene for brukerene av leverandørens tjenester. En sådan prosess hvor informasjonen krypteres forut for overføring ved å bruke sikkerhetskoden som krypteringsnøkkel (trinn S1 i fig. 6) kan, slik som vist i fig. 6, omfatte trinn hvor den krypterte informasjon mottatt fra tjenesteleverandøren dekrypteres ved å bruke anordningens nettopp beregnede sikkerhetskode (trinn S4 og S5 i fig. 6).
I begge tilfeller blir den dekrypterte informasjon fortrinnsvis slettet av sikkerhetsgrunner etter at den er blitt benyttet, slik at det ikke etterlates noe spor av denne på anordningen (med mindre den lagres lokalt ved å bruke sikkerhetskoden som lokal krypteringsnøkkel, slik som vist i fig. 3).
Bruk av sikkerhetskoden for autentisering
I tillegg kan sikkerhetskoden absolutt brukes som grunnlag for verifisering av brukerens identitet og brukeranordningen som tilhører ham/henne.
I en utførelse av oppfinnelsen omfatter brukeranordningen en kommunikasjonsmodul 6 (se fig. 1). I forbindelse med autentiseringsmetoden i henhold til oppfinnelsen kan således den derved frembragte kommunikasjonsfunksjon brukes for å utveksle informasjon, fortrinnsvis "on-line", med tjenesteleverandører via selve brukeranordningen. Gitt at brukeren allerede er registrert i en kundefil hos en tjenesteleverandør med sitt brukernavn og en tilhørende sikkerhetskode i henhold til oppfinnelsen, kan i et sådant tilfelle med henvisning til fig. 7 fremgangsmåten ved autentisering av en bruker av brukeranordningen omfatte de etterfølgende trinn: inn i den elektroniske anordning legges et brukernavn og fra anordningen overføres
det innlagte brukernavn til tjenesteleverandøren (trinn S2),
- hos tjenesteleverandøren søkes det i kundefilen for å finne brukernavnet mottatt fra den elektroniske anordning og dersom det er tilstede i filen sendes det en utfordring fra tjenesteleverandøren til den elektroniske anordning (trinn S3 og S4),
en personlig brukerkode legges inn i den elektroniske anordning og fra den elektroniske anordnings datalagringsutstyr hentes utstyrsidentifikatoren for anordningen (trinn S5),
internt i den elektroniske anordning beregnes en sikkerhetskode på grunnlag av
nevnte utstyrsidentifikator og personlige brukerkode (trinn S6),
ved å bruke en kryptografisk algoritme beregnes internt i den elektroniske anordning et engangspassord på grunnlag av nevnte sikkerhetskode og en variabel mottatt fra tjenesteleverandøren som del av nevnte utfordring (trinn S7),
det beregnede engangspassord overføres fra den elektroniske anordning til
tjenesteleverandøren (trinn S7),
hos tjenesteleverandøren gjenvinnes fra kundefilen den sikkerhetskode som tilsvarer
brukernavnet mottatt fra den elektroniske anordning (trinn S8),
ved å bruke den samme kryptografiske algoritme som brukeranordningen beregnes det hos tjenesteleverandøren et engangspassord på grunnlag av sikkerhetskoden gjenvunnet fra kundefilen og den samme variabel som den formidlet til og som ble brukt av den elektroniske anordning (trinn S9), og
hos tjenesteleverandøren sammenlignes det engangspassord som nettopp er beregnet med det mottatt fra den elektroniske anordning (trinn S10).
Dersom engangspassordene er identiske er autentiseringsresultatet positivt, idet det bekrefter at brukeren identifisert ved brukernavnet er i besittelse av den elektroniske anordning og av en tilhørende personlig brukerkode, hvis ikke, er autentiseringsresultatet negativt.
Når brukeranordningen er utstyrt med en kommunikasjonsmodul kan foreliggende oppfinnelse også brukes for meldingsautentisering ved å beregne en digital signatur eller
MAC (Message Authentication Code) ut fra en melding eller ut fra en sammenfatning (digest) av denne, som skal kommuniseres mellom brukeranordningen og en tjenesteleverandør eller annen tredjepart, idet sikkerhetskoden i henhold til oppfinnelsen er en av komponentene som tar del i denne beregning.
I en annen utførelse av oppfinnelsen, hvor brukeranordningen ikke inneholder en kommunikasjonsmodul og ingen direkte utveksling av informasjon med tjenesteleverandører via selve brukeranordningen er mulig, eller når det ikke er praktisk å utveksle all informasjon gjennom anordningen, kan brukeren selv virke som et "mellomledd" mellom brukeranordningen og tjenesteleverandøren. For å kommunisere med tjenesteleverandøren kan da brukeren benytte et hvilket som helst kommunikasjonsmiddel som er tilgjengelig, slik som f.eks. en personlig datamaskin koblet til Internett, idet hovedsaken er at ut- vekslingen av brukerens angivelser til tjenesteleverandøren og reaksjonene som sendes tilbake fra tjenesteleverandøren til brukeren foregår på en akseptabel måte, fortrinnsvis i sann tid. Selve kommunikasjonsforbindelsen eller -kanalen kan om det er nødvendig av sikkerhetsgrunner selvsagt være omkastet (scrambled) eller kryptert på en hvilken som helst konvensjonell måte.
Enten det er et teknisk arrangement tilstede for kommunikasjon utstyr-til-utstyr, eller ikke, kan autentiseringsmetoden i henhold til oppfinnelsen i prinsippet være lik den anskueliggjort i fig. 7, bare med en person eller et eller annet annet kommunikasjonsarrangement som "mellomledd" når brukeranordningen mangler en kommunikasjonsfunksjon.
I stedet for å få en variabel mottatt fra tjenesteleverandøren som en del av en utfordring derfra (trinn S7 i fig. 7) forutses også den mulighet at en variabel som skal brukes for den interne beregning i brukeranordningen av et engangspassord, kan genereres av selve brukeranordningen. I så fall må det sørges for et arrangement hvor tjenesteleverandøren på sin side er i stand til å bruke den samme variabel i beregningen av engangspassordet (trinn S9 i fig. 7) for sammenligning med det fra brukeranordningen
(trinn S10 i fig. 7). Sådanne arrangementer er kjent for fagfolk på området og kan omfatte mekanismer som f.eks. bruker synkroniserte deler av en tidsvariabel eller et sekvensnummer.
Innledningsvis brukerregistrering
For mange tjenester som tilbys allmennheten må generelt en kunde eller bruker av en sådan tjeneste registrere seg hos den respektive tjenesteleverandør for å få tilgang til vedkommende tjeneste(r) (f.eks. abonnere på tjenesten). I forbindelse med utnyttelse av utførelsesformer av foreliggende oppfinnelse for sådanne tjenester er dette også tilfellet. Som vist med f.eks. trinn S1 i fig. 7 er det således en forutsetning at brukeren innledningsvis er registrert hos tjenesteleverandøren med sitt brukernavn og en tilhørende sikkerhetskode oppnådd ved hjelp av metoden i henhold til oppfinnelsen.
En måte som brukeren kan oppnå sin sikkerhetskode på er å utføre trinnene i fremgangsmåten forklart ovenfor under avsnittet "Beregning av sikkerhetskode" og anskueliggjort i fig. 2, som gir en "to-faktorkode". En annen måte er først å legge inn en spesifikk tjenesteleverandørkode (som kan gjelde bare en bestemt tjeneste) og så beregne en "tre-faktorkode", hvilket også er nevnt i nevnte avsnitt. En sådan prosedyre kan, slik som vist i fig. 8 omfatte de etterfølgende trinn: fra tjenesteleverandøren sendes en tjenesteleverandørkode til en bruker (trinn S1a),
eller det overlates til brukeren å velge en tjenesteleverandørkode (trinn S1b),
- hos brukeren legges tjenesteleverandørkoden inn i brukeranordningen (trinn S2), typisk ved hjelp av tastaturet legges den personlige brukerkode inn i den elektroniske
anordning (trinn S3),
fra den elektroniske anordnings datalagringsutstyr hentes utstyrsidentifikatoren for
anordningen (trinn S4),
- tjenesteleverandørkoden lagres valgfritt i den elektroniske anordnings datalagringsutstyr (trinn S5),
internt i den elektroniske anordning beregnes en sikkerhetskode på grunnlag av utstyrsidentifikatoren, brukerens personlige kode og tjenesteleverandørkoden (trinn 56) ,
brukernavnet og den beregnede sikkerhetskode sendes til tjenesteleverandøren (trinn
57) , og
i en kundefil hos tjenesteleverandøren registreres brukernavnet og den tilhørende sikkerhetskode mottatt fra brukeren (trinn S8).
I begge tilfeller kan utvekslingen av informasjon mellom bruker og tjenesteleverandør foregå ved hjelp av et hvilket som helst tilgjengelig kommunikasjonsmiddel, slik som ved hjelp av brev hos Posten, telefaks eller til og med talekommunikasjon.
Skjønt beskrivelsen av foretrukne utførelsesformer er gjort på grunnlag av at oppfinnelsen er implementert i programvare, kan oppfinnelsen realiseres ved hjelp av maskinvarekomponenter som utfører lignende oppgaver som programvaren i de beskrevne utførelsesformer.

Claims (11)

1. Fremgangsmåte ved frembringelse av en reproduserbar sikkerhetskode for å autentisere en bruker og for lagring, signering og kryptering/dekryptering av informasjon ved hjelp av en programmerbar brukeranordning som omfatter i det minste et datainngangsgrensesnitt, databehandlingsutstyr og datalagringsutstyr som omfatter et lesbart, fiklingssikkert lager hvor en utstyrsidentifikator som entydig identifiserer brukeranordningen, er lagret på forhånd, der fremgangsmåten videre omfatter trinnene av: a) å legge inn en personlig brukerkode i brukeranordningen via nevnte datainngangsgrensesnitt, b) å hente utstyrsidentifikatoren fra brukeranordningens datalagringsutstyr, c) å legge inn i brukeranordningen en tjenesteleverandørkode som representerer en tjenesteleverandør som brukeren er registrert hos med sitt brukernavn, eller a. å hente fra brukeranordningens datalagringsutstyr en tjenesteleverandørkode som representerer en tjenesteleverandør som brukeren er registrert hos med sitt brukernavn d) - å beregne basert på en enveis krypteringsalgoritme inne i brukeranordningen en sikkerhetskode på grunnlag av en kombinasjon av utstyrsidentifikatoren, den personlige brukerkode og nevnte tjenesteleverandørkode uten at brukerkoden lagres, og e) å avgi den beregnede sikkerhetskode, idet den derved beregnede sikkerhetskode i seg selv representerer både brukeren og brukeranordningen.
2. Fremgangsmåte som angitt i krav 1, der brukeranordningen tjener som en generisk "flerkodegenerator" for tjenester fra flere tjenesteleverandører.
3. Fremgangsmåte som angitt i krav 1 eller 2, der både den personlige brukerkode og tjenesteleverandørkoden omfatter en respektiv sekvens av alfabetiske og/eller numeriske tegn, eller en sekvens av binære data.
4. Fremgangsmåte som angitt i krav 1 eller 2, der biometriske data som representerer brukeren av anordningen utgjør hele eller en del av den personlige brukerkode.
5. Fremgangsmåte som angitt i krav 3, og hvor tjenesteleverandørkoden representerer en tjeneste tilbudt av tjenesteleverandøren.
6. Fremgangsmåte som angitt i krav 2, og som videre omfatter et trinn hvor tjenesteleverandørkoden lagres i brukeranordningens datalagringsutstyr.
7. Fremgangsmåte som angitt i krav 6, og hvor beregningen internt i brukeranordningen av en sikkerhetskode baseres på en kombinasjon av utstyrsidentifikatoren, den personlige brukerkode og nevnte tjenesteleverandørkode forut for lagring i brukeranordningens datalagringsutstyr.
8. Fremgangsmåte som angitt i ett eller flere av kravene 1 - 7 der brukeren er registrert i en kundefil hos en tjenesteleverandør med sitt brukernavn og den tilhørende sikkerhetskoden der fremgangsmåten ytterligere omfatter trinnene av å: f) å angi et brukernavn overfor tjenesteleverandøren, g) å søke i kundefilen hos tjenesteleverandøren for å finne det angitte brukernavn og dersom det er tilstede i filen å sende en utfordring tilbake til brukeren, h) å legge en personlig brukerkode inn i brukeranordningen og fra brukeranordningens datalagringsutstyr å hente brukeranordningens utstyrsidentifikator, i) å beregne nevnte sikkerhetskode inne i brukeranordningen, j) å legge en variabel mottatt fra tjenesteleverandøren som nevnte utfordring inn i brukeranordningen og ved å bruke en kryptografisk algoritme å beregne inne i brukeranordningen et engangspassord på grunnlag av nevnte sikkerhetskode og variabel, k) å angi det beregnede engangspassord overfor tjenesteleverandøren, I) å gjenvinne fra kundefilen hos tjenesteleverandøren den sikkerhetskode som tilsvarer brukernavnet angitt av brukeren, m) å beregne hos tjenesteleverandøren, ved å bruke den samme kryptografiske algoritme som brukeranordningen, et engangspassord på grunnlag av sikkerhetskoden gjenvunnet fra kundefilen og den samme variabel som ble sendt tilbake til brukeren og benyttet av brukeranordningen, n) å sammenligne hos tjenesteleverandøren det nettopp beregnede engangspassord med det mottatt fra brukeren, og o) dersom engangspassordene er identiske er autentiseringsresultatet positivt, idet det bekrefter at brukeren identifisert ved brukernavnet er i besittelse av brukeranordningen og en tilhørende personlig brukerkode..
9. Fremgangsmåte som angitt i krav 8, og hvor angivelsene gitt av brukeren til tjenesteleverandøren og reaksjonene som sendes tilbake av tjenesteleverandøren til brukeren formidles ved hjelp av et kommunikasjonsarrangement som åpner for utveksling av informasjon mellom bruker og tjenesteleverandør.
10. Fremgangsmåte som angitt i krav 9, og hvor brukeranordningen har en kommunikasjonsfunksjon som lar brukeren legge inn sine angivelser til tjenesteleverandøren via et datainngangsgrensesnitt for anordningen, for overføring til tjenesteleverandøren, og for å motta reaksjonene fra tjenesteleverandøren direkte inn i brukeranordningen.
11. Fremgangsmåte som angitt i krav 9, og hvor arrangementet med toveiskommunikasjon omfatter en offentlig kommunikasjonstjeneste eller -mulighet som er tilgjengelig for brukeren utenom brukeranordningen.
NO20074124A 2005-01-11 2007-08-09 Fremgangsmåte ved frembringelse av sikkerhetskode. NO338937B1 (no)

Priority Applications (1)

Application Number Priority Date Filing Date Title
NO20074124A NO338937B1 (no) 2005-01-11 2007-08-09 Fremgangsmåte ved frembringelse av sikkerhetskode.

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
NO20050152A NO20050152D0 (no) 2005-01-11 2005-01-11 Fremgangsmate ved frembringelse av sikkerhetskode og programmbar anordning for denne
PCT/NO2006/000012 WO2006075917A2 (en) 2005-01-11 2006-01-11 Security code production method and methods of using the same, and programmable device therefor
NO20074124A NO338937B1 (no) 2005-01-11 2007-08-09 Fremgangsmåte ved frembringelse av sikkerhetskode.

Publications (2)

Publication Number Publication Date
NO20074124L NO20074124L (no) 2007-10-11
NO338937B1 true NO338937B1 (no) 2016-10-31

Family

ID=38792420

Family Applications (1)

Application Number Title Priority Date Filing Date
NO20074124A NO338937B1 (no) 2005-01-11 2007-08-09 Fremgangsmåte ved frembringelse av sikkerhetskode.

Country Status (1)

Country Link
NO (1) NO338937B1 (no)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657388A (en) * 1993-05-25 1997-08-12 Security Dynamics Technologies, Inc. Method and apparatus for utilizing a token for resource access

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657388A (en) * 1993-05-25 1997-08-12 Security Dynamics Technologies, Inc. Method and apparatus for utilizing a token for resource access

Also Published As

Publication number Publication date
NO20074124L (no) 2007-10-11

Similar Documents

Publication Publication Date Title
JP4866863B2 (ja) セキュリティコード生成方法及びユーザ装置
RU2434352C2 (ru) Способ и устройство для надежной аутентификации
US20210264010A1 (en) Method and system for user authentication with improved security
US9338163B2 (en) Method using a single authentication device to authenticate a user to a service provider among a plurality of service providers and device for performing such a method
US9112680B2 (en) Distribution of credentials
US9223994B2 (en) Secure transaction method from a non-secure terminal
US20160205098A1 (en) Identity verifying method, apparatus and system, and related devices
Nyang et al. Keylogging-resistant visual authentication protocols
JP2007506392A (ja) データ通信機密保護の仕組みおよび方法
WO2014141263A1 (en) Asymmetric otp authentication system
US20100005519A1 (en) System and method for authenticating one-time virtual secret information
CN105281899A (zh) 用于密码认证的装置和方法
US20120189125A1 (en) Method for establishing a secure communication channel
US11394545B2 (en) Communication system, server device, user device, method, and computer program
NO338937B1 (no) Fremgangsmåte ved frembringelse av sikkerhetskode.
KR101014788B1 (ko) 서비스에 이용되는 개인정보를 안전하게 전송하기 위한 모바일 시스템, 서비스 시스템 및 서비스 제공 방법
KR20170109471A (ko) 데이터 암호화 방법
JP2012212405A (ja) アプリケーション認証システム、アプリケーション認証方法およびプログラム

Legal Events

Date Code Title Description
CHAD Change of the owner's name or address (par. 44 patent law, par. patentforskriften)

Owner name: ALLCLEAR ID, US

CHAD Change of the owner's name or address (par. 44 patent law, par. patentforskriften)

Owner name: ENCAP AS, NO

CHAD Change of the owner's name or address (par. 44 patent law, par. patentforskriften)

Owner name: SIGNICAT AS, NO

CREP Change of representative

Representative=s name: DEHNS NORDIC AS, GAUSTADALLEEN 21, 0349 OSLO