http-protokollen bruker et symmetrisk krypteringsskjema. Kryptografi er symmetrisk og asymmetrisk. Funksjoner av asymmetrisk kryptering

Redegjørelse om sikkerhetsutfordringen

Opplegg symmetrisk kryptering

Et formelt symmetrisk krypteringsskjema kan beskrives som følger:

SE = (K, E, D) , hvor

  • K - nøkkelgenereringsalgoritme K,
  • E (M, K) = C - en klartekstkrypteringsalgoritme M på en nøkkel K, resultatet av denne er en chiffertekst C,
  • D (C, K) = M - en algoritme for å dekryptere chifferteksten C på nøkkelen K, resultatet av denne er klarteksten M

Meldingsprosessen kan beskrives som følger:

Avsenderen krypterer meldingen ved hjelp av en spesifikk krypteringsalgoritme, som den originale (ukrypterte) meldingen og nøkkelen leveres til. Utdata fra algoritmen er en kryptert melding. Nøkkelen er en verdi uavhengig av meldingen som krypteres. Endring av nøkkel bør endre den krypterte meldingen.

Den krypterte meldingen sendes til mottakeren. Mottakeren konverterer den krypterte meldingen til den originale ved å bruke dekrypteringsalgoritmen og den samme nøkkelen som ble brukt i kryptering, eller en nøkkel som enkelt kan avledes fra krypteringsnøkkelen.

Den viktigste komponenten i et symmetrisk krypteringsskjema er krypteringsalgoritmen den bruker. For øyeblikket skilles blokkerings- og strømkrypteringsalgoritmer:

  • blokkchiffer. De behandler informasjon i blokker med en viss lengde (vanligvis 64, 128 biter, som for eksempel i DES eller AES), og bruker en nøkkel på blokken i en foreskrevet rekkefølge, som regel flere sykluser med blanding og substitusjon, kalt runder.
  • strømchiffer, der kryptering utføres på hver bit eller byte av den originale (ren) teksten ved hjelp av gamma.

I praksis er grensen mellom blokk- og strømkrypteringsalgoritmer ganske uskarp (en strømchiffer kan enkelt lages på grunnlag av en blokkchiffer, for eksempel GOST 28147-89 i gammamodus).

Krypteringsskjemaer brukt i blokkchiffer kalles også krypteringsmoduser.

Noen av de symmetriske krypteringsskjemaene er:

  1. (ECB) elektronisk kodebok
    • (ECB CTS
  2. (CBC) Chiffer Block Chaining Chiffer blokkkjeding-modus
    • (CBC CTS) CipherText Stealing
    1. () blokkkjeding Blockkjedingmodus
    2. (CBC $) Chiffer Block Chaining med tilfeldig IV (initialiseringsvektor) Kjede blokker med en tilfeldig initialiseringsvektor
    3. (CBCC) chifferblokkkjeding med kontrollsum
    4. (PCBC) forplanter chifferblokkkjeding
    5. (CBCPD) chifferblokkkjeding av klartekstforskjell
  3. (CFB) Cipher Feed Back-modus tilbakemelding etter chiffertekst
  4. (OFB) Utgang Tilbakekopling Utgang Tilbakemeldingsmodus
  5. (OFBNLF) utgangs-tilbakemelding med en ikke-lineær funksjon Ikke-lineær utgangs-tilbakemeldingsmodus
  6. (PBC) klartekst blokkkjeding Klartekst blokkkjeding
  7. (PFB) klartekst-tilbakemelding Rentekst-tilbakemeldingsmodus
  8. (CTR) Teller Tellermodus
  9. Multippel kryptering
    1. Dobbelt
      • Davis-Price-metoden
    2. Trippel
      • Touchmans krets
      • Tre-nøkkel ordning

Kryptografiske primitiver og/eller protokoller

Den kryptografiske styrken til symmetriske krypteringsskjemaer avhenger nesten helt av den symmetriske krypteringsalgoritmen som brukes i den. Som regel, når man analyserer styrken til en symmetrisk (enkeltnøkkel) algoritme, antas det at det enkleste krypteringsskjemaet brukes - ECB. Bruken av andre skjemaer kan forbedre noen egenskaper til algoritmen, i visse tilfeller, men ikke omvendt.

For å sikre pålitelighet symmetriske algoritmer kryptering kreves:

  • den kryptografiske algoritmen må være sterk nok til at den overførte krypterte meldingen ikke kan dekrypteres uten en nøkkel, kun ved å bruke forskjellige statistiske mønstre for den krypterte meldingen eller andre metoder for dens analyse.
  • sikkerheten til den overførte meldingen bør avhenge av hemmeligheten til nøkkelen, men ikke av hemmeligheten til algoritmen. Algoritmen må analyseres av spesialister for å utelukke tilstedeværelsen svake punkter, i nærvær av hvilke forholdet mellom ukrypterte og krypterte meldinger er dårlig skjult.
  • Algoritmen skal ikke bryte hemmeligheten til nøkkelen, selv om motstanderen har mange par med klartekst og de tilsvarende chiffertekstene som er oppnådd med denne nøkkelen.

Som regel forutsettes det at deltakerne i den krypterte informasjonsutvekslingen har full tillit til hverandre, ellers, dersom det oppstår tvister og uenigheter om meldingens pålitelighet, vil en uavhengig observatør ikke kunne si hvem den ble sendt av.

Symmetriske kryptoordninger er vanligvis preget av en høy krypterings-/dekrypteringshastighet, som gjør at de kan brukes til rask kryptering store volumer informasjon. I tillegg, ved hjelp av noen av dem, er det mulig å sikre alle tre egenskapene til informasjonssikkerhet: konfidensialitet, autentisitet og integritet.

  • Konfidensialiteten til overføringen avhenger av styrken til chifferen og konfidensialiteten til krypteringsnøkkelen.
  • Autentisitet er sikret på grunn av det faktum at uten foreløpig dekryptering er det praktisk talt umulig å utføre semantisk modifikasjon og forfalskning av en kryptografisk lukket melding. En falsk melding kan ikke krypteres riktig uten å kjenne den hemmelige nøkkelen.
  • Dataintegritet sikres ved å slå sammen de overførte dataene spesiell kode(imitasjonsinnsetting) generert av den hemmelige nøkkelen. Imitasjonsinnsetting er en slags kontrollsum, det vil si en viss referansekarakteristikk for en melding, i henhold til hvilken integriteten til sistnevnte kontrolleres. Algoritmen for å generere et imiterende innlegg må sikre dens avhengighet i henhold til en kompleks kryptografisk lov på hver bit av meldingen. Meldingsintegritetskontrollen utføres av mottakeren av meldingen ved å generere et dummyinnlegg som tilsvarer den mottatte meldingen ved å bruke den hemmelige nøkkelen og sammenligne den med den mottatte dummyverdien. Dersom det er samsvar, konkluderes det med at informasjonen ikke er endret på veien fra avsender til mottaker.

Med en høy krypteringshastighet lar kryptosystemer med én nøkkel løse mange viktige informasjonssikkerhetsproblemer (for eksempel er det veldig effektivt å bruke symmetriske algoritmer for å kryptere lokale ressurser, for eksempel en harddisk). men autonom bruk symmetriske kryptosystemer i datanettverk gir opphav til problemet med distribusjon av krypteringsnøkler mellom brukere.

Praktiske anvendelser av kryptografiske konstruksjoner, særegenheter ved implementeringen (Praktiske problemer)

Den praktiske anvendelsen av krypteringsordninger kan sees på mange områder av livet vårt, for eksempel brukes ECB-ordningen til å kryptere nøkler, CBC- og CFB-ordningene brukes til å autentisere data, CFB-ordningen brukes også til å kryptere individuelle tegn. OFB-ordningen brukes ofte i kanaler med høy interferens (f.eks. satellittsystemer kommunikasjon). PCBC-krypteringsskjemaet bruker Kerberos v4 og WASTE-protokoller

Informatikk, kybernetikk og programmering

Kryptering er transformasjon av data til en uleselig form ved å bruke krypteringsnøkler for å dekryptere dekryptering. Den består av: en eller flere algoritmer for kryptering av matematiske formler; nøklene som brukes av disse krypteringsalgoritmene; nøkkelstyringssystemer; ren tekst; og chiffertekst chiffertekst. Det er to metoder for kryptografisk informasjonsbehandling ved bruk av symmetriske og asymmetriske nøkler. Symmetrisk hemmelig metodikk hvor for både kryptering og dekryptering ...

1. Grunnleggende om kryptografi.

Behovet for en seriøs tilnærming til informasjonssikkerhet fører oss til de grunnleggende begrepene kryptografi, begrepene «digital sikkerhet», «digital signatur» og kryptering.

Kryptografi er vitenskapen om å sikre data. Hun ser etter løsninger på fire viktige sikkerhetsproblemer – konfidensialitet, autentisering, integritet og kontroll av deltakerne i samhandlingen. Kryptering er transformasjon av data til en uleselig form ved hjelp av krypteringsnøkler - dekryptering (dekryptering). Kryptering lar deg sikre konfidensialitet ved å holde informasjon hemmelig for de som den ikke er ment for.

Kryptosystemet fungerer etter en viss metodikk (prosedyre). Den består av: en eller flere krypteringsalgoritmer (matematiske formler); nøklene som brukes av disse krypteringsalgoritmene; nøkkelstyringssystemer; ren tekst; og chiffertekst (chiffertekst).

2. Symmetrisk og asymmetrisk kryptering.

Det er to metoder for kryptografisk behandling av informasjon ved bruk av nøkler - symmetrisk og asymmetrisk.

Symmetrisk (hemmelig)metodikk hvorfor både kryptering og dekryptering bruker avsender og mottaker samme nøkkel, som de ble enige om å bruke før interaksjonen startet (Figur 1.3.). Hvis nøkkelen ikke er kompromittert, blir avsenderen automatisk autentisert under dekryptering, siden bare avsenderen har en nøkkel som informasjon kan krypteres med, og bare mottakeren har en nøkkel som kan brukes til å dekryptere informasjon. Siden avsender og mottaker er de eneste som kjenner denne symmetriske nøkkelen, vil kun interaksjonen mellom disse to brukerne bli kompromittert hvis nøkkelen er kompromittert.

Ris. 1.3.

Symmetriske krypteringsalgoritmer bruker korte nøkler og kan raskt kryptere store datamengder.

Verktøyene som er tilgjengelige i dag som bruker en symmetrisk metodikk er for eksempel minibanknettverk. Disse systemene er originale utviklinger av bankene som eier dem og selges ikke

Fra symmetriske krypteringsalgoritmer bred bruk fikk krypteringsalgoritme DES (oppfunnet av IBM), som anbefales for bruk i åpne sektorer av den amerikanske økonomien. Denne algoritmen var opprinnelig dømt til en begrenset levetid, på grunn av begrensningen av nøkkellengden til 56 biter. For øyeblikket er en profesjonell i stand til å knekke en slik nøkkel for en avgift som er ganske akseptabel for budsjettene til mange land og selskaper.

Situasjonen forverres av det faktum at krypteringssystemer med nøkkel på ikke mer enn 40 bit i henhold til amerikansk lovgivning tillates eksportert som programvareprodukter. De. når du kjøper et chiffersystem med en nøkkel på 1024 eller 2048, og flere biter, må du vite at når nøkkelen endres, vil 40-bitsdelen av nøkkelen være den aktive (endrende) delen. Symmetriske krypteringssystemer har en vanlig ulempe, som er vanskeligheten med å distribuere nøkler. Hvis nøkkelen blir fanget opp av en tredjepart, vil et slikt kryptobeskyttelsessystem bli kompromittert. Så når du endrer nøkkelen, må den videresendes konfidensielt til deltakerne i krypteringsprosedyrene. Denne metoden er åpenbart ikke egnet når du trenger å etablere sikre forbindelser med tusenvis eller flere Internett-abonnenter. Hovedproblemet knyttet til denne metodikken, og det er hvordan man kan generere og trygt overføre nøkler til deltakerne i interaksjonen. Hvordan etablere en sikker kanal for overføring av informasjon mellom deltakere i samhandlingen for overføring av nøkler over usikre kommunikasjonskanaler? Fravær sikker metode Nøkkelutveksling begrenser spredningen av symmetriske krypteringsteknikker på Internett.

De prøvde å løse dette problemet ved å utvikleAsymmetrisk (åpen)krypteringsmetodikk.Hun krypterer dokumentet med én nøkkel og dekrypterer med en annen.. Hver av deltakerne i overføringen av informasjon genererer uavhengig to tilfeldige tall (hemmelige (private) og offentlige nøkler).

Den offentlige nøkkelen overføres via åpne kommunikasjonskanaler til en annen deltaker i kryptobeskyttelsesprosessen, men Den hemmelige nøkkelen holdt hemmelig.

Avsender krypterer meldingenmottakerens offentlige nøkkel, a bare eieren av den private nøkkelen kan dekryptere den.

Den offentlige nøkkelen trenger ikke å være skjult. Uansett hvem du kjenner gitt nøkkel da det kun er for datakryptering. Denne metoden er egnet for et bredt spekter av bruksområder. Hvis du tildeler hver bruker på Internett sitt eget nøkkelpar og publiserer de offentlige nøklene som numre i telefonboken, så kan nesten alle utveksle krypterte meldinger med hverandre. Det ser ut som en boks med to dører med forskjellige sider... Hver slik dør har sin egen lås. Et dokument legges i esken, låses, låses opp på den andre siden med mottakerens nøkkel.
En slik algoritme kryptografisk beskyttelse fikk navnet RSA. Navnet består av de første bokstavene i navnene til de 3 amerikanske matematikerne som utviklet algoritmen. Teorien om primtall ble brukt.

Alle asymmetriske kryptosystemer er utsatt for brute-force-angrep og må derfor bruke mye lengre nøkler enn de som brukes i symmetriske kryptosystemer for å gi et tilsvarende beskyttelsesnivå. Dette påvirker umiddelbart beregningsressursene som kreves for kryptering. RSA har blitt industristandarden asymmetrisk nøkkelalgoritme som brukes i næringslivet for digital signatur og kryptering.

3. C digital signatur.

Digital signatur beskytter dokumentet mot endringer eller erstatning og garanterer dermed ektheten. Det er en streng der attributtene til dokumentet (sjekksum av filen osv.) og innholdet er kodet på en slik måte at enhver endring i filen med den uendrede signaturen oppdages.

Når et dokument (brevvedlegg) er beskyttet av CPUen, tar denne CPUen ikke bare hensyn til dokumentet, men ogsåogså avsenderens private nøkkel og mottakerens offentlige nøkkel.Bare eieren av den private nøkkelen kan signere teksten til dokumentet på riktig måte.

For å sjekke CPU-en til dokumentet, bruker mottakeren (ved hjelp av spesiell nytte) avsenderens offentlige nøkkel.Ingen andre nøkkelpar er gyldige for verifisering. I motsetning til en vanlig signatur er CPU-en derfor avhengig av dokumentet og også avsenderens nøkler. Det er derfor den er flere størrelsesordener overlegen den vanlige signaturen og forseglingen.

CPU-en autentiserer kun dokumentet, men beskytter det ikke mot uautorisert lesing.

Symmetriske og asymmetriske krypteringssystemer har hver sine fordeler og ulemper. Ulempene med et symmetrisk krypteringssystem er vanskeligheten med å erstatte en kompromittert nøkkel, og ulempene asymmetriske systemer s kryptering med relativt lav hastighet.

For tiden har krypteringssystemer blitt utbredt ved hjelp av en kombinert algoritme som tillater høy hastighet iboende kryptering DES bruk åpen videresending av krypteringsnøkler (som i RSA).

For å unngå lavhastighetsalgoritmer asymmetrisk kryptering, genereres en midlertidig symmetrisk nøkkel for hver melding. Meldingen er kryptert med denne midlertidige symmetriske øktnøkkelen. Denne sesjonsnøkkelen blir deretter kryptert ved hjelp av mottakerens asymmetriske offentlige nøkkel og en asymmetrisk krypteringsalgoritme.Siden øktnøkkelen er mye kortere enn selve meldingen, vil krypteringstiden være relativt kort.Denne krypterte øktnøkkelen blir deretter overført til mottakeren sammen med den krypterte meldingen. Mottakeren bruker den samme asymmetriske krypteringsalgoritmen og private nøkkelen for å dekryptere øktnøkkelen, og den resulterende øktnøkkelen brukes til å dekryptere selve meldingen.

4. Informasjonsbehandling i henhold til den kombinerte algoritmen.

Sekvensen for informasjonsbehandling i henhold til den kombinerte algoritmen er vist nedenfor i (Figur 4.1).

Asymmetriske offentlige og private nøkler genereres. Den hemmelige asymmetriske nøkkelen forblir hos eieren. Avsender og mottaker av informasjonen utveksler offentlige asymmetriske nøkler.

Det lages en elektronisk signatur av teksten. Den mottatte verdien krypteres ved hjelp av avsenderens asymmetriske hemmelige nøkkel, og deretter legges den mottatte tegnstrengen til den overførte teksten (bare avsenderen kan opprette en elektronisk signatur).

En hemmelig symmetrisk nøkkel genereres som vil bli brukt til å kryptere kun denne meldingen eller kommunikasjonsøkten (sesjonsnøkkelen).

Deretter, ved å bruke en symmetrisk krypterings-/dekrypteringsalgoritme og denne nøkkelen, krypteres den kildetekst sammen med den elektroniske signaturen som er lagt til, oppnås chifferteksten.

Sesjonsnøkkelen er nå kryptert ved hjelp av den asymmetriske dekrypterings-krypteringsalgoritmen og mottakerens asymmetriske offentlige nøkkel.

Den krypterte sesjonsnøkkelen legges til chifferteksten (som også inkluderer den tidligere tillagte elektroniske signaturen).

Hele den mottatte datapakken (chiffertekst, som i tillegg til originalteksten inkluderer dens elektroniske signatur og krypterte sesjonsnøkkel) blir overført til mottakeren.

Mottakeren foretar handlinger i omvendt rekkefølge... Først må du løse problemet med å dekryptere øktnøkkelen. Den trekker ut den krypterte øktnøkkelen fra den mottatte pakken. Ved å bruke sin private nøkkel og den samme asymmetriske krypteringsalgoritmen, dekrypterer mottakeren øktnøkkelen.

Mottakeren bruker den samme symmetriske krypterings-dekrypteringsalgoritmen og dekrypterte symmetriske (sesjons) nøkkelen til chifferteksten og mottar originalteksten sammen med den elektroniske signaturen.

Mottakeren skiller den elektroniske signaturen fra originalteksten.

Den digitale signaturen til teksten verifiseres ved hjelp av avsenderens offentlige nøkkel og en asymmetrisk krypterings-dekrypteringsalgoritme.

Hvis den viser seg å være pålitelig, er teksten ikke endret.

Et godt eksempel på dette kombinert system kan gjenkjenne produkter Notarius og Athena firmaet "Lancrypto". Forskjellen fra det beskrevne opplegget er at den elektroniske signaturen og krypteringsalgoritmen er delt inn i to uavhengige prosedyrer, og når en symmetrisk sesjonskrypteringsnøkkel produseres, legges nøkkelen til tilfeldig tall"Markant". Deretter legges denne "markøren" til teksten til den allerede krypterte meldingen og inn åpen form sendes til korrespondenten for å dekryptere meldingen. Han, etter å ha mottatt meldingen, kobler av "token" og ved hjelp av sine private og offentlige nøkler til avsenderen og "token" oppretter han en symmetrisk dekrypteringsnøkkel for den mottatte meldingen. Siden "markøren" endres fra økt til økt, selv med den dekrypterte teksten i meldingen, er det umulig å forutsi nøkkelen til neste økt.

Grunnprinsippet for det offentlige og private nøkkelsystemet er at "En" kan signere et dokument og kryptere det med "To". "To" kan dekryptere dokumentet, vel vitende om at det er fra "One", sjekk signaturen "One". Men datamaskinen "To" kan ikke signere dokumentet med signaturen "One" og kan ikke kryptere dokumentet fra "One" til seg selv, dvs. han vil ikke kunne forfalske dokumentet fra "To".

Hvordan beskytte offentlige nøkler mot forfalskning

I kryptosystemer med offentlig nøkkel trenger du ikke å beskytte de offentlige nøklene mot uautorisert tilgang. Tvert imot, jo mer utbredt de sprer seg, jo bedre. Det er imidlertid viktig å beskytte offentlige nøkler mot tukling for å være sikker på at nøkkelen virkelig tilhører personen hvis navn den bærer.

La oss si at du vil sende en privat melding til Alice. Du laster ned Alices offentlige nøkkel fra en elektronisk oppslagstavle (BBS). Du krypterer brevet ditt til Alice med hennes offentlige nøkkel og sender det gjennom e-postsystemet til samme BBS.

Dessverre, uten at du eller Alice vet det, infiltrerer en annen bruker ved navn Victor BBS og genererer en offentlig nøkkel som har Alices bruker-ID. Han erstatter i all hemmelighet den falske nøkkelen sin med Alices ekte offentlige nøkkel. Du bruker utilsiktet denne falske nøkkelen, eid av Victor, i stedet for Alices offentlige nøkkel. Alt ser bra ut, fordi den falske nøkkelen har Alices bruker-ID. Victor kan nå dekryptere meldingen beregnet på Alice, siden han har den hemmelige nøkkelen fra det falske paret. Han kan selv da kryptere meldingen han dekrypterte med Alices virkelige nøkkel og sende den til henne uten at noen merker det. Dessuten kan han selv da pålegge en signatur på vegne av Alice, som vil se ut til å være ekte, siden alle vil bruke en falsk nøkkel for å bekrefte henne.

Den eneste måten å forhindre en slik plage på er å eliminere muligheten for å forfalske offentlige nøkler. Hvis du fikk Alices offentlige nøkkel direkte fra henne, er det ikke noe problem. Men dette kan være vanskelig hvis Alice er tusenvis av mil unna, eller av andre grunner er det umulig å møte henne personlig.

Kanskje Alices offentlige nøkkel kan gi deg din felles venn Henry, som du både stoler på og som vet at han har Alices virkelige nøkkel. Henry kan signere Alices offentlige nøkkel, og dermed gå god for dens integritet. Han må bruke sin egen private nøkkel for å signere.

Denne prosedyren oppretter et signert offentlig nøkkelsertifikat som bekrefter at Alices nøkkel ikke er blitt tuklet med. For at du skal kunne verifisere at Henrys signatur er riktig, må du selvfølgelig vite at du har en gyldig kopi av hans offentlige nøkkel. Kanskje Henry også kan gi Alice en signert kopi av nøkkelen din. Henry vil dermed fungere som en mellommann mellom deg og Alice.

Dette signerte offentlige nøkkelsertifikatet kan lastes opp av Alice eller Henry til BBS, hvorfra du kan kopiere det senere. Siden du er i stand til å bekrefte Henrys signatur med hans offentlige nøkkel, kan du være sikker på at det faktisk er Alices nøkkel. Ingen skurk kan lure deg til å tro at den falske nøkkelen han laget tilhører Alice, siden ingen kan forfalske Henrys signatur.

En svært pålitelig person kan til og med spesialisere seg på mekling mellom brukere ved å signere deres offentlige nøkkelsertifikater. Denne betrodde personen kan betraktes som en "betrodd sertifisør". Enhver offentlig nøkkel signert av en autorisert sertifiseringsinstans kan stoles på i den forstand at den tilhører personen hvis navn den bærer. Alle brukere som ønsker å delta i implementeringen av et slikt distribuert tillitsnettverk må ha en kjent gyldig kopi av den autoriserte sertifisørens nøkkel slik at signaturen kan verifiseres. I noen tilfeller kan den pålitelige sertifiseringsinstansen også støtte nøkkelserveren, slik at nettverksbrukere kan slå opp offentlige nøkler ved å spørre nøkkelserveren, men vedlikeholderen av nøkkelserveren trenger ikke å være sertifiseringspersonen også.

En enkelt autorisert sertifiseringsinstans er spesielt egnet for store, sentralstyrte organisasjoner, myndigheter eller bedrifter. Noen organisasjonsmiljøer bruker klarerte sertifiseringsinstanshierarkier.

For desentraliserte miljøer er det sannsynlig at det er mer hensiktsmessig å opprette en sentralisert pålitelig sertifiseringsinstans for alle brukere til å fungere som mellommenn.

Hvordan løses problemet? sikker oppdatering og overføre nøkler over usikrede telekommunikasjonskanaler? I USA løses det på denne måten:

Asymmetriske offentlige og private nøkler genereres og distribueres sikkert. Den hemmelige asymmetriske nøkkelen overføres til eieren. Den asymmetriske offentlige nøkkelen lagres i en X.500-database og administreres av en sertifiseringsinstans (CA).

Avsenderen må ha en asymmetrisk offentlig nøkkel fra Certificate Authority (CA). Avlytting av ukrypterte forespørsler om denne offentlige nøkkelen er en vanlig form for angrep. Det kan være et helt system med sertifikater som validerer autentisiteten til CAs offentlige nøkkel. X.509-standarden beskriver en rekke metoder for brukere for å få tak i offentlige CA-nøkler, men ingen av dem kan fullstendig beskytte mot forfalskning av offentlige CA-nøkler, noe som tydelig beviser at det ikke finnes et slikt system som kan garantere ektheten til den offentlige CA-nøkkelen. .

Avsenderen ber CA om mottakerens asymmetriske offentlige nøkkel. Denne prosessen er sårbar for et angrep der en angriper forstyrrer kommunikasjonen mellom avsender og mottaker og kan endre trafikken mellom dem. Derfor er mottakerens offentlige asymmetriske nøkkel "signert" av CA. Dette betyr at CA brukte sin asymmetriske private nøkkel for å kryptere mottakerens asymmetriske offentlige nøkkel. Bare CA kjenner til CAs asymmetriske private nøkkel, så det er en garanti for at mottakerens offentlige asymmetriske nøkkel er fra CA.

Når mottakeren er mottatt, dekrypteres mottakerens asymmetriske offentlige nøkkel ved å bruke CAs asymmetriske offentlige nøkkel og den asymmetriske krypterings-/dekrypteringsalgoritmen.

Dermed kan to personer som ikke tidligere har vært i korrespondanse og ikke har felles krypteringsnøkkel føre hemmelig korrespondanse.

For øyeblikket er eksport (og import) av digitale sikkerhetsprodukter forbudt ved lov, så hvert land har sin egen implementering av algoritmene. Digital beskyttelse implementeres enten i programvare eller maskinvare (i form av utvidelseskort). Hvis e-posten er utstyrt med en digital sikkerhetspakke, kan du signere og deretter kryptere noen eller alle deler av brevet, sette signaturen din på et dokument som allerede er signert av andre, kontrollere signaturen osv.

Hvis, mer nylig, kryptografi var individets privilegium statlige strukturer I dag er nesten alle enige om at både organisasjoner og enkeltpersoner føler behov for tilgang til krypteringsteknologier. Ettersom Internett spres, bruker flere og flere datamaskiner og telefonnettverk, både personlig og i forretningsformål, og kryptering er grunnlaget for å bygge en mur av hemmelighold rundt denne kommunikasjonen.

5. Sertifisering kryptografiske midler.

Kryptografisk sikkerhet har eksistert lenge, men i i det siste av en rekke grunner er ordene "lisens", "sertifikat", State Technical Commission, FAPSI på alles lepper. Samtidig kan få mennesker tydelig forklare hva som kan gjøres for å beskytte informasjonen deres, og for hva du kan holdes ansvarlig for.

Sertifisering - utstedelse av et dokument til en produsent av informasjonssikkerhetsprodukter som bekrefter at programvarepakken utviklet av selskapet oppfyller de høye markedskravene (dvs. det er slett ikke lett å åpne et kryptert dokument), og derfor programvare kan selges.

For å frigi sertifiserte produkter, må et firma få en lisens for slike aktiviteter. Lisenser og sertifikater innen kryptografiske midler utstedes av FAPSI og Statens tekniske kommisjon. Det er bedre å kjøpe kryptografiske verktøy bare sertifisert fra firmaer som er lisensiert for denne typen aktivitet. På det lovgivningsmessige området er dekretet fra presidenten for den russiske føderasjonen nummer 334 nå i kraft, som forplikter statlige institusjoner til å bruke bare sertifiserte krypteringsverktøy og loven om informasjon som sier at alle krypteringsmidler kan brukes for å beskytte uklassifisert og uleselig informasjon ( noen av sine egne).

Når det gjelder bruken av kryptografiske systemer av banker, er det fullstendig anarki. Som faktisk er ganske bra. Faktum er at det for tiden ikke er noen krav til kommersielle banker fra sentralbanken i Russland og andre statlige myndigheter for obligatorisk bruk av krypteringsverktøy, metoder for å beskytte informasjon på dette området er ikke regulert.

Forretningsbankers obligatoriske bruk av sertifiserte midler for elektronisk utveksling med kunder er heller ikke fastslått.

Samtidig er det lovfestet at brukere, distributører og utviklere er forpliktet til å sertifisere alle anvendte informasjonsbeskyttelsesverktøy i de aktuelle offentlige etater. Dekret nummer 334 lyder: "... Forby juridiske og juridiske aktiviteter enkeltpersoner knyttet til utvikling, implementering og utnyttelse krypteringsverktøy uten lisenser utstedt av FAPSI ”. Riktignok er ikke dette dekretet i kraft, men så langt har ingen kansellert det. Det vil si at hvis du var så uheldig å skaffe deg krypteringsverktøy sertifisert av FAPSI, må du få en lisens fra FAPSI for å bruke dem. Den samme lisensen bør følgelig oppnås av de du utveksler krypterte meldinger med.

I henhold til praksisen med å anvende lovgivningen, er attestering og sertifisering av brukere obligatorisk bare for offentlige etater og strukturer som arbeider med statshemmeligheter. For kommersielle strukturer er den russiske føderasjonens lov om banker og bankaktiviteter mer egnet. Risikoen forbundet med bruk av ikke-sertifisert informasjonssystemer og midlene for deres støtte, ligger hos eieren (eieren) av disse systemene og midlene. Bruken av sertifiserte informasjonssikkerhetsverktøy er en forutsetning Ved å revidere kontroversielle saker med rettskjennelsen.

Bankens ansvar overfor kunden for informasjonslekkasje i kommunikasjonskanaler forblir uavhengig av midler og metoder for informasjonsbeskyttelse. Bruk av sertifisert verktøy gjør det i prinsippet mulig å legge ansvaret for lekkasje og tyveri av informasjon til sertifiseringsmyndighetene.

Dermed har kommersielle banker i forhold til kunder rett til å bruke ikke-sertifiserte FAPSI elektroniske utvekslingssystemer (dokumentflyt), forutsatt at slike systemer ikke offisielt sørger for krypteringsmidler. Juridisk ansvar oppstår kun når krypteringsverktøy blir gjenstand for forretningsaktiviteter. For at verken banken eller kundene skal lure seg selv med å lisensiere bruken av krypteringsverktøy, er det i Bank-Client-systemene nødvendig å erstatte ordene "kryptering" med "kryptering" i alle kontrakter og fortsette å leve i fred. Loven om at en søyle er umulig å hoppe over, men den er lett å komme seg rundt.

Situasjonen med elektronisk digital signatur (EDS) er noe enklere. Lov om elektronisk digital signatur sier at en elektronisk digital signatur i et elektronisk dokument tilsvarer en håndskrevet signatur i et papirdokument, i tilfeller hvor etablert ved lov og andre forskriftsmessige rettsakter fra den russiske føderasjonen eller en avtale mellom partene (det vil si at en avtale eller en ordinær avtale signert og sertifisert med et mastikkforsegling om anerkjennelse av EDS av partene er nødvendig). I tillegg til kryptering er en forutsetning for å vurdere kontroversielle spørsmål i retten bruk av sertifiserte EDS-verktøy.

Den samme loven legger stor vekt på sertifiseringssentre.

Bekreftelsessenter:

Genererer signaturnøkkelsertifikater;

Oppretter nøkler til elektroniske digitale signaturer på forespørsel fra deltakere i informasjonssystemet med en garanti for å holde den private nøkkelen til den elektroniske digitale signaturen hemmelig;

Suspenderer og fornyer signaturnøkkelsertifikatene, samt tilbakekaller dem;

Opprettholder et register over signaturnøkkelsertifikater, sikrer relevansen og muligheten for fri tilgang til det for informasjonssystemdeltakere;

Sjekker det unike med de offentlige nøklene til elektroniske digitale signaturer i registeret for signaturnøkkelsertifikater og arkivet til sertifiseringsmyndigheten;

Utsteder signaturnøkkelsertifikater i form av papirdokumenter og (eller) i form av elektroniske dokumenter med informasjon om deres gyldighet;

På forespørsler fra brukere av signaturnøkkelsertifikater, bekrefter den ektheten til en elektronisk digital signatur i et elektronisk dokument i forhold til signaturnøkkelsertifikatene som er utstedt til dem.

Så her, i alle avtaler om anerkjennelse av EDS som parter i avtalen, bør ordene "Elektronisk digital signatur" erstattes med "Digital signatur".

For å advare mot å bruke krypteringsverktøyene som er innebygd i databaser, er det bare ett interessant faktum. Det er et firma som heter AccessData, i den sørlige delen av USA ved å ringe 1-800-658-5199. Hun selger for bare $ 185 en programvarepakke for personlige datamaskiner som bryter innebygde krypteringsskjemaer WordPerfect, Word, Lotus 1-2-3, Excel, Quattro Pro, Paradox og Oracle. Krypteringsprogramvare er som medisin. En pille hentet fra en sjarlatan ser vanligvis nøyaktig ut som en helbredende potion.

6. Videreutvikling av kryptografiske verktøy.

Så hva er neste? Skrive kode som er kompleks nok til at det ikke er intensivt dataangrep kunne ikke knekke det, er grensen for de jordiske og himmelske begjærene til kryptografer rundt om i verden. Dette målet oppnås ved å legge til nye kodebiter til den "hemmelige nøkkelen", som dobler sikkerheten hver gang. " Pålitelig beskyttelse"I dag betyr bare at det vil ta en innbruddstyv for lang tid å plukke opp en låseanordning, — ingenting annet er utelukket. Og alt ville være bra, men fremgangen står ikke stille: Men utviklerne fra Jeg VM-er mener de har funnet en interessant løsning på problemet med sterk kryptobeskyttelse. De brukte kvantefysikk for å gi en helt sikker metode for nøkkeloverføring.

Kvantefysikk er kjent for å være et mørkt og svært avansert felt som omhandler egenskapene til subatomære strukturer. Utnyttelse av fremskritt har gjort det mulig for utviklere å legge til et nytt lag med sikkerhet til standard offentlig nøkkelkrypteringsteknologi ved å oversette nøkkelbiter til "kvantebiter", kvantbiter eller "aler". Tilstandene og endringene i tilstandene til kvantebiter er beskrevet av svært komplekse matematiske formler. Dette påvirker kvaliteten på krypteringen på den mest direkte måten - antallet mulige alternativerøker eksponentielt. En bit i en standard datamaskin er representert med ett siffer — null eller en. Ikke slik med quantumbit. Sistnevnte, representert av en partikkel eller et foton, kan eksistere samtidig både som null og som en enhet. For å utføre kvantekryptering blir en bit konvertert til et foton, overført gjennom en fiberoptisk kabel til mottakerens datamaskin, deretter oversatt tilbake til en standardbit og lest. Den viktigste subtiliteten er at, i motsetning til en standardbit, kan en kvantebit verken kopieres, leses eller ses av en tredjepart uten å endre tilstanden og dermed gjøre koden ubrukelig. Hvis en utenforstående observatør forstyrrer systemet, endres tilstanden umiddelbart, og avsenderen innser at noen prøvde å se meldingen.

Og jeg VM, og NT, og Los Alamos National Labs, alle har nå tatt fatt på utviklingen av metoder som gjør det mulig å bruke kvantefysikkens prestasjoner til overføring av krypterte meldinger i systemer for rom- og militærbruk. V jeg VM jobber med å lage lignende systemer for banker og e-handelsinstitusjoner.

Men tingenes tilstand med kvantekryptering inspirerer ikke alle. Det vil si at det hovedsakelig inspirerer teoretikere. "For å være ærlig, er kvantefysikk for øyeblikket utenfor nivået av forståelse folk flest, — krypteringseksperter sier, — derfor er det vanskelig å forestille seg at noen vil skynde seg å produsere nødvendig utstyr akkurat nå. Dette vil i hvert fall ikke skje i årene som kommer." Noen spesialister er generelt sikre på at problemet med konfidensiell informasjon fra punkt A til punkt B er løst i dag. De er sikre på at det i overskuelig fremtid ikke er behov for kvantekrypteringsteknologier ennå, og teknologien RSA i stand til å generere nøkler opp til 2048 bit, er fortsatt ganske pålitelig. Skjønt i januar 1998 Electronic Frontier Foundation og dechiffrert for 22,5 timers melding kodet i henhold til 56-biters standard DES (for øyeblikket den maksimale krypteringsteknologistandarden som er tillatt for eksport fra USA), anser eksperter denne saken som ikke veiledende. "Det er én ting å knekke en 56-bits standard,- de sier, - Det er omtrent en milliard eller til og med en billion ganger vanskeligere å knekke en melding med en 128-bits nøkkel. Vi tror ikke at det i løpet av vår levetid vil være en datamaskin som kan lage noe slikt."

Til tross for slike spådommer, tvinger den raske utviklingen av teknologier generelt og krypteringsteknologier, samt teknologier for å bryte krypterte koder spesielt. I VM og Los Alamos National Labs gå videre langs veien for å skape nye krypteringsteknologier, mot kvantesiffer. For å knekke kvantekoden, må crackeren først bryte fysikkens lover og først deretter velge de nødvendige tallene. Selv om maskinvaren som kreves for å implementere kvantekryptering fortsatt er et sted i science fiction-området. En fungerende laboratorieversjon er allerede tilgjengelig. For tiden jobbes det med å ta denne teknologien ut av laboratoriet og sette den på industrielle skinner.

I tillegg har anvendelsesområdet for kryptografiske midler for tiden utvidet seg alvorlig på grunn av deres bruk i nettverk VPN ... I den moderne dataverdenen er elektronisk i ferd med å bli den viktigste måten å transportere informasjon på. Dokumenter, informasjon fra databaser, tall Kredittkort briller og filer med forskjellig innhold. Alt dette har funnet sin plass i ny teknologi nettverk i nettverk VPN (Virtual Private Network ). Denne teknologien gjør det mulig å lage langdistanse globale bedriftsnettverk der i stedet for egne kommunikasjonslinjer brukes Internett, informasjon som overføres i kryptert form. Dermed oppnås sikkerheten til informasjon som overføres gjennom ubeskyttede kommunikasjonslinjer. Nettverk VPN har mest ulike applikasjoner... De kan koble et eksternt kontor til hovedkontoret, koble sammen flere bedriftsnettverk... Gi ansatte eller pålitelige kunder i selskapet tilgang til konfidensiell informasjon i selskapets nettverk.


Elektronisk signatur

Kryptert av hemmelighet 1

Tekst

Hemmelig nøkkel 1

Offentlig nøkkel 1

Datamaskin "To"

Datamaskin "One"

Offentlig nøkkel 2

Hemmelig symmetrisk

Sesjonsnøkkel

Tekst og signatur er kryptert med en symmetrisk sesjonsnøkkel

Krypterte data

Kryptering av en symmetrisk øktnøkkel med en offentlig nøkkel mottaker

Tekst elektronisk

signatur

Kryptert

Hemmelighet 1

Alt er kryptert symmetrisk

øktnøkkel

Tilskrevet chifferteksten

Kryptert øktnøkkel

Krypterte data

Ris. 4.1.


Og også andre verk som kan interessere deg

51125. Spektralanalyse av signaler for Fourier 1,43 MB
Faktisk er spektrene til alle diskrete signaler i periodiske, og amplitudespektrene sammenkoblede funksjoner av frekvens. Ved hjelp av MatLAB er det mulig å lage to halvdeler av én periode av spekteret, og ved å speilkopiere én av samme frekvens til Nyquist. Gjennom prisen på alle grafer av amplitudespekteret er det nok, og det er nødvendig å gjøre mindre enn halvparten av perioden av spekteret, noen av dem vil øke beskrivelsen av amplitudespekteret
51126. Utvikle et tekstredigeringsprogram ved å bruke File I/O 54,26 KB
Jobboppgave: Utvikle et tekstredigeringsprogram ved å bruke fil I/O. Programkode (fil Form1.cs) ...
51127. Undersøkelse av ACS-nøyaktighet i steady state 77,99 KB
Feilgrafer Forsterkerkobling Pi-kontroller Differensialkobling Beregninger av steady-state feilverdier: Forsterkerkobling Pi-kontroller Differensialkobling Utgang under laboratoriearbeid Påvirkningen av graden av astatisme på steady-state feilen under den trinnvise handlingen ble undersøkt.
51128. Filtrering av signaler 889,81 KB
Metaroboter: få et raskt tips for å designe digitale filtre, spesifisere spesifikasjonene til filtre, avhengig av myndighetene til signalene, for eksempel behovet for filtrering; få en rask start for å realisere diskrete filtreringssignaler midt i MatLAB.
51130. Wavelet analyse av signaler 914,01 KB
Metaroboter: for å se avbildningen av signalkreftene i wavelet-skalagrammet; få en rask start for å realisere wavelet-signaler midt i MatLAB
51131. SYNTESE AV KONTROLLAUTOMATIKKEN I EN VILJÆKLIG BASE 126,01 KB
Problemformulering: Sett sammen og juster kretsen til kontrollmaskinen ved å tilføre inngangssignaler xj fra vipperegisteret. Bruk forberedte tester, vis riktig funksjon av kretsen ved å levere synkroniseringssignaler fra enkeltpulsgeneratoren og analysere maskinens tilstand ved hjelp av indikator lamper Kontroller driften av kretsen i dynamisk modus, fjern tidsdiagrammer for utgangssignalene til kontrollmaskinen ... Type Moore-automatisk type triggere D.
51132. Korrelasjonssignalanalyse. Styrken til signaler fra resultatene av korrelasjonsanalysen 199,85 KB
Metaroboter: å spore kraften til signaler fra resultatene av korrelasjonsanalysen; få et raskt tips for korrelasjonsanalyse av signaler midt i MatLAB. Robotbestilling ...
51133. SYNTESE AV KONTROLLAUTOMATIKKEN BASERT PÅ SIGNALDISTRIBUTØRER (PC) 129,3 KB
Formålet med arbeidet: å studere teknikken for å implementere kontrollmaskiner med rigid logikk basert på signalfordelere. Uttalelse av problemet: å sette sammen og feilsøke signalfordelerkretsen; ...

For å utveksle meldinger og skjule innhold fra tredjeparter, brukes kryptering. Den brukes der det er nødvendig forhøyet nivå beskyttelse. Det er to krypteringsskjemaer: symmetrisk og asymmetrisk.

Hva er kryptering

Kryptering vil være nyttig når du trenger å skjule noe informasjon fra utenforstående og gi hemmelige data til autoriserte brukere.

Et trekk ved denne typen dataoverføring er bruken av en nøkkel.

Det er tre sikkerhetstilstander:

  • skjule informasjon fra fremmede;
  • forebygging av endringer;
  • opprettholde integriteten til informasjonen;
  • identifikasjon av avsender.

For å lese informasjon kreves det i tillegg til nøkkelen en dekoder. Det er dette som gjør det umulig for nettkriminelle å få tak i data, fordi ved å fange opp dataene, men ikke ha nøkkel, er det umulig å lese dem.

Det finnes to typer kryptering: symmetrisk og asymmetrisk.

Hovedformålet med kryptering er å lagre informasjon. Dette lar deg jobbe med noen data fra upålitelige kilder, overføre meldinger over usikre kanaler. Informasjon sendes slik:

  • avsenderen krypterer dataene;
  • mottakeren dekrypterer.

Hver transformasjon implementeres ved hjelp av algoritmer som bruker nøkler til å løse. Symmetriske og asymmetriske krypteringsmetoder er kryptografisk sterke.

Krypto motstand

Symmetriske og asymmetriske krypteringssystemer har en egenskap som er ansvarlig for vanskeligheten med å få uautorisert tilgang.

Det er 2 hovedtyper av kryptografisk styrke til et krypteringssystem.

  1. Et absolutt motstandsdyktig system kan ikke avsløres, selv med uendelig store dataressurser. Den kjennetegnes ved at det genereres en egen nøkkel for hver melding. Lengden er lik eller større enn lengden på meldingen.
  2. Tilstrekkelig sterke systemer brukes i et sivilt kryptografisk system. En slik algoritme er vanskelig å tyde, men med tilgjengeligheten av passende ressurser blir det mulig.

Sammenligning av den kryptografiske styrken til noen krypteringssystemer

Maksimal størrelse RSA-nøkkel - 4096 biter.

Den brukes til kryptering og signatur. Den kryptografiske styrken kan beskrives som 2.7.1028 for en 1300 bits nøkkel. Ordningen brukes i mange standarder, RSA-krypteringsprinsippet er en av de første asymmetriske algoritmene.

ElGamal-skjemanøkkelstørrelsen er RSA - 4096 bits. Den brukes til både kryptering og digitale signaturer. Den kryptografiske styrken til dette systemet skiller seg ikke fra RSA når samme størrelse nøkkel.

DSA-metoden bruker en mye mindre nøkkel, 1024 biter. Den brukes utelukkende til digitale signaturer.

Symmetrisk og asymmetrisk kryptering

Disse to typene kryptering er forskjellige i antall nøkler og nivået av motstand mot sprekker.

Hvis én nøkkel brukes til koding og dekoding, er denne krypteringen symmetrisk. Asymmetrisk kryptering innebærer bruk av én nøkkel for hver algoritme.

  1. En offentlig nøkkel brukes til å kryptere en eller annen kode, som er en spesifikk melding. Nøkkelen er kjent for begge parter, den sendes over en ubeskyttet kanal, og kan avlyttes. Den viktigste oppgaven med å lagre informasjon er å beskytte nøkkelen mot avlytting.
  2. Privat brukes til dekryptering. Kun kjent på den ene siden. Den kan ikke avlyttes, siden den er med samme samtalepartner hele tiden.

Formålet med kryptering avgjør hvordan konfidensialitet opprettholdes. En av de første var symmetrisk, asymmetrisk kryptering, oppfunnet senere for å gi større sikkerhet.

Funksjoner av symmetrisk kryptering

Det symmetriske beskyttelsessystemet har følgende fordeler.


Ulempene inkluderer følgende:

  • kompleksiteten til nøkkelstyring i et stort nettverk;
  • kompleksiteten til nøkkelutvekslingen;
  • behovet for å finne en pålitelig kanal for å overføre nøkkelen til partene;
  • manglende evne til å bruke for digitale signaturer, sertifikater.

For å kompensere for manglene, brukes et kombinert opplegg der nøkkelen som brukes til dekryptering, overføres ved hjelp av asymmetrisk kryptering. Det overføres ved hjelp av symmetrisk kryptering.

Funksjoner av asymmetrisk kryptering

Å bruke et offentlig-privat nøkkelpar kan brukes som:

  • uavhengige midler for informasjonsbeskyttelse;
  • nøkkeldistribusjonsanlegg;
  • midler for brukerautentisering.

Har følgende fordeler:

  • lagring av den hemmelige nøkkelen på et trygt sted, i stedet for som den åpne overføres over den åpne kanalen;
  • dekrypteringsnøkkelen er kjent for bare én part;
  • i et stort asymmetrisk system, bruk færre taster i motsetning til en symmetrisk.

Det er vanskelig å gjøre noen endringer i slike algoritmer. Et system som dette har lange taster. Hvis den symmetriske nøkkelen er 128 biter, er RSA-nøkkelen 2304 biter. På grunn av dette lider dekrypteringshastigheten - den er 2-3 ganger langsommere. Dekryptering krever store dataressurser.

Det er mange eksempler på symmetriske og asymmetriske krypteringssystemer.

Symmetrisk kryptering – hvordan ser det ut?

Et eksempel på symmetrisk kryptering og implementeringsskjema er nedenfor.

  1. Det er to samtalepartnere som planlegger å utveksle konfidensiell informasjon.
  2. Den første samtalepartneren genererer en nøkkel d, krypteringsalgoritmer E og dekryptering D. Deretter sender han denne informasjonen til den andre samtalepartneren.
  3. Meldingen dekrypteres med nøkkel d.

Den største ulempen er manglende evne til å fastslå ektheten til teksten. Hvis nøkkelen blir fanget opp, vil angriperen dekryptere den hemmelige informasjonen.

Det finnes klassiske metoder.

  1. Enkel og dobbel permutasjon.
  2. Magisk firkant.
  3. Enkel permutasjon.

Den første metoden er en av de enkleste og bruker ikke en nøkkel i skjemaet. Avsender og mottaker blir enige om en bestemt nøkkel, representert i form av en tabellstørrelse. Den overførte meldingen skrives til kolonnene i tabellen, men leses linje for linje. Når mottakeren kjenner størrelsen på tabellen, dekrypterer meldingen.

For å gi mer hemmelighold brukes en dobbel permutasjon. Dermed skjer krypteringen av den tidligere krypterte teksten. For dette må tabeller variere i antall rader og kolonner. De er fylt vertikalt, horisontalt, i en slange, i en spiral. Denne metoden styrker ikke krypteringen, men krakkingsprosessen tar lengre tid.

Den "magiske firkanten" er en mer kompleks struktur, som er en matrise. Naturlige tall er skrevet inn i cellene på en slik måte at summen av tallene for hver kolonne, rad, diagonal er den samme. Hvert tall tilsvarer en bokstav i meldingen. Den resulterende teksten skrives ut til en streng ved å sammenligne tall og symboler.

Eksempler på asymmetrisk kryptering

V i dette tilfellet den offentlige nøkkelen sendes over en åpen kanal og kan teoretisk avskjæres av angripere.

I motsetning til symmetriske krypteringsnøkler, er asymmetriske krypteringsnøkler annerledes. Den offentlige nøkkelen brukes til kryptering, den private nøkkelen brukes til å dekryptere meldingen. Bruk av to nøkler løser avskjæringsproblemet som var i den symmetriske metoden. Den implementeres som følger.

  1. Den første samtalepartneren velger krypterings- og dekrypteringsalgoritmer, et par nøkler. Den offentlige nøkkelen sendes til den andre samtalepartneren.
  2. Den andre samtalepartneren krypterer informasjonen ved å bruke den mottatte nøkkelen. Sender informasjon til den første chattepartneren, som dekrypterer meldingen ved hjelp av den private nøkkelen.

Det er slike grunnleggende metoder for asynkron kryptering.

  1. El Gamal-chiffer.

RSA

RSA er den første kryptografiske algoritmen som brukes for både kryptering og digital signatur.

Det er beskrevet som følger.

  1. To primtall er valgt, for eksempel 3 og 7.
  2. Modulen n beregnes - produktet av to tall. Det viser seg 21.
  3. Euler-funksjonen φ = (p-1) × (q-1) = 2 × 6 = 12 beregnes.
  4. Ethvert primtall e mindre enn φ og primtall med φ beregnes. Tilgjengelige alternativer: 5, 7, 11.

Et tallpar e, n (5, 21) er en offentlig nøkkel. Nå er tallene d og n for den private nøkkelen beregnet. Tallet d tilfredsstiller betingelsen (d × e) mod φ = 1 og er lik 17. Som et resultat er det andre paret med tall 17 og 21 en privat nøkkel. Kryptering utføres som følger: meldingen heves til potensen e, resten av divisjonen med n tas, og resultatet må være mindre enn n. Det viser seg 10 - det vil være kodede data. For dekoding heves e til potensen d, og resten av divisjonen med n beregnes.

DSA

DSA (i motsetning til RSA) brukes kun til digitale signaturer, ikke kryptering. Den angitte signaturen kan verifiseres offentlig. Det er to algoritmer for signaturgenerering og verifisering. Det er hash-meldingen som er kryptert, som representerer teksten i digital form... Derfor velges en kompleks hashfunksjon for å unngå kollisjoner. Å bygge en digital signatur består av følgende trinn.

  1. Valg kryptografisk hash-funksjon H (x).
  2. Bitheten til et primtall q må være lik verdien av hashfunksjonen H (x).
  3. Valg av et slikt primtall p slik at p-1 er delelig med q uten rest.
  4. Beregner tallet g = h (p-1) / q mod p. h må være et vilkårlig tall i området 1 til p-1.
  5. Et tilfeldig tall k velges fra 0 til q.
  6. R = (g k mod p) mod q beregnes.
  7. Da er s = k-1 (H (m) + xr)) mod q.
  8. Hvis r = 0 eller s = 0, velges et annet tall k.

El Gamal-ordningen

ElGamal-kryptering brukes til digitale signaturer. Det er en fortsettelse av Diffie-Hellman-algoritmen.

Når du arbeider med denne ordningen, er det viktig å vurdere følgende funksjon. El Gamal-kryptering er ikke en digital signaturalgoritme med samme navn. Når den er kryptert, konverteres teksten til et chiffer, som er 2 ganger lengre enn den opprinnelige meldingen.

Nøkler genereres som følger.

  1. Et tilfeldig primtall p er valgt.
  2. Tallet g må være den primitive roten av p.
  3. Tallet x må være større enn 1 og mindre enn p-1. Dette vil være den private nøkkelen.
  4. Den offentlige nøkkelen y beregnes deretter ved å bruke formelen g ^ x mod p.

Ved kryptering av tekst er M valgt systemnøkkel K. Den er større enn én og mindre enn p-1. Deretter beregnes tallene a og b, som er chiffertekst, a = g ^ k mod p og b = y ^ k M mod p.

  • Utvikling av nettsider,
  • Algoritmer
    • Oversettelse

    Hvordan fungerer HTTPS uansett? Dette er et spørsmål jeg har slitt med i flere dager i arbeidsutkastet mitt.

    Som webutvikler innså jeg at bruk av HTTPS for å beskytte brukerdata er veldig, veldig god idé, men jeg hadde aldri en krystallklar forståelse av hvordan HTTPS faktisk fungerer.

    Hvordan er data beskyttet? Hvordan klient og server kan installeres sikker tilkobling hvis noen allerede hører på kanalen deres? Hva er et sikkerhetssertifikat og hvorfor skal jeg betale noen for å få det?

    Rørledning

    Før vi dykker ned i hvordan dette fungerer, la oss kort snakke om hvorfor det er så viktig å sikre Internett-tilkoblinger og hva HTTPS beskytter mot.

    Når en nettleser sender en forespørsel til favorittnettstedet ditt, må den forespørselen gå gjennom mange ulike nettverk, som potensielt kan brukes til å avlytte eller tukle med en etablert forbindelse.

    Fra din egen datamaskin til andre datamaskiner på ditt lokale nettverk, gjennom rutere og svitsjer, gjennom din ISP og gjennom mange andre mellomleverandører – et stort antall organisasjoner videresender dataene dine. Hvis en angriper befinner seg i minst én av dem, har han mulighet til å se hvilke data som overføres.

    Vanligvis sendes forespørsler over vanlig HTTP, der både klientens forespørsel og serverens svar sendes i klartekst. Og det er mange overbevisende grunner til at HTTP ikke bruker kryptering som standard:

    Det krever mer datakraft
    Mer data blir overført
    Kan ikke bruke caching

    Men i noen tilfeller, når kommunikasjonskanalen utelukkende overføres viktig informasjon(som passord eller kredittkortinformasjon), må det iverksettes ytterligere tiltak for å hindre avlytting av slike tilkoblinger.

    Transport Layer Security (TLS)

    Nå skal vi dykke inn i kryptografiens verden, men vi trenger ikke noen spesiell erfaring for dette - vi vil bare vurdere de mest generelle spørsmålene. Så, kryptografi lar deg beskytte forbindelsen fra potensielle angripere som ønsker å forstyrre forbindelsen eller bare lytte til den.

    TLS, etterfølgeren til SSL, er den protokollen som oftest brukes for å gi sikre HTTP-tilkoblinger (kalt HTTPS). TLS er ett lag under HTTP i OSI-modellen. Forklarende på fingrene betyr dette at i prosessen med å utføre en forespørsel, skjer først alle "tingene" knyttet til TLS-tilkoblingen og først deretter alt relatert til HTTP-tilkoblingen.

    TLS er et hybrid kryptografisk system. Dette betyr at den bruker flere kryptografiske tilnærminger, som vi vil diskutere videre:

    1) Asymmetrisk kryptering (et offentlig nøkkelkryptosystem) for å generere en delt hemmelighet og autentisering (det vil si å bekrefte at du er den du sier du er).
    2) Symmetrisk kryptering, ved å bruke en hemmelig nøkkel for å kryptere forespørsler og svar ytterligere.

    Offentlig nøkkel kryptosystem

    Et offentlig nøkkel kryptosystem er en type kryptografisk system der hver part har både en offentlig og en privat nøkkel matematisk relatert. Den offentlige nøkkelen brukes til å kryptere meldingsteksten på tull, mens den private nøkkelen brukes til å dekryptere og hente den originale teksten.

    Siden en melding ble kryptert med den offentlige nøkkelen, kan den bare dekrypteres med den tilsvarende private nøkkelen. Ingen av tastene kan tjene begge funksjonene. Den offentlige nøkkelen publiseres i det offentlige uten risiko for å utsette systemet for trusler, men den private nøkkelen skal ikke gis videre til noen som ikke har rett til å dekryptere dataene. Så vi har nøkler - offentlige og private. En av de mest imponerende fordelene med asymmetrisk kryptering er at to parter, tidligere helt uvitende om hverandre, kan etablere en sikker forbindelse, i utgangspunktet utveksle data over en åpen, usikker forbindelse.
    Klienten og serveren bruker sine egne private nøkler (hver sin egen) og den publiserte offentlige nøkkelen for å generere en delt hemmelighet for økten.

    Dette betyr at hvis noen er mellom klienten og serveren og observerer forbindelsen, vil han fortsatt ikke kunne finne ut verken klientens private nøkkel, eller serverens private nøkkel, eller øktens hemmelige nøkkel.

    Hvordan er dette mulig? Matte!

    Diffie-Hellman-algoritmen

    En av de vanligste tilnærmingene er Diffie-Hellman (DH) nøkkelutvekslingsalgoritme. Denne algoritmen lar klienten og serveren bli enige om en delt hemmelighet uten å måtte overføre hemmeligheten over forbindelsen. Dermed vil ikke angripere som lytter til kanalen kunne bestemme den hemmelige nøkkelen, selv om de avskjærer alle datapakker uten unntak.

    Når DH-nøkkelutvekslingen har funnet sted, kan den resulterende hemmelige nøkkelen brukes til å kryptere ytterligere tilkoblinger i denne økten ved å bruke mye enklere symmetrisk kryptering.

    Litt matte...

    De matematiske funksjonene som ligger til grunn for denne algoritmen har en viktig særpreg- de er relativt enkle å beregne i retning fremover, men praktisk talt ikke beregnet i motsatt retning. Det er her veldig store primtal spiller inn.

    La Alice og Bob være to parter som utveksler nøkler ved hjelp av DH-algoritmen. Først er de enige om en eller annen grunn rot(vanligvis et lite tall som 2,3 eller 5) og et veldig stort primtall prime(mer enn 300 sifre). Begge verdiene sendes i klartekst over kommunikasjonskanalen, uten trussel om å kompromittere forbindelsen.

    Husk at både Alice og Bob har sine egne private nøkler (mer enn 100 sifre), som aldri overføres over kommunikasjonskanaler.

    Blandingen overføres over kommunikasjonskanalen blanding avledet fra private nøkler så vel som verdier prime og rot.

    Og dermed:
    Alices blanding = (root ^ Alice's Secret) % primtall
    Bobs blanding = (root ^ Bob's Secret) % primtall
    hvor % er resten av divisjonen

    Dermed lager Alice blandingen sin basert på de godkjente verdiene til konstantene ( rot og prime), Bob gjør det samme. En gang fikk de verdier blanding hverandre, utfører de ytterligere matematiske operasjoner for å få øktens private nøkkel. Nemlig:

    Alice sine beregninger
    (Bobs blanding ^ Alice's Secret) % prime

    Bobs beregninger
    (Alices blanding ^ Bob's Secret) % prime

    Resultatet av disse operasjonene er det samme nummeret for både Alice og Bob, og dette nummeret blir den private nøkkelen for denne økten... Vær oppmerksom på at ingen av partene skulle sende sin private nøkkel over kommunikasjonskanalen, og den mottatte hemmelige nøkkelen ble heller ikke overført over en åpen forbindelse. Fabelaktig!

    For de som er mindre matematisk kunnskapsrike, gir Wikipedia et utmerket bilde som forklarer denne prosessen ved å bruke eksempelet på blanding av farger:

    Legg merke til hvordan den opprinnelige fargen (gul) til slutt blir til den samme "blandede" fargen for både Bob og Alice. Det eneste som overføres over den åpne kommunikasjonskanalen er halvblandede farger, faktisk meningsløse for alle som lytter til kommunikasjonskanalen.

    Symmetrisk kryptering

    Utveksling av nøkler skjer kun én gang per økt, under forbindelsesetablering. Når partene allerede har blitt enige om den hemmelige nøkkelen, klient-tjener interaksjon skjer ved bruk av symmetrisk kryptering, som er mye mer effektivt for overføring av informasjon, siden ingen ekstra bekreftelsesoverhead er nødvendig.

    Ved å bruke den hemmelige nøkkelen som er oppnådd tidligere, i tillegg til å bli enige om krypteringsmodusen, kan klienten og serveren kommunisere sikkert ved å kryptere og dekryptere meldinger mottatt fra hverandre ved hjelp av den hemmelige nøkkelen. En angriper som kobler seg til kanalen vil bare se "søppel" gå frem og tilbake over nettverket.

    Godkjenning

    Diffie-Hellman-algoritmen lar to parter få en privat hemmelig nøkkel. Men hvordan kan begge parter være sikre på at de virkelig snakker med hverandre? Vi har ikke snakket om autentisering ennå.

    Hva om jeg ringer vennen min, vi vil utføre DH-nøkkelutveksling, men plutselig viser det seg at samtalen min ble avlyttet og faktisk kommuniserte med noen andre?! Jeg vil fortsatt kunne kommunisere trygt med denne personen – ingen andre vil kunne høre på oss – men det vil slett ikke være hvem jeg tror jeg kommuniserer med. Det er ikke for sikkert!

    For å løse autentiseringsproblemet trenger vi en offentlig nøkkelinfrastruktur for å sikre at forsøkspersoner er den de sier de er. Denne infrastrukturen er bygget for å opprette, administrere, distribuere og tilbakekalle digitale sertifikater. Sertifikater er de irriterende tingene du må betale for for å få nettstedet ditt til å kjøre over HTTPS.

    Men, faktisk, hva er dette sertifikatet, og hvordan gir det oss sikkerhet?

    Sertifikater

    I en grov tilnærming er et digitalt sertifikat en fil som bruker en elektronisk digital signatur (mer om dette om et minutt) og knytter en datamaskins offentlige (offentlige) nøkkel til dens eierskap. En digital signatur på et sertifikat betyr at noen bekrefter at en gitt offentlig nøkkel tilhører en bestemt person eller organisasjon.

    I hovedsak binder sertifikater domenenavn med en bestemt offentlig nøkkel. Dette forhindrer en angriper fra å gi sine offentlig nøkkel, utgir seg for å være serveren som klienten har tilgang til.

    I telefoneksemplet ovenfor kan en hacker prøve å vise meg den offentlige nøkkelen sin som utgir seg for å være min venn - men signaturen på sertifikatet hans vil ikke tilhøre noen jeg stoler på.

    For at et sertifikat skal være klarert av en nettleser, må det være signert av en akkreditert sertifiseringsinstans (sertifikatmyndighet, CA). CA-er er selskaper som manuelt bekrefter at en person som prøver å få et sertifikat oppfyller følgende to betingelser:

    1. er ekte;
    2. har tilgang til domenet den prøver å få et sertifikat for.

    Når CA er sikker på at søkeren er en reell søker og at han faktisk kontrollerer domenet, signerer CA sertifikatet for dette nettstedet, og setter i hovedsak et bekreftelsesstempel på det faktum at den offentlige nøkkelen til nettstedet virkelig tilhører ham og kan være til å stole på.

    Nettleseren din er allerede forhåndslastet med en liste over akkrediterte CAer. Hvis serveren returnerer et sertifikat som ikke er signert av en akkreditert CA, vil en stor rød advarsel vises. Ellers kan alle signere falske sertifikater.

    Så selv om hackeren tok den offentlige nøkkelen til serveren sin og genererte et digitalt sertifikat som bekrefter at denne offentlige nøkkelen er assosiert med facebook.com, vil ikke nettleseren tro på dette, siden sertifikatet ikke er signert av en akkreditert CA.

    Andre ting å vite om sertifikater

    Utvidet validering
    I tillegg til de vanlige X.509-sertifikatene finnes det utvidede valideringssertifikater som gir mer høy level tillit. Ved å utstede et slikt sertifikat utfører CA et annet flere sjekker i forhold til personen som mottar sertifikatet (vanligvis ved bruk av passdetaljer eller kontoer).

    Ved mottak av et slikt sertifikat vises nettleseren i adressefeltet en grønn linje, i tillegg til det vanlige låsikonet.

    Betjener flere nettsteder på én server
    Siden utveksling av data TLS-protokoll oppstår allerede før starten av HTTP-tilkoblingen, kan det oppstå problemer hvis flere nettsteder ligger på samme webserver på samme IP-adresse. Ruting virtuelle verter utføres av webserveren, men TLS-tilkoblingen skjer enda tidligere. Et enkelt sertifikat for hele serveren vil bli brukt når du ber om et hvilket som helst nettsted på serveren, noe som kan forårsake

    Hei!
    La oss ta en titt på hva symmetrisk og asymmetrisk kryptografi er - hvorfor de kalles det, hva de brukes til og hvordan de er forskjellige.

    For å være presis er det mer riktig å si symmetriske og asymmetriske krypteringsalgoritmer.

    Kryptografi (krypto - gjemme, gjemme), som vitenskapen om å skjule det som er skrevet, vitenskapen om å skjule informasjon.

    De fleste av krypteringsalgoritmene som brukes er åpen kildekode, det vil si at beskrivelsen av algoritmen er tilgjengelig for alle. Hemmeligheten er krypteringsnøkkelen, uten hvilken det er umulig å kryptere, og enda mer, å dekryptere informasjon.

    Symmetriske krypteringsalgoritmer er algoritmer som bruker samme nøkkel for kryptering og dekryptering. Det vil si at hvis vi ønsker å utveksle krypterte meldinger med en venn, så må vi først avtale hvilken krypteringsnøkkel vi skal bruke. Det vil si at vi vil ha én krypteringsnøkkel for to.

    I symmetriske algoritmer er krypteringsnøkkelen en sårbarhet, og det er nødvendig å betale mer oppmerksomhet slik at nøkkelen ikke gjenkjennes av andre.

    Asymmetriske krypteringsalgoritmer er alogrytmer der forskjellige, men matematisk relaterte nøkler brukes til kryptering og dekryptering. Slike assosierte nøkler kalles et kryptopar. En av dem er privat, den andre er offentlig. Samtidig er informasjonen kryptert på åpen nøkkel, kan bare dekrypteres med den private nøkkelen, og omvendt, det som er kryptert privat kan kun dekrypteres med den offentlige nøkkelen.
    Du oppbevarer den private nøkkelen på et trygt sted, og ingen andre enn du vet det, og du gir ut en kopi av den offentlige nøkkelen til alle. Derfor, hvis noen ønsker å utveksle krypterte meldinger med deg, krypterer han meldingen ved hjelp av din offentlige nøkkel, som er tilgjengelig for alle, og denne meldingen kan kun dekrypteres med din private nøkkel.

    Nå om hva og hvorfor symmetriske og asymmetriske algoritmer brukes:
    Tabellen viser at for å kryptere en stor mengde informasjon, for strømmingskryptering (for eksempel kryptert VPN), brukes raske og lite krevende symmetriske algoritmer.

    Men hvis vi trenger å sikre så mye som mulig lite volum informasjon, mens vi ikke er begrenset av tid og dataressurser, kan vi bruke asymmetrisk kryptografi.

    I livet er selvfølgelig alt litt annerledes enn i teorien.
    I livet brukes en kombinasjon av symmetriske og asymmetriske algoritmer.

    For eksempel, en VPN med kryptering:

      Det første trinnet bruker asymmetriske nøkkelalgoritmer for å få en symmetrisk krypteringsnøkkel ().
    I det andre trinnet krypteres strømmedataene ved hjelp av symmetriske algoritmer med nøkkelen generert i det første trinnet.

    Det er derfor vanlig praksis å bruke en symmetrisk nøkkel for raskt å kryptere store datamengder. I dette tilfellet, for utveksling og overføring av en symmetrisk nøkkel, brukes asymmetriske krypteringsalgoritmer.