Online Store

MIFARE® Card Programming - µFR Advanced Software SDK

Advanced MIFARE® Cards reading & writing source code software example

MIFARE SDK está disponible en los siguientes lenguajes de programación

  • Java (incluido el applet),
  • JavaScript,
  • Lázaro
  • Borland Delfos,
  • Constructor de C++,
  • Microsoft® Visual C++ .NET,
  • Microsoft® Visual C# .NET,
  • Microsoft® Visual Basic .NET

Docs & Software Download

LinearWrite, LinearWrite_AKM1, LinearWrite_AKM2, LinearWrite_PK

Estas funciones se utilizan para escribir datos utilizando la emulación del espacio de direcciones lineal. El método para probar la autenticidad está determinado por el sufijo en los nombres de la función:MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 1

  • aucData – Puntero a la secuencia de bytes que contiene datos para escribir
  • usLinearAddress – Dirección lineal donde se pretende la escritura de datos
  • usDataLength – Número de bytes para la entrada. En aucData, se debe asignar un mínimo de bytes usDataLength antes de llamar a la función
  • lpusBytesWritten – Puntero a una variable de tipo "corto sin signo", donde se escribe el número de bytes leídos correctamente desde la tarjeta. Si la entrada se completa correctamente, estos datos son iguales al parámetro usDataLength. Si hubo un error al escribir algunos de los bloques, la función devuelve el número de bytes escritos correctamente sobre este parámetro.
  • ucAuthKey: este parámetro define si se debe realizar la autenticación con la clave A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que se escriben.
 

LinearFormatCard, LinearFormatCard_AKM1, LinearFormatCard_AKM2, LinearFormatCard_PK

Estas funciones se utilizan para la escritura de nuevas teclas A y B, así como bits de acceso en los remolques de todos los sectores. La configuración de los bytes de noveno tráiler está habilitada (un byte de uso general donde se puede introducir cualquier valor). En todos los remolques del sector se establece el mismo valor para toda la tarjeta por lo que las mismas claves y derechos de acceso son válidos. Como es necesario demostrar la autenticidad sobre la base de claves anteriores antes de escribir en los remolques del sector, estas funciones son potencialmente adecuadas para inicializar la nueva tarjeta (la autenticación se realiza con claves de transporte, todos los bytes de clave son 0xFF) o para reinicializarla con las mismas claves y derechos de acceso para todos los sectores. Ciertamente, siempre hay que tener cuidado con los derechos de acceso previamente establecidos (bits de acceso) en caso de que se deshabilite el cambio de algunas claves o bits para el control de derechos de acceso.

SectorTrailerEscribir

Este grupo de funciones ofrece una mayor flexibilidad en el sector de remolques iniciando:MIFARE SDK - Software uFR Advanced con SDK para etiquetas de tarjetas MIFARE 2

  • aucNewKeyA – Puntero en una matriz de 6 bytes que contiene una nueva clave A
  • ucBlocksAccessBits: los valores de bits de acceso que definen los permisos para todos los bloques de datos. Puede tener valores de 0 a 7
  • ucSectorTrailersAccessBits: el valor de bits de acceso que define los permisos de acceso para todos los tráilers del sector. Puede tener valores de 0 a 7
  • ucSectorTrailersByte9: el valor de bits de acceso que define los permisos de acceso para todos los remolques de sector. Puede tener valores de 0 a 7
  • aucNewKeyB – Puntero en una matriz de 6 bytes que contiene una nueva clave B
  • lpucSectorsFormatted – Puntero a una variable de tipo "char sin signo" a través de la cual regresa el número de remolques de sectores formateados correctamente. Eg. si todos los remolques de sectores se inicializan correctamente, en el MIFARE® 1K, a través de este parámetro devuelve el valor 16 que representa el número de sectores. En caso de error, el parámetro es una indicación del número de sectores inicializados correctamente a partir de cero.
  • ucAuthModeEste parámetro define si se debe realizar la autenticación con clave A o con clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que se escriben.
  • aucProvidedKey – Puntero a la sexta cadena de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.
 

Funciones para trabajar con bloques de datos

BlockRead, BlockRead_AKM1, BlockRead_AKM2, BlockRead_PK

Este grupo de funciones se utiliza para bloquear la lectura de contenido. Siempre lee todo el bloque (16bytes del bloque). Las funciones utilizan el llamado direccionamiento de bloque (el primer bloque tiene la dirección 0; el primer remolque del sector tiene la dirección 3, el siguiente 7, etc. hasta que el último bloque MIFARE® 1K que también es un remolque del último sector, tiene una dirección 63). Estas funciones también permiten la lectura de los contenidos de los trailers del sector (su parte disponible para la lectura, dependiendo de los derechos de acceso establecidos).

MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 3

  • aucData – Puntero al número de bytes donde se almacenarán los datos leídos. Se deben asignar al menos 16 bytes antes de llamar a la función.
  • ucBlockAddress – dirección de bloque ucAuthMode. Este parámetro define si se debe realizar la autenticación con clave A o con clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que están escritos
  • ucSectorTrailersByte9: el valor de bits de acceso que define los permisos de acceso para todos los remolques de sector. Puede tener valores de 0 a 7
  • aucProvidedKey – Puntero a la sexta matriz de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.

Estas funciones funcionan igual que las funciones de grupo BlockRead y están hechas para la lectura de contenido en bloque. La única diferencia es que se utiliza el abordaje sectorial. Eso incluye el envío por separado de direcciones de sector y direcciones de bloque dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15. Siempre se lee todo el bloque (bloque de 16 bytes).

 

Estas funciones pueden leer el contenido de los trailers del sector (su parte disponible para su lectura, dependiendo de los derechos de acceso establecidos).

  • aucData – Puntero a la matriz de bytes donde se van a almacenar los datos leídos. Se deben asignar al menos 16 bytes antes de llamar a la función
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress – Bloquear dirección dentro de un sector
  • ucAuthMode: este parámetro define si se debe realizar la autenticación con clave A o clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que están escritos
  • aucProvidedKey – Puntero a la matriz de sexto byte que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica este método utilizado.

BlockWrite, BlockWrite_AKM1, BlockWrite_AKM2, BlockWrite_PK

Estas funciones se utilizan para la entrada de datos (16 bytes a la vez) en los bloques. Las funciones utilizan el llamado direccionamiento de bloque (el primer bloque tiene la dirección 0; el primer remolque del sector tiene la dirección 3, el siguiente 7, etc. hasta que el último bloque MIFARE® 1K que también es un remolque del último sector, tiene una dirección 63). Este grupo de funciones no permite la entrada directa de datos en los remolques del sector. Para ello, utilice las funciones especiales SectorTrailerWrite y SectorTrailerWriteUnsafe.

MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 4

  • aucData – Puntero al número de bytes donde se almacenarán los datos leídos. Se deben asignar al menos 16 bytes antes de llamar a la función
  • ucBlockAddress – Dirección de bloqueo de tarjeta
  • ucAuthMode: este parámetro define si se debe realizar la autenticación con la clave A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que se leen
  • aucProvidedKey – Puntero a la sexta matriz de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.
 

FORBIDEN_DIRECT_WRITE_IN_SECTOR_TRAILER.

BlockInSectorScribir, BlockInSectorWrite_AKM1, BlockInSectorWrite_AKM2 BlockInSectorWrite_PK

Estas funciones funcionan igual que las funciones de grupo BlockWrite; se utilizan para la entrada de datos (16 bytes a la vez) en bloques. La única diferencia es el uso del abordaje sectorial. Direccionamiento sectorial significa direcciones separadas de sectores de envío y de bloques dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15. Este grupo de funciones no permite la entrada directa de datos en los remolques del sector. Para ello, utilice las funciones especiales SectorTrailerWrite y SectorTrailerWriteUnsafeMIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 5

  • aucData – Puntero al número de bytes donde se almacenarán los datos leídos. Se deben asignar al menos 16 bytes antes de llamar a la función
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress: este parámetro define si se debe realizar la autenticación con clave A o clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61)
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que están escritos
  • aucProvidedKey – Puntero a la sexta matriz de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.
 

FORBIDEN_DIRECT_WRITE_IN_SECTOR_TRAILER.

SectorTrailerEscritura, SectorTrailerWrite_AKM1, SectorTrailerWrite_AKM2, SectorTrailerWrite_PK

Estas funciones se utilizan para la escritura de datos en los remolques del sector. Las funciones también se pueden utilizar para el direccionamiento de bloques de remolques sectoriales, así como para el direccionamiento de sectores que está determinado por el parámetro ucAddressingMode. MIFARE SDK - Software uFR Advanced con SDK para etiquetas de tarjetas MIFARE 6En el caso del direccionamiento en bloque, el primer bloque tiene la dirección 0; el remolque tiene una dirección del primer sector 3 y la siguiente 7, etc. hasta el último bloque de MIFARE® 1k que también es un remolque del último sector y tiene una dirección 63. Este grupo de funciones simplifica la manipulación de bits para la configuración de derechos de acceso de bloques (bits de acceso) y minimiza la posibilidad de bloqueo permanente de todo el sector debido al formato incorrecto de estos bits. El formato de los bits de acceso lo realiza el lector RFID antes de la escritura. Los usuarios de la API pueden elegir los derechos de acceso de bloques apropiados que están representados por valores de 0 a 7 y transmitirlos a estas funciones.

 

Para los remolques del sector son válidos los siguientes derechos de acceso:MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 7

  • Bits de acceso C1 C2 C3
  • Valores de acceso (enviados a la función)
  • Derechos de acceso
  • Bytes de clave A que contienen los bits de acceso y la clave de nueve bytes B
  • Lectura y escritura
 

Para los remolques del sector son válidos los siguientes derechos de acceso:

* Si los derechos de acceso para el remolque sectorial de un sector apropiado configuran de modo que sea posible leer la clave B, no se puede utilizar para la autenticación en ninguno de los casos. Estas funciones también establecen nuevas claves de sector si se permite acceder a los derechos.

  • Bits de acceso C1 C2 C3MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 8
  • Valores de acceso (enviados a la función)
  • Derechos de acceso
  • Lectura, escritura, incremento, disminución
 
  • ucAddressingMode: especifica el modo de dirección. Los valores posibles de este parámetro son BLOCK_ADDRESS_MODE (0x00) o SECTOR_ADDRESS_MODE (0x01). Si se envía cualquier otro valor, la función devuelve un código de error WRONG_ADDRESS_MODE
  • ucAddress – Dirección de bloques de remolques de sectores o sectores, dependiendo de ucAddressingMode. Cuando se utiliza un modo de dirección de sector, entonces, por ejemplo, el MIFARE Classic® 1K, el rango puede ser de 0 a 15 (tiene 16 sectores). El mismo tipo en el modo de direccionamiento de bloque puede utilizar los valores de 0 a 63 siempre que se produzca un error si el bloque direccionado no es también el remolque del sector.
  • aucNewKeyA : puntero a la matriz de 6 bytes que representa una nueva clave A para un sector especificado que se establecerá si se permite previamente con los derechos de acceso
  • aucNewKeyB: puntero a la matriz de seis bytes que representa una nueva clave B para un sector especificado que se establecerá si se permite previamente con los derechos de acceso
  • ucBlock0AccessBits – Valor de acceso para el bloque 0 de un sector.

MIFARE® 4k tiene una organización diferente para los últimos 8 sectores, la segunda mitad del espacio de direcciones. Por lo tanto, en estos sectores los derechos de acceso se establecen de la siguiente manera:

  • derechos de acceso a los primeros 5 bloques – ucBlock1AccessBits Bloque de valor de access para el primer sector
  • derechos de acceso a los segundos 5 bloques – ucBlock2AccessBits Access value block para el primer sector
  • derechos de acceso a los últimos 5 bloques:
    • ucSectorTrailerAccessBits – Valor de acceso para un tráiler sectorial
    • ucSectorTrailerByte9 – El byte de remolques del noveno sector es un byte para uso general donde se puede ingresar cualquier valor de un solo byte
    • ucAuthMode: este parámetro define si se debe realizar la autenticación con la clave A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61)
    • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que están escritos
    • aucProvidedKey – Puntero a la sexta matriz de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.

SectorTrailerEscrituraSegura, SectorTrailerWriteUnsafe_AKM1, SectorTrailerWriteUnsafe_AKM2, SectorTrailerWriteUnsafe_PK

Estas funciones tienen el mismo propósito que la función del grupo SectorTrailerWrite con la diferencia de enviar el contenido de los trailers de sector "raw" y los errores son posibles al formatear los valores de bits de acceso para ingresar. Estas funciones están destinadas a desarrolladores con experiencia en el trabajo con MIFARE®. Todas las reglas mencionadas para las funciones del grupo SectorTrailerWrite se aplican a estas funciones, excepto la opción de los datos "sin procesar" para la entrada de remolques del sector.

  • ucAddressingMode: especifica el modo de dirección. Los valores posibles de este parámetro son BLOCK_ADDRESS_MODE (0x00) o SECTOR_ADDRESS_MODE (0x01). Si se envía cualquier otro valor, la función devuelve un código de error WRONG_ADDRESS_MODE.
  • ucAddress – Dirección de bloque de remolques sectoriales o sectoriales, dependiendo de ucAddressingMode.

Cuando se utiliza un modo de dirección de sector, entonces, en el caso de MIFARE® 1K, el rango puede ser de 0 a 15 (tiene 16 sectores) y el mismo tipo en el modo de direccionamiento de bloque puede usar los valores de 0 a 63 con el posible error si el bloque direccionado no es también el remolque de sector.

  • aucSectorTrailer : puntero a matriz de 6 bytes que contiene los datos "sin procesar" para la entrada del remolque del sector de direcciones
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61)
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que están escritos
  • aucProvidedKey – Puntero a la sexta matriz de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.

Funciones para trabajar con bloques de valor

Los bloques de valor representan una funcionalidad MIFARE® opcional. Este es en realidad un modo en el que todo el bloque de datos (16 bytes) representa un valor de cuatro bytes. En este modo, puede agregar cualquier bloque de datos (excepto, por supuesto, el bloque 0, el sector cero y el tráiler del sector). Los valores de los bloques de valor tienen un formato especial y, además de los registros de valor, contienen el valor de dirección de un byte, lo que brinda a los usuarios la capacidad adicional de implementar el sistema de copia de seguridad.

Los lectores RFID D-Logic se encargan del formato adecuado de los bloques de valores, por lo que el conjunto de funciones que se manejan solo con valores de cuatro bytes están disponibles para los usuarios. Cabe mencionar que el uso de bloques de valor tiene sentido si los derechos de acceso al bloque deseado se establecen en los valores 1, 6 o 0 (el valor predeterminado en la nueva tarjeta) lo que permite que sus valores aumenten y disminuyan. En primer lugar, los bloques de valor deben iniciarse, el valor y la dirección asociada deben cumplir con el formato apropiado de dieciséis registros de bytes. La mejor y más fácil manera de inicializar bloques de valor es con un conjunto de funciones de API de Windows IS21 ValueBlockWrite o ValueBlockInSectorWrite.

ValueBlockRead, ValueBlockRead_AKM1, ValueBlockRead_AKM2, ValueBlockRead_PK

Estas funciones hacen lo mismo que las funciones de grupo ValueBlockRead y son adecuadas para leer valores de 4 bytes de los bloques de valores. Además devuelven la dirección asociada almacenada en el bloque de valores. La única diferencia es el uso del llamado abordaje sectorial. Direccionamiento sectorial significa enviar por separado direcciones sectoriales y de bloque dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15.

MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 9

  • lValue – Puntero a una variable de un tipo largo sobre la que devuelve el bloque de valores
  • ucValueAddr – El byte de remolques del noveno sector es un byte para uso general donde se puede ingresar cualquier valor de un solo byte
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress – Bloquear dirección en un sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61)
  • ucReaderKeyIndex – e método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.
 

ValueBlockInSectorLeer, ValueBlockInSectorRead_AKM1, ValueBlockInSectorRead_AKM2 ValueBlockInSectorRead_PK

Estas funciones hacen lo mismo que las funciones de grupo ValueBlockRead y son adecuadas para leer valores de 4 bytes de los bloques de valores. Además devuelven la dirección asociada almacenada en el bloque de valores. La única diferencia es el uso del llamado abordaje sectorial. Direccionamiento sectorial significa enviar por separado direcciones sectoriales y de bloque dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15.

MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 13

  • lValue – Puntero a una variable de un tipo largo sobre la que devuelve el bloque de valores
  • ucValueAddr- El puntero a una variable de tipo char sin signo se devuelve a través de la dirección de un byte que proporciona la capacidad adicional para una implementación del sistema de copia de seguridad
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress – Bloquear dirección en un sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61)
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.
 
 

ValueBlockWrite, ValueBlockWrite_AKM1, ValueBlockWrite_AKM2, ValueBlockWrite_PK

Estas funciones se utilizan para inicializar y escribir valores de bloques de valor de cuarto byte y almacenar la dirección asociada en el bloque de valores. Funciona utilizando el llamado direccionamiento de bloques (el primer bloque tiene la dirección 0; el remolque tiene una dirección del primer sector 3 y el siguiente 7, etc. hasta el último bloque de MIFARE® 1k que también es un remolque del último sector y tiene una dirección 63).MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 14

  • lValue – Valor para la entrada del bloque de valores
  • ucValueAddr – Dirección asociada al bloque de valor
  • ucBlockAddress – Bloquear dirección
  • ucAuthMode: este parámetro define si se debe realizar la autenticación con clave A o clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, esto se aplica a todos los sectores que están escritos
  • aucProvidedKey – Puntero a la sexta matriz de bytes que contiene la clave para la prueba de autenticidad en el método "Provided Key". _PK sufijo en el nombre de la función indica el uso de este método.
 
 

ValueBlockInSectorScribir, ValueBlockInSectorWrite_AKM1, ValueBlockInSectorWrite_AKM2 ValueBlockInSectorWrite_PK

Estas funciones son similares a las funciones del grupo ValueBlockWrite. Utilizan para la entrada, bloques de valores de 4 bytes de inicialización de valores. Además, almacena la dirección asociada en el valor de bloque. La única diferencia es el uso de direcciones sectoriales. Direccionamiento sectorial significa enviar por separado direcciones sectoriales y de bloque dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15.MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 15

  • lValue – Valor para la entrada del bloque de valores
  • ucValueAddr – Dirección asociada al bloque de valor
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress – Dirección de bloque de un sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.
 
 

ValueBlockIncrement, ValueBlockIncrement_AKM1, ValueBlockIncrement_AKM2, ValueBlockIncrement_PK

Este conjunto de características se utiliza para incrementar el valor de los bloques de valores de 4 bytes. El valor del incremento del bloque de valores se envía como parámetro de estas funciones. Las funciones utilizan direccionamiento de bloques (el primer bloque tiene la dirección 0; el primer remolque del sector tiene la dirección 3, el siguiente 7, etc. hasta que el último bloque MIFARE® 1K que también es un remolque del último sector, tiene una dirección 63).MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 16

  • lIncrementValue – El valor del incremento del bloque de valor
  • ucBlockAddress – Bloquear dirección en un sector
  • ucSectorAddress – Dirección del sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.
 
 

ValueBlockInSectorIncrement, ValueBlockInSectorIncrement_AKM1, ValueBlockInSectorIncrement_AKM2 ValueBlockInSectorIncrement_PK

Estas funciones tienen el mismo propósito que las funciones de grupo ValueBlockIncrement y se utilizan para leer valores de 4 bytes de los bloques de valores. El valor del incremento del bloque de valores se envía como parámetro de estas funciones. La única diferencia es el uso de direcciones sectoriales. Direccionamiento sectorial significa enviar por separado direcciones sectoriales y de bloque dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15.MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 17

  • lIncrementValue – El valor del incremento del bloque de valor
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress – Bloquear dirección dentro de un sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.
 
 

ValueBlockDecrement, ValueBlockDecrement_AKM1, ValueBlockDecrement_AKM2, ValueBlockDecrement_PK

Este conjunto de funciones se utiliza para disminuir el valor de 4 bytes de los bloques de valor. El valor de la disminución del bloque de valores se envía como parámetro de estas funciones. Las funciones utilizan direccionamiento de bloques (el primer bloque tiene la dirección 0; el primer remolque del sector tiene la dirección 3, el siguiente 7, etc. hasta que el último bloque MIFARE® 1K que también es un remolque del último sector, tiene una dirección 63).MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 18

  • lDecrementValue – El valor de la disminución del bloque de valor
  • ucBlockAddress – Bloquear dirección dentro de un sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal, se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.
 
 

ValueBlockInSectorDecrement, ValueBlockInSectorDecrement_AKM1, ValueBlockInSectorDecrement_AKM2, ValueBlockInSectorDecrement_PK

Estas funciones funcionan igual que las funciones del grupo ValueBlockDecrement y están hechas para los bloques de valores de 4 bytes de disminución de valores. El valor de la disminución del bloque de valores se envía como parámetro a estas funciones. La única diferencia es el uso de direcciones sectoriales. Eso incluye el envío por separado de direcciones de sector y direcciones de bloque dentro de un sector. Para MIFARE® 1K la dirección del sector puede estar en el rango de 0 a 15, y la dirección de los bloques dentro del sector que va de 0 a 3. Para MIFARE® 4k la dirección del sector puede estar en el rango de 0 a 39 y dado que la segunda mitad de la organización del espacio de direcciones es diferente (por encima de 2 MB) la dirección de bloques en los últimos 8 sectores (sectores 32 a 39) puede estar en el rango de 0 a 15MIFARE SDK - Software uFR Advanced con SDK para tarjetas MIFARE etiquetas 19

  • lDecrementValue – El valor de la disminución del bloque de valor
  • ucSectorAddress – Dirección del sector
  • ucBlockInSectorAddress – Bloquear dirección dentro de un sector
  • ucAuthMode: este parámetro define si se debe realizar la clave de autenticación A o la clave B. Puede tener dos valores, a saber: AUTHENT1A (0x60) o AUTHENT1B (0x61).
  • ucReaderKeyIndex: el método predeterminado de autenticación (cuando se utilizan las funciones sin un sufijo) realiza la prueba de autenticidad mediante el uso del índice de clave seleccionado del lector RFID. En el modo de dirección lineal se aplica a todos los sectores para la escritura
  • aucProvidedKey: puntero a la matriz de seis bytes que contiene la clave para la autenticación del método "Provided Key". _PK sufijo del nombre de la función indica el uso de este método.