Mobilní banka

20. 6. 2005

Sdílet

Přístup k vlastnímu účtu v bance z mobilního telefonu je vymoženost, kterou mnoho lidí využívá již několik let. Možnost ovládat své peníze odkudkoliv a kdykoliv má své neocenitelné kouzlo.

Technologie, díky které je to dnes možné a která je v České republice
nejrozšířenější, se nazývá SIM Toolkit. Program uložený na SIM kartě a schopnost
mobilního telefonu jej vykonávat znamenají dohromady v rukou uživatele
jednoduchou aplikaci sloužící k základním operacím s účty.
Čas je neúprosný ke každé technologii a ve světě mobilních telefonů běží velikou
rychlostí, nám však přináší nové věci. Jednou z nich je tzv. mobilní Java,
jednodušší verze programovacího jazyku Java, který si již před lety našel cestu
do mnoha bankovních serverů.
Lákavé možnosti mobilní Javy (Java J2ME MIDP1.0), jako využití grafických
vlastností barevných displejů, ukládání dat do telefonu nebo komunikace přes
GPRS či EDGE, si přímo říkaly o vytvoření mobilního bankovnictví nové generace.
Takového, které nabízí svému uživateli příjemné a plně grafické rozhraní,
jednoduché ovládání, možnost přehledného uspořádání jednotlivých polí formulářů,
šablony běžně používaných platebních příkazů, přehledné seznamy transakcí a
mnoho dalšího.
První bankou v České republice, která vsadila na mobilní Javu, je Komerční
banka, člen skupiny Societé Generale. Dát svým klientům obdobný komfort jako v
internetovém bankovnictví „Moje banka“ bylo jedním z hlavních cílů jejich
snažení. Vzniklo tak mobilní Java bankovnictví s názvem „Mobilní banka“.

Jaký je výsledek? Jak vlastně funguje mobilní bankovnictví na Javě?
Základním úkolem bylo vypořádat se s největšími problémy ve světě mobilní Javy.
S problémy nekompatibility mezi telefony jednotlivých výrobců, různě velikými
displeji a různým ovládáním, různými velikostmi paměti, nedostatečnou rychlostí
prvních procesorů. Cílem byla bankovní aplikace se stejným vzhledem a s
ovládáním nezávislém na typu mobilního telefonu. Proto byl jako základ pro
„Mobilní banku“ vybrán produkt FrontEnd server společnosti Cleverlance.
Front End server (dále jen FES) je produkt pro vývoj mobilních aplikací,
využívající mobilní telefon jako terminál pro přístup k různým informačním
systémům. Tento produkt byl vyvinut právě pro překonání výše uvedených problémů
vývoje v mobilní Javě.
Každou mobilní aplikaci lze rozdělit na dvě skupiny. První obsahuje části, které
jsou vlastní konkrétní aplikaci a šijí se takzvaně na míru. Tuto skupinu tvoří
jednotlivé formuláře aplikace (rozmístění jednotlivých prvků, barvy a použitá
loga), kontrolní pravidla pro data zapisovaná do formulářů a pravidla definující
vztahy mezi jednotlivými formuláři aplikace (přechody mezi jednotlivými
formuláři v závislosti na volbě uživatele).
Druhou skupinu naopak tvoří části, které jsou mnoha aplikacím společné.
Komunikaci se serverem, šifrovací mechanizmy a mechanizmy pro výměnu šifrovacích
klíčů, vykreslování uživatelského rozhraní, obsluhu klávesnice nebo ukládání dat
do paměti telefonu stačí naopak vyvinout jednou a použít v mnoha aplikacích.
Z této skutečnosti těží FrontEnd server. Části tvořící druhou skupinu byly
poskládány do tzv. FES klienta, aplikace pro mobilní telefon nebo jiné zařízení.
FES klient tvoří v každém mobilním telefonu kompatibilní a univerzální prostředí
pro běh formulářových aplikací. Výsledný vzhled a ovládání aplikací spouštěných
v tomto prostředí je na všech mobilních telefonech stejný, stejně jako jsme tomu
zvyklí u většiny aplikací pro MS Windows na našich PC.
Zjednodušeně můžeme říci, že FES si do paměti telefonu trvale uloží a pak
interpretuje data tvořící popis mobilní aplikace (definice obsahu a vzhledu
formulářů, kontrolní pravidla pro vyplnění položek, definice přechodů mezi
jednotlivými formuláři atp.). Tato data tvoří tzv. FES aplikaci a jsou popsána
pomocí XML. Výsledná mobilní aplikace, například mobilní bankovnictví „Mobilní
banka“, vznikne tehdy, když FES klient v mobilním telefonu dostane správnou FES
aplikaci. O tuto a další činnosti se stará FES server.
FES server tvoří jednak úložiště jednotlivých verzí FES aplikací a zároveň
integruje FES aplikaci s konkrétním cílovým serverem, v případě mobilního
bankovnictví se serverem internetového bankovnictví KB. Stará se o komunikaci s
mobilním telefonem, konverzi dat, kontrolní mechanizmy správnosti dat, správu
uživatelů a jejich šifrovacích klíčů, distribuci FES klientů na mobilní
telefony.
Protože FES slouží k realizaci „Mobilní banky“, je rovněž velmi důležitá
bezpečnost aplikace a komunikace. Bezpečnost komunikace je zajištěna šifrovacím
algoritmem AES 128, 256 nebo 512b. Každá šifra je závislá na utajení šifrovacího
klíče a jeho znalosti jen ze strany odesílatele a příjemce. Za tímto účelem je k
utajení hesla využit i druhý komunikační kanál – Telefonní centrum KB.
Pro každé nové připojení k FES serveru je použit nový klíč. Změna klíčů na
mobilním telefonu i FES serveru probíhá tak, aby nebylo možné při znalosti
předchozích klíčů určit nový klíč, který bude použit, a zároveň nesmí být
šifrovaný klíč přenášen mezi mobilním telefonem a FES serverem.
Přístup do banky je řešen prostřednictvím autentizačních údajů, zcela
nezávislých na FES serveru či mobilním telefonu, které jsou pro každé připojení
odlišné. Autentizační údaje se na mobilním telefonu po ukončení aplikace
„Mobilní banka“ neuchovávají.
K bezpečnosti aplikace patří kromě jiného její bezpečná distribuce, unikátnost a
zabezpečení podvržení. Bezpečnostní prvky jsou ve FES klientovi a FES serveru
navrženy tak, aby tyto procesy spolehlivě ošetřily.

Jaké výhody přineslo mobilní Java bankovnictví?
Z pohledu uživatele se v mobilním telefonu nachází plně grafická aplikace s
ovládáním a vzhledem nezávislým na konkrétním mobilním telefonu. Uživatel se
nemusí starat o verzi aplikace, její distribuce a údržba probíhá automaticky.
Pokud banka přidá do mobilního bankovnictví nové funkce, ráno má již každý
uživatel v telefonu automaticky novou verzi.
A výhody pro banku? Možnost rozhodovat o funkcích svého mobilního bankovnictví a
realizovat je vlastními silami. Nemusí zaměstnávat specialisty na J2ME, vlastní
mobilní bankovnictví je popsáno jako FES aplikace v XML jednoduchým a
srozumitelným jazykem. Pro vytvoření aplikace lze použít vizuální nástroj. Při
změnách funkčnosti „Mobilní banky“ není nutné testovat aplikaci na všech
dostupných telefonech, neboť prostředí FES klienta je kompatibilní. „Mobilní
banka“ není navíc omezena jen na mobilní telefony s Javou, FES klient je
realizovatelný i na jiných mobilních zařízeních jako PDA, Tablet PC i PC na
platformě .NET Compact Framework atd.

Aplikace FES může být postavena na následujících technologiích:

FES server: JAVA J2EE, EJB 2.0, aplikační servery BEA WebLogic, IBM WebSphere,
Sun Java System Application Server, JBoss, databáze Oracle 9i (volitelně MySQL,
PostgresSQL), volitelně platforma MS .NET a MS SQL.

FES client: J2ME MIDP 1.0, 2.0 pro zařízení JAVA kompatibilní; J2SE pro zařízení

s OS Linux, Windows 2000/XP (PC) MS;
.NET Compact Framework pro zařízení s operačním systémem PocketPC 2002, 2003;
MS .NET pro zařízení s Windows 2000/XP (PC).

Autor článku pracuje jako Product Manager ve společnosti Cleverlance

Autor článku