Swedbanki kogemus allkirjastamise tehnoloogiate rakendamisel Olukord 2006 aasta
Swedbanki kogemus allkirjastamise tehnoloogiate rakendamisel
Olukord 2006 aasta teisel poolel • Active. X – Windows – Internet Explorer • Java Applet – Kõik teised operatsioonisüsteemid ja veebilehitsejatele © Swedbank 2
Active. X (aastal 2006) • Laadimine – <object id=“ISign” codebase=“EIDCard. cab” classid=“clsid: 87 -8 A 8 -A 8” /> • Plussid – Lihtne API • ISign. get. Signing. Certificate(); //sertifikaadi küsimine • Isign. selected. Card. Number; //kaardi identifikaatori küsimine • ISign. get. Sighed. Hash(hash, certnum); //allkirjastamine • Miinused –. cab fail meie serveris, paigaldamise riba IE-7’s – Esimene element body tag’i sees © Swedbank 3
Java Applet (aastal 2006) • Laadimine – <object width=“ 400” height=“ 80” …> <param name=“java_code” value=“Sign. Applet. class”/> <param name=“java_archive” value=“applet. jar, iaik. jar/> <param name=“FUNC_SET_CERT” value=“window. Set. Cert”/> <param name=“FUNC_SET_SIGN” value=“window. Set. Sign”/> <param name=“OPERATION” value=“PREPARE/FINALIZE”/> <param name=“HASH” value=“a 8 a 7 bc 55 a 47 afd”/> <param name=“TOKEN_ID” value=“ 1”/> <embed FUNC_SET_CERT=“window. Set. Cert …. /> </object> © Swedbank 4
Java Applet (aastal 2006) • Plussid – Peaks töötama kõikidel platvormidel • Miinused – Java VM’i käivitumise kiirus aeglasematel arvutitel – Nupud appleti sees • Ei saa kasutada sama HTML’i, mida Active. X puhul – Laadimine ei tööta ID kaardiga isikutuvastust nõudvast URL’ist – Lukustas ID kaardi nii, et aitas ainult restart – Callback’idega API ja PREPARE/FINALIZE parameeter • function Set. Cert(cert. Value, cert. Num) { } • function Set. Sing(signature) { } © Swedbank 5
2006 lõpp - veebilehitseja pluginid? • Kuna Applet ei olnud eriti töökindel, siis käime välja idee veebilehitsejatele pluginide loomiseks • Oodatavad tulemused: – – Kiire laadimine Sarnane kasutajaliides kõikidel platvormidel Ühesugune API 2 sammuline allkirjastamine kliendile ühe nupuvajutusega (AJAX) • Sammud: sertifikaadi lugemine kaardilt ja räsi allkirjastamine Huvi ja raha puudumisel jäi see idee mõneks ajaks seisma © Swedbank 6
Firefoxi’i plugin Windowsile • Maksete allkirjastamise juures oli kõige suurem vajadus Windowsi all töötavale Firefoxile töötav lahendus leida – – – Otsustasime ise valmis teha Aluseks SK’lt saadud Active. X’i lähtekood Osutus lihtsamaks kui algul kartsime Pakkusime paigaldust enda lehelt Ise arendades jäi meile ka hilisem toe pakkumine • Iga suurema Firefoxi uuendusega on tulnud midagi muuta • Selle sammu tulemusel on kõikidel Windowsi kasutajatel olemas töötav allkirjastamise lahendus (IE Active. X & FF plugin) © Swedbank 7
Plugin Mac OS X’ile • Internetipanga aadressi muutus: https: //www. hanza. net: 563 -> https: //id. hanza. net – Safari ei avanud 563 pordil asuvaid lehti • Appleti laadimine Javascriptiga Safaris ei tööta, sest on lubatud kasutada ressursse ainult samalt domeenilt – https: //id. hanza. net lehelt appleti aadressilt https: //www. hanza. net – Andsime mitteametlikult välja ajutise patchi Java’le – Mac’i kasutajatele polnud pakkuda ühtegi töötavat lahendust • Tellisime Ideelaborilt Mac OS’i Safari ja Firefoxi plugini – Lisaks ka 10. 5 (Leopard) jaoks ID kaardi tugi © Swedbank 8
Samal ajal • Muudame SK’ga Active. X’i ja Applet’i API uute loodud pluginite sarnaseks • get. Certificates(), sign() ja version() funktsioonid • funktsioonid tagastavad JSON objekte • Kõikidele pluginidele ühine Javascripti interface – Toetab vanu versioone – Funktsiooni sertifikaadi lugemiseks, allkirjastamiseks, laadimiseks – Vastavalt opsüsteemile ja veebilehitsejale laetakse sobiv allkirjastamise vahend • Kõikide allkirjastamise vahendite UI muutus sarnaseks (Active. X, Applet ja FF/Safari plugin) © Swedbank 9
Uue ID kaardi tarkvara riigihange (2008) • Plugin Linuxile (ainuke puuduolev) • Tööde tulemus: • Plugin laetakse kõikides veebilehitsejates täpselt ühte moodi – <object id=“esteid” type=“application/x-esteid” style=“width: 1 px; height: 1 px; visibility: hidden”> </object> • Uute pluginite API’s mõned muutused – $(“esteid”). sign. Cert. cert – $(“esteid”). sign(hash, digidoc_url) © Swedbank 10
Uute pluginide toetus Swedbanki internetipangas (2010) • Meil olemasoleva javascripti interface jaoks üks uus implementatsioon • Sertifikaadi formaadi tagastamise erinevus: – Varem HEX encoded DER – Nüüd PEM (Base 64 encoded DER) • ---- BEGIN CERTIFICATE ---TWFu. IGlzi 418 a. Hyiia. A= ---- END CERTIFICATE ---– Jdigidoc vajab esimest © Swedbank 11
Sobiliku plugini valimine • 1) kas on uus installeeritud? – on: kasutame seda – ei ole: näitame informatiivset teadet uuest versioonist ning soovitame see ID installeri lehelt paigaldada (jätkub punkt 2) • 2) proovime laadida brauseripõhist plugini – Kõik täna juba kasutusel olevaid, va Applet • 3) kui brauseripõhist ka ei ole, siis saadame ID installerisse – Enam ei jaga plugine oma lehelt © Swedbank 12
Millal avalikuks? • Täna hommikust alates nähtav testgrupile, kes ise avaldasid soovi ning on kuidagi seotud uute pluginide arendusega • Teiste jaoks teeme avalikuks, kui – Oleme veendunud, et pluginid töötavad korrektselt – On kõigile kättesadav http: //installer. id. ee lehel • Oleme valmis esimeste seas uusi plugine kasutama hakkama! © Swedbank 13
Tänan! aivar. naaber@swebank. ee 888 3048 © Swedbank 14
- Slides: 14