Üldteavet arendajatele

Allikas: eid.eesti.ee
Redaktsioon seisuga 10. september 2012, kell 08:23 kasutajalt Tiitpikma (arutelu | kaastöö) (Alamleheks)
(erin) ←Vanem redaktsioon | Viimane redaktsiooni (erin) | Uuem redaktsioon→ (erin)

Üldteavet arendajatele

Jaotis sisaldab teavet, mida saab ära kasutada nii olemasolevate kui ka uute rakenduste arendamisel.

Arendusvahendid

Kuna ei saa eeldada, et igal arendajal või arendushuvilisel on võimalus osta Windowsi ja arendusvahendite litsentsid, siis on alljärgnevalt toodud legaalsed võimalused nende proovimiseks.

Soovitatav operatsioonisüsteem on Windows 7 põhjusel, et Windows XP tugi lõpeb täielikult 8.04.2014, aga Windows 7'l 14.01.2020.

Testimisvahendid

AS-ist Sertifitseerimiskeskus saab tellida testotstarbelisi ID-kaarte, digi-IDsid ja digitempleid (eToken krüptopulgal). Digitempli puhul on võimalik tellida kohandatud väärtustega subjektiväli (CN, Common Name). Hinnakirja ning täpsustava teabe leiab SK testkaartide lehelt.

Testkaartide kasutamiseks tuleb paigaldada ka testsertifikaadid: Windowsis on selleks testsertifikaatide pakk ning Linuxis kas esteidcerts-dev või esteidcerts-devel pakk (olenevalt pakihaldurist).

eToken-krüptopulga kasutamine

Kirjutamise hetkel on eToken-krüptopulk SK poolt toetatud ainult Windows-keskkonnas ning kõik vajalik allalaetav aadressilt: https://installer.id.ee/media/SafeNetAuthenticationClient_8_1_SP1Windows.zip.

Linux jt platvormid on SK poolt testimata ja toetamata, kuid vastavaid eTokeni draivereid on nad nõus teadlikule kasutajale jagama. Konteiner, mis sisaldab kõike vajalikku Linuxile koos dokumentatsiooniga on allalaetav aadressilt: https://installer.id.ee/media/SafeNetAuthenticationClient_Linux_8.1.zip.

Toetatud tarkvara:

  • Red Hat Enterprise 5.4 (32-bit and 64-bit) on 2.6 kernel
  • CentOS 5.4 (32-bit and 64-bit) on 2.6 kernel
  • SUSE Linux Enterprise 11 (32-bit and 64-bit) on 2.6 kernel
  • Fedora 11 (32-bit)
  • Fedora 12 (32-bit)
  • Ubuntu 9.10 (32-bit)
  • Ubuntu 10.04 (32-bit and 64-bit) on 2.6 kernel

Pakid sisaldavad endas mitmeid utiliite, ent oluliseimaks on seal leiduvad draiverid ning PKCS#11 moodulid. Viimaste asukohad on %SYSTEMROOT%\System32\eToken.dll (Windows) ning /lib/libeToken.so.8 (Linux; lõpus olev number sõltub versioonist) — neid läheb vaja, kui on soovi PKCS#11 API kaudu digitempliga suhelda.

Isikuandmete faili kasutamine

Infoturbe koosvõime raamistik [1] sätestab: ID-kaardi isikuandmete fail sisaldab sama informatsiooni, mis on kaardile kantud visuaalselt. See sisaldab kaardiomaniku nime, kaardi kehtivuse aega ja muud sarnast. Oluline on, et see sisaldab ka kaardiomaniku isikukoodi. Kui omanik sisestab kaardi kiipkaardilugejasse, on süsteemil võimalik sealt kiirelt välja lugeda isikukood ja kasutada seda oma edasistes toimingutes.'

Isiku tuvastamist ID-kaardi isikuandmete faili abil on mõistlik kasutada kohtades, kus on võimalik ka visuaalne isikutuvastamine (näiteks piiri ületamisel).

ID-kaardil sisalduvad andmed

Allolevaid andmeid saab lugeda ilma PIN-koodi sisestamata (piisab, kui kaart on lugejas).

Omaniku andmed:

  • eesnimi
  • keskmine nimi
  • perekonnanimi
  • sünnipäev
  • sünnikoht
  • isikukood
  • rahvus
  • sugu
  • elamisloa tüüp

ID-kaardi enda kohta saab lugeda järgmiseid andmeid:

  • ID-kaardi seerianumber
  • ID-kaardi aegumise aeg
  • ID-kaardi väljaandmise aeg

Kaardi üheseks indentifitseerimiseks on võimalik kasutada infot failist FID=EEEE/5044 (Personal Data File).[2]

Isikuandmete faili kasutamine veebis

Uue Digidoc-pluginaga pole võimalik lugeda ID-kaardilt isikuandmete faili. Ainus võimalus faili lugemiseks (SK kommentaar 31.05.12) on kasutades ID-kaardi tarkvaraga kaasasolevat utiliiti eidenv.exe. Seetõttu rakendusjuhend seda alamteemat ei käsitle.

ID-kaardi @eesti.ee meiliaadressi kasutamine

ID-kaardi autentimissertifikaadis sisaldub ka riigi poolt kaardiomanikule omistatav eluaegne meiliaadress kujul Eesnimi.Perenimi_XXXX@eesti.ee, kus XXXX on juhuslikult genereeritud neljakohaline arv. Alates 2005. aastast väljastatakse sertifikaatide uuendamisel ja uute ID-kaartide väljastamisel e-posti aadress kujul Eesnimi.Perenimi@eesti.ee; juhul, kui sama ees- ja perenimega isikuid on mitmeid, saavad järgnevad isikuid aadressi kujul Eesnimi.Perenimi.N@eesti.ee, kus N on järjenumber. Eelmised aadresskujud jäävad samuti kehtima.

Failivormingud

DDOC

DigiDoc failivorming on standardi ETSI 101 903 (XML Advanced Electronic Signatures – XAdES) profiil "XAdES-X-L". Antud standard kirjeldab digitaalallkirjastatud dokumentide struktuuri ning profiil võimaldab allkirjaga siduda järgnevad allkirjastatavad atribuudid:[3]

  • Allkirjastamiseks kasutatav sertifikaat
  • Allkirjastamise aeg
  • Allkirjastamise asukoht
  • Allkirjastaja roll või resolutsioon
  • OCSP serveri sertifikaat
  • OCSP vastus

DigiDoc konteiner on sisuliselt XML-dokument, mille elementideks on algfailid või nende asukohad ning räsid, failidega seotud allkirjad ja igas allkirjas sisalduvad allkirjastaja sertifikaat, kehtivuskinnitus ja kehtivuskinnituse teenuse sertifikaat.

DigiDoc failivormingu versioon 1.0 kandis nime SK-XML, kuid kõik järgnevad kannavad nime DIGIDOC-XML. Failivormingu versioon on kirjutamise hetkel 1.3.

Kõik seda vormingut järgivad allkirjastatud konteinerid kannavad laiendit .ddoc.[3]

BDOC

BDOC on uus digitaalallkirja vorming, mis on loodud selleks, et asendada Eesti-spetsiifiline DDOC digitaalallkirja vorming.

Suurim erinevus DDOC-vormingust on OpenDocument[4] standardi järgimine: selle tulemusena on tegu zip-konteineriga, milles on allkirjastatud failid ning allkirjad üksteistest eraldatud. Tänu selle on BDOC-konteinerit võimalik avada iga zip-formaati tundva rakendusega ning seal sees olevad failid lihtsalt loetavad - erirakendusi nagu DigiDoc klient on vaja ainult algfailide tervikluse ja allkirjade kontrollimiseks.

Kuna ZIP on pakitud vorming, võivad BDOC-vormingus failid olla DDOCist oluliselt väiksemad. Lisaks on BDOC-failide meili teel edastamine paremini toetatud, kuna DDOC-vormingus dokumentide edastamisel on esinenud probleeme (osad meiliserverid filtreerisid DDOC-vormingus manused välja).[5]

Täpsemat tehnilist infot hetkel kasutuses oleva BDOC-vormingu kohta saab lugeda Eesti standardidokumendist EVS 821:2009.

Tarkvaraarendajad peaksid arvestama, et 2012 seisuga on käimas BDOC-vormingu uuendused seoses uue rahvusvahelise ASiC allkirja konteineri standarditega (ETSI TS 102 918, ETSI TS 103 171, ETSI TS 103 174), mistõttu tuleb kirjutamishetkel toetatud BDOC-vormingus veel muudatusi. Kuna hetkel kasutuses olev BDOCi standardile vastav allkiri ei ole infosüsteemides kasutust leidnud, siis soovitab SK seda ka lähitulevikus mitte juurutada. See võimaldab tulevikus uuele rahvusvahelisele standardile valutumat üleminekut. Ajakohane info BDOC-vormingu kohta on kättesaadav aadressilt http://ww.id.ee/bdoc.

Ülaltoodud põhjustel ei käsitle BDOCi praegu ka näiterakendused.

CDOC

CDOC-vormingu puhul järgitakse XML Encryption Syntax and Processing (XML-ENC) standardis väljatoodud struktuuri. Krüpteerimise kohta saab rohkem lugeda krüpteerimise peatükist.

Konteineriks on XML-dokument juurelemendiga EncryptedData - selle sees on:

  • krüpteerimisalgoritmi AES-128-CBC identifikaator,
  • sümmeetriline võti krüpteeritud kujul (iga vastuvõtja jaoks eraldi):
    • krüpteerimisalgoritmi RSA 1.5 identifikaator,
    • vastuvõtja nimi,
    • vastuvõtja sertifikaat (mille avalikku võtit kasutati krüpteerimiseks),
    • võti krüpteeritud kujul
  • sisalduvate andmete metainfo:
    • algfaili nimi,
    • faili suurus,
    • faili MIME tüüp,
  • algandmed krüpteeritud kujul.

Kuigi XML-ENC toetab suvalise hulga failide krüpteerimist, kasutatakse DigiDoc rakendustes lähenemist, mille korral pannakse kõik algfailid DDOC-konteinerisse ning siis krüpteeritakse see üks fail.

Allikaviited

  1. Infoturbe koosvõime raamistik. 2007. http://www.riso.ee/et/files/InfoturbeRaamistik.odt
  2. Teadmistebaas: administraatoritele. http://www.id.ee/index.php?id=30571
  3. 3,0 3,1 http://id.ee/index.php?id=30289
  4. ISO/IEC 26300:2006 Open Document Format for Office Applications (OpenDocument) v1.0
  5. http://www.id.ee/?id=34070