Tipos de operación y arquitectura de los lectores contactless CPR Series con tarjeta MIFARE® DESFire®
En este artículo queremos resaltar las posibles arquitecturas de sistema en la operación, siempre compleja, de un lector contactless RFID con una tarjeta MIFARE® DESFire®.
En cualquier proyecto que se deba de trabajar con tarjetas tipo MIFARE® DESFire®, deberemos de hacernos una serie de preguntas antes de escoger el lector contactless adecuado para nuestro proyecto:
► Seguridad:
Basada en módulos SAM o sin módulos SAM. Puede ser que el proyecto imponga directamente el requerimiento técnico de usar módulos SAM, o puede que sea una elección propia, en todo caso, es uno de los principales aspectos a tener en cuenta.
► Rendimiento:
Una tarjeta DESFire ejecuta operaciones más complejas que otras tarjetas de seguridad, por lo que necesita un buen nivel de energía para ejecutarlas. Si, además, las operaciones se deben ejecutar en un tiempo muy limitado, la velocidad es muy importante. Para ello, es imprescindible escoger un lector que tenga una potencia RF adecuada, una alta velocidad de transmisión y de procesamiento, que podamos configurar la frecuencia del clock de las tarjeta SAM, que podamos activar más de una tarjeta SAM y que podamos mandar comandos agrupados, para que sea capaz de ejecutar estas operaciones según los requerimientos técnicos dados.
► Capacidades del host (terminal)
En el caso de que las funciones del SAM estén controladas por el host (PC o controladora), es importante que éste tenga un alto rendimiento de procesamiento y de transmisión de datos.
► Aspectos comerciales:
Si queremos trabajar con módulos SAM, el coste del lector será superior, pues al coste del slot SAM, debemos añadirle el módulo SAM en sí mismo.
► Cuestiones de organización:
Gestión de llaves, personalización de SAM’s, personalización de la tarjeta, etc.
Visto este resumen, hay básicamente tres formas o maneras de plantear los sistemas basados en el chip contactless MIFARE® DESFire®:
Con funciones SAM transparentes
Con el firmware SAM del lector
Con el firmware DESFire para la familia de lectores CPR40.XX
Funciones SAM transparentes
En este caso, si tenemos un lector con módulos SAM, podemos interactuar con ellos de manera que el lector sea un mero “túnel transparente” para el intercambio de datos entre:
Tag ⇔ Aplicación del host (terminal)
Módulo SAM ⇔ Aplicación del host (terminal)
En este caso, las funciones del SAM están directamente controladas por la aplicación que se encuentra en el Host, que interacciona con el SAM para las operaciones de autenticación y procesos de desencriptación.
Lector con firmware SAM
Los lectores de la familia CPR pueden gestionar internamente los procesos de autenticación y desencriptación, interactuando el transponder y los SAM.
El host interface transmite datos planos (desencriptados).
Las funciones de los SAM son controlados por el propio firmware del lector.
Las funciones criptográficas SAM están diseñadas para los siguientes chips SAM:
MIFARE® SAM AV1 (MF3 IC D40)
MIFARE® SAM AV2 (MF3 IC D40)
Los lectores de Feig que tienen ranuras para módulos SAM y que disponen de firmware SAM, son los siguientes:
CPR40.30-SU, lector de sobremesa ISO14443-A/-B, con dos módulos SAM
CPR74-4SCU, módulo para integrar ISO14443-A/-B, con antena externa e interna, com 4 módulos SAM
Lectores CPR40.XX con Firmware Desfire
En este caso, el lector CPR gestiona internamente los procesos de autenticación y desencriptación, mediante interacciones entre el transponder y el firmware del lector.
El host interface transmite datos planos (desencriptados).
No se requiere ningún módulo SAM, porque las claves están almacenadas en la memoria del lector y los cripto algoritmos están implementados en el firmware del lector.
En resumen, estas son las 3 diferentes formas de trabajar con las tarjetas Desfire y los lectores Feig. Resumamos lo que implica cada método en cuanto al tipo de solución:
|
Rendimiento |
Coste |
Nivel de seguridad |
Requerimientos del host |
---|---|---|---|---|
Funciones SAM transparentes |
- |
Alto |
Alto |
Alto |
Lector con firmware SAM |
+ |
Alto |
Alto |
Bajo |
Lector con firmware Desfire |
++ |
Bajo |
Medio |
Bajo |
En cuanto al firmware DESFire desarrollado para los lectores de la familia CPR40, podemos destacar:
♦ Facilita el uso de las funciones de encriptación DESFire
♦ Reduce los ciclos de comunicación entre el lector y el host
♦ Se procesan más rápidamente las operaciones de lectura/escritura
Los chips actualmente soportados con este firmware son: MIFARE® DESFire® EV1 (MF3ICD21, MF3ICD41, MF3ICD81), MIFARE® DESFire® (MF3ICD40), MIFARE Ultralight® C (MF0ICU2) (consultar en cada caso qué métodos criptográficos se han desarrollado para cada chip)
Gestión de claves y protección:
♦ Las claves pueden ser almacenadas temporalmente en las SAM del lector, o bien de forma permanente en la EEPROM del lector
♦ Las claves sólo se pueden escribir al almacenarlas en el lector (no se pueden leer)
♦ Si las claves están almacenadas en la EEPROM, están encriptadas, pero no en una memoria de alta seguridad
♦ Las claves pueden ser cargadas al lector vía el interface del lector
Los lectores de Feig que tienen el firmware DESFire disponible, son todos los de la familia CPR40 y CPR44 (las familias CPR02, CPR.M02, CPR30 y CPR03 no lo incluyen):