Jak funguje vaše telefonní karta? Závěr

Plastová kartička s čipem, na kartičce obrázek, někdy radost pohledět, jindy vrchol nevkusu. A v čipu telefonní jednotky. Jak telefonní automat s kartou komunikuje? Kde se v kartě berou telefonní jednotky? Jak si kartu můžete sami přečíst?
K poslednímu pojednání o telefonní kartě první generace nám zbývá už jen málo. Popsat, jak jsou na kartě zobrazeny telefonní jednotky a jakým způsobem je telefonní automat čte a odečítá z karty. A dále popíšeme poměrně málo známý mechanizmus módu TEST, který umí čip SIEMENS SLE4412. Na závěr přiložíme program a schéma čtečky, jejíž pomocí můžete karty číst.

Co na kartě kontroluje automat?

Když telefonní kartu vložíte do telefonního automatu, ten připojí potřebná napájecí napětí a pošle do karty instrukci RESET a pomocí opakovaně vykonávaných instrukcí INC začne kartu číst. Přečte hlavičku, vypočítá kontrolní sumu a zkontroluje svůj výpočet s hodnotou přečtenou z karty. Jestliže je v pořádku, zkontroluje dále zemi vydání, nominální počet jednotek a sériové číslo. Nebrání-li ani nadále nic v přijetí karty (není např. zakázána blacklistem), zjistí zůstatek na kartě. Určitě jste si všimli, že nominální hodnota karty se udává v počtu jednotek na nové kartě zvětšená o dvě. Je to proto, že paměť EPROM je třeba ve výrobě otestovat. Proto výrobce odpálí jednu jednotku (první bit v nechráněné zóně) a vydavatel druhou jednotku. Zatímco starší automaty nekontrolují obsah těchto dvou bitů, nové přístroje ano. V případě, že některý z nich nemá hodnotu "1", kartu odmítnou. Na zcela nové kartě jsou tedy už dvě jednotky spotřebovány předem, a nominální hodnota musí být tedy o tyto dvě jednotky zvětšena. U čipu SLE4412 má první bit nechráněné zóny ještě jiný význam (je jím realizována pojistka a souvisí s módem TEST), ale o tom později.

Blacklist je seznam těch karet, které nejsou určeny k použití. Například proto, že byly ukradeny, nebo proto, že z nich bylo z nějakého důvodu odečteno víc jednotek, než je jejich nominální hodnota. Systém se snaží udržovat evidenci zůstatků na jednotlivých kartách, a jestliže zjistí nesrovnalost, což se může stát při použití věčné karty, dojde k jejímu zablokování. Blacklist je v každém telefonním automatu.

Jak se vypočítá zůstatek?

Když je vše v pořádku a karta bude přijata, automat vypočítá, kolik telefonních jednotek na kartě zbývá. Jednotky se zapisují do nechráněné zóny. Ta obsahuje v případě, že karta je nová, samé nuly (s výjimkou prvních dvou bitů, jak jsme popsali výše). Automat spočítá bity s hodnotou "1" a jejich počet odečte od nominální hodnoty. Tím je zjištěn zůstatek, který automat zobrazí na displeji.

Jak se jednotky z karty odečítají?

Jednoduše, telefonní automat pomocí opakovaného provádění instrukce INC na kartě najde v nechráněné zóně vhodné místo k zápisu, tedy nulový bit. Protože se jedná o paměť EPROM, která může obsahovat nefunkční buňky, měl by tento bit být následován ještě několika dalšími nulovými bity, aby se dalo předpokládat, že buňka, do které bude automat zapisovat, není vadná. A když je hovor spojen a nebo uplynul čas daný tarifikací, pošle automat do karty instrukci WRITE, čímž do nastavené buňky zapíše jedničku. Po zápisu ještě zkontroluje, zda k zápisu skutečně došlo. Pokud ne, pokusí se o zápis ještě dvakrát do následujících buněk. Pokud se zápis povede, hovor pokračuje, ale v opačném případě je hovor ukončen z důvodu technické závady.

ST1200 a SLE4412: Čím se liší?

Především tím, že čip SLE4412 je modernější koncepce nežli ST1200. Ke své činnosti při odečítání tato paměť nepotřebuje zvýšené programovací napětí 21 V, protože na čipu je vytvořena nábojová pumpa, která se o zápis postará. Také mechanizmus pojistky je jiný. Pojistka není přepalována zvýšeným záporným napětím přivedeným na vývod FUSE, ale čip obsahuje logiku tzv. security bitu, který po naprogramování zamezí zápisu do zabezpečené zóny (prvních 96 bitů). Plošky Vpp a FUSE tedy nejsou s čipem vůbec propojeny. Dále má čip SIEMENS implementovánu instrukci TEST a testovací zónu, která umožňuje lepší otestování čipu než u ST1200. Tato zóna, do které je umožněn přístup jen do té doby, než je zapsán bit 96 (security bit), obsahuje bity 128-135 v nechráněné zóně. Ty jsou vlastně vytvořeny dvakrát. Pomocí instrukce TEST se dá zvolit tato testovací paměť a lze do ní v procesu výroby karty zapisovat a otestovat si správnou funkci čipu. Po zapsání jedničky do bitu 96 je ale zablokována možnost přístupu k testovací paměti i zápis do chráněné zóny.

Jak si kartu sami přečtete?

Připravili a vyzkoušeli jsme pro vás tuto jednoduchou čtečku. Obsahuje jediný integrovaný obvod, tři odpory a jednu diodu. Pro ilustraci přidáváme ještě zdrojový text programu pro čtení karty v Pascalu, který se čtečkou spolupracuje. Vše je připojeno do paralelního portu osobního počítače.

V tomto okamžiku byste měli vědět, jak fungují telefonní karty první generace.


Témata: pevné, Siemens, s-karta