Está en la página 1de 6

Lectura y Escritura de Datos en Tarjetas Telefnicas

ARTCULO

DE

TAPA

L ECTURA Y E SCRITURA DE D ATOS EN

TARJETAS

TELEFNICAS
Una tarjeta tipo chip es, por definicin, una memoria EPROM (Eraseable Programmable ReadOnly Memory) de 256 bits que pueden ser ledos
y regrabados. Hay modelos ms complejos,
que incluyen zonas que no se pueden leer si no se proporciona una
clave. Algunos modelos incluyen
un microprocesador con sistema
operativo propio (definido en el estndar ISO/IEC 7816). Se emplean
tarjetas chip para gran cantidad
de aplicaciones, desde control de sistemas de seguridad hasta habilitacin de comunicaciones telefnicas, pasando por sistemas de autorizacin para decodificadores y
ordenadores de control. Las tarjetas de telfono pertenecen al primer modelo, pero no
por ello son inseguras, simplemente no hay datos que proteger y es preciso que el soporte sea lo ms econmico posible. En esta nota veremos algunos aspectos de las tarjetas telefnicas base.
Por: Federico Javier Prado
e-mail: revistas@vianetworks.net.ar
www.webelectronica.com.ar

na memoria ROM es
aquella que se puede
escribir una sla vez y
sus datos no se pueden borrar. Una EPROM se borra sometindola a radiacin ultravioleta. Las tarjetas telefnicas poseen este tipo de memoria, pero para garantizar la
inviolabilidad de la tarjeta, el
chip est recubierto de resina
opaca que impide el acceso

de dicha luz, con lo cual, en


principio, es imposible borrar
los datos de la EPROM. Pero
si por algn motivo conseguimos que la luz ultravioleta llegase al chip, lo que haramos
sera borrar por completo los
256 bits de la memoria.
Todas las tarjetas poseen
una zona de identificacin (como si fuese el documento de
la memoria) que puede ser

protegida desde la fabricacin. De esta manera, mediante el uso de una palabra


clave se coloca una proteccin que impide la modificacin del nmero de serie y dems datos de fabricacin. Como no se puede reescribir esta parte de la memoria, si intentamos cambiar sus datos,
sta queda inutilizada ya que
no existira compatibilidad enSaber Electrnica N 175

Artculo de Tapa
tre el nmero de serie y los datos cargados posteriormente.
Esto significa que, en principio,
es imposible recargar una tarjeta telefnica con chip.
Cuando digo en principio
es porque existen algunos trucos que utilizan programadores y electrnicos inescrupulosos para burlar este sistema
de proteccin, mediante sistemas de emulacin, tema que
no abordaremos en este artculo.
Existen tres grupos de tarjetas con chip, clasificadas segn la funcin que deben realizar a saber:
Tarjetas simples sin proteccin.
Tarjetas personalizadas
de memoria.
Tarjetas con microprocesador.
Las del primer grupo son
tarjetas cuya memoria no posee ningn tipo de proteccin,
pudiendo leer y escribir datos a
voluntad del operador, siempre
que se cuente con el instrumental apropiado. Normalmente poseen memoria EPROM o
EEPROM (memorias que se
borran y se reescriben sin necesidad de aplicar rayos ultravioletas, simplemente se codifican mediante escalones de
tensin). Las tarjetas sin proteccin poseen mayor capacidad, pudiendo llegar hasta 1
kbyte (de 8 o 16 bits). Son tarjetas de uso especfico y difcilmente se encuentran para
operacin en la red telefnica
pblica.
Sin embargo, s se utilizan
las tarjetas con memoria
EPROM de 256 bytes de capacidad y un bit por palabra (by-

te). Estas tarjetas, tal como mencionamos,


posee una zona
que puede ser
protegida contra
reescritura
con
una capacidad de
96 bytes. Ms adelante veremos que a
los fines prcticos, se
agrupan de a 8 bits para
formar palabras en la
memoria de modo que estas EPROM ( EEPROM)
se comportan como memorias de 32 bytes de 8 bits cada uno.
Estas son las tarjetas que
veremos en este artculo y son
las normalmente utilizadas como tarjetas telefnicas prepagas. Cabe aclarar que la informacin que aqu suministramos est extrada de artculos
que me han llegado a mi casilla de correo y otros tomados
de la web. Tambin hemos
consultado los manuales de
componentes de la empresa
Thompson y apuntes del Ing.
Vallejo y de Luis Horacio Rodrguez.
Existen muchos fabricantes
de tarjetas telefnicas que emplean chips fabricados por diferentes empresas (figura 1).
Existen al menos cuatro fabricantes, quienes construyen
sus productos con chips diferentes pero que son compatibles entre s, de modo que al
colocar cualquier tarjeta homologada para cada pas, funciona en cualquier telfono pblico. Hay tarjetas que tienen 6
contactos, otras 8 y hasta ms
(pero no son telefnicas).
Poseen normalmente una
EPROM de 128 bytes de 1bit y
respetan las normas ISO internacionales.

Saber Electrnica N 175

Figura 1

NORMA ISO/IEC 7816


La norma ISO/IEC 7816 regula el funcionamiento de las
tarjetas telefnicas y agrupa a
tres subnormas.
ISO/IEC 7816-1.
Describe las caractersticas
fsicas que deben cumplir las
tarjetas, tales como resistencia
mecnica, resistencia elctrica
de los contactos, proteccin
frente a agentes externos, luz
ultravioleta empleada para el
borrado, campos magnticos
asociados, electricidad esttica, resistencia mecnica, flexibilidad (debe soportar 1000 flexiones de 2 cm a razn de 30
por minuto sin que se produzca
rotura), mxima diferencia de
nivel entre los contactos, etc.
ISO/IEC 7816-2.
Regula las dimensiones y
localizacin de los contactos.
El tamao mnimo es de 1,7 x
2 mm. Existen dos posicionamientos de los 8 contactos sobre la tarjeta:
a) AFNOR es una disposicin debida a la compatibilizacin con las tarjetas de banda

Lectura y Escritura de Datos en Tarjetas Telefnicas


Figura 2

la comunicacin con el microchip. Tambin especifica la tensin de alimentacin y las estructuras de las seales, el intercambio de informacin, la
velocidad de repeticin de las
seales, los valores de corriente, las convenciones de paridad, los procedimientos a realizar para las distintas operaciones, la forma de comunicacin con tarjetas inteligentes,
etc.
En la tabla 2 se puede apreciar la funcin que cumple cada terminal del chip (siempre
haciendo referencia al esquema de la figura 2).
Nota 1: los contactos (1) no
son usados en las tarjetas del
fabricante G+D

magntica y est casi en desuso


b) ISO, que es la ms comn en nuestros das.
La distancia de los terminales en formato ISO, expresada
en mm, es la mostrada en la
tabla 1. La disposicin de los

contactos sobre la tarjeta (a los


que hace referencia la tabla 1)
se muestra en la figura 2.
ISO/IEC 7816-3.
Establece las caractersticas de las seales elctricas
aplicadas a la tarjeta, as como
los protocolos utilizados para

Las tarjetas telefnicas poseen chips de funcionamiento


sincrnico con memoria protegida. Poseen un contador interno de direcciones que opera
en forma secuencial y apunta
siempre al bit que se est por
leer o que se acaba de escribir.
Para escribir un dato, se utilizan dos o tres contactos del
chip, a los que se le colocan
tensiones especficas, un terminal corresponde al dato, otro
a la predisposicin para lectura y el tercero acta como
clock.
Ahora bien, cuando se precisa un margen de seguridad
mayor, se emplean chips asincrnicos que contienen un microprocesador, lo que brinda
un margen de seguridad ms
amplio, lo que los hace aptos
para tarjetas bancarias.
En cuanto al funcionamiento, como se puede apreciar en
la tabla 2, la tensin de alimentacin, que es de 5V, se aplica
Saber Electrnica N 175

Artculo de Tapa
Figura 3

naremos interfases, que son


los que actan de nexo entre el
chip y el aparato a comandar
(telfono). Para establecer la
comunicacin entre el dispositivo interfase y la tarjeta debe
realizarse de la siguiente manera:
1) Conexin y activacin de
los contactos por el dispositivo
interfase.
2) Reset de la tarjeta.
3) La tarjeta comunica la
aceptacin del reset.
4) Se produce el intercambio de informacin entre la tarjeta y la interfase.
5) Se produce la desactivacin de los contactos entre la
interfase y el chip de la tarjeta.

al terminal ISO1. En realidad,


la tensin debe estar comprendida entre 4,8V y 5,25V, produciendo un consumo de 200mA
promedio. Cabe aclarar que
hace un tiempo se empleaban
tarjetas con tecnologa NMOS
que requeran una tensin adicional de +21V respecto de
masa, en el caso en que se
quisiera realizar la escritura de
datos (Vpp). Estos chips tenan
un consumo de 20mA en estado de reposo y unos 50mA en
estado de programacin.
La potencia mxima de operacin era de 1W y no poda
superar 1,4W durante 1 segundo.
Como ya mencionamos, el
bus de datos es de un slo bit
(correspondiente al contacto
ISO7), y no existe un bus de direcciones. Las posiciones de
memoria son ledas o escritas
en forma secuencial. Cuando
se quiere leer o escribir un dato en una posicin determinada, se debe hacer un reset en

el chip por medio del terminal


ISO4, comenzando a buscar
desde el bit 1 hasta la posicin
elegida para realizar la operacin.
El terminal ISO2 determina
el estado de lectura o escritura.
Cuando tiene un potencial alto,
el chip est listo para ser escrito, mientras que si posee un
0 lgico, entonces se va a
leer un dato desde la memoria
del chip.
El terminal ISO8 no se utiliza normalmente, es empleado
en fbrica para darle los datos
de identificacin del chip (96
primeros bits de memoria), los
que luego no se pueden reescribir.
El contacto ISO3 (CLK) se
utiliza para darle a la tarjeta la
seal de reloj. La frecuencia
que se aplica est comprendida entre 1MHz y 5MHz con ciclos de actividad que no deben
superar el 50%.
La tarjeta telefnica opera
con equipos a los que denomi-

Saber Electrnica N 175

Una vez que se lleva a cabo


el primer paso, es decir, la activacin de los contactos de la
interfase con el chip de la tarjeta, cada terminal queda en la
siguiente condicin:

RST: Es puesto a nivel bajo

Vcc: es puesta a +5V y


permanece estable
I/O: Es puesta a un nivel
lgico 1 para la recepcin de
datos desde la interfase
Vpp: Deber permanecer
en estado de espera o reposo
CLK: Ser suministrado
de forma adecuada y estable.
Cuando se establece la
condicin de activacin de los
contactos, la interfase manda
la informacin del reset, tal como se muestra en la figura 3.
Cabe aclarar que las seales dadas en la mencionada figura surge de la informacin
dada por Gemplus y Oberthur,

Lectura y Escritura de Datos en Tarjetas Telefnicas


Figura 4

I/O: Se pone en 0
Vcc: Se retira la alimentacin
Si bien dijimos que la memoria de estas tarjetas posee 256
bits (256 bytes de 1 bit cada
uno), para especificar el contenido se agrupan 8 bytes (o sea
8 bits) para definir palabras. Dijimos que los primeros 96 bits
son el documento y no se pueden reescribir. En la tabla 3 podemos ver qu significa cada
grupo de 8 bits de esos 96 que
tenemos disponibles.
Los primeros 8 bits sern la
palabra de control. Es algo si-

fabricantes de tarjetas telefnicas, para chips con tensin de


Vpp.
En la figura 4 se da el diagrama de seales para tarjetas
que no requieren tensin de
escritura (Vpp).
En el caso de las tarjetas
correspondientes al diagrama
de seales de la figura 4, la forma de operar es ms sencilla
ya que no utilizan el terminal
N 6 correspondiente a la tensin de programacin Vpp, utilizando el contacto ISO 2 para
escribir un dato. Cuando esto
ocurre, en el prximo ciclo de
reloj se vuelve a leer el dato
escrito, tal y como muestra la
figura 4
Una vez que finaliza el intercambio de informacin entre el
chip y la interfase, se desactivan los terminales, siguiendo
la siguiente secuencia:

RST: Primero se manda el


terminal a un estado lgico bajo
CLK: Se pone en 0
Vpp: Se retira la alimentacin
Saber Electrnica N 175

Artculo de Tapa
milar al bit de paridad de un cdigo cualquiera y se obtiene de
la siguiente manera:
Se resta a 216 el nmero de
unos existentes entre el bit 9 y
el 96, ambos incluidos. Una
vez obtenida la resta decimal,
este nmero se pasa a binario
dndonos el byte de control o
Checksum.
De la segunda a la cuarta
palabra (bit 9 a bit 32) se escribe al cdigo de la tarjeta telefnica.
La palabra 5 (bit 33 a bit 40)
contiene informacin relativa al
constructor de la tarjeta. Las
palabras 6, 7 y 8 contienen la
informacin concerniente al
nmero de serie de la tarjeta
que la interfase toma para saber si est habilitada.
Las palabras 9 y 10 (bit 65 a
bit 80) contienen el cdigo que
representa el valor de la tarjeta.
En la palabra 12 se encuentra el cdigo del pas donde es
vlida la tarjeta. A partir de la
palabra 13 (bit 97 en adelante,
hasta el 256) se encuentran los
bits que se pondrn a 1 cada
vez que hablemos por telfono
y estemos descontando dinero. Cuando nos venden la tarjeta telefnica, estos bits (del
97 al 256) estn todos en o y
en la medida que pasa el tiempo de comunicacin, estos bits
se ponen en 1.
Cabe aclarar que cuando se
fabrican las tarjetas telefnicas
se les realiza un control de calidad poniendo a 1 los bits 97
a 104 aproximadamente para
certificar que el funcionamiento
es correcto.
En sntesis, las palabras 1 a
12 (bits 1 a 96) representan el
documento de identidad de la

tarjeta, mientras que en las palabras 13 a 32 (bits 97 a 256)


se escribirn 1 cada vez que
estemos utilizando la tarjeta.
La zona de escritura por
parte de la interfase (telfono)
se divide en dos sub zonas:
una zona denominada de contador lento y otra zona de
contador rpido.
El tamao que posee cada
zub zona depende del valor de
la tarjeta. Se entiende entonces que cada vez que se escriba un 1 en algn bit de estas
zub zonas, la compaa telefnica nos estar descontando
dinero de la tarjeta.
El descuento del importe de
la llamada se produce escribiendo un "1", empezando por
el ltimo bit de cada zona. La
primera zona donde se produce la escritura es la zona rpida, pasando luego a la zona
lenta. No es necesario poner a
"1" todos los "0" equivalentes
al importe de una llamada, ya
que con marcar el ltimo de estos a "1" es suficiente. Debido
a sto, cuando se examina el
contenido de una tarjeta telefnica existe un nmero indeterminado de "0" en la zona de
descuento.
El reset de la tarjeta se produce cuando se produce un
pulso de la seal de reloj luego
de haber puesto a 0 el terminal de Reset y R/W. Luego se
pasa a estado alto la seal de
reset y en la salida I/O aparece
el dato correspondiente al primer bit de la memoria.
Con cada flanco de bajada
del pulso de Reloj, se incrementa el contador de direcciones y aparece el siguiente a la
salida de I/O.
Para escribir un dato, en pri-

Saber Electrnica N 175

mer lugar se debe posicionar el


contador de direcciones sobre
la direccin de memoria que
deseamos escribir. Luego las
seales R/W y Vpp deben pasar a nivel alto. En estas condiciones y dentro de un tiempo
comprendido entre 10 y 50ms
se debe producir el flanco de
subida de la seal de reloj.
Despus de un tiempo comprendido entre 10 y 50ms deber aparecer el flanco de bajada de las seales Vpp y R/W;
luego se producir el flanco de
bajada de la seal de Reloj con
lo que el contador de direcciones apuntar a la siguiente posicin y a la salida I/O obtendremos el valor del bit de memoria correspondiente a esa
direccin.
En las tarjetas que no utilizan la tensin Vpp, una vez
concluida la grabacin en el siguiente pulso de reloj se lleva a
cabo una nueva lectura del bit
grabado para comprobar que
se ha realizado la grabacin
correctamente.
En la actualidad es comn
ver tarjetas telefnicas (en algunos pases) que poseen solo 6 contactos, cuya descripcin veremos en otra nota.
Para terminar, si Ud. desea
mayor informacin sobre los
chips de las tarjetas telefnicas, en nuestra web:
www.webelectronica.com.ar
Encontrar un archivo sobre
el tema. Para acceder al mismo deber ingresar a la pgina
de contenidos especiales haciendo click en el cono password y luego digitando la clave:
tarjeta175

También podría gustarte