A tranzakciókról

1.  Mit értünk tranzakció alatt?
2.  Tranzakció állapotok
3.  Menü funkciók
4.  Navigálás a tranzakciók között
5.  Partner adatbázis
6.  Jelszavak

1.  Mit értünk tranzakció alatt?

Az E-Kontó program főablakában először a tranzakciós panellel talákozunk. A panel egy táblázatot jelenít meg, melynek sorai a végrehajtásra előkészített tranzakcióinkat mutatják (egy sor=egy tranzakció). Tranzakciónak nevezzük a banki számlavezető rendszernek szóló utasításokat. Az E-Kontó által ismert tranzakciók:

Ha a programba beviszünk egy HUF átutalás tranzakciót, és azt elküldjük a bankba, ezzel utasítást adunk a banknak, hogy pénzt küldjön számlánkról a címzettnek. Különbséget kell tennünk egy banki objektum és a rá vonatkozó tranzakció között. Például, ha beviszünk az E-Kontó programba egy betét lekötés tranzakciót, az még nem jelenti, hogy máris keletkezett volna egy betétünk. Valójában először csak egy betét lekötésre vonatkozó utasítás keletkezik. Az utasítást elküldjük a banknak, a bank (a banki szoftver) elbírálja, hogy végrehajtható-e az utasítás, és tipikus esetben végrehajtja azt. Ezzel jön létre ténylegesen a betét. Szerencsétlen esetben, például, ha eltévesztjük az adatbevitelt, a banki rendszer vissza is utasíthatja a tranzakciót, így az hatástalan marad.

2.  Tranzakció állapotok

Amikor egy tranzakciót újonnan felviszünk, kezdetben az Állapot oszlop üres lesz. Az üres állapot jelöli a friss tranzakciókat, amik még nincsenek beküldve a bankba. Mivel ezekről a bank nem tud, az ilyen tételeket saját hatáskörben minden következmény nélkül módosíthatjuk, törölhetjük.

Miután a tranzakciót elküldtük a banknak, az Menesztve állapotba kerül. A menesztett tranzakció tovább már nincs a hatáskörünkben, ezért többet nem módosítható, és nem is vonható vissza. A menesztett tranzakcióval már csak annyi dolgunk van, hogy figyelemmel kísérjük a sorsát.

A programmal bármikor lekérdezhetjük a korábban menesztett tranzakcióink feldolgozásának eredményét. A válasz hatására a tranzakció a Rendben vagy a Hibás állapotba jut. A hibás tételeknél információt találunk a hiba okáról a táblázat jobb szélén levő Üzenet oszlopban.

Ugyanabban a táblázatban különféle típusú tételeket tárolunk. Az egyes sorok fajtáját mutatja a Típus oszlop. Bár a tranzakciók különféle típusúak, mégis vannak közös adataik. Így a Partner, Dev (devizanem), Összeg, Számlaszám oszlopok nem igényelnek sok magyarázatot. Az Értéknap oszlop mutatja az adott tranzakció pénzügyi teljesítésének dátumát. Nem minden tranzakció fajtánál van kitöltve minden oszlop. Egy felhatalmazás esetén például nem ismerjük az ellenszámlát (a szolgáltató számlaszámát), ezért az Ellenszámla oszlop üresen marad.

3.  Menü funkciók

Új tranzakciót az Új tranzakció menüben tudunk csinálni. A tranzakciók konkrét tartalmát nem itt, hanem az egyes tranzakció típusoknál tárgyaljuk.

A Karbantartás menüben módosíthatjuk, törölhetjük a még nem menesztett tranzakciókat. A Módosít menü jelentése: Nem a mostani adatokkal akarom elküldeni a tranzakciót, hanem küldés előtt még módosítok valamit. A Törlés menü jelentése: Mégsem akarom elküldeni a korábban rögzített tranzakciót. Ha egyszer menesztettünk egy tranzakciót, akkor azt nem lehet többé módosítani, sem pedig törléssel visszavonni, mert már nem a mi hatáskörünkben van. A menesztett tranzakciók esetében a törlésnek más jelentése van. A Törlés menü másik jelentése: Nincs már szükségem a feldolgozott tranzakcióra, ezért törlöm a nyilvántartásból. A menesztett tranzakciók adatainak nézegetésére szolgál a Megtekint menüpont, amit az Insert billentyű megnyomásával is aktivizálhatunk.

A Menesztés menüben találhatók a küldésre és az eredmények lekérdezésére szolgáló funkciók. A Egyes tételek menüpont meneszti a kék sávval kiválasztott tranzakciókat. Az Összes menüpont minden korábban nem menesztett tranzakciót meneszt. A Válaszok lekérdezése menüpont lekéri a korábban elküldött tranzakciók feldolgozásának eredményét, és a választ beírja a táblázat Állapot és Üzenet oszlopába. Csak azokról a tételekről kapunk információt, amiket még nem töröltünk.

4.  Navigálás a tranzakciók között

Már tudjuk, hogy a tranzakció panel táblázata soronként egy-egy tranzakciót mutat. A táblázat mérete azonban korlátozott, egyszerre csak egy lapnyi adatot tartalmaz. A lapon belül a nyíl billentyűkkel, gördítő sávokkal tudunk navigálni. Az egérrel ki tudjuk választani a táblázat egy vagy több sorát.

Ha több tranzakciónk van, mint amennyi egy lapon elfér, akkor a bal alsó sarokban levő kék nyíl gombokkal tölthetjük be a táblázatba az első/utolsó, előző/következő lapot.

Az alul, középen levő legördülő listában beállíthatjuk, a tranzakciók megjelenítésének sorrendjét. Alapesetben itt a Bevitel van kiválasztva, ami azt jelenti, hogy a tranzakciók olyan sorrendben látszanak, ahogy bevittük őket. A különféle sorrendek akkor hasznosak, ha keresünk valamit.

5.  Partner adatbázis

A Partnerek gomb megnyomásával jutunk a címlista adatbázis karbantartásába. Ez egy egyszerű segédeszköz, amibe felvehetjük a gyakran előforduló címzetteket, számlaszámokat, megkönnyítve a későbbi adatbevitelt az átutalás tranzakcióknál. A partnerek táblázata hasonlóan működik, mint a már látott táblázat: egyszerre csak egy lapot mutat, és a kék nyilakkal lehet benne lapozni (előre-hátra lapozós táblázat).

6.  Jelszavak

A Jelszó gomb vezet a jelszóváltással foglalkozó panelhez. Mivel pénzről van szó, különösen fontos, hogy biztonságos jelszavakat használjunk. A jelszavas azonosítás a következőképpen történik:

  1. A banki program küld az ügyfélnek egy véletlen betűsorozatot, ami minden alkalommal más és más. Valami ilyesmit képzeljünk: f9816640a627fd3f4d342f2e.

  2. Az ügyfél begépeli a csak általa ismert jelszót, majd az ügyfélnél levő program az előző véletlen sorozatból és a jelszóból kiszámít egy másik sorozatot (ilyenformán néz ki: guzw9VMzL/twixRBAcmaIg==), és visszaküldi azt a banki programnak.

  3. A banki program anélkül, hogy ő maga ismerné a jelszót, meg tudja állapítani, hogy a válaszul kapott betűsorozat a jelszó ismeretében készült-e.

Látszólag minden tökéletes. A jelszót csak az ügyfél ismeri (még a bank sem), a hálózaton a jelszót sosem küldjük át kódolatlanul, ráadásul a kódolás minden alkalommal más. Ezt a fajta azonosítást azonban mégis támadás fenyegeti, ha túl rövid és túl egyszerű jelszavakat használunk. A támadást szótári támadásnak hívják.

Tegyük fel, hogy a jelszavunk 6 betűből áll, ekkor az összes lehetséges jelszavak száma milliárdos nagyságrendű. Fel kell tételeznünk, hogy a támadó ismeri azt az algoritmust, amivel az ügyfél programja a választ számítja. A támadó ír egy programot, ami szisztematikusan végigveszi a lehetséges jelszavakat, és addig keres, amíg az első véletlen sorozatra plusz a variált jelszóra alkalmazva az algoritmust megkapja a második sorozatot. Pár óra, vagy pár hónap alatt (a támadó ügyességétől, szerencséjétől és számítógépeinek gyorsaságától függően) ez a munka sikerrel járhat. Aggasztó lehetőség. A támadás kivitelezése persze nem könnyű. A támadónak le kell hallgatnia a hálózatot, meg kell szereznie a bank által küldött véletlen betűsorozatot, és az ügyfél erre küldött válaszát. Mivel az E-Kontó (az ipari szabványnak számító) SSL protokollal titkosítja kommunikációs vonalat, már idáig sem könnyű eljutni.

Mindemellett az E-Kontó biztosítja, hogy az ügyfelek jelszava ne legyen túl rövid, vagy túl egyszerű. Ha például 12 betűs jelmondatokat használunk, akkor a lehetséges jelszavak száma már milliárdszor milliárdos nagyságrendű, aminek a feltörése reménytelen.


Háttérinfó: E-Kontó Demó
E-Kontó 0.9.01 (C) ComFirm
Dr. Vermes Mátyás
2003. június 3.