Jak funguje vaše telefonní karta? Pokračujeme

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? A jak to celé funguje?
Minule jsme si řekli něco o tom, jaká je filozofie zabezpečení aplikace na kartě T1G a jaká data zhruba obsahuje. Zbývá si povědět něco o zabezpečení samotné prázdné paměti, o její komunikaci a blíže si vysvětlit její obsah a funkci.

Jak je zabezpečena prázdná paměť?

Jestliže se dostane někdo nepovolaný k prázdné paměti, mohl by si ji naprogrmovat jako kartu pro některou aplikaci. Čipy T1G nejsou téměř zabezpečeny proti takovému zneužití. Jediné, co výrobce provádí, je to, že pro účely telefonních karet naprogramuje v chráněné zóně nultý a osmý bit. Tím je zabezpečeno, že čip není možno použít v jiné aplikaci než jako telefonní kartu. V nultém byte je totiž uložena kontrolní suma (počet nulových bitů v chráněné zóně + 0x80 ). A v prvním je 0x83, takže jak v nultém, tak v prvním byte je vždy nejvyšší bit jednička. To by nemělo platit v jiných aplikacích, pouze u telefonních karet. Výrobce samozřejmě ví, komu čipy prodává a v jaké aplikaci je bude jeho zákazník používat, takže v případě, že se z výroby dostanou na správné místo určení, má se za to, že ke zneužití nedojde. Ovšem případnému zneužití těchto čipů jako telefonních karet tím zabráněno není.

Jak karta komunikuje?

Jak už víte, telefonní karta první generace je paměť EPROM o kapacitě 256 bitů, která komunikuje s okolím prostřednictvím synchronního sériového protokolu. Na obrázku vidíte kontaktní plošky karty označené podle dokumentace .


Kontaktní plošky karty a signály, které jsou na ně připojeny

GND se propojuje s nulovým potenciálem. Kontaktní ploška Vcc slouží k napájení, Vpp k přivedení programovacího napětí. Plošky A, B, FUS a ST jsou vstupní signály k ovládání paměti, ploška OUT je výstupní, na ni je vyveden výstup paměti. Kombinací na vstupech A a B volíme akci, kterou paměť provede v průběhu impulsu na vstupu ST. Ploška FUS je důležitá pro zápis do chráněné zóny. Provádí se to instrukcí WRITE, která bude popsána v dalším textu, ale při programování chráněné oblasi musí být tato ploška připojena na úroveň logické nuly. Toho je možné ale dosáhnout, pouze pokud není přepálená pojistka (fuse). Ta je přepálena po naprogramování hlavičky u vydavatele karty přivedením záporného napětí 40V právě na vývod FUS.

Čip ST1200 umí vykonat tři, čip SLE4412 čyři instrukce. Tři jsou důležité pro funkci karty, čtvrtá slouží pouze k testování paměti. Jde o RESET, INC, WRITE a TEST. Instrukce se zadávají pomocí vstupů A a B, viz tabulka.

A

B

Instrukce

0

0

RESET

0

1

INC

1

0

u ST1200 zakázaná kombinace,

u SLE4412 TEST

1

1

WRITE

RESET zajistí nastavení vnitřního ukazatele v kartě na nulu a na výstup OUT se tím dostane obsah nultého bitu paměti. Příkazem INC se k ukazateli přičítá jednička a na výstup se postupně vyčítají jednotlivé bity paměti. A konečně instrukcí WRITE se do předem nastaveného bitu zapisuje. Hodnota ukazatele se přitom nezmění, pouze hodnota bitu se může z nuly změnit na jedničku. Instrukce TEST je implementována jen u čipu SIEMENS SLE4412 a popíšeme ji dále. Pro názornost připojujeme rámcový časový diagram komunikace s kartou.

Paměť není standardně vybavena obvodem POR (Power On Reset), takže jako první je potřeba do karty vyslat instrukci RESET. Tím se zapíše do ukazatele nula a obsah paměťové buňky s touto adresou se přenese na výstup OUT. Při provádění instrukce WRITE je zapotřebí na kontakt Vpp přivést zvýšené programovací napětí Vpp o velikosti 21V.

A co je v kartě uloženo?

Podívejte se ještě jednou na obrázek. Najdete na něm popsaná všechna podstatná data,která se vyskytují v hlavičce. Sériové číslo karty, přesněji jeho část A je pro každou kartu unikátní. Proto i po vypotřebování telefonních jednotek z karty ji můžete použít jako klíč do elektronického zámku.

 

Byte 0

1

2

3

4

5

6

7

8

9

10

11

B9

83

10

57

40

00

C7

0F

88

59

11

55

Kontrolní suma

Telefonní karta

první4 bity: typ mapingu

2.čtyři bity

Počet jednotek+2(BCD),1,část

Počet jednotek +2 (BCD) 2.část

první 4bity výrobce

0..Schumberger

1..Solaic

4.. Gem+

druhé 4bity sériové číslo

sériové číslo část A

sériové číslo část A

sériové číslo část A

sériové číslo část B

sériové číslo část B

první 4bity programovací algoritmus

 

druhé 4 bity aplikační parametr 1..běžná karta

0.. testovací karta

Kód země původu

Na příště si necháme popis instrukce TEST u čipu Siemens a podíváme se na to, jak telefonní automat kartu přijímá a jak do ní zapisuje protelefonované telefonní jednotky.