četrtek, 2. januar 2003

Opis sistema zaščite transakcij [7]

OBLIKOVANJE ZAHTEV PO ZAŠČITI


Pri prenosu po različnih linijah je treba podatke zaščititi na primeren način. Osnovna zahteva je tajnost oziroma zasebnost podatkov, ki jo lahko zagotovimo s šifriranjem. Pretok "elektronskega" denarja pa zahteva še posebne postopke, imenujemo jih servise, za zagotovitev varne izmenjave sporočil.

Nek uporabnik, imenujmo ga pošiljatelj, želi drugemu uporabniku, ki ga imenujemo prejemnik, poslati neko sporočilo. Prizadevamo si uresničiti naslednje cilje:

  1. Prejemnik mora imeti zagotovilo o pošiljateljevi identiteti (elektronski podpis).
  2. Prejemnik mora imeti zagotovilo o originalnosti sporočila (elektronski pečat - sporočilo se med pošiljanjem ni spremenilo).
  3. Pošiljatelj mora dobiti od prejemnika dokaz o prejemu sporočila (potrdilo o prejemu).
  4. Pošiljatelj mora dobiti od  prejemnika dokaz o originalni vsebini sporočila.

Največkrat zahteva varna komunikacija le prva dva servisa: elektronski podpis in elektronski pečat. Če pa želimo opravljati finančne transakcije (npr. prenos in obdelava virmanskega naloga), se hitro pokažejo še dodatne zahteve. Če dodamo k prvima dvema (podpisan in zapečaten virman) še tretji servis, dobimo pošto s potrdilom (prejemnik potrdi prejem virmana). Nič pa ne vemo o integriteti vsebine sporočila (ali je znesek na virmanu pri prejemniku enak tistemu, ki ga je poslal pošiljatelj). To nam zagotavlja šele četrti servis - dokaz o originalni vsebini sporočila.

Opisane štiri servise lahko skupno imenujemo "servis, ki preprečuje zanikanje aktivnosti", ker nam zagotavlja:

  1. Pošiljatelj ne more zanikati sporočila, niti njegove vsebine (podpisan in zapečaten virman).
  2. Prejemnik ne more zanikati prejema sporočila, niti neavtorizirano spremeniti originalne vsebine (potrdilo o prejemu in originalni vsebini virmana).

Algoritmi


DES (Data Encryption Standard) je simetrični algoritem, ki je sestavljen iz substitucij in transpozicij. Simetrični pomeni, da uporablja en sam, tajni ključ za šifriranje in dešifriranje.

Pri večjem številu uporabnikov, ki med seboj komunicirajo, nastopi problem, znan pod imenom "Key Management", saj se morajo uporabniki vnaprej dogovoriti za ključ in za protokol menjave ključev (DES ključ je namreč priporočljivo spreminjati precej pogosto).

RSA (Rivest, Shamir, Adleman) je asimetrični algoritem, ki temelji na težavnosti faktoriziranja velikih števil. Za šifriranje uporablja javni ključ - to pomeni, da ga vsak uporabnik lahko javno objavi, medtem ko lahko s tajnim ključem, ki ga le sam pozna, dešifrira prejeta sporočila. Omejitev algoritma je njegova počasnost, zato ga za šifriranje daljših sporočil ne uporabljamo. V kombinaciji z nekaterimi drugimi algoritmi pa lahko z RSA realiziramo vrsto drugih servisov, kot so npr. distribucija tajnih ključev, elektronski pečat in podpis.

MAC (Message Authentication Code) je kontrolni niz, s katerim potrjujemo originalnost sporočila. Izračunamo ga z nekim algoritmom, ki nam mora zagotavljati zadostno odvisnost MAC od sporočila (če v sporočilu spremenimo le en znak, se mora spremeniti tudi MAC, izračunan iz spremenjenega sporočila).

Servisi


Od servisov, opisanih v točki 1., lahko najprej realiziramo (1) in (2) in sicer na način, ki nam bo dajal še neke dodatne garancije. Najenostavnejša je konkretna ponazoritev s primerom virmanskega naloga, ki ga pravna oseba pošlje v obdelavo Službi družbenega knjigovodstva:

  1. Najprej pravna oseba generira DES ključ (slučajno izbran niz znakov).
  2. DES ključ šifrira z javnim RSA ključem SDK.
  3. Nalog šifrira z DES algoritmom.
  4. Na osnovi naloga izračuna MAC.
  5. MAC podpiše s svojim javnim RSA ključem (elektronski podpis).
  6. Podpis šifrira z DES algoritmom (elektronski pečat).

S tem si pravna oseba zagotovi, da bo nalog lahko dešifrirala le SDK (tajnost vsebine naloga, avtentičnost SDK). SDK pa ima zagotovljeno identiteto pravne osebe (elektronski podpis) in originalnost vsebine naloga (elektronski pečat).

Naslednji korak je še realizacija servisov (3) in (4) iz točke 1. SDK mora pravni osebi potrditi prejem virmana. Na tem mestu uporabi svoj tajni RSA ključ in podpis zaščiti s tem, da ga šifrira z DES algoritmom. Dokaz o originalni vsebini sporočila pa se lahko sestavi s pomočjo virmana in MAC. Obdelan virman  označimo z nekim indikatorjem in ga pošljemo nazaj pravni osebi, skupaj z novim MAC. Pravna oseba bo imela tako tudi zagotovilo (potrdilo) o originalnosti dokumenta.

Uporaba


Opisani servisi so strukturirani tako, da se lahko uporabljajo za različne vrste povezav, tako "on-line", kot tudi preko poštnega predala. Edina omejitev je realizacija algoritmov na osebnem računalniku.

Ni komentarjev:

Objavite komentar