UNIVERZA V MARIBORU
FAKULTETA ZA ELEKTROTEHNIKO,
RAČUNALNIŠTVO IN INFORMATIKO
Mihael Fajs
SPLETNA PLATFORMA ZA VIZUALIZACIJO
DELOVANJA ELEKTRONSKEGA PODPISA
Diplomsko delo
Maribor, september 2017
UNIVERZA V MARIBORU
FAKULTETA ZA ELEKTROTEHNIKO,
RAČUNALNIŠTVO IN INFORMATIKO
Mihael Fajs
SPLETNA PLATFORMA ZA VIZUALIZACIJO
DELOVANJA ELEKTRONSKEGA PODPISA
Diplomsko delo
Maribor, september 2017
i
SPLETNA PLATFORMA ZA VIZUALIZACIJO DELOVANJA
ELEKTRONSKEGA PODPISA
Diplomsko delo
Študent: Mihael Fajs
Študijski program: Univerzitetni študijski program
Informatika in tehnologije komuniciranja
Smer: Informacijski sistemi
Mentor: doc. dr. Marko Hölbl, univ. dipl. inž. rač. in inf.
Somentorica: asist. dr. Lili Nemec Zlatolas, univ. dipl. medij. kom.
Lektor(ica): Dolores Dolšak, dipl. medjez. št - ang. (UN)
iii
ZAHVALA
Mentorju doc. dr. Marku Hölblu in somentorici asist. dr. Lili Nemec Zlatolas se
zahvaljujem za vodenje, strokovno pomoč in vse nasvete pri nastajanju diplomskega dela.
Zahvaljujem se družini in prijateljem za spodbudo ter podporo v času študija.
Zahvaljujem se tudi tašči, ki me je zadnje mesece spodbujala,
da dokončam diplomsko delo.
Posebej bi se zahvalil punci Tamari, ki je verjela vame in me bodrila, ter za vso ljubezen in
potrpežljivost s katero mi stoji ob strani.
iv
Spletna platforma za vizualizacijo delovanja
elektronskega podpisa
Ključne besede: Elektronski podpis, infrastruktura javnih ključev, asimetrično šifriranje
UDK: 004.439(043.2)
Povzetek
Pomembne pogodbe podpisujemo v prisotnosti nepristranske priče in z ročnim podpisom. V
času računalniške dobe pa lahko te dokumente v elektronski obliki podpišemo tudi s
pomočjo elektronskega podpisa (angl. Digital Signature) in infrastrukture javnih ključev
(angl. Public Key Infrastructure – PKI). Postopek je podoben, veljavnost in dokazna vrednost
podpisa pa enaki. Ljudem, ki elektronskega podpisa še ne poznajo oz. želijo o njem izvedeti
več, smo želeli predstaviti njegov osnovni koncept. Zato smo ustvarili vizualno animacijo
osnov in posneli videoposnetke primerov uporabe. Vso zbrano gradivo smo združili v spletno
platformo in predstavili širši javnosti, ki jo lahko uporablja kot pripomoček za učenje.
v
Web platform for digital signature visualization
Key words: Digital signature, Public key infrastructure, Asymmetric encryption
UDK: 004.439(043.2)
Abstract
We sign important contracts in the presence of an impartial witness and with a manual
signature. In the computer age, we can also sign those documents with the help of a digital
signature and public key infrastructure (PKI). The procedure is similar, while the validity and
evidentiary value are the same. We wanted to introduce the basic concept of this procedure
to the people who do not know it and want to gain knowledge about it. That is why we have
created a visual animation of digital signature basics and shot a video tape with examples
of digital signing. We integrated all the components into a web platform and introduced it
to the public, which can now use it as a gadget for learning.
vi
KAZALO
1 UVOD ................................................................................................................... 1
2 ELEKTRONSKI PODPIS ............................................................................................ 3
2.1 Varnost informacij ..................................................................................................... 3
2.2 Šifriranje podatkov .................................................................................................... 4
2.3 Zgoščevalna funkcija .................................................................................................. 7
2.4 Infrastruktura javnih ključev ...................................................................................... 7
2.5 Digitalno potrdilo ..................................................................................................... 12
2.6 Elektronsko podpisovanje ....................................................................................... 14
3 VIZUALIZACIJA ELEKTRONSKEGA PODPISA ........................................................... 19
3.1 Načrtovanje ............................................................................................................. 19
3.2 Uporabljena orodja .................................................................................................. 20
3.3 Implementacija ........................................................................................................ 21
3.4 Primeri uporabe elektronskega podpisa ................................................................. 27
3.5 Spletna platforma .................................................................................................... 34
3.6 Težave ...................................................................................................................... 35
4 SKLEP .................................................................................................................. 37
VIRI ............................................................................................................................ 39
vii
KAZALO SLIK
SLIKA 2.1: PRIKAZ POSTOPKA SIMETRIČNEGA ŠIFRIRANJA[6] ............................................... 5
SLIKA 2.2: PRIKAZ POSTOPKA ASIMETRIČNEGA ŠIFRIRANJA [6] ........................................... 6
SLIKA 2.3: INFRASTRUKTURA JAVNIH KLJUČEV [10] .............................................................. 8
SLIKA 2.4: PRIKAZ UPORABE PARA KLJUČEV PRI PKI IN PGP [17] ........................................ 11
SLIKA 2.5: PODPISOVANJE IN PREVERJANJE DIGITALNEGA PODPISA [23] .......................... 15
SLIKA 2.6: ELEKTRONSKI PODPIS S ČASOVNIM ŽIGOM [22] ................................................ 17
SLIKA 2.7: GRAFIČNI PRIKAZ PODPISANIH DOKUMENTOV ARHIVSKE VREDNOSTI [22] ..... 18
SLIKA 3.1: PRIKAZ ZAČETNEGA ZASLONA ANIMACIJE ......................................................... 27
SLIKA 3.2: PRIKAZ PODPISOVANJA ELEKTRONSKE POŠTE V PROGRAMU OUTLOOK .......... 29
SLIKA 3.3: PRIKAZ OKNA ZA PODPISOVANJE WORDOVIH DOKUMENTOV ......................... 31
SLIKA 3.4: PRIKAZ VARNE POVEZAVE V BRSKALNIKU MOZILLA FIREFOX ............................ 32
SLIKA 3.5: PRIKAZ POSODABLJANJA SISTEMA ..................................................................... 34
SLIKA 3.6: PRIKAZ SPLETNE PLATFORME ............................................................................. 35
KAZALO TABEL
TABELA 2.1: CILJI IN TEHNIKE ZAGOTAVLJANJA VARNOSTI PODATKOV ............................... 4
viii
SEZNAM UPORABLJENIH KRATIC
PKI – Public Key Infrastructure (sl. infrastruktura javnih ključev)
CMS – Content Management System (sl. sistem za upravljanje vsebin)
TLS – Transport Layer Security (sl. kriptografski protokol, ki zagotavlja varno komunikacijo
preko računalniškega omrežja)
SSL – Secure Socket Layer (sl. predhodnik protokola TLS)
HTTPS – Hypertext Transfer Protocol Secure (sl. aplikacijski protokol za distribuirane,
sodelovalne in hipermedijske informacijske sisteme)
SSH – Secure Shell (sl. protokol za varno upravljanje računalnikov na daljavo)
VPN – Virtual Private Network (sl. navidezna zasebna omrežja)
PGP – Pretty Good Privacy (sl. šifrirni program, ki zagotavlja zasebnost in pristnost med
podatkovno komunikacijo)
MIME – Multipurpose Internet Mail Extensions (sl. večnamenska razširitev internetne
pošte)
S/MIME – Secure/Multipurpose Internet Mail Extensions (sl. varnejša različica MIME)
RSA – Rivest Shamir Adleman cryptosystem (sl. asimetrični šifrirni algoritem)
MD5 – Message-Digest algorithm 5 (sl. zgoščevalna funkcija)
SHA-1 – Secure Hash Algorithm (sl. naslednik MD5)
CA – Certification Authority (sl. overitelj javnih ključev)
RA – Registration Authority (sl. registrator)
VA – Validation Authority (sl. strežnik digitalnih potrdil)
CRL – Certificate Revocation List (sl. register preklicanih potrdil)
LDAP – Lightweight Directory Access Protocol (sl. protokol za dostopanje in vzdrževanje
imeniških storitev)
ISO – International Organization for Standardization (sl. Mednarodna organizacija za
standardizacijo)
SET – Secure Electronic Transactions (sl. protokol za varne transakcije kreditnih kartic)
IPSEC – Internet Protocol Security (sl. tunelski protokol za varovanje informacij)
MJU – Ministrstvo za javno upravo
ix
ZEPEP – Zakon o elektronskem poslovanju in elektronskem podpisu
SIGEN-CA – Slovenian General Certification Authority (sl. izdajatelj potrdil za pravne in
fizične osebe)
SIGOV-CA – Slovenian Governmental Certification Authority (sl. izdajatelj potrdil za
institucije)
PKIX – Public Key Infrastructure based on X.509 (sl. priporočila za infrastrukturo javnih
ključev)
TSA – Time Stamp Authority (sl. izdajatelj varnih časovnih žigov)
ES-T – Electronic signature with time (sl. elektronski podpis s časovnim žigom)
ES-C – Electronic signature with complete validation data (sl. elektronski podpis z vsemi
podatki za overjanje)
EESSI – European Electronic Signature Standards Institute (sl. Evropski inštitut za standarde
elektronskega podpisovanja)
AE – After Effects (sl. program za ustvarjanje gibanja elementov)
PDF – Portable Document Format (sl. prenosni format dokumenta)
DES – Data Encryption Standard (sl. simetrični šifrirni algoritem)
AES – Advanced Encryption Standard (sl. naslednik DES šifrirnega algoritma)
1
1 UVOD
Informacijska tehnologija se iz leta v leto hitreje razvija. Svetovni splet ima v današnjem
času vse večjo vlogo v naših življenjih. Prav tako se ob uporabi interneta srečujemo s
spletnimi prevarami, dejavnikom, ki uporabnikom predstavlja negativno izkušnjo. Ena
izmed možnosti za preprečevanje prevar s spreminjanjem informacij je uporaba
elektronskega podpisa, s katerim dokažemo pristnost podatkov in identiteto pošiljatelja. Z
namenom, da bi bilo negativnih izkušenj manj, poznavanje podpisovanja informacij pa bolj
razširjeno, smo v osrednjem delu naloge na enostaven vizualni način predstavili osnove
koncepta, ki bo na voljo širši javnosti.
Cilj diplomskega dela je izdelava spletne platforme, s katero želimo vizualno prikazati
delovanje elektronskega podpisa in z njim povezanih konceptov (digitalna potrdila,
infrastruktura javnih ključev in njegove komponente) ter ga podpreti s primeri uporabe. Z
izdelano spletno platformo bomo tako na enostaven in nazoren način uporabnikom
predstavili omenjene koncepte.
Spletna platforma je izdelana s pomočjo sistema za upravljanje vsebin (angl. Content
Management System - CMS). Uporabljeni so tudi videoposnetki, kjer je prikazana uporaba
elektronskega podpisovanja v štirih praktičnih scenarijih.
Omejili smo se na svetovno najbolj uporabljene brskalnike Google Chrome, Mozilla Firefox
in Internet Explorer ter na osebno najbolj uporabljene namenske programe za pošiljanje
elektronske pošte Microsoft Outlook, Mozilla Thunderbird in storitev Gmail z vtičnikom
Mailvelope, ki omogoča šifriranje e-poštnega sporočila [1].
V diplomskem delu smo v prvem poglavju z deskriptivno metodo preučili domačo in tujo
literaturo ter predstavili teoretične osnove elektronskega podpisa. Prav tako smo se
posvetili varnosti informacij, ki jih podpis omogoča, ter preučili šifrirne algoritme, ki so za
2
podpis ključnega pomena in zagotavljajo omejen dostop do informacij. Raziskali smo tudi
zgoščevalno funkcijo (angl. hash function), ki skrbi za celovitost podpisanih podatkov,
infrastrukturo javnih ključev, ki je pomembna za varno elektronsko povezavo med
entitetami, ter digitalno potrdilo (angl. digital certificate), ki služi kot osebna izkaznica
uporabnikov. Na koncu smo preučili tudi uporabo vseh naštetih konceptov v okviru
elektronskega podpisovanja. V nadaljevanju diplome smo v poglavju vizualizacije najprej
razložili načrt našega dela, nato pa predstavili orodja, ki smo jih uporabljali pri ustvarjanju
animacije. Sledi razlaga, kako smo z metodo analize informacij implementacijo izvršili in kaj
smo pri implementaciji animacije uporabljali. Predstavili smo izvedbo primerov uporabe
elektronskega podpisa, ki smo jih razdelili na posamezne sklope, v katerih smo najprej
opisali nastanek videoposnetkov podpisovanja elektronskega pošte, nato podpisovanja
elektronskih dokumentov in nazadnje posodabljanja operacijskih sistemov. Razložili smo
predstavitev razvoja spletne platforme in ob koncu poglavja pojasnili izzive in težave, s
katerimi smo se med implementacijo spopadali. Ob koncu diplomskega dela smo
predstavili povzetek celotnega dela in podali mnenje o možnih nadaljnjih raziskavah.
3
2 ELEKTRONSKI PODPIS
Elektronski podpis je enakovreden lastnoročnemu podpisu in sestoji iz različnih
komponent, ki skupaj uporabniku zagotavljajo verodostojen podpis. Koncepti, kot so
zgoščevalna funkcija, digitalno potrdilo in infrastruktura javnih ključev, so sestavni deli
elektronskega podpisa. Za lažje razumevanje vizualizacije bomo v tem poglavju predstavili
teorijo osnovnih komponent. Vse predstavljene komponente bomo v nadaljevanju tudi
vizualno prikazali.
2.1 Varnost informacij
Elektronski računalniki so se iz izredno eksperimentalnih podjetij v 40. letih 20. stoletja
razvili v praktične sisteme za obdelavo podatkov v 80. letih 20. stoletja. Ko so ti sistemi
postali zanesljiva orodja za procesiranje in shranjevanje podatkov, smo se začeli spraševati
tudi o njihovi sposobnosti zaščite dragocenih podatkov. Varnost podatkov je znanost in
študija o metodah varovanja podatkov v računalniku in komunikacijskih sistemih pred
nepooblaščenim razkritjem in spreminjanjem [2].
Varnost podatkov predstavlja tri ključne cilje za doseganje zaščite podatkov, ki so temelji
računalniške varnosti [3]:
1. Zaupnost, ki pokriva dva povezana koncepta:
o zagotavlja, da zasebni ali zaupni podatki niso na voljo ali niso razkriti
nepooblaščenim posameznikom;
o zagotavlja, da posamezniki nadzorujejo ali vplivajo na to, katere
informacije, povezane z njimi, se lahko zberejo in shranijo, ter komu se lahko
ti podatki razkrijejo.
2. Celovitost sistema pokriva naslednja dva koncepta:
o zagotavlja, da se informacije in programi spreminjajo samo na določen in
pooblaščen način;
4
o zagotavlja, da sistem izvaja svoje nameravane funkcije na neoviran način,
brez namernega ali nenamernega nepooblaščenega manipuliranja sistema.
3. Razpoložljivost zagotavlja, da sistemi delujejo nemudoma in storitev ni zavrnjena
pooblaščenim uporabnikom.
V Tabeli 2.1 so navedene tehnike, ki se uporabljajo za pridobitev posameznega cilja zaščite
podatkov.
Tabela 2.1: Cilji in tehnike zagotavljanja varnosti podatkov
Cilj zaščite Tehnika
Zaupnost Podatkovno šifriranje med prenosom podatkov (TLS1,
HTTPS2, SSH3) in v mirovanju (PGP4, S/MIME5).
Celovitost Digitalno potrdilo (RSA6, ELGamal), zgoščevalne funkcije.
Razpoložljivost Varnostne kopije, redundantne komponente[4].
V diplomski nalogi bomo predstavili elektronski podpis, ki nam zagotavlja naslednja tri
področja varnosti podatkov: celovitost podatkov, ki nam zagotavlja, da so prejeti podatki
enaki poslanim, torej brez podvajanj, vstavljanj, spreminjanja, prerazporeditve ali
ponovitev; preverjanje pristnosti, ki skrbi za zagotavljanje verodostojne komunikacije; ne-
tajenje, ki preprečuje pošiljatelju ali prejemniku zanikanje o posredovanju sporočila [3].
2.2 Šifriranje podatkov
Proces šifriranja je pri uporabi elektronskega podpisa ključnega pomena in zagotavlja
zaupnost podatkov, zato v naslednjih poglavjih predstavljamo osnovno, simetrično (angl.
symmetric encryption) in napredno, asimetrično šifriranje (angl. asymmetric encryption).
1 TLS – Transport Layer Security 2 HTTPS – Hypertext Transfer Protocol Secure 3 SSH – Secure Shell 4 PGP – Pretty Good Privacy 5 S/MIME – Secure/Multipurpose Internet Mail Extensions 6 RSA – Rivest Shamir Adleman cryptosystem
5
Simetrično šifriranje
Simetrično šifriranje uporablja za šifriranje in dešifriranje le en ključ (tajni ali zasebni ključ).
Pri zelo hitri obdelavi velikih količin podatkov je bolj učinkovito od asimetričnega, ki ga
bomo spoznali v naslednjem poglavju. Prav tako je manj intenzivno od asimetričnih
algoritmov. Pri simetričnih algoritmih je najzahtevnejša naloga med komunicirajočimi
varno zagotoviti dogovor o tajnem ključu. Prenos tajnega ključa je nagnjen k različnim
napadom in zato potrebuje višjo stopnjo zaupanja med izbiro, predelavo, distribucijo in
hrambo ključa [5][6].
Primer uporabe simetrične kriptografije, kot prikazuje Slika 2.1: Imamo dve osebi,
uporabnika A in uporabnika B, ki si želita poslati skrito sporočilo (tajnopis). Najprej se
morata na varen način dogovoriti o skritem ključu. Nato uporabnik A za zagotovitev varnega
prenosa do uporabnika B ustvari tajni ključ, z njim šifrira svoje sporočilo oz. čistopis in ga
kot tajnopis pošlje uporabniku B. Da lahko uporabnik B prebere šifrirano sporočilo,
potrebuje tajni ključ. O njem se lahko oba sodelujoča dogovorita na začetku, ali pa ga
uporabnik A dostavi na katerikoli varen način, recimo s kurirjem. Ko uporabnik B prejme
tajni ključ, lahko dešifrira prejet tajnopis oz. lahko uporabniku A odgovori s svojim tajnim
besedilom [6].
Slika 2.1: Prikaz postopka simetričnega šifriranja[6]
Najpogosteje se uporabljata naslednja simetrična šifrirna algoritma [6] :
• Data Encryption Standard (DES),
• Advanced Encryption Standard (AES).
6
Asimetrično šifriranje
Asimetrično šifriranje, tudi algoritmi z javnim ključem, uporablja par ključev, javni ključ
(angl. public key) in zasebni oziroma privatni ključ (angl. private key). Ključa sta generirana
istočasno, podatki pa se nato šifrirajo z enim, dešifrirajo pa z drugim. To pomeni, da lahko
sporočilo, šifrirano z javnim ključem uporabnika A, dešifrira samo lastnik ujemajočega
privatnega ključa. Primer: Uporabnik B pridobi javni ključ od uporabnika A. Kot prikazuje
Slika 2.2, uporabnik B šifrira vsebino z javnim ključem uporabnika A. Ko A prejme šifrirano
sporočilo, ga s svojim privatnim ključem, ki ga pozna le on, dešifrira [7].
Asimetrično šifriranje ne zagotavlja, da je oseba nekdo, za kogar se izdaja, saj so javni ključi
dostopni vsem in jih lahko uporablja vsak. Zagotavlja pa zaupnost sporočila, saj šifrirano
sporočilo lahko dešifrira samo tisti uporabnik, katerega javni ključ je bil uporabljen pri
šifriranju. Z asimetričnim šifriranjem preverjamo tudi istovetnost pošiljatelja. Istovetnost
uporabnik A zagotovi uporabniku B s poslanim sporočilom, ki ga šifrira s svojim zasebnim
ključem. Uporabnik B nato z javnim ključem uporabnika A dešifrira sporočilo. Tako
uporabnik B ugotovi, da je sporočilo z gotovostjo poslal uporabnik A, saj samo on razpolaga
z ujemajočim zasebnim ključem. Ta proces preveri le istovetnost, saj je bilo sporočilo
šifrirano z zasebnim ključem, ne zaščiti pa vsebine in s tem lahko sporočilo prebere vsak, ki
pozna javni ključ [6].
Slika 2.2: Prikaz postopka asimetričnega šifriranja [6]
Whitfield Diffiein in Martin Hellman sta prva razpravljala o procesu asimetričnega šifriranja.
Ena najpogostejših izvedb tega postopka je algoritem RSA. RSA je postal de facto standard
7
na tem področju, zaradi česar se RSA in šifriranje javnega ključa pogosto uporabljata kot
sopomenki [8].
2.3 Zgoščevalna funkcija
Zgoščevalna funkcija je pretvorbena metoda, ki vhodni tok podatkov pretvori in zmanjša na
fiksno velikost niza, kar imenujemo prstni odtis ali izvleček (angl. hash value). Izhodni prstni
odtis je določene velikosti in iz njega je nemogoče obnoviti izvirno vsebino. Zgoščevalne
funkcije se običajno uporabljajo za zagotavljanje podatkov prstnih odtisov, ki zagotavljajo,
da se podatki na poti niso spremenili. Obstaja več zgoščevalnih funkcij, najbolj uporabljena
je SHA-1 (Secure Hash Algorithm) – ta zgoščevalni algoritem lahko izvede 160-bitni prstni
odtis. V nasprotju z algoritmom MD5 (Message-Digest algorithm 5), ki lahko izvede 128-
bitni prstni odtis, pri njem pa so našli nekaj varnostnih lukenj, je SHA-1 med strokovnjaki
dobro sprejet in cenjen [8].
2.4 Infrastruktura javnih ključev
Infrastruktura javnih ključev (PKI) je okvir, ki ga sestavljajo strojna oprema, programska
oprema, politika in postopki, potrebni za upravljanje, ustvarjanje, shranjevanje in
distribucijo ključev in digitalnih certifikatov [8].
Uspešna izvedba PKI igra pomembno vlogo pri izpolnjevanju naslednjih zahtev [9] :
Nezatajljivost veljavnih poslovnih transakcij – nobena izmed strank ne more
zanikati obstoja izvršitve transakcije. PKI uporablja elektronske podpise, ki
povezujejo identiteto stranke s transakcijo, kar zagotavlja, da transakcije kasneje ni
mogoče zavrniti.
Zasebnost – PKI s pomočjo šifriranja privatnega in javnega ključa omogoča
nepovezanim strankam varno poslovanje preko nezaščitenega omrežja.
8
Celovitost – PKI ponuja celovitost s pomočjo digitalnega podpisa, s katerim lahko
ugotovimo, ali so se poslani podatki v procesu pošiljanja spremenili. To je
pomembno tudi za nezatajljivost.
Odgovornost – PKI zagotavlja odgovornost s preverjanjem identitete uporabnikov z
elektronskim podpisom, ki je bolj varen kot kombinacija uporabniškega imena in
gesla.
Zaupanje – celotni koncept infrastrukture javnih ključev je baziran na zaupanju. Če
ne zaupamo overitelju, ne moremo zaupati nobenemu certifikatu, ki ga je izdal.
PKI sestavljajo naslednje komponente: overitelj (angl. Certification Authority – CA),
registrator (angl. Registration Authority – RA), strežnik digitalnih potrdil (angl. certificate
repositories, tudi Validation Authority – VA) in digitalno potrdilo. Komponente PKI s
potekom pridobitve in preverjanja digitalnega potrdila prikazuje Slika 2.3.
Slika 2.3: Infrastruktura javnih ključev [10]
9
Overitelj je temeljna komponenta centra zaupanja. CA je zbirka programske in strojne
opreme, postopkov in politik ter ljudi, ki jo upravljajo. To pomeni, da lahko, če je ena od
komponent ogrožena, to negativno vpliva na CA v celoti in s tem ogrozi celovitost
certifikatov, ki jih proizvaja. CA opravlja štiri osnovne funkcije PKI: izdaja potrdila (tj. jih
ustvari in podpiše); vzdržuje informacije o statusu certifikata in izdaja register CRL
(Certificate Revocation List); objavlja svoje trenutne (ne iztekle) certifikate in register
preklicanih potrdil (CRL), tako da uporabniki lahko pridobijo informacije, ki jih potrebujejo
za izvajanje storitev; ohranja arhivske informacije o statusu preteklih certifikatov, ki jih je
izdal. Te zahteve je težko izpolniti hkrati. Za zagotovitev naštetih zahtev lahko CA prenese
določene funkcije na druge komponente infrastrukture. Sam pa ima naslednji dve glavni
vlogi [7] [8][11]:
Zagotavlja, da javni ključ, ki je povezan s privatnim ključem, pripada osebi, ki je
določena v javnem ključu. Če javni ključ pripada drugi osebi, kot je določena, je
celoten namen PKI spodletel. Zato, kot smo že omenili, CA opravlja pomembno
nalogo izdajanja in preklica potrdil, če so ta ogrožena.
Uveljavlja svojo verodostojnost, tako da lahko vse stranke zaupajo CA, saj uporablja
svoj privatni ključ za podpisovanje potrdil. Javni ključ, ki ustreza zasebnemu ključu,
je shranjen v certifikatu. To potrdilo omogoča uporabniku, da vzpostavi zaupanja
vredno povezavo s CA.
Registrator je kot CA povezava programske in strojne opreme ter ljudi, ki ga upravljajo. Vanj
lahko uporabniki vložijo zahtevke za izdajo digitalnega potrdila, pomemben pa je tudi pri
interakciji med klienti in overitelji. RA overja osebe, ki zahtevajo potrdilo, in posreduje
zahtevke overitelju, ki lahko nato izdela digitalna potrdila. Vsak CA vodi seznam
akreditiranih registratorjev, za katere je bilo ugotovljeno, da so vredni zaupanja. Registrator
je CA poznan z imenom in javnim ključem. S preverjanjem registratorjevega podpisa v
sporočilu je lahko CA prepričan, da je akreditirani registrator zagotovil informacije in mu je
mogoče zaupati. Pomembno je, da kot rezultat registrator zagotavlja ustrezno zaščito za
svoj privatni ključ [7].
10
Strežnik digitalnih potrdil vsebuje vsa digitalna potrdila, ki jih izdela CA. Glavna naloga VA
je zagotavljanje shranjevanja in distribucije potrdil ter upravljanje s posodobitvami
certifikatov. Strežniki so običajno izvedbe standarda X.500 ali podskupin tega standarda.
Standard X.500 je sestavljen iz vrste priporočil in sama specifikacija se nanaša na več
standardov ISO (International Organization for Standardization). Namenjen je imeniškim
storitvam, ki lahko delujejo po sistemskih, korporativnih in mednarodnih mejah. Za
komunikacijo med uporabnikom in strežnikom uporablja poseben protokol LDAP
(Lightweight Directory Access Protocol). Sodeluje pri odpoklicu potrdil, lahko je del centra
zaupanja ali deluje ločeno [7].
Digitalno potrdilo je računalniški zapis, ki vsebuje podatke o imetniku in njegov javni ključ,
podatke o izdajatelju ter obdobje veljavnosti potrdila [12]. Digitalno potrdilo oz. certifikat
temelji na standardu X.509 in je zaščiteno z elektronskim podpisom izdajatelja. Več
podrobnosti o njem bomo predstavili v poglavju Digitalno potrdilo [7].
Standardi, ki se zanašajo na PKI [13]:
S/MIME je standard za varno sporočanje. Omogoča elektronsko podpisovanje in
podpira šifriranje priponk in vsebine brez zahtevanja predhodno dogovorjenega
skritega ključa. Temelji na standardu MIME (Multipurpose Internet Mail
Extensions). S/MIME določa za elektronsko sporočanje naslednje kriptografske
varnostne storitve: preverjanje pristnosti, neokrnjenost sporočila, preprečevanje
zanikanja izvora (z uporabo elektronskega podpisa) in zaupnost podatkov (z
uporabo šifriranja) [14].
SSL (Secure Socket Layer) in TLS sta najbolj pomembna standarda za zagotavljanje
varnega dostopa do spletnih strežnikov.
SET (Secure Electronic Transactions) omogoča varno plačevanje s kreditnimi
karticami. SET uporablja ključe za preverjanje pristnosti, zaupnosti in celovitosti
podatkov. PKI je kritična podlaga za preverjanje pristnosti sodelujočih v plačilni
transakciji.
11
Standard IPSEC (Internet Protocol Security) definira protokol za šifriranje IP in je
eden primarnih protokolov, uporabljenih pri uvajanju omrežji VPN (Virtual Private
Network). Protokol uporablja ključe za šifriranje in preverjanje pristnosti.
PGP
PGP je ustvaril Philip Zimmermann leta 1991. PGP skrbi za podoben pristop, kot je PKI.
Uporablja kombinacijo asimetričnega šifriranja in konvencionalnega šifriranja za
zagotavljanje varnostnih storitev pri pošiljanju e-pošte in datotek. Zimmermann je želel, da
PGP ostane brezplačen, zato si je zamislil "mrežo zaupanja" (angl. web of trust). V nasprotju
s PKI si uporabniki sami med seboj izmenjujejo javne ključe v obliki digitalnih potrdil in jih
drug drugemu podpisujejo ter tako jamčijo za njihovo verodostojnost [15].
Ko želimo poslati šifrirano ali elektronsko podpisano sporočilo prijatelju, lahko njegovo
potrdilo pridobimo s strežnika javnih ključev ali pa ga nam prijatelj preprosto pošlje v
datoteki, ki jo uvozimo v svoj imenik javnih ključev. Sporočilo digitalno podpišemo ali
šifriramo po postopku, ki ga prikazuje Slika 2.4 – ta velja tako za PKI kot za PGP [16].
Slika 2.4: Prikaz uporabe para ključev pri PKI in PGP [17]
12
2.5 Digitalno potrdilo
Po Zakonu o elektronskem poslovanju in elektronskem podpisu (ZEPEP) ima elektronski
podpis pravno veljavo, če je overjen s t. i. kvalificiranim digitalnim potrdilom (člen 15:
"Varen elektronski podpis, overjen s kvalificiranim potrdilom, je glede podatkov v
elektronski obliki enakovreden lastnoročnemu podpisu ter ima zato enako veljavnost in
dokazno vrednost."). Tak elektronski podpis oz. z njim podpisana pogodba v e-obliki je tako
enakovredna lastnoročnemu podpisu na dokumentu v papirni obliki [18][19].
Digitalna potrdila po standardu X.509V3 v skladu s priporočili PKIX (angl. Public Key
Infrastructure based on X.509) izdaja overitelj na Ministrstvu za javno upravo (MJU). Kot
overitelja na MJU delujeta dva izdajatelja kvalificiranih digitalni potrdil: SIGEN-CA (angl.
Slovenian General Certification Authority) za državljane in pravne osebe ter SIGOV-CA
(angl. Slovenian Governmental Certification Authority) za državne organe Republike
Slovenije [19]. V Sloveniji digitalna potrdila izdajajo tudi naslednji overitelji [20] :
Pošta Slovenije d.o.o. - Pošta®CA,
Nova Ljubljanska banka d.d. - AC NLB,
Halcom d.d. - Halcom CA.
SIGEN-CA oz. SIGOV-CA izdajata dve skupini kvalificiranih digitalnih potrdil. Prva so spletna
digitalna potrdila, namenjena uporabi v spletu po protokolih SSL oziroma TLS, S/MIME ter
IPsec. Vsebujejo en par ključev (javnega in zasebnega). Druga skupina pa so posebna
digitalna potrdila, ki so namenjena predvsem uslužbencem in aplikacijam v državni upravi
oz. pri poslovnih subjektih. Vsebujejo dva ločena para ključev, en par za podpisovanje oz.
overjanje, drugi par pa za šifriranje oz. dešifriranje [19][21].
Za pridobitev potrdila oz. para ključev mora bodoči imetnik izpolnit zahtevek za pridobitev
digitalnega potrdila in ga odnesti pristojni službi, registratorju. Registrator preveri
istovetnost bodočega imetnika, nato pa posreduje zahtevek overitelju, ki ustvari digitalno
potrdilo in ga podpiše s svojim privatnim ključem. Certifikat se posreduje strežniku
13
digitalnih potrdil, ki novo nastalo potrdilo shrani. Overitelj nato na varen način pošlje
digitalno potrdilo bodočemu imetniku. Ta ga po posebnem postopku pridobi skupaj z vsemi
korenskimi potrdili o overitelju. Opisani postopek prikazuje Slika 2.3, s katere je razvidno
tudi, kako lahko uporabnik po prejetju certifikata na spletu preko strežnika digitalnih potrdil
preveri status digitalnega potrdila dostopnih strani.
Leta 1988 je mednarodna telekomunikacijska zveza priporočala standard X.509 za digitalne
certifikate. Od takrat je X.509 postal de facto industrijski standard za avtentikacijo
uporabnikov na odprtih sistemih, kot je internet. Najnovejša različica certifikata X.509 je
X.509V3. Certifikat X.509V3 vsebuje naslednja polja [8]:
verzijo certifikata, ki opisuje različico certifikata;
identifikacijsko oznako potrdila, tj. unikatno število, ki ga CA povezuje z vsakim
certifikatom;
overiteljev algoritem za podpis, ki identificira overiteljev podpisni algoritem;
izdajateljevo ime X.500, s katerim identificira overitelja, ki je podpisal in overil
certifikat;
obdobje veljavnosti, ki vsebuje dva datuma: datum pričetka veljavnosti in datum
prenehanja veljavnosti certifikata;
imetnikovo ime X.500, ki identificira imetnika, kateremu je izdan privatni ključ, ta
pa je povezan z imetnikovim javnim ključem;
algoritem za javni ključ;
informacije imetnikovega javnega ključa – javni ključ in identifikator algoritma, s
katerim se ključ uporablja;
imetnikov unikatni identifikator – polje, ki je podobno identifikatorju izdajatelja in
zagotavlja edinstvenost imetnika certifikata;
unikatni identifikator izdajatelja – vsebuje unikaten id izdajatelja potrdila in
zagotavlja, da je identifikator unikaten za izdajatelja certifikata in ne identificira
katerega drugega overitelja;
razširitve – izbirno polje. Če obstaja, to polje vsebuje eno ali več razširitev
certifikata. Vsaka razširitev vsebuje identifikator razširitve, kritično oznako, ki
14
navaja pomembnost oznake, in vrednost razširitve. Primer razširitve: elektronski
naslov imetnika, url do registra preklicanih potrdil, veljavnost in uporaba zasebnega
ključa ter drugi atributi [7][19].
Ta polja zagotavljajo zahtevane informacije o certifikatu in imetniku, ki mu je bilo digitalno
potrdilo izdano. Vsa podpisana potrdila so objavljena na strežniku digitalnih potrdil.
Strežnik, ki se z zbirko potrdil in drugih informacij uporablja pri postopku preverjanja
elektronskega podpisa, je dostopen na spletu [8].
Certifikati vsebujejo datum poteka veljavnosti. Žal lahko podatki potrdila postanejo
nezanesljivi že pred omenjenim datumom. Zato izdajatelj potrebuje mehanizem za
zagotavljanje posodobitve stanja za izdana digitalna potrdila. Eden takšnih mehanizmov je
X.509, register preklicanih digitalnih potrdil (CRL).
2.6 Elektronsko podpisovanje
Elektronski podpis je niz podatkov v elektronski obliki, ki je vsebovan, dodan ali logično
povezan z drugimi podatki in namenjen preverjanju pristnosti teh podatkov in identifikaciji
podpisnika [18].
Varen elektronski podpis je elektronski podpis, ki izpolnjuje naslednje zahteve [18]:
Povezan je izključno s podpisnikom;
iz njega je mogoče zanesljivo ugotoviti podpisnika;
ustvarjen je s sredstvi za varno elektronsko podpisovanje, ki so izključno pod
podpisnikovim nadzorom;
povezan je s podatki, na katere se nanaša, tako da je opazna vsaka kasnejša
sprememba teh podatkov ali povezave z njimi.
Osnovno obliko elektronski podpisa, ki ustreza ZEPEP, ustvarimo s pomočjo asimetričnih
algoritmov na sledeči način. Prstni odtis vsebine oz. podatkov ustvarimo z uporabo
15
zgoščevalne funkcije. Prstni odtis je za vsako vsebino drugačen. Ob večkratni uporabi
zgoščevalne funkcije nad istimi podatki je prstni odtis vedno enak in iz njega ni možno
razbrati sporočila. Zgoščevalno vrednost šifriramo s privatnim ključem iz podpisnikovega
digitalnega potrdila. Tako dobimo elektronski podpis, ki ga skupaj s podpisnikovim
potrdilom pripnemo podatkom. Omenjen proces podpisovanja prikazuje Slika 2.5.
Verifikacija je preizkus, ali se je vsebina na poti spremenila ali ne, in poteka v fazah,
razvidnih s Slike 2.5. Pri prejetem elektronsko podpisanem sporočilu s pomočjo zgoščevalne
funkcije pridobimo prstni odtis. Vzporedno elektronski podpis, ki je pripet vsebini,
dešifriramo s pošiljateljevim javnim ključem. Dešifriran prstni odtis primerjamo s prstnim
odtisom, ki smo ga pridobili iz vsebine. Če sta prstna odtisa enaka in digitalna potrdila
veljavna, je posledično veljaven tudi elektronski podpis, kar pomeni, da sprememb med
pošiljanjem ni bilo [22].
Slika 2.5: Podpisovanje in preverjanje digitalnega podpisa [23]
16
Osnovna oblika elektronskega podpisa se uporablja v kratkih časovnih obdobjih od
nastanka podpisa, kadar smo prepričani, da se razmere v zvezi s stanjem potrdila ne bodo
spremenile [22].
Za uspešno verifikacijo morajo biti na razpolago vsa potrdila, ki so bila uporabljena pri
podpisu, to so podpisnikovo potrdilo in veriga potrdil izdajateljev; statusi uporabljenih
digitalnih potrdil, ki dokazujejo, da so bila potrdila veljavna in niso bila preklicana; varen
časovni žig ali varna časovna oznaka, ki pomeni nedvoumen dokaz o obstoju digitalnega
podpisa ob določenem času [22].
Ob podpisu pomembne pogodbe za daljše časovno obdobje potrebujemo nepristransko
pričo, ki kot ostali vpleteni podpiše navaden dokument. Podobno vlogo pri elektronskih
dokumentih ima izdajatelj varnih časovnih žigov oz. TSA (angl. Time Stamp Authority).
Strežnik za časovno žigosanje, ki je del infrastrukture javnih ključev, je sinhroniziran s
časovnimi strežniki, ki zagotavljajo točen čas. Podobno kot overitelj digitalnih potrdil mora
biti tudi strežnik dobro zaščiten. Kadar želimo časovno žigosati elektronski dokument oz.
podatke, pošljemo izdajatelju SI-TSA prstni odtis dokumenta oz. podatkov. Izdajatelj temu
povzetku dopiše točen čas in vse skupaj podpiše s svojim zasebnim ključem – to imenujemo
varen časovni žig. S tem je dokazano, da je elektronski dokument obstajal pred časom,
navedenim v časovnem žigu. Poleg tega pa je možno preveriti, ali se je dokument od časa
žigosanja spremenil [15][24].
Elektronski podpis s časovnim žigom ES-T (angl. Electronic Signature with Time), shematsko
prikazan na Sliki 2.6, doda časovni žig ali časovno oznako k osnovni obliki elektronskega
podpisa, tako da shrani osnovno obliko in časovno oznako na varno revizijsko sled [22].
17
Slika 2.6: Elektronski podpis s časovnim žigom [22]
Elektronski podpis z vsemi podatki za overjanje ES-C (angl. Electronic Signature with
Complete validation data), ki je prav tako shematsko prikazan na Sliki 2.6, k ES-T doda
referenco za vse podatke, ki zagotavljajo veljavnost elektronskega podpisa. ES-C vsebuje
tako referenco na vse podatke za vrednotenje kot tudi njihove prstne odtise [22].
Ko želimo digitalno podpisan dokument hraniti dlje časa, moramo najprej predvideti
možnosti, da so potrdila vpletenih oseb zlorabljena ali preklicana, da status digitalnih
potrdil (npr. register preklicanih digitalnih potrdil) ni več na voljo, ali da so bili uporabljeni
kriptografski algoritmi razbiti. S tem algoritmi niso več vredni zaupanja, kar lahko vodi do
razbitja ključev, časovnih žigov itd. Pred možnostjo razbitja in s tem ogroženo legitimnostjo
dokumenta je treba poskrbeti za podaljševanje veljavnosti z dodajanjem časovnih žigov,
narejenih z varnejšimi algoritmi oz. z daljšimi ključi od tistih, uporabljenih pri prejšnjem
časovnem žigu (ES-T). Sekvenčno dodajanje časovnih žigov z daljšimi ključi in novejšo
tehnologijo zaščiti podpis in je potrebno v primeru, ko tehnologija napreduje do te mere,
da je mogoče iz javnega ključa ugotoviti zasebnega, ali ko zgoščevalna funkcija nima več
zaupanja vrednih lastnosti [22].
V skladu s priporočili EESSI (European Electronic Signature Standards Institute) je treba za
dolgotrajno veljavnost osnovnemu formatu podpisov ES-T oz. ES-C, prikazanih na Sliki 2.6,
dodati tudi vrednosti digitalnih potrdil, vključno s potrdili izdajateljev in njihovimi statusi.
Ti razširjeni podatki se zaščitijo s časovnim žigom, ki varuje pred morebitnimi zlorabami
digitalnih potrdil (izdajateljev). Format elektronskega podpisa s tako razširjenimi podatki za
verifikacijo prikazuje Slika 2.7 (označeno ES-XT) [22].
18
Slika 2.7: Grafični prikaz podpisanih dokumentov arhivske vrednosti [22]
Razširjene podatke elektronskega podpisa pa je treba na novo zaščititi potem, ko postane
varnost časovnega žiga (ES-XT) ogrožena. Kot smo že omenili, uporabimo nov časovni žig,
ko je to potrebno, glede na razvoj tehnologije in algoritmov. Arhivski format elektronskega
podpisa (ES-A) z varovanimi podatki za verifikacijo digitalnega podpisa shematsko prikazuje
Slika 2.7 [22].
19
3 VIZUALIZACIJA ELEKTRONSKEGA PODPISA
3.1 Načrtovanje
Na podlagi najdenih informacij, predstavljenih v deskriptivnem delu, in posvetovanj z
mentorjem smo ustvarili načrt poteka dela, kako bomo vizualizacijo implementirali in
kakšne programe bomo uporabili. Osnutek je vseboval prikaz osnove asimetričnega
šifriranja, zgoščevalne funkcije in postopka podpisovanja ter verifikacije. Začrtali smo si,
kakšni elementi bodo vključeni v animacijo in kakšne oblike bodo posamezni objekti.
Začrtano osnovno animacijo smo si najprej skicirali na list papirja. V risarskem programu
smo narisali objekte in nato v programu za animacijo z ustvarjenimi objekti animirali zadan
proces. Po izvršenih osnovnih animacijah smo z mentorjem uskladili ideje. Tako smo dodali
prikaz osnov parov ključev, uporabe infrastrukture javnih ključev ter možnega napada, ki
nam preti ob uporabi asimetričnega šifriranja in podpisovanja. Spremenili smo sporne
objekte in dodali nove elemente ter dopolnili animacije. Animacija tako vsebuje prikaz
parov ključev, asimetrično šifriranje, pridobitev digitalnega potrdila, infrastrukturo javnih
ključev, zgoščevalno funkcijo s prstnim odtisom, podpisovanje, prenos podpisanih
podatkov preko elektronske pošte, verifikacijo in možen napad nad poslanimi podatki ter
verifikacijo po napadu. Ker smo uporabnikom želeli dostaviti boljšo uporabniško izkušnjo
ob učenju elektronskega podpisa, smo animaciji dodali interaktivnost.
Za snemanje videoposnetkov smo poiskali program, ki omogoča snemanje uporabnikovega
zaslona. Določili smo, kaj vse moramo prikazati in kaj posebej poudariti. Načrtovali smo, da
bomo vso ustvarjeno vsebino uporabili v spletnem mestu z uporabo CMS sistema
WordPress.
20
3.2 Uporabljena orodja
Adobe Illustrator se uporablja za risanje vektorskih slik in ilustracij. Za uporabo tega
programa smo se odločili zaradi lastnosti spreminjanja velikosti narisanih komponent brez
popačenja. Z njegovo pomočjo smo narisali vse sestavne dele za posamezne posnetke:
prejemnika, pošiljatelja, zgoščevalno funkcijo, ki jo predstavlja lijak, obrazec, overitelja,
generatorja datotek, pismo, nalivno pero, lupo, certifikat računalnikov, splet, nabiralnike,
štampiljke ključavnic, pare ključev ter druge podrobnosti [25].
Adobe After Effects (AE) omogoča dodajanje vizualnih učinkov obstoječim posnetkom in
ustvarjanje gibalnih grafik. AE smo uporabili, ko smo imeli vse komponente narisane, in z
njim ustvarili gibanje in spreminjanje. Komponentam smo dodali posebne učinke, ki jih
program omogoča, in nato združili posamezne koščke animacije v posnetek. Pri ustvarjanju
animacij smo uporabljali verzijo programa AE 2015, v kateri smo ustvarili posnetek, ter
starejši verziji 2012 in CS6 za potrebe konvertiranja projekta v format flash [25].
S programom Adobe Animate CC, ki se je v starejših različicah imenoval Adobe Flash
Professional, lahko ustvarimo interaktivne animacije za različne platforme. S programom
smo dokončali animacijo. S pomočjo posebnega programerskega jezika, ki ga program
omogoča, smo sprogramirali odseke zaustavitve, kazalu pa dodali povezave do animacij in
izvedbo akcij za posamezni gumb. Program smo poleg programiranja interakcij uporabili za
popravljanje ali dodajanje elementov animacije. Zraven najnovejše verzije programa smo
uporabili tudi starejšo različico Adobe Flash CS6, ki je bila uporabljena za potrebe
konvertiranja med Adobe After Effects in Animate CC [25].
Camtasia je programsko orodje, ki je sestavljeno je iz dveh komponent, snemalnika zaslona
in urejevalnika, v katerem posneto vsebino preoblikujemo. Vsebuje ogromno možnosti za
poljuben prikaz posnetkov. V omenjenem programskem orodju smo ustvarili in uredili vse
posnetke, ki prikazujejo praktične primere uporabe elektronskega podpisovanja [26].
21
WordPress je odprtokodni sistem za upravljanje vsebin, ki temelji na programskem jeziku
PHP. Sistem se uporablja za internetne bloge in spletne strani. Omogoča uporabo spletnih
predlog za vizualni izgled strani, kar smo v diplomski nalogi tudi izkoristili.
3.3 Implementacija
Animacijo smo animirali v programu After Effects. Uporabljali smo ga za ustvarjanje,
premikanje in spreminjanje elementov. Elementom smo dodali različne barve, ki
nakazujejo na razlike med njimi. Za popestritev dogajanja smo uporabili različne učinke. Če
je element vseboval spreminjanje oblike, smo to narisali v programu. V programu AE smo
tako pripravili in dokončali vso animacijo, ki je bila nato uporabna kot samostojni posnetek.
Ko je bila osnovna podoba animacije v programu AE izdelana, smo projekt shranili kot
starejšo verzijo programa CS6, ki podpira prenos projekta v program Adobe Flash
Professional. V slednjem smo projekt shranili kot format, ki smo ga lahko v najnovejši
različici programa Animate CC spreminjali oz. mu dodajali interaktivnost. V novem projektu
smo tako dodali namige, popravili premike, ki so se zgodili ob pretvarjanju, spremenili
izgled kazala, dodali uporabniška navodila in drugo.
S programskim jezikom Action Script, ki ga je možno uporabiti v programu Animate, smo
sprogramirali naslednje stvari: prikaz in skritje kazala, izbiro posameznih animacij v kazalu,
gumbe »prikaži« in »pošlji« pri prikazu animacije asimetričnega šifriranja, infrastrukture
javnih ključev, gumb »zavrti nazaj« pri animaciji prstnega odtisa in druge manjše stvari. V
nadaljevanju bomo podrobno spoznali implementacijo vseh posameznih delov animacije,
kaj prikazujejo posamezni delčki in kako smo se jih lotili.
Javni in zasebni ključ
Temelj elektronskega podpisa je par ključev, ki je sestavljen iz javnega in zasebnega ključa.
Na primeru šifriranja se en ključ uporablja za šifriranje, drugi pa za dešifriranje. Za
22
razumevanje nadaljnjih ilustracij smo temeljni koncept predstavili na začetku animacije.
Animacijo osnovnega koncepta smo si s pomočjo deskriptivnega dela in lastnih idej zamislili
kot ključavnico, ki jo zaklene in odklene par ključev. Ta par predstavlja dva ključa, zelen
javni in rdeč zasebni ključ. Barve smo dodali zaradi lažjega razlikovanja. Kadar ključavnico
odklenemo z javnim ključem, jo lahko zaklenemo samo z zasebnim. Kot napako smo v
animaciji predstavili primer, ko enkrat zaklenemo z zasebnim ključem in želimo enak ključ
uporabiti za odklepanje. Spreminjanje barv smo uporabili tudi pri ključavnici, kjer smo z
zeleno prikazali odklenjeno in z rdečo zaklenjeno ključavnico.
Asimetrično šifriranje
Prikaz asimetričnega šifriranja smo v animaciji uprizorili kot izmenjavo elektronsko
šifriranega sporočila med agentom in sodelavko. Uporaba asimetričnega šifriranja
zagotavlja, da lahko sporočilo prebere samo prejemnik, v našem primeru sodelavka. V
animaciji smo želeli uporabnikom približat vsebino in jo narediti enostavno za razumevanje.
Uporabili smo podobo računalnika, s katero ponazarjamo agentov pripomoček za
izmenjavo sporočil. Pri upodobitvi računalnika je bilo najpomembnejše spreminjanje
njegove velikosti. Računalnik smo v animaciji povečali do te mere, da izgleda, kot da nas
animacija popelje v njegovo notranjost, s tem pa smo na enostaven način prikazali, da se
procesi šifriranja/dešifriranja zgodijo v ozadju računalnika. Ob koncu animacije smo dodali
sporočilo, kako zagotoviti avtentičnost. Uporabnike smo namreč želeli podučiti o
pomanjkljivosti asimetričnega šifriranja. Asimetrično šifriranje ne zagotavlja, da je
pošiljatelj ali prejemnik res to, za kar se izdaja. To zagotovimo z uporabo digitalnih potrdil
oz. certifikatov. Omenjeno rešitev bomo predstavili v naslednjem odstavku.
Pridobitev digitalnega potrdila
Uporabnik verodostojnost zagotovi z uporabo digitalnega potrdila oz. certifikata. Za
njegovo pridobitev so potrebne različne organizacije, kot sta RA in CA. Pri prikazu pridobitve
digitalnega potrdila smo želeli prikazati osnovni potek postopka, zato smo za upodobitev
23
organizacij uporabili podobo pomembne grške stavbe, simbola, ki še danes velja za
pomembno ustanovo. CA in RA sta tako ustanovi, ki preverjata in ustvarjata digitalno
potrdilo. Strežnik potrdil je predstavljen kot strežnik, ki shrani vsa nova potrdila in preverja
njihovo veljavnost. Zahtevek za novo digitalno potrdilo pa smo predstavili kot formular z
osnovnimi podatki, ki jih je treba vnesti, preden gre zahtevek v izvedbo. Izziv v animaciji je
predstavljalo nalivno pero, ki je moralo v določenem trenutku na formularju prikazati
določeno črko oz. besedo.
Infrastruktura javnih ključev
Animacija infrastrukture javnih ključev je prikazana podobno kot prikaz asimetričnega
šifriranja. Uprizarja pošiljanje elektronsko šifriranega sporočila med agentoma. Poglavitna
sprememba in nadgradnja je v parih ključev, ki se ob šifriranju/dešifriranju sporočila
pridobijo iz digitalnega potrdila posameznika, vključenega v komunikacijo. S potrdilom
lahko pošiljatelju zagotovi, da je tisto, za kar se izdaja. Prikaz iskanja digitalnega potrdila
smo predstavili z lupo nad overiteljem digitalnih potrdil. Digitalno potrdilo prejemnika
lahko pridobimo tudi od prejemnika samega ali od drugih, ki imajo njegovo potrdilo. Tega
v animaciji nismo dodali, ker smo želeli potek predstaviti bolj enostavno. V opisani animaciji
in animaciji asimetričnega šifriranja smo med postopki, ki se dogajajo v ozadju računalnika,
za podlago izbrali sliko binarnega sistema, da bi uporabnik takoj zaznal, da se to dogaja
nekje drugje. Končnima verzijama animacij smo dodali tudi interaktivnost, ki zaustavi
predvajanje in čaka na uporabnikovo interakcijo.
Prstni odtis
Animirali smo prstni odtis in zgoščevalno funkcijo, katere izhodni produkt je prstni odtis. Za
prikaz zgoščevalne funkcije smo uporabili podobo lijaka. Lijak je primerna podoba zaradi
svoje oblike, saj je širok zgoraj, kjer lahko stvari z lahkoto stečejo skozi, in ozek spodaj, če
pa ga obrnemo, je skozi ozko grlo težko kaj natočiti, brez da gre preko roba. Lijak torej
nazorno prikazuje enosmerno funkcijo. Animacija prstnega odtisa je tako vsebovala več v
24
celoto združenih elementov: prikaz generiranja prstnega odtisa, spremembo vsebine
podatkov in generiranje novega prstnega odtisa ter prikaza, da iz prstnega odtisa ni možno
razbrati vsebine sporočila oz. podatkov. Pri prikazu generiranja prstnega odtisa smo si
pomagali s posebnim učinkom, ki je vhodne podatke zmanjšal in zmečkal, da so lahko šli
skozi lijak. Težava, ki se je pojavila pri animaciji, je bila, kako prikazati prstni odtis, da bo
razumljiv. Alfa numerični znaki, ki jih ustvari zgoščevalna funkcija, namreč niso dovolj
nazorni, zato smo po premisleku k znakom dodali sliko prstnega odtisa. Alfa numerične
znake in sliko prstnega odtisa smo obdali z okvirjem, s tem pa dosegli prikaz celote in bolje
razumljen prstni odtis. V končni verziji animacije smo dodali interaktivni gumb, s pomočjo
katerega uporabnik spozna, kako se sprememba vsebine odraža pri prstnem odtisu.
Podpisovanje
Animacija podpisovanja, vsebuje uporabo zgoščevalne funkcije in infrastrukture javnih
ključev. Idejo, kako uporabniku predstaviti šifriranje prstnega odtisa in skupaj s certifikatom
prikazati kot elektronski podpis, smo našli v sestavljankah, ki so dober primer združevanja
delov v celoto. Ideja, ki smo jo uporabili pri prikazu, se je dobro obnesla. Šifriran prstni odtis
v animaciji postane sestavljanka, ki se skupaj z digitalnim potrdilom pritrdi na podatke. Prvi
izziv pri animiranju je bil preklop med prstnim odtisom in šifriranim prstnim odtisom. Prstni
odtis v animaciji namreč sestoji iz štiridesetih znakov, za vsak posamezni znak pa je bilo
treba spremeniti obliko. Drugi izziv, s katerim smo se spopadli pri animaciji podpisovanja,
je bil prikaz podpisa. Podpis smo ročno narisali in ga nato skupaj s padajočim šifriranim
prstnim odtisom ob točno določenem času postopno prikazovali.
Pošiljanje e-poštnega sporočila
Podpisane podatke do prejemnikov pošiljamo preko spleta, kar smo na svojevrsten način
prikazali v animaciji. Za poenostavljen prikaz elektronskega poštnega nabiralnika smo
uporabili navadni nabiralnik. Idejo za to smo dobili iz vsakdanjega življenja, kjer poštarji
pisma dostavljajo v poštne nabiralnike. Poslano sporočilo je v tej animaciji kot pismo, ki v
25
obliki letala potuje med poštnima nabiralnikoma. Spreminjanje oblik pisma smo dosegli z
uporabo objekta oblik, ki omogoča spreminjanje celotne oblike elementa.
Verifikacija
Verifikacija pri uvajanju novih elementov ni prestavljala velikih težav, saj je bil težji del že
za nami in pri iskanju razlik v prstnem odtisu novi atributi niso bili potrebni. Verifikacija je
obraten proces podpisovanja. Opisano animacijo smo predstavili kot animacijo
podpisovanja z binarno kodo v ozadju, kar nakazuje na to, da se procesi izvajajo v
računalniškem ozadju in uporabniku niso vidni. Ob generiranju prstnega odtisa smo si kot
pri zgoščevalni funkciji za lepši izgled pomagali s posebnim učinkom, ki vhodno vsebino pri
prehodu skozi lijak zmečka. Za preverjanje skladnosti šifriranega prstnega odtisa in
prstnega odtisa prejete vsebine smo uporabili obliko puščice, ki ponazarja enakost in obliko
križa za neenakost.
Prenos elektronskega podpisa
Prenašanje elektronskega podpisa iz ene v drugo datoteko zaradi različnih prstnih odtisov
ni veljavno. Prikaz tega smo izvršili z različnimi sestavljankami, s katerimi smo želeli
prikazati, da se sestavljanke skladajo samo na enem mestu. Elektronski podpis torej velja
samo za vsebino oz. dokument, za katerega je bil ustvarjen. Kadar se sestavljanke niso
skladale, smo neskladnost prikazali z obliko križa.
Napad »man in the middle«
Ustvarili smo pozitivne scenarije, za dobro razumevanje pa je treba dodati tudi negativen
scenarij, zato smo predstavili napad »man in the middle«. Animacija je nadgraditev
animacije pošiljanja pisma prejemniku, ki smo jo predstavili prej. Dodatni element v
animaciji je zlonamernež, ki na poti do prejemnika prestreže datoteke, spremeni njihovo
vsebino in spremenjene datoteke pošlje do ciljnega prejemnika. Preverjanje spremenjene
26
vsebine sledi v naslednjem odstavku, kjer bomo razložili, kako se sprememba izraža med
preverbo.
Verifikacija po napadu
Verifikacija po napadu nam prikaže, da je bila datoteka spremenjena in je posledično
spremenjen tudi prstni odtis datoteke. Animacija nam prikazuje neskladje prstnega odtisa
vsebine in prstnega odtisa elektronskega podpisa. Prikaz je podoben kot pri verifikaciji, z
razliko v neujemanju prstnih odtisov. Neujemanje v animaciji prikažemo kot prekrižan rdeč
križ, ki ponazarja obratno vrednost pravilnosti prikazov, za prikaz katerih v animacijah
uporabljamo zeleno kljukico.
Posamezne osnovne animacije smo po izpopolnjevanju in spreminjanju nadgradili v
uporabne animacije. Ko so bile dokončane in pripravljene, da jih združimo v eno celoto,
smo ustvarjanje nadaljevali v programu After Effects. Najprej smo ustvarili novo skupino, v
katero smo dodali vse animacije, jih uredili in pred vsako izmed njih na začetku predvajanja
dodali naslove ter jim dodali gibanje.
Po kreiranju vseh naslovov smo se odločili za izdelavo začetnega zaslona, ki že na začetku
postreže s podatki o tem, kako uporabljati animacijo, in predstavi, kaj bo animacija
prikazovala. Slika 3.1 prikazuje začetni zaslon, ki smo ga začeli izdelovati v programu After
Effects in ga dokončali v programu Animate CC. Slednji nam je omogočil dodati namige –
kadar z miško preidemo preko datoteke, prstnega odtisa ali podpisa, nam animacija za vsak
element izpiše njegov pomen. Namige smo ustvarili za lažje razumevanje v nadaljnjih
animacijah. S programom smo si nato pomagali pri izvedbi kazala, ki smo ga sprogramirali
tako, da nam ob kliku na posamezno število prikaže zaporedno animacijo. Animaciji smo
dodali navodila za uporabo, ki so vsebovala napotke za prikazovanje ali skrivanje kazala,
kako zaustaviti posnetek in kako nadaljevati animacijo.
27
Slika 3.1: Prikaz začetnega zaslona animacije
Celotno animacijo smo uporabili v spletni platformi, ki jo bomo podrobneje opisali v
poglavju Spletna platforma. Spletno predlogo smo spremenili po lastni presoji. Dodali smo
videoposnetke, ki jih bomo predstavili v poglavju, ki sledi, in tako ustvarili spletno mesto za
učenje elektronskega podpisa.
3.4 Primeri uporabe elektronskega podpisa
Najpogosteje se z elektronskim podpisom in uporabo infrastrukture javnih ključev
srečujemo pri brskanju po različnih varnih spletnih straneh preko internetnih brskalnikov.
Ljudje, ki jih skrbi verodostojnost poslanih ali prejetih sporočil oz. podatkov, so na njihovo
varnost bolj pozorni in bodo ob obisku spletne strani v različnih internetnih brskalnikih iskali
digitalna potrdila in preverjali njihovo veljavnost. S pomočjo svojega digitalnega potrdila
bodo elektronski podpis ob komunikaciji s prijatelji ali poslovnimi partnerji največkrat
uporabljali pri pošiljanju e-pošte. Za tiste manj vešče uporabe teh storitev smo v diplomski
28
nalogi pripravili nekaj navodil oz. posnetkov, kako uporabiti elektronsko podpisovanje in
kako se zaščititi pred prevarami na lažnih varnih straneh.
Posnetke z navodili uporabe elektronskega podpisa smo ustvarili s programom Camtasia
Studio. Program omogoča zajemanje dogajanja na uporabniškem zaslonu. Zajete posnetke
smo nato v programu uredili. Povečali smo kazalno miško, dodali povečave nad
pomembnimi odseki in ustvarili vizualne prehode med deli videoposnetkov. Ustvarjeni
projekt smo nato izvozili v različnih formatih.
Pred uporabo programov in elektronskim podpisovanjem, ki ga bomo predstavili v
naslednjih poglavjih, je potrebna še pridobitev digitalnega potrdila (postopek pridobitve je
opisan v poglavju Digitalno potrdilo). V primeru, da imamo v lasti digitalno potrdilo, ki je
nameščeno na drugem računalniku, ga lahko s pomočjo varnostne kopije prenesemo in
namestimo na željeni računalnik.
Pošiljanje elektronske pošte
Pošiljanje e-pošte je v današnjem času zelo pogosto, verodostojnost poslanih pogodb in
sporočil pa ključnega pomena. Pri zagotavljanju varnosti je elektronski podpis še kako
prisoten, zato smo se odločili prikazati potek pošiljanja elektronsko podpisanih sporočil. V
poglavju bomo predstavili elektronsko podpisovanje sporočil v treh različnih programih, ki
so namenjeni pošiljanju elektronske pošte, to so: Microsoft Outlook, Mozilla Thunderbird
in vtičniku Mailvelope, ki je ustvarjen za storitev Gmail.
V nadaljevanju je opisan postopek ustvarjanja videoposnetka elektronskega podpisovanja
e-poštnega sporočila v programu Outlook. Najprej smo preučili orodje, nato pa dodali
digitalno potrdilo, s katerim smo imeli nekaj težav. Videoposnetek je sestavljen iz več delov,
ki smo jih v orodju Camtasia Studio nato združili. Vsi deli nam niso uspeli v prvem poskusu,
zato smo morali nekatere posneti večkrat. Posledično smo morali digitalno potrdilo večkrat
odstranit. Brisanje digitalnega potrdila v programu razen ob izvozu ni možno, zato smo
29
poiskali hitrejšo možnost. V posebnem orodju znotraj operacijskega sistema najdemo vse
naše certifikate, ki so povezani s programom Microsoft Outlook. S tem orodjem smo lahko
hitreje odstranili naše digitalno potrdilo in pospešili proces snemanja. Med snemanjem smo
morali biti pozorni, da nismo razkrili preveč osebnih podatkov, zato smo večinoma snemali
tako, da so stvari zavzemale celoten zaslon. Slika 3.2 nam prikazuje del videoposnetka, pri
katerem program ob kliku na »pošlji sporočilo« od nas zahteva, da odobrimo uporabo
našega ključa.
Slika 3.2: Prikaz podpisovanja elektronske pošte v programu Outlook
Program Thunderbird enako kot Outlook ponuja možnost podpisovanja besedila z našim
digitalnim potrdilom. Za razliko od Outlooka pa ima Thunderbird enostavnejše
odstranjevanje potrdila. Poudariti moramo, da Thunderbird privzeto ne omogoča
varnostnega vprašanja o odobritvi uporabe para ključev, kot to omogoča Outlook. Za
30
podobno funkcionalnost je treba spremeniti nastavitve. S snemanjem posnetkov pri
uporabi programa nismo imeli večjih težav, saj smo program uporabljali dalj časa in ga zato
poznali. Kadar želimo novo sporočilo elektronsko podpisati, to storimo s pomočjo možnosti
»varnost« in nato z uporabo funkcije »digitalno podpiši to sporočilo«. Ob vklopu izbrane
funkcije se nam v skrajnem desnem kotu prikaže mapa z žigom, kar pomeni uporabo
elektronskega podpisa.
Mailvelope je razširitev za internetne brskalnike, ki omogoča izmenjavo šifrirane e-pošte
po standardu OpenPGP (odprt standard PGP, ki smo ga predstavili v poglavju Infrastruktura
javnih ključev) [27]. Mailvelope lahko kot dodatek namestimo na brskalnika Firefox ali
Google Chrome. Ob enostavni namestitvi se nam v orodni vrstici ustvari ikona, preko nje pa
dostopamo do nastavitev razširitev. V nastavitvah si moramo pred uporabo ustvariti par
ključev in dodamo javne ključe oseb, katerim želimo pošiljati šifrirana sporočila. Te lahko
poiščemo na javnem strežniku, lahko pa nam prejemnik pošlje svoj javni ključ kot datoteko
ali besedilo preko pošte ali katerega drugega kanala. V nastavitvah lahko nastavimo tudi,
za katerega ponudnika e-pošte naj bo vtičnik na voljo.
Elektronsko podpisano sporočilo smo ustvarili z uporabo vtičnika Mailvelope v storitvi
Gmail, kjer ob kliku na novo sporočilo hitro najdemo ikono do vtičnika. Ob kliku se nam
prikaže okno, v katero napišemo sporočilo in dodamo prejemnika ter izberemo med
možnostmi, kot sta podpisovanje ali šifriranje sporočila. Ob kliku na »podpiši« nas program
obvesti, da moramo vnesti geslo, s katerim smo si ustvarili par ključev. Tako pripravljeno
sporočilo se pripiše v telo sporočila Gmail, program pa mu doda alfa numerične znake. Ti
znaki so neberljiv šifriran podpis PGP.
Podpisovanje elektronskih dokumentov
Kot je podpisovanje elektronske pošte pomembo za verodostojnost sporočil, je pomembna
tudi verodostojnost elektronskih dokumentov. Z namenom zagotavljanja le-te v tem
31
poglavju predstavljamo elektronsko podpisovanje dokumentov v programih Microsoft
Word in Adobe Reader.
Wordov dokument lahko elektronsko podpišemo z uporabo osebnega digitalnega potrdila,
shranjenega na računalniku. Digitalnega potrdila v programu ni mogoče dodajati ali
odstranjevati. Slika 3.3. prikazuje odprto okno, ki se pojavi, kadar želimo v Wordu
dokument elektronsko podpisati. V oknu »podpiši« tako izberemo ustrezno digitalno
potrdilo in ob kliku na »podpiši« potrdimo uporabo zasebnega ključa. Dokument je nato
pripravljen za pošiljanje preko spleta. Pri vsakršnem urejanju vsebine dokumenta se
elektronski podpis odstrani in s tem dokument ni več verodostojen.
Slika 3.3: Prikaz okna za podpisovanje Wordovih dokumentov
Datoteke PDF (Portable Document Format) lahko v programu Adobe Reader zaščitimo na
enak način kot Wordov dokument. Z orodjem »potrdila« lahko datoteke elektronsko
podpišemo s parom ključev iz osebnega digitalnega potrdila. Razlika med datotekami
programov Word in Adobe Reader je v tem, da lahko pri PDF-jih označimo, naj bo ob
podpisu datoteka končna ali ne, kar v Wordu ni mogoče. Če datoteko označimo kot končno,
se dokument zaklene in spremembe niso možne. V nasprotnem primeru pa elektronski
32
podpis ob spremembi ostane, s pripombami, kaj se je po podpisu spremenilo, in čaka na
podpis nastalih sprememb. Pri postopku elektronskega podpisovanja lahko izbiramo med
možnostmi izgleda napisa v dokumentu in zaklepa dokumenta. Dokument elektronsko
podpišemo z vnesenim geslom ali s potrditvijo uporabe ključev digitalnega potrdila in
klikom na gumb »podpiši«, s čimer shranimo novo nastali dokument. Razlika med
potrditvijo in vnosom gesla je v stopnji oz. ravni zaščitenosti, pri čemer vnos gesla
predstavlja višjo raven.
Internetni brskalniki
Internetni brskalniki za varno povezavo uporabljajo protokol HTTPS, ki uporablja
kriptografski protokol SSL in TLS. Pri tem se uporabljajo koncepti elektronskega podpisa.
Videoposnetki, ki smo jih posneli, prikazujejo, kako na različnih brskalnikih ugotovimo
varno povezavo in si ogledamo digitalno potrdilo dostopnega spletnega mesta. Za prikaz
smo uporabili najpogosteje uporabljene internetne brskalnike: Mozilla Firefox, Google
Chrome in Internet Explorer [1].
Mozilla Firefox ima enostaven vmesnik in podatke o dostopnem mestu najdemo hitro. V
vrstici z internetnimi naslovi oz. iskalni vrstici se na levi strani nahaja ključavnica, ki se ob
obisku varne spletne strani obarva zeleno. Na Sliki 3.4 lahko vidimo, kaj brskalnik
uporabniku prikaže ob kliku na ključavnico in v nadaljevanju ob kliku na »več informacij«,
če želimo pregledati digitalno potrdilo in druge varnostne podrobnosti obiskane strani.
Slika 3.4: Prikaz varne povezave v brskalniku Mozilla Firefox
33
Za razliko od Mozille je prikaz digitalnega potrdila v brskalniku Google Chrome otežen, saj
moramo do želenih informacij ubrati daljšo pot, ki je podrobno prikazana tudi v
videoposnetku. Osnovni prikaz varne povezave pa je podoben. Ključavnica se nahaja na
istem mestu, ob kliku nanjo pa nam brskalnik prikaže samo osnovne podatke.
Internet Explorer omogoča prikaz varne povezave na nasprotni strani naslovne vrstice.
Težavnost dostopanja do digitalnega potrdila je med predstavljenimi brskalniki pri Internet
Explorerju najmanjša. Z dvema klikoma nam brskalnik prikaže digitalno potrdilo obiskanega
spletnega mesta, s katerega lahko nato razberemo, ali je bilo podpisano s strani zaupanja
vrednega overitelja, ali pa je overitelj sumljiv.
Posodobitve Windows
Windows za doseganje optimalnega delovanja sistemov uporablja posodobitve, ki skrbijo
za to, da naš operacijski sistem vedno deluje v najnovejši različici, varni pred grožnjami in
napadi. Kadar naš sistem posodablja programe in podatke, mora prenesenim podatkom
tudi zaupati. Zato Windows vse pomembe podatke elektronsko podpisuje, preden se
naložijo na naš sistem. To smo lahko tudi preverili s posebnim orodjem Sigcheck, ni pa bilo
mogoče prikazati poteka podpisovanja v realnem času. Zato smo naredili kratko animacijo,
ki na poenostavljen način prikazuje, kako Microsoft pri posodabljanju operacijskega
sistema elektronsko podpisuje podatke. Slika 3.5 prikazuje del animacije posodabljanja
operacijskega sistema, v kateri smo kot v drugih animacijah uporabili obliko računalnika ter
nov element podobe strežnika, kjer se podpisovanje izvaja [28].
34
Slika 3.5: Prikaz posodabljanja sistema
3.5 Spletna platforma
Spletna platforma temelji na spletni tehnologiji WordPress. WordPress je med bolj
uporabljanimi sistemi CMS, ki podpirajo ustvarjanje in spreminjanje digitalnih vsebin na
spletnih straneh. Vsebina in predstavitev vsebine sta ločeni, kar pomeni enostavnejše
spreminjanje spletne strani [29].
Izdelave spletne platforme smo se lotili tako, da smo najprej na spletno mesto namestili
CMS sistem WordPress. Nato smo morali poiskati predlogo spletne strani, ki bi najbolje
prikazala vsebino, predstavljeno v diplomskem delu. Med veliko izbiro, ki jo ponuja svetovni
splet, smo izbrali temo, za katero menimo, da na lep način prikazuje elektronski podpis in
vsebovane komponente. Slednjo smo preuredili v urejevalniku, ki ga sistem omogoča.
Elementov, ki jih nismo mogli preurediti s pomočjo možnosti, ki jih tema ponuja, smo uredili
v programski kodi. Videoposnetke smo razdelili v kategorije brskanje po svetovnem spletu,
pošiljanje elektronske pošte, podpisovanje elektronskih dokumentov in posodabljanje
operacijskega sistema. S pomočjo vtičnika smo nato ustvarili galerijo videoposnetkov za
35
posamezno kategorijo. Dodali smo predstavitev vseh videoposnetkov in nekaj splošnih
informacij o projektu ter povezavo do spletne strani za pridobitev digitalnega potrdila.
Animacijo smo naložili na strežnik in z delčkom programske kode vstavili v spletno
platformo. Želeli smo, da je vizualna predstavitev čim večja, in s tem poskrbeli za boljšo
vidljivost. Za dosego le-te smo morali urediti tudi odzivnost spletne strani na različno velike
zaslone. Prikaz dela prve strani lahko vidimo na Sliki 3.6.
Slika 3.6: Prikaz spletne platforme
3.6 Težave
Program After Effects ne omogoča dodajanja interakcij, zato smo morali celotni projekt
prenesti v Adobe Flash oz. Animate CC. Pri tem smo naleteli na težavo. Izmenjavo projektov
med programoma AE in Flash Professional so ustvarjalci po verziji CS6 ukinili. Zato je bilo
treba projekt, ki smo ga ustvarili v verziji 2015, najprej shraniti kot verzijo 2012, nato pa kot
verzijo CS6, za kar smo za namene transformiranja potrebovali dve starejši različici. Verzija
CS6 nam namreč omogoča hrambo projekta kot datoteke formata .xfl, ki ga Adobe Flash
Professional enake verzije podpira, in s tem tudi možnost urejanja. V Adobe Flash
36
Professional smo nato projekt shranili kot projekt Flash, ki smo ga lahko odprli v najnovejši
različici programa Flash Professional, Animate CC, v katerem smo urejali in dodajali vsebino.
Pri uporabi učinkov, ki so jim v novejših različicah dodane funkcije in jih starejše ne
podpirajo, smo morali uporabiti drugačen pristop. Ugotoviti je bilo treba, kakšne so razlike
med različicami, in uporabiti pristop, ki zagotovi enak potek animacij, kot ga podpirajo
starejši programi.
Izziv pri posameznem delu animacij je bil postavitev elementov, kjer smo morali paziti na
enostavnost, ne prekrivanje in prepotovano dolžino elementov. Z več iteracijami
premikanja in predvajanja sprememb smo dosegli optimalno postavitev posameznih
elementov animacije.
Ob konvertiranju med programoma AE in Flash (Animate CC) je pri nekaterih objektih prišlo
do sprememb položaja. Vzrok je bil v različnih razsežnostih. Dvodimenzionalni objekti so
bili odmaknjeni od tridimenzionalnih, čeprav bi jih ti morali prekrivati. Z uvedbo treh
dimenzij nad dvodimenzionalnimi objekti so nato po transformaciji elementi postali
skladni. Dele, kjer so posnetki v Flashu iz neznanih razlogov postali krajši oz. skriti, pa smo
morali v programu Animate popraviti.
Najnovejša različica programa Flash omogoča, da lahko projekt izvozimo tudi v novejši
tehnologiji html5. Za izvoz projekta v format html5 je treba projekt preko skripta iz
programa pretvoriti v html5 canvas projekt, popraviti programirane ukaze in nato izvoziti
kot format html5. To žal ni bilo mogoče, ker canvas objekt html5 ne podpira video vsebine.
V postopku prenašanja iz AE v Flash so se namreč nepoznani elementi pretvorili v video
vsebino. Kljub iskanju rešitev smo morali projekt obdržati v formatu flash. Ugotovili smo,
da bi pretvorba delovala, če bi animacijo od začetka ustvarjali v Animate CC ali starejših
verzijah programa Adobe Flash.
37
4 SKLEP
Namen diplomske naloge je bil ljudem podrobneje vizualno predstaviti in prikazati uporabo
koncepta elektronskega podpisovanja. Po preučenih informacijah z deskriptivno metodo
dela smo si ustvarili načrt, kako se bomo animacije lotili. Z implementacijo smo pridobili
animacijo, ki na enostaven način prikazuje elektronsko podpisovanje in koncepte, povezane
s tem, osnove asimetričnega šifriranja, infrastrukture javnih ključev, zgoščevalne funkcije
in digitalnega potrdila. Vse elemente animacije smo animirali s programom After Effects.
Želeli smo, da uporabnik ob gledanju animacije sodeluje, zato smo v programu Adobe
Animate CC animaciji dodali interaktivnost. Uporabnik tako na določenih točkah z uporabo
tipkovnice ali miške sodeluje pri posnetku. Po končani animaciji smo za uporabnike posneli
primere uporabe elektronskega podpisovanja. V njih smo prikazali, kako poslati podpisano
elektronsko sporočilo in podpisati elektronski dokument, ter kako brskalniki uporabljajo
elektronski podpis za varno brskanje. Kot zadnje smo upodobili varnostni ukrep, ki ga ob
posodobitvah uporabljajo operacijski sistemi, saj tega v realnem času nismo mogli prikazati.
Ustvarjene komponente smo se odločili predstaviti širši javnosti, zato smo ustvarili spletno
platformo. Za postavitev spletne platforme smo uporabili CMS sistem WordPress. Z
njegovo pomočjo smo ustvarili vizualno pregledno podobo, kamor smo naložili vso gradivo,
ki smo ga v diplomski nalogi naredili. Spletna platforma za vizualizacijo elektronskega
podpisa tako uporabnikom služi kot pripomoček za učenje.
Z ustvarjanjem pripomočka za učenje smo imeli nekaj izzivov, ki so bili tehnične in kreativne
narave. Kljub temu smo izzive uspešno rešili in ljudem predstavili odskočno desko v svet
digitalizacije, saj se je z osnovnim znanjem, ki ga platforma ponuja, možno enostavneje
izogniti določenim spletnim prevaram in s tem slediti napredku današnje tehnologije.
V prihodnje bi spletno platformo posodobili in razširili, da bi postala prijaznejša do
uporabnika, in sicer bi v animaciji dodali poudarek na interakciji. Vizualizacijo bi
preoblikovali tako, da bi podpirala tehnologijo html5. V spletno platformo bi dodali kviz, ki
38
bi sproti ali ob koncu učnega gradiva preverjal uporabnikovo znanje, ter animacijo razširili
s konceptom časovnega žigosanja.
39
VIRI
[1] StatCounter, „Desktop Browser Market Share Worldwide“, 2017. [Na spletu].
Dostopno: http://gs.statcounter.com/browser-market-
share/desktop/worldwide/#monthly-201606-201706-bar. [Dostopano: 02-sep-
2017].
[2] D. E. Rob, Cryptography and Data Security, št. May. Monterey, California USA:
Addison - Wesley publishing company, 1982.
[3] W. Stallings, Network security essentials : applications and standards, Fourth Edi.
2011.
[4] M. Hansen, M. Jensen, in M. Rost, „Protection goals for privacy engineering“, Proc. -
2015 IEEE Secur. Priv. Work. SPW 2015, str. 159–166, 2015.
[5] M. C. Rajalakshmi in A. P. G. Prakash, „Emerging Research in Computing,
Information, Communication and Applications“, str. 265–271, 2015.
[6] D. Gleich in Č. Žarko, „Varnost informacij in omrežij“. Technická 2, Praha 6, Czech
Republic, str. 68.
[7] D. R. Kuhn, V. C. Hu, W. T. Polk, in S. Chang, „Introduction to Public Key Technology
and the Federal PKI Infrastructure“, System, št. February, str. 1–54, 2001.
[8] W. H. Choudhury, Suranjan, Kartik Bhatnagar, Public Key Infrastructure
Implementation and Design 1st. New York: John Wiley & Sons, Inc. New York, NY,
USA ©2002, 1940.
[9] J. R. Vacca, Public Key Infrastructure: Building Trusted Applications and Web Services.
2004.
[10] „Public key infrastructure“. [Na spletu]. Dostopno:
https://en.wikipedia.org/wiki/Public_key_infrastructure. [Dostopano: 24-avg-
2017].
[11] W. A. C. Chuck Cothren, Roger Davis, Dwayne Williams, Gregory White, „CompTIA
Security+ All-in-One Exam Guide“, v CompTIA Security+ All-in-One Exam Guide, Third
Edition, Third Edit., McGraw-Hill, 2011, str. 111–156.
[12] „Osebni dokumenti, digitalno potrdilo Kvalificirano digitalno potrdilo“. [Na spletu].
40
Dostopno: https://e-uprava.gov.si/si/podrocja/osebni-dokumenti-potrdila-
selitev/osebni-dokumenti/digitalno-potrdilo-za-elektronsko-poslovanje.
[Dostopano: 24-avg-2017].
[13] RSA Data Security, „Understanding Public Key Infrastructure ( PKI )“, str. 1–7, 1999.
[14] L. L. and L. R. Steve Dusse, Paul Hoffman, „Secure/Multipurpose Internet Mail
Extensions (S/MIME) Version 3.1“, J. Chem. Inf. Model., let. 53, št. 9, str. 1689–1699,
2013.
[15] „Uporaba kriptografije v internetu“. [Na spletu]. Dostopno: http://www.si-
ca.si/kripto/index.htm. [Dostopano: 24-avg-2017].
[16] W. Stallings, D. Atkins, in P. Zimmermann, „PGP Message Exchange Formats Status“.
Boulder, Colorado 80304, str. 1–21, 1996.
[17] „Pki / Pgp“. [Na spletu]. Dostopno:
https://img.devrant.io/devrant/rant/r_120964_pRz7Q.jpg. [Dostopano: 24-avg-
2017].
[18] „Zakon o elektronskem poslovanju in elektronskem podpisu (Uradni list RS, št. 98/04
– uradno prečiščeno besedilo, 61/06 – ZEPT in 46/14)“, 2000.
[19] (Državni center za storitve zaupanja), „Kvalificiranih Digitalnih Potrdil in Registra
Preklicanih Potrdil Sigen-Ca in Sigov-Ca“, št. september. Državni center za storitve
zaupanja, Ljubljana, str. 23, 2016.
[20] „digitalno potrdilo za elektronsko poslovanje“. [Na spletu]. Dostopno: https://e-
uprava.gov.si/si/podrocja/osebni-dokumenti-potrdila-selitev/osebni-
dokumenti/digitalno-potrdilo-za-elektronsko-poslovanje. [Dostopano: 21-avg-
2017].
[21] „Osnove tehnologije elektronskega poslovanja in elektronskega podpisa“. [Na
spletu]. Dostopno: http://www.si-ca.si/tehnicne_osnove.php. [Dostopano: 24-avg-
2017].
[22] (Overitelj na Centru Vlade RS za Informatiko), „Z UPORABO DIGITALNIH POTRDIL
SIGEN-CA IN SIGOV-CA“. Ljubljana, str. 1–34, 2003.
[23] „Digital_Signature_diagram“. [Na spletu]. Dostopno:
https://commons.wikimedia.org/wiki/File:Digital_Signature_diagram.svg.
41
[Dostopano: 20-jul-2017].
[24] M. za javno Upravo, „Politika SI-TSA“, Polit. SI-TSA za izdajo varnih časovnih žigov,
str. 22, 2015.
[25] „Adobe orodja“. [Na spletu]. Dostopno:
https://www.adobe.com/creativecloud/catalog/desktop.html?promoid=PTYTQ77P
&mv=other. [Dostopano: 24-avg-2017].
[26] „Camtasia“. [Na spletu]. Dostopno: https://en.wikipedia.org/wiki/Camtasia.
[Dostopano: 24-avg-2017].
[27] „Mailvelope“. [Na spletu]. Dostopno: https://www.mailvelope.com. [Dostopano:
24-avg-2017].
[28] M. Russinovich, „Sigcheck“, 2017. [Na spletu]. Dostopno:
https://docs.microsoft.com/en-us/sysinternals/downloads/sigcheck. [Dostopano:
11-sep-2017].
[29] „Content management system“. [Na spletu]. Dostopno:
https://en.wikipedia.org/wiki/Content_management_system. [Dostopano: 24-avg-
2017].