Internetove bankovnictvi zalozny ma dve casti
– webove rozhrani pro prohlizeni, zadavani transakci, spravu uctu
– podepisovaci aplikaci pro penezni operace
Webove rozhrani dle stranek FIO podporuje prohlizece Mozilla 1.x, aplikace samozrejme funguje tez ve Firefoxu az na par drobnosti. Zde jsem nenasel zadne zavazne omezeni ve funkcnosti.
Druha, podepisovaci cast zajistuje, aby provadene penezni transakce byly opatrene elektronickym podpisem. To je zajisteno diky dodavane aplikaci, jez se skryva v dodavanem spustitelnem souboru pro windows WSIGNER.EXE. Zde jiz neexistuje zadny linuxovy ekvivalent a je nutne tuto aplikaci spoustet pod wine.
Podepisovaci aplikace pracuje s jednim konfiguracnim souborem, ktery je v textovem formatu a jeho defaultni umisteni je opet podrizeno windowsovemu schematu a schovava se v podadresarich „Documents and Settings“, proto doporucuju spousteni s parametrem „-f /cesta/fiosign.cfg“
Konfigurace v souboru vypada nasledovne (viz manual na strance FIO)
Server www.fio.cz:444
Login vase_login_name
CACert fioca.pem
Proxy proxy.server.cz:8080
NoProxy Yes
KeyFile fiosign.key
KeyExpire 300
V tomto konfiguracnim souboru tedy definujete cestu k vasemu privatnimu klici, certifikatu FIO, konfiguraci proxy serveru a jmeno serveru FIO (moznosti jsou dve – vyse uvedena a podpis.fio.cz:443 [opraveno – puvodne sf-wall.fio.cz:443] ). Nezapomnente, ze pokud budete uvadet v tomto konfiguracnim souboru cesty k souborum, je nutne je zadavate dle windows konvence a cest viditelnych ve wine. Program WSIGNER.EXE umoznuje praci i bez konfiguracniho souboru zadanim parametru primo z prikazove radky, napovedu vypisete pres (wine) WSIGNER.EXE -h. Toto neni asi oficialne podporovano a zminovano na strankach zalozny, nicmene je to tez funkcni postup.
Podepisovani pravdepodobne muze fungovat stejne jako ve Windows primo pri zadavani prikazu, nicmene jsem tuto cestu nezkousel, vyhovuje mi radkovy postup. Jakmile tento postup vyzkousim, pridam sem tuto informaci.
Podepisovaci aplikace ma jedno omezeni: neumoznuje pouzit autorizaci pro pripojeni k proxy serveru. Pro domaci pouziti je to jiste zanedbatelne, pokud pouzivate aplikaci ve firme, vas pristup do internetu bude vetsinou bez autorizace nemozny. I zde je v linuxu mozne reseni a jmenuje se ntlmaps. Jedna se o program, ktery umi na vasem lokalnim stroji na loopback interface spustit proxy, jez se sama dovede autorizovat na MS proxy serverech (ISA). Konfigurace ntlmaps je jednoducha, zmena pro podepisovaci aplikaci jeste jednodussi (zmenite Proxy na 127.0.0.1:5865) a ntlmaps funguje jak pro Linux tak zaroven i pro Windows, kde je v tomto bode situace stejna. Pokud se pripojujete ve firme pres jiny typ proxy serveru ve firme, pravdepodobne vam pomuze i lokalni squid s nakonfigurovanou parent proxy. I kdyz v pripade squidu se jedna o kanon na vrabce a zabere vam to vice casu na vyladeni konfigurace.
Pristi tema: bezpecnost
Jeste minuly rok byla linuxova aplikace ke stazeni na strankach FIO, nicmene prostym dotazem zjistite, ze Linux uz neni podporovana platforma pro podepisovani transakci a linuxova aplikace se nedistribuuje.
Predpokladam, ze verze, kterou pouzivate, neumi pracovat s klici zasifrovanymi AES, ale pouze 3DES, coz pouziva starsi verze.
Podpora už pro Linux není, ale patřičnou binárku stále lze stáhnout z http://www.fio.cz/docs/fiohb-linux.tgz
Pro Linux se skutecne dala vyzadat a pozdeji vyzebrat verze pro prikazovou radku. Bohuzel, ruzne verze OpenSSL knihoven, ruzne navzajem nekompatibilni verze (g)libc zpusobovaly, ze "oficialne dostupna Linuxova verze" az prilis casto nefungovala. A za takovych okolnosti nemuze seriozni ustav tvrdit, ze "oficialne podporuje" - to by si jen zbytecne koledoval o ostudu az prvni laik, ktery ma Linux jen proto, ze to je 'cool', ale jinak veci vubec nerozumi nekde rozmazne, ze dostal aplikaci, ktera mu nefunguje (nebo jeste hur, funguje chybne).
WINE muze byt cesta, protoze, paradoxne, Windows emulace nabizi stabilnejsi rozhrani nez ruzne Linux mutace ...
Co se DES versus AES tyce - myslim, ze podepisovac umi pracovat s takovymi klici se kterymi umi pracovat OpenSSL. Podepisovaci aplikace sama zadna omezeni v tomto ohledu nevynucuje. Ja sam klic mam v AES-256 a to uz nekdy od konce roku 2003, takze nepodporu AES bych videl spis v prilis stare verzi OpenSSL nebo v tom, ze byla bez podpory AES prelozena. Nebo aplikaci nutite knihovnu z jine verze OpenSSL nez pro kterou byla prelozena. Tezko soudit takhle "na dalku" z ceho u tebe problem z AES povstava.
Pro jistotu podotykam, ze uz par let nejsem zamestnancem zalozny a zadna z informaci, ktera tu padla nemuze byt brana jako overena informace pochazejici ze zalozny. Navic nejsem uzivatel Linuxu ale FreeBSD. Podepisuju z prikazove radky ...
... a jeste k umisteni konfiguraku - nerekl bych, ze jeho umisteni je podrizeno adresarove strukture Windows. Naopak - defaultne se konfiguracni soubor hleda v domovskem adresari, pricemz informace "kde je domovsky adresar" se ziskava z environmentove promenne HOME. Coz je metoda casto pouzivana an UNIXech - a na Windows, nahodou, funguje taky ...
toto je samozrejme pravda, ze konfigurak se defaultne hleda v $HOME, ktery dava smysl v unixu.
Pokud se jedna o Windows, pak bude schovana nekde v %Documents and Settings%/%username% - protoze tak je nastavena promenna HOME. Takze zde se jedna o vlastnost Windows (kterou prebira wine), nikoliv aplikace.
jeste k reakce na byvaleho "insidera".
protoze jsem linuxovou aplikaci nemel k dispozici pri psani blogu, tak jsem ji ani netestoval, nepodporovani AES byla jen domnenka. na zaklade vyse uvedeneho odkazu, jsem ji vyzkousel, a linuxovy podepisovac je funkcni s AES klicem.
Se zbytkem komentare souhlasim, ruzne verze openssl knihoven a navic ruzne oznacovane (napr. knihovna libssl.so.0.9.7 vs. libssl.so.4, totez u knihovny libcrypto) jsou problem pro podporu ruznych distribuci. Knihovny linkovane k aplikaci odpovidaji RHEL 3 distribuci (prip. CentOS 3), kde asi pobezi bez problemu (nevyzkouseno).
Nevypada pravdepodobne, ze by doslo k volnemu zverejneni "podepisovaciho protokolu" tak, aby si kazdy mohl klienta napsat po libosti. Jakkoli neni nijak slozity. Hrozilo by, ze vznikne rada podepisovaci a laici budou povazovat "za normalni", ze si mohou funkcni podepisovac "nekde stahnout" bez zkoumani duveryhodnosti zdroje a nekdo toho nakonec vyuzije k vyrobe podepisovace, ktery bude sbirat "odemcene klice". Coz by byl samozrejme obrovsky prusvih bez ohledu na to, ze by si rozumne nahlednuto za problem postizeni mohli sami.
Vhodne reseni neni ani "individualni pece" jakkoliv lze zdrojove kody "radkoveho podepisovace" pomerne snadno a behem nekolika minut prelozit na prakticky vsech bezne pouzivanych OS.
Aktualne se za vhodnou cestu povazuje Java, o ktere se veri, ze je dostatecne portabilni. Jestli tu je nekdo dokaze napsat Java plugin funkcni v dnes bezne pouzivanych prohlizecich ktera dokaze navazat SSL spojeni (pres pripadnou HTTP/CONNECT proxy), zobrazit, podepsat a zpet odeslat predana data a ma chut' to udelat, tak se muzeme dat do hromady. On to napise a ja najdu nekoho, kdo to koupi ;-)