•Tamper detection capability with memorization of open/resealed events
•TruST25 digital signature
Privacy
•Configurable kill mode for permanent deactivation of the tag
•Untraceable mode with configurable responsiveness
Temperature range
•From - 40 to 85 °C
DS13304 - Rev 3 - April 2021
For further information contact your local STMicroelectronics sales office.
www.st.com
ST25TV02KC ST25TV512C
Package
•5-pin package, ECOPACK2 (RoHS compliant)
•Bumped and sawn wafer
DS13304 - Rev 3
page 2/87
1Description
The ST25TV02KC and ST25TV512C devices are NFC/RFID tag ICs with an Augmented NDEF feature, a tamper
detection interface, and specific modes to protect customer privacy.
The Augmented NDEF feature is a contextual automatic NDEF message service, allowing the tag to respond
dynamic content without an explicit update of the EEPROM by the end-user.
The tamper detection interface is available on ST25TV02KC-T devices only. This interface is not available on
ST25TV02KC‑A and ST25TV512C devices.
The ST25TV02KC and ST25TV512C devices hold a digital signature generated by TruST25 (a set of software
and procedures) to prove the origin of the chip in cloning detection, embeds a configurable EEPROM with 60-year
data retention, and can be operated from a 13.56 MHz long range RFID reader or an NFC phone.
The contactless interface is compliant with the ISO/IEC 15693 standard and NFC Forum Type 5 tag specification.
1.1Block diagram
The ST25TV02KC and ST25TV512C (hereinafter referred to as ST25TVxxxC) devices are depicted in the
following block diagram:
ST25TV02KC ST25TV512C
Description
Figure 1. ST25TVxxxC block diagram
ANALOG FRONT END
EEPROM
RF interface
AC0
23 pF tuning
capacitance
User memory
(2)
DIGITAL CONTROL
UNIT
AC1
ISO/IEC 15693
protocol and control
Memory control
System registers
1. The tamper detection interface is available on ST25TV02KC-T devices only.
2. Respectively 512 and 2560 bits on ST25TV512C and ST25TV02KC devices.
(1)
TD0
TD1
TAMPER DETECTION
1.2Package connections
ST25TV02KC and ST25TV512C are provided in two delivery forms:
•UFDFPN5 package (ST25TV02KC-T devices only)
•Sawn and bumped wafer (ST25TV512C, ST25TV02KC-A and ST25TV02KC-T devices)
DS13304 - Rev 3
page 3/87
ST25TV02KC ST25TV512C
Package connections
Table 1. Signal names
Signal nameFunctionDirection
AC0Antenna coilsIn-out
AC1Antenna coilsIn-out
TD0Tamper detection loopIn
TD1Tamper detection loopOut
Figure 2. UFDFPN5 package connections
TD1
51
NC
AC1
4
UFDFPN5 pads side
Figure 3. Die connections for sawn and bumped wafer
AC0NC
ST25TVxxxC-A
AC1NC
Bumped pads side
TD0
2
NC
3
AC0
AC0TD0
ST25TV02KC-T
AC1TD1
Bumped pads side
DS13304 - Rev 3
page 4/87
2Signal descriptions
2.1Antenna coil (AC0, AC1)
These inputs are used to connect the ST25TVxxxC device to an external coil exclusively. It is advised not to
connect any other DC or AC path to AC0 or AC1.
When correctly tuned, the coil is used to power and access the device using the ISO/IEC 15693 and ISO 18000-3
mode 1 protocols.
2.2Tamper detection (TD0, TD1)
These inputs are used to connect a wire loop to the ST25TVxxxC device to detect an open or a short between the
TD0 and TD1 pins.
ST25TV02KC ST25TV512C
Signal descriptions
DS13304 - Rev 3
page 5/87
3Power management
The ST25TVxxxC device is powered through its contactless interface.
3.1Device set
To ensure a proper boot of the RF circuitry, the RF field must be turned ON without any modulation for a
minimum period of time t
all received RF commands (see Figure 4).
RF Field:
BOOT_RF
(see Table 172. RF characteristics). During t
Figure 4. RF power-up sequence
t
BOOT_RF
ST25TV02KC ST25TV512C
Power management
BOOT_RF
, the ST25TVxxxC ignores
RF State:
3.2Device reset
To ensure a proper reset of the RF circuitry, the RF field must be turned off (100% modulation) for a minimum
t
amount of time (see Table 172. RF characteristics).
RF_OFF
OFF
Boot
No RF access
allowed
ON = RF interface ready
DS13304 - Rev 3
page 6/87
4Memory management
4.1Memory organization
The ST25TVxxxC memory is organized as follows:
•User memory: it can be configured in one or two different areas, as described in Section 4.2 User memory.
Those areas can be used for user data and NFC Forum Type 5 Capability Container (CC) if required.
•System configuration memory: it is composed of different registers, including the device configuration, the
ISO15693 AFI and DSFID registers. It also contains the UID and different protection registers. Refer to
Section 4.3 System configuration memory for more details
ST25TV02KC ST25TV512C
Memory management
Figure 5. Memory organization
User memory
(3)
CC File
AREA1
(single area)
(1)
AREA1
(dual area)
AREA2
(dual area)
(2)
(2)
DS13304 - Rev 3
System
CFG
configuration
memory
1.NFC Forum T5T CC file is coded on block 00h which is part of AREA1.
2.In dual area mode, the AREA1/AREA2 boundary can be configured with a block granularity.
3.Respectively 16 and 80 blocks of 32 bits for ST25TV512C and ST25TV02KC devices.
SYS
page 7/87
4.2User memory
User memory is addressed as blocks (= pages) of 4 bytes, starting at address 0 and ending at address
END_MEM. Value of END_MEM is 0Fh and 4Fh for ST25TV512C and ST25TV02KC devices respectively. The
ST25TVxxxC user memory can be configured in single area (AREA1) or in dual area mode (AREA1 and AREA2)
depending on the value of the END_A1 register at the start of a RF session (see Table 2. User memory in single
area mode, Table 3. User memory in dual area mode and Table 13. END_A1 content).
When the value of END_A1 is equal to END_MEM, the ST25TVxxxC user memory is configured in single area
mode defined as follows:
•AREA1 starts at address 00h. It is composed of (END_MEM+1) blocks. It can be read- or readwriteprotected by a dedicated 64-bit password. AREA1 is dedicated to user data.
When the value of END_A1 is lower than END_MEM, the ST25TVxxxC user memory is configured in dual area
mode defined as follows :
•AREA1 starts at address 00h. It is composed of (END_A1+1) blocks. It can be read- or readwrite-protected
by a dedicated 32-bit password. AREA1 is dedicated to user data.
•AREA2 starts at address (END_A1+1). It is composed of (END_MEM-END_A1) blocks. It can be read- or
readwrite-protected by a dedicated 32-bit password. AREA2 is dedicated to user data.
Block 00h belongs to AREA1, but can always be read regardless of the read-protection mode of AREA1. This
block is dedicated to the CC file content defined by the NFC Forum Type 5 application. An application that does
not need to comply with NFC Forum Type 5 specifications can use block 00h for any purpose.
2. For dual area mode, set value of END_A1 register between 00h and (END_MEM-1)
Byte address
Comment
(2)
AREA1
Comment
(2)
AREA1
(2)
AREA2
DS13304 - Rev 3
page 8/87
4.3System configuration memory
In addition to user memory, ST25TVxxxC includes a set of registers located in the system configuration memory.
Registers are read during the boot sequence and define basic ST25TVxxxC behaviour.
4.3.1System configuration registers
Table 4. List of configuration registers lists the configuration registers of the ST25TVxxxC device. They are
accessed with the ReadConfiguration and WriteConfiguration commands and two arguments FID and PID,
respectively acting as a feature identifier and a parameter identifier.
The write access to the configuration registers is protected by the CONFIG security session which is opened by a
successful presentation of the PWD_CFG password (see Section 5.1.2 Password management).
Configuration registers are grouped by FID value. The write access to a group of registers may be permanently
locked.
Depending on the configuration register, its read access is either always granted or protected with the same
mechanisms as its write access.
Depending on the configuration register, when its content is updated during a RF session, the effect of the new
value is activated either immediately or at the start of the next RF session.
Table 4. List of configuration registers
Name
RW_PROTECTION_A100h00h1YWBSection 5.1.1
END_A100h01h1YW'BSection 5.1.1
RW_PROTECTION_A201h00h1YWBSection 5.1.1
UTC_EN02h00h1YWBSection 5.2.1
UTC02h01h3YN-Section 5.2.1
TD_EVENT_UPDATE_EN
TD_SEAL_MSG
TD_UNSEAL_MSG
TD_RESEAL_MSG
TD_SHORT_MSG
TD_OPEN_MSG
TD_STATUS
(4)
(4)
(4)
(4)
(4)
(4)
ANDEF_EN04h00h1YWBSection 5.4.1
ANDEF_CFG04h01h2YWBSection 5.4.1
ANDEF_SEP04h02h1RWISection 5.4.1
ANDEF_CUSTOM_LSB04h03h4RWISection 5.4.1
ANDEF_CUSTOM_MSB04h04h4RWISection 5.4.1
PRIVACY05h00h1YWBSection 5.5.1
AFI_PROT08h00h1YWBSection 5.7.1
REVFEh00h1YN-Section 5.9
UIDFEh01h8YN-Section 5.9
LCK_CONFIGFFh00h2YW''ISection 5.1.1
1. Y: read access not protected, R: read access granted if LCK_CONFIG[FID]=0b and CONFIG security session open
2. N: write access not available, W: write access granted if LCK_CONFIG[FID]=0b and CONFIG security session open, W':
write access granted if LCK_CONFIG[1:0]=00b and CONFIG security session open, W'': write access granted if CONFIG
security session open
3. B: update is effective on next RF boot sequence, I: update is effective immediately
FIDPIDBytes
(4)
03h00h1YWBSection 5.3.1
03h01h2RWISection 5.3.1
03h02h2RWISection 5.3.1
03h03h2RWISection 5.3.1
03h04h1RWISection 5.3.1
03h05h1RWISection 5.3.1
03h06h3YN-Section 5.3.1
Read
ST25TV02KC ST25TV512C
System configuration memory
(1)
Write
(2)
Activation time
(3)
Section
DS13304 - Rev 3
page 9/87
4. Registers with FID=03h are available only on ST25TV02KC-T devices (see section 10)
4.3.2System registers
Table 5 lists the system registers of the ST25TVxxxC device. They are accessed with other RF commands than
ReadConfiguration and WriteConfiguration.
When the write access to a system register is available, it may be protected by a password and/or a lock
mechanism.
When the read access to a system register is available, it is always granted through the relevant RF command.
When the content of a system register is updated, the effect of the new value is activated immediately.
NameBytes
LCK_BLOCK10RWISection 5.1.1
LCK_DSFID1NWISection 5.9
LCK_AFI1NWISection 5.9
DSFID1YWISection 5.9
AFI1YWISection 5.9
IC_REF1YN-Section 5.9
UID8YN-Section 5.9
ANDEF_UID16YN-Section 5.4.1
KILL_CMD1NWISection 5.5.1
UNTR_CMD1NWISection 5.5.1
RND_NUMBER2Y
PWD_CFG4NWISection 5.1.1
PWD_A14NWISection 5.1.1
PWD_A24NWISection 5.1.1
PWD_UNTR4NWISection 5.1.1
1. Y: read access granted without condition, R: read access granted with condition
2. N: write access not available, W: write access granted with condition
3. The content of the RND_NUMBER register is updated internally on a successful GetRandomNumber request
Table 5. List of system registers
Read
(1)
Write
N
(2)
(3)
Activation timeSection
ST25TV02KC ST25TV512C
System configuration memory
-Section 5.1.1
DS13304 - Rev 3
page 10/87
5Specific features
ST25TVxxxC offers the following features:
•Section 5.1 Data protection
•Section 5.2 Unique tap code
•Section 5.3 Tamper detection
•Section 5.4 Augmented NDEF
•Section 5.5 Consumer privacy protection
•Section 5.6 TruST25 digital signature
•Section 5.7 AFI protection
•Section 5.8 Inventory Initiated
The features from Section 5.1 to Section 5.7 can be programmed by accessing registers of the ST25TVxxxC
using the ReadConfiguration and WriteConfiguration commands. Update of configuration registers is only possible
when the access right has been granted by presenting the configuration password (PWD_CFG), and if the
configuration of the feature was not previously locked (see register LCK_CONFIG).
Depending on the configuration register, the effect of a valid write access may be applied immediately or during
the boot sequence of the next RF session.
An additional set of registers allows to identify and customize the product (see Section 5.9 Device identification
registers.).
ST25TV02KC ST25TV512C
Specific features
5.1Data protection
ST25TVxxxC provides a special data protection mechanism based on passwords that unlock security sessions.
Read and/or write access to the user memory can be protected. Write access to the configuration registers is
always protected. Read access to some configuration registers is protected.
Other lock mechanisms are supported (LockBlock, lock by feature), as described in this section.
5.1.1Data protection registers
RF CommandAccess type
ReadConfiguration @(FID=FFh, PID=00h)R : always possible
WriteConfiguration @(FID=FFh, PID=00h)
Table 6. LCK_CONFIG access
W : if the CONFIG security session is open
W effective time : immediate
DS13304 - Rev 3
page 11/87
ST25TV02KC ST25TV512C
Data protection
Table 7. LCK_CONFIG content
BitNameFunctionFactory value
b0LCK_A1
b1LCK_A2
b2LCK_UTC
b3LCK_TD
b4LCK_ANDEF
b5LCK_PRIV
b7-b6RFU-00b
b8LCK_AFIP
b15-b9RFU-0000000b
0: configuration registers with FID=00h are not locked
1: configuration registers with FID=00h are locked
0: configuration registers with FID=01h are not locked
1: configuration registers with FID=01h are locked
0: configuration registers with FID=02h are not locked
1: configuration registers with FID=02h are locked
0: configuration registers with FID=03h are not locked
1: configuration registers with FID=03h are locked
0: configuration registers with FID=04h are not locked
1: configuration registers with FID=04h are locked
0: configuration registers with FID=05h are not locked
1: configuration registers with FID=05h are locked
0: configuration registers with FID=08h are not locked
1: configuration registers with FID=08h are locked
0b
0b
0b
0b
0b
0b
0b
Note:Refer to Table 4. List of configuration registers for the LCK_CONFIG register.
If value 1b is issued for a field already set to 1b, the WriteConfiguration command has no effect and error 11h
shall be responded.
Otherwise, if value 0b is issued for a field set to 1b, the corresponding feature remains locked and no errorcode is
responded to the WriteConfiguration command.
Table 8. LCK_BLOCK access
RF Command
ReadSingleBlock
ReadMultipleBlocks
GetMultipleBlockSecurityStatus
R : if Option_flag=1 and write access to parent area is allowed
R : if Option_flag=1 and write access to parent area is allowed
R : if write access to parent area is allowed
LockBlockW : if not already locked and write access to parent area is allowed
-W effective time : immediate
1. When the write access to an area is not allowed (write access forbidden, or protected with closed security session),
then the value of LCK_BLOCK is masked by 1 in a BSS field (see sections Section 6.4.3 ReadSingleBlock,
Section 6.4.6 ReadMultipleBlocks and Section 6.4.14 GetMultipleBlockSecurityStatus)
Access type
Table 9. LCK_BLOCK content
Bit
b79-b0LCK_BLOCK
NameFunctionFactory Value
For each bit bN:
•0: write access of block N not locked
•1: write access of block N permanently
(1)
(1)
(1)
0
Note:Refer to Table 5. List of system registers for the LCK_BLOCK register.
DS13304 - Rev 3
page 12/87
ST25TV02KC ST25TV512C
Data protection
Table 10. RW_PROTECTION_A1 access
RF CommandType
ReadConfiguration @(FID=00h, PID=00h)R : always possible
WriteConfiguration @(FID=00h, PID=00h)
Table 11. RW_PROTECTION_A1 content
BitNameFunctionFactory Value
AREA1 access rights (except block 00h):
•00: read always allowed / write always allowed
•01: read always allowed / write allowed if AREA1 security
•10: read allowed if AREA1 security session is open /
b1-b0RW_PROTECTION_A1
b7-b2RFU-000000b
•11: read allowed if AREA1 security session is open /
Block 00h access rights: read always allowed
•00: write always allowed
•01: write allowed if AREA1 security session is open
•10: write allowed if AREA1 security session is open
•11: write forbidden
W : if the CONFIG security session is open and LCK_A1=0b
W effective time : on next RF boot sequence
session is open
write allowed if AREA1 security session is open
write forbidden
00b
Note:Refer to Table 4. List of configuration registers for the RW_PROTECTION_A1 register.
Table 12. END_A1 access
RF command
ReadConfiguration @(FID=00h, PID=01h)R : always possible
WriteConfiguration @(FID=00h, PID=01h)
W : if the CONFIG security session is open and LCK_A1=LCK_A2=0b
W effective time : on next RF boot sequence
Access type
Table 13. END_A1 content
Bit
b7-b0END_A1
1. END_MEM value is 0Fh / 4Fh for ST25TV512C / ST25TV02KC devices respectively.
NameFunctionFactory Value
Number of the last block belonging to AREA1.
When lower than END_MEM, user memory is split in two
areas :
•AREA1 (blocks 00h to END_A1)
•AREA2 (blocks END_A1 + 1 to END_MEM).
Otherwise user memory contains a single area : AREA1
(blocks 00h to END_MEM)
Note:Refer to Table 4. List of configuration registers for the END_A1 register.
END_MEM
(1)
DS13304 - Rev 3
page 13/87
ST25TV02KC ST25TV512C
Data protection
Table 14. RW_PROTECTION_A2 access
RF commandAccess type
ReadConfiguration @(FID=01h, PID=00h)R : always possible
WriteConfiguration @(FID=01h, PID=00h)
Table 15. RW_PROTECTION_A2 content
BitNameFunctionFactory Value
AREA2 access rights:
•00: read always allowed / write always allowed
•01: read always allowed / write allowed if AREA2 security
b1-b0RW_PROTECTION_A2
b7-b2RFU-000000b
session is open
•10: read allowed if AREA2 security session is open / write
allowed if AREA2 security session is open
•11: read allowed if AREA2 security session is open / write not
allowed
W : if the CONFIG security session is open and LCK_A2=0b
W effective time : on next RF boot sequence
00b
Note:Refer to Table 4. List of configuration registers for the RW_PROTECTION_A2 register.
Table 16. PWD_CFG access
RF command
-R: no read access
WritePassword @PID=00h
W: if the CONFIG security session is open
W effective time: immediate
Access type
Table 17. PWD_CFG content
BitNameFunction
b31-b0PWD_CFGPassword for access to configuration registers and Kill command00000000h
Note:Refer to Table 5. List of system registers for the PWD_CFG register.
Factory
Value
DS13304 - Rev 3
page 14/87
Table 18. PWD_A1 access
RF commandAccess type
-R : no read access
WritePassword @PID=01h
W : if AREA1 security session is open
W effective time : immediate
Table 19. PWD_A1 content
BitNameFunctionFactory Value
b31-b0PWD_A1_LSBPassword for access to AREA100000000h
In single area mode, bits 0 to 63 are used.
(1)
In dual area mode only bits 0 to 31 are used
b63-b32
PWD_A1_MSB
1. PWD_A1_MSB is an alias of register PWD_A2:
•when switching from dual to single area mode, the value of PWD_A1_MSB is the latest known value of PWD_A2
•when switching from single to dual area mode, the value of PWD_A2 is the latest known value of PWD_A1_MSB
Note:Refer to Table 5. List of system registers for the PWD_A1 register.
ST25TV02KC ST25TV512C
Data protection
00000000h
Table 20. PWD_A2 access
RF command
-R : no read access
WritePassword @PID=02h
W : if AREA2 security session is open
W effective time : immediate
Table 21. PWD_A2 content
Bit
b31-b0
1. PWD_A1_MSB is an alias of register PWD_A2:
•when switching from dual to single area mode, the value of PWD_A1_MSB is the latest known value of PWD_A2
•when switching from single to dual area mode, the value of PWD_A2 is the latest known value of PWD_A1_MSB
NameFunctionFactory Value
PWD_A2
(1)
Password for access to AREA200000000h
Note:Refer to Table 5. List of system registers for the PWD_A2 register.
Table 22. PWD_UNTR access
RF command
-R : no read access
WritePassword @PID=03h
W : if UNTR security session is open
W effective time : immediate
Access type
Access type
Table 23. PWD_UNTR content
Bit
b31-b0PWD_UNTRPassword used with ToggleUntraceable command00000000h
NameFunctionFactory Value
Note:Refer to Table 5. List of system registers for the PWD_UNTR register.
DS13304 - Rev 3
page 15/87
Table 24. RND_NUMBER access
RF commandAccess type
GetRandomNumberR : always possible
1. the content of the RND_NUMBER register is updated internally on a successful GetRandomNumber command.
-
W : no write access
Table 25. RND_NUMBER content
BitNameFunctionFactory value
b15-b0RND_NUMBER16-bit random numberN/A
Note:Refer to Table 5. List of system registers for the RND_NUMBER register.
5.1.2Password management
ST25TVxxxC provides protection of user and system configuration memories. Access to groups of data are
controlled by security sessions based on passwords. On successful (respectively failed) presentation of a
password, a security session is open (respectively closed) and grants (respectively denies) access to the
protected group of data.
ST25TV02KC ST25TV512C
Data protection
(1)
Table 26. Security session type
Security sessionOpen by presentingRights granted when session is open
CONFIGPWD_CFG
AREA1PWD_A1
AREA2PWD_A2
UNTRPWD_UNTRUpdate of PWD_UNTR
Access to configuration registers
Update of PWD_CFG
Access to blocks from AREA1 in user memory
Update of PWD_A1
Access to blocks from AREA2 in user memory
Update of PWD_A2
Each of the PWD_CFG and PWD_UNTR passwords is 32-bit long.
In dual area mode (END_A1 < END_MEM), each of the PWD_A1 and PWD_A2 passwords is 32-bit long.
In single area mode (END_A1 = END_MEM), the PWD_A1 password is 64-bit long, and AREA2 security session
is not applicable: password commands fail with password identifier 02h when single area mode is used.
Note:In addition to the security session mechanism described in this section, the PWD_CFG and PWD_UNTR
passwords are respectively used with the Kill and ToggleUntraceable commands.
Table 27. List of password registers
Password
PWD_CFG00h4 bytes
PWD_A101h
PWD_A202h
PWD_UNTR03h4 bytes
Password_idPassword_data size
4 bytes if END_A1 < END_MEM
8 bytes if END_A1 = END_MEM
4 bytes if END_A1 < END_MEM
Invalid request if END_A1 = END_MEM
DS13304 - Rev 3
page 16/87
ST25TV02KC ST25TV512C
Data protection
The ST25TVxxxC passwords management is based on three commands:
•WritePassword (see Section 6.4.18 WritePassword)
•PresentPassword (see Section 6.4.19 PresentPassword)
•GetRandomNumber (see Section 6.4.24 GetRandomNumber)
For any of the 4x passwords available, three actions are possible:
•Open Security Session:
–Use GetRandomNumber command if needed
–Use PresentPassword command with corresponding password identifier and valid encrypted password
value (see Section 5.1.4 User memory protection)
•Update Password:
–While the security session for the corresponding password is open, use WritePassword command with
same password identifier and the new encrypted password value (see Section 5.1.4 User memory
protection).
•Close Security Session:
–To close the security session corresponding to a password identifier, user can choose one of the
following options:
◦Remove tag from RF field
◦Use PresentPassword command with same password identifier and an invalid password value
◦Open a security session corresponding to a different password identifier. Opening a new security
session automatically closes the previously opened one (even if the open operation fails)
Figure 6 describes the mechanism to open/close the security sessions.
DS13304 - Rev 3
page 17/87
ST25TV02KC ST25TV512C
Figure 6. Security sessions management
ST25TVxxxC
out of RF field
Data protection
Present any
password not OK
Any other
command
Any other
command
PWD_x OK
Any other
command
Present
Field ON
All security
sessions
closed
PWD_x OK
Security
session x
opened
(y closed)
Security
session y
opened
(x closed)
Field OFF
Present
Present
PWD_y OK
DS13304 - Rev 3
Password recovery
The ST25TVxxxC devices provide a password recovery feature, which allows the user to reprogram a corrupted
password after a RF field failure during a WritePassword command.
Refer to “AN5577 - Password management for ST25TV512C and ST25TV02KC devices", for more details on how
to use it. Contact your STMicroelectronics sales office to get this document.
Password attempt limit
The ST25TVxxxC devices offer the capability to protect a password against brute-force attacks, thanks to a limiter
mechanism on failed password attempts.
Refer to “AN5577 - Password management for ST25TV512C and ST25TV02KC devices", for more details on how
to use it. Contact your STMicroelectronics sales office to get this document.
page 18/87
ST25TV02KC ST25TV512C
Data protection
5.1.3Password encryption
An encryption mechanism - known as cover coding - is used to transmit coded password values in the
Password_data field of the following command frames:
•PresentPassword request (see Section 6.4.19 PresentPassword),
•WritePassword request (see Section 6.4.18 WritePassword)
•Kill request (see Section 6.4.20 Kill)
•ToggleUntraceable request (see Section 6.4.23 ToggleUntraceable)
The mechanism requires that a call to the GetRandomNumber command has been issued since the latest boot of
the ST25TVxxxC device, otherwise these password commands fail.
Additionally, if the latest call to a PresentPassword / Kill / ToggleUntraceable command failed because of an
invalid value of the Password_data field, it is required that a call to the GetRandomNumber command is issued
before attempting a new call to either of these three commands, otherwise their execution will fail regardless of
the new value of the Password_data field.
Note:If the latest execution of a PresentPassword / ToggleUntraceable command was successful, it is not necessary
to issue a new call to the GetRandomNumber command before issuing a new PresentPassword / Kill /
ToggleUntraceable request.
Assuming these constraints are fulfilled, let the RND_NUMBER_4B and RND_NUMBER_8B values be computed
from the concatenation of the RND_NUMBER register value returned by the latest call to the GetRandomNumber
request.
Table 28. RND_NUMBER_4B
b31-b16
RND_NUMBERRND_NUMBER
b15-b0
Table 29. RND_NUMBER_8B
b63-b48
RND_NUMBERRND_NUMBERRND_NUMBERRND_NUMBER
b47-b32b31-b16b15-b0
Let PASSWORD_4B (resp. PASSWORD_8B) be the unencrypted value of a 32-bit (resp. 64-bit) password to be
transmitted over a PresentPassword / WritePassword / Kill / ToggleUntraceable request.
The Password_data field in a request frame shall be computed as follows :
•for a 32-bit password :
Password_data = XOR(RND_NUMBER_4B , PASSWORD_4B)
–
•for a 64-bit password :
Password_data = XOR(RND_NUMBER_8B , PASSWORD_8B)
–
Table 30. Example of 64-bit Password_data value computation
Note:A field coded on several bytes – such as Password_data – is transmitted in LSB to MSB byte order in ISO15693
request and response frames
DS13304 - Rev 3
page 19/87
When processing a PresentPassword / Kill / ToggleUntraceable request, the ST25TVxxxC device decrypts the
Password_data field to obtain the unencrypted value PASSWORD_4B (or PASSWORD_8B), which is used for
comparison with the password register identified by the Password_id field.
When processing a WritePassword request, the ST25TVxxxC device decrypts the Password_data field to obtain
the unencrypted value PASSWORD_4B (or PASSWORD_8B) , which is used for update of the password register
identified by the Password_id field.
5.1.4User memory protection
A read and/or write access protection can be globally applied to the blocks of an area. Such protection can be
individually configured for AREA1 and AREA2, thanks to the RW_PROTECTION_A1 and RW_PROTECTION_A2
registers (see Table 11. RW_PROTECTION_A1 content and Table 15. RW_PROTECTION_A2 content).
On factory delivery, access to AREA1 and AREA2 are not protected. When updating RW_PROTECTION_Ax
registers, the new protection mode is effective during the boot sequence of the next RF session.
In addition to the area protection mechanism, the write access to each block composing AREA1 and AREA2 can
be individually locked thanks to the LockBlock command.
Block 00h is an exception to the area protection mechanism:
•when block 00h is not locked, the protection of its write access is determined by the value of
RW_PROTECTION_A1 register, like other blocks of AREA1
•read access to block 00h is always allowed, regardless of the value of RW_PROTECTION_A1 register
The RW_PROTECTION_A1 register is locked when register LCK_A1 is set to 1b.
The RW_PROTECTION_A2 register is locked when register LCK_A2 is set to 1b.
The END_A1 register is locked when either of LCK_A1 and LCK_A2 registers is set to 1b.
ST25TV02KC ST25TV512C
Data protection
Retrieve the security status of a user memory block
User can read a block security status (BSS) by issuing following commands:
•GetMultipleBlockSecurityStatus
•ReadSingleBlock with Option_flag set to 1
•ReadMultipleBlocks with Option_flag set to 1
For each block, ST25TVxxxC will respond with a BSS byte containing a Lock_bit flag (b0 in Table 31) as specified
in ISO 15693 standard.
Table 31. Block security status
b7
b6b5b4b3b2b1b0
0: RFU
0: Write access to current block granted
1: Write access to current block denied
This Lock_bit flag is set to one if write access to the corresponding block is not allowed. This happens when either
of the following conditions is met:
•the write access to the block was permanently locked (corresponding bit of LCK_BLOCK register set to 1b)
by a successful LockBlock command
•write access to parent area is protected (RW_PROTECTION_Ax = 01b or 10b at start of the RF session)
and security session is closed
•write access to parent area is forbidden (RW_PROTECTION_Ax = 11b at start of the RF session)
5.1.5System configuration memory protection
Configurations registers listed Table 4. List of configuration registers are accessed using the ReadConfiguration
and WriteConfiguration commands.
Configuration registers are grouped by feature. A group is identified by parameter FID, a register from this group
is identified by parameter PID.
Write access to configuration registers is protected or forbidden.
Note:Write access to read-only configuration registers is forbidden
DS13304 - Rev 3
page 20/87
ST25TV02KC ST25TV512C
Unique tap code
Protected write access to a configuration register is granted when the CONFIG security session is open, and its
parent group is not permanently locked.
Read access to configuration registers is protected or always allowed. Protected read access to a configuration
register is granted when the CONFIG security session is open, and its parent group is not permanently locked.
On factory delivery, configuration groups are not locked (all bits of LCK_CONFIG register are set to 0b). A
configuration group identified by FID (00h, 01h, 02h, 03h, 04h, 05h or 08h) can be permanently locked by setting
bit FID of LCK_CONFIG register to 1b:
•if the read access to a configuration register from this group was protected, the register can no longer be
read even if CONFIG security session is open
•if the write access to a configuration register from this group was protected, the register can no longer be
written even if CONFIG security session is open
•write access to LCK_CONFIG register (FID=FFh, PID=00h) is granted when the CONFIG security session is
open
•user cannot unlock a configuration group by setting bit FID of LCK_CONFIG back to 0b, even after opening
CONFIG security session (Lock is permanent)
•user may lock several configuration groups with a single WriteConfiguration command by setting the
respective bits of LCK_CONFIG to 1b in the request
System registers listed in Table 5. List of system registers include passwords, device identification registers, lock
status and command status.
Read access to system registers is available except for passwords, AFI and DSFID lock status , Kill and
ToggleUntraceable command status.
Device identification registers are detailed in section 5.10:
•Write access to AFI and DFSID registers can be respectively locked by LockAFI and LockDSFID
commands. Lock is permanent: once locked, write access to AFI and DSFID registers is forbidden.
•Other device identification registers (IC_REF, UID) are read only registers.
5.2
Unique tap code
5.2.1Unique tap code registers
Table 32. UTC_EN access
RF commandAccess type
ReadConfiguration @(FID=02h, PID=00h)R : always possible
WriteConfiguration @(FID=02h, PID=00h)
BitNameFunctionFactory value
b0UTC_EN
b7-b1RFU-0000000b
0: Unique tap code is disabled
1: Unique tap code is enabled
Note:Refer to Table 4. List of configuration registers for the UTC_EN register.
W : if the CONFIG security session is open and LCK_UTC=0b
W effective time : on next RF boot sequence
Table 33. UTC_EN content
0b
DS13304 - Rev 3
page 21/87
Table 34. UTC access
RF commandAccess type
ReadConfiguration @(FID=02h, PID=01h)R : always possible
1. the content of the UTC register is updated internally during the RF boot sequence when UTC_EN is set to 1b
-
W : no write access
Table 35. UTC content
BitNameFunctionFactory value
b23-b0UTCUnique tap code valueNot applicable
Note:Refer to Table 4. List of configuration registers for the UTC register.
5.2.2Unique tap code description
When the UTC_EN register is set to 1b, the content of the UTC register is updated internally with a fresh value
during each RF boot sequence. The content of the UTC register is coded in ASCII format.
The UTC_EN register is locked when register LCK_UTC is set to 1b.
Note:When the Unique tap code is enabled, the duration of the RF boot sequence t
•compliant with the 5ms guard-time value defined in the NFC Forum [DIGITAL] specification
•not compliant with the 1ms guard-time value defined in the ISO15693 specification
Refer to “AN5578 - Unique tap code for ST25TV512C and ST25TV02KC devices", for more details on the content
of the UTC register. Contact your STMicroelectronics sales office to get this document.
ST25TV02KC ST25TV512C
Tamper detection
(1)
(see section 8.2) is:
Boot_RF
5.3Tamper detection
The tamper detection feature is available on ST25TV02KC-T devices only (see section 10). On ST25TVxxxC-A
devices, ReadConfiguration and WriteConfiguration commands requested with FID=03h fail with error code 10h.
5.3.1Tamper detection registers
Table 36. TD_EVENT_UPDATE_EN access
RF commandAccess type
ReadConfiguration @(FID=03h, PID=00h)R : always possible
WriteConfiguration @(FID=03h, PID=00h)
Table 37. TD_EVENT_UPDATE_EN content
BitNameFunctionFactory value
b0TD_EVENT_UPDATE_EN
b7- b1RFU-0000000b
Note:Refer to Table 4. List of configuration registers for the TD_EVENT_UPDATE_EN register.
W : if the CONFIG security session is open and LCK_TD=0b
W effective time : on next RF boot sequence
0: memorization of tamper events disabled
1: memorization of tamper events enabled
0b
DS13304 - Rev 3
page 22/87
ST25TV02KC ST25TV512C
Tamper detection
Table 38. TD_SEAL_MSG access
RF commandAccess type
ReadConfiguration @(FID=03h, PID=01h)R : if the CONFIG security session is open and LCK_TD=0b
WriteConfiguration @(FID=03h, PID=01h)
Table 39. TD_SEAL_MSG content
BitNameFunctionFactory value
b15-b0 TD_SEAL_MSG Value of TD_EVENT displayed before first occurence of a TD_UNSEAL event3030h
Note: Refer to Table 4. List of configuration registers for the TD_SEAL_MSG register.
Table 40. TD_UNSEAL_MSG access
RF commandAccess type
ReadConfiguration @(FID=03h, PID=02h)R : if the CONFIG security session is open and LCK_TD=0b
WriteConfiguration @(FID=03h, PID=02h)
W : if the CONFIG security session is open and LCK_TD=0b
W effective time : immediate
W : if the CONFIG security session is open and LCK_TD=0b
W effective time : immediate
Table 41. TD_UNSEAL_MSG content
Bit
b15-b0 TD_UNSEAL_MSG Value of TD_EVENT displayed after first occurrence of a TD_UNSEAL event5555h
NameFunctionFactory value
Note:Note: Refer to Table 4. List of configuration registers for the TD_UNSEAL_MSG register.
Table 42. TD_RESEAL_MSG access
RF command
ReadConfiguration @(FID=03h, PID=03h)R : if the CONFIG security session is open and LCK_TD=0b
WriteConfiguration @(FID=03h, PID=03h)
W : if the CONFIG security session is open and LCK_TD=0b
W effective time : immediate
Access type
Table 43. TD_RESEAL_MSG content
Bit
b15-b0 TD_RESEAL_MSG Value of TD_EVENT displayed after occurrence of a TD_RESEAL event5252h
NameFunctionFactory value
Note:Note: Refer to Table 4. List of configuration registers for the TD_RESEAL_MSG register.
Table 44. TD_SHORT_MSG access
DS13304 - Rev 3
RF command
ReadConfiguration @(FID=03h, PID=04h)R : if the CONFIG security session is open and LCK_TD=0b
WriteConfiguration @(FID=03h, PID=04h)
W : if the CONFIG security session is open and LCK_TD=0b
W effective time : immediate
Access type
page 23/87
ST25TV02KC ST25TV512C
Table 45. TD_SHORT_MSG content
BitNameFunctionFactory value
b7- b0 TD_SHORT_MSG
Note:Note: Refer to Table 4. List of configuration registers for the TD_SHORT_MSG register.
RF commandAccess type
ReadConfiguration @(FID=03h, PID=05h)R : if the CONFIG security session is open and LCK_TD=0b
WriteConfiguration @(FID=03h, PID=05h)
BitNameFunctionFactory value
b7- b0 TD_OPEN_MSG
Message displayed when the tamper loop was in closed status during the latest
boot sequence
Table 46. TD_OPEN_MSG access
W : if the CONFIG security session is open and LCK_TD=0b
W effective time : immediate
Table 47. TD_OPEN_MSG content
Message displayed when the tamper loop was in open status during the latest boot
sequence
Tamper detection
63h
6Fh
Note:Refer to Table 4. List of configuration registers for the TD_OPEN_MSG register.
Table 48. TD_STATUS access
RF command
ReadConfiguration @(FID=03h, PID=06h)R : always possible
-W : no write access
Table 49. TD_STATUS content
Bit
b15-b0TD_EVENT
b23-b16TD_LOOP
NameFunctionFactory value
TD_SEAL_MSG, TD_UNSEAL_MSG or TD_RESEAL_MSG
according to result of tamper event detection
TD_SHORT_MSG or TD_OPEN_MSG
according to the status of the tamper loop during the latest boot sequence
Note:Refer to Table 5. List of system registers for the TD_STATUS register.
5.3.2Tamper detection description
The tamper detection feature allows to check the shortage status between the TD0 and TD1 pins of the
ST25TV02KC-T, and monitor tamper events.
See Section 8.2 RF electrical parameters for recommended impedance values Ropen and Rclosed in cases of
open and closed tamper loop.
The shortage status TD_LOOP and event status TD_EVENT are read in the response to a ReadConfiguration
request with FID=03h and PID=06h.
This is the customer responsibility to check the values of TD_LOOP and TD_EVENT and behave accordingly.
Access type
Not applicable
Not applicable
DS13304 - Rev 3
page 24/87
ST25TV02KC ST25TV512C
Augmented NDEF
TD_LOOP
The shortage status TD_LOOP is captured by ST25TV02KC-T each time that the device is powered- up. Value of
TD_LOOP is equal to value of:
•TD_SHORT_MSG when TD0 and TD1 were connected at capture time
•TD_OPEN_MSG when TD0 and TD1 were not connected at capture time
This information will be lost during power off (no permanent storage of TD_LOOP).
TD_EVENT
The TD_EVENT status is used to monitor the first occurrences of TD_UNSEAL and TD_RESEAL events defined
as follows:
•TD_UNSEAL: TD_EVENT_UPDATE_EN register was set to 1b, and TD0 and TD1 were not connected at
capture time
•TD_RESEAL: TD_EVENT_UPDATE_EN register was set to 1b, TD_UNSEAL already occurred, and TD0
and TD1 were connected at capture time
On factory delivery, TD_EVENT_UPDATE_EN is set to 0b and TD_EVENT is set to the value of TD_SEAL_MSG.
When the first TD_UNSEAL event occurs, TD_EVENT is updated to the value of TD_UNSEAL_MSG.
When the first TD_RESEAL event occurs, TD_EVENT is updated to the value of TD_RESEAL_MSG.
The update of the TD_EVENT register occurs during the RF boot sequence, and its value is stored in the
EEPROM of the ST25TV02KC-T device.
When the LCK_TD register is set to 1b, the TD_EVENT_UPDATE_EN, TD_SEAL_MSG, TD_UNSEAL_MSG,
TD_RESEAL_MSG, TD_SHORT_MSG and TD_OPEN_MSG registers are locked.
Note:When TD_EVENT is updated, the duration of the RF boot sequence t
parameters) is:
•compliant with the 5ms guard-time value defined in the NFC Forum [DIGITAL] specification
•not compliant with the 1ms guard-time value defined in the ISO15693 specification
Note:When TD_EVENT_UPDATE_EN and UTC_EN registers are set to 0b, no programmation of the EEPROM
occurs during the RF boot sequence, and its duration is compliant with the 1ms guard-time value defined in the
ISO15693 specification.
Note:Tamper detection events occurring outside of the capture window (for instance while the IC is in POWER-OFF
state, or during the RF session following the boot sequence) are not detected by the ST25TV02KC-T.
(see Section 8.2 RF electrical
Boot_RF
5.4
Augmented NDEF
5.4.1Augmented NDEF registers
RF commandAccess type
ReadConfiguration @(FID=04h, PID=00h)R : always possible
WriteConfiguration @(FID=04h, PID=00h)
DS13304 - Rev 3
Table 50. ANDEF_EN access
W : if the CONFIG security session is open and LCK_ANDEF=0b
W effective time : on next RF boot sequence
page 25/87
Table 51. ANDEF_EN content
BitNameFunctionFactory value
b0ANDEF_EN
0: ANDEF feature is disabled,
1: ANDEF feature is enabled
b7- b1RFU-0000000b
Note:Refer to Table 4. List of configuration registers for the ANDEF_EN register.
Table 52. ANDEF_CFG access
RF commandAccess type
ReadConfiguration @(FID=04h, PID=01h)R : always possible
WriteConfiguration @(FID=04h, PID=01h)
W : if the CONFIG security session is open and LCK_ANDEF=0b
W effective time : on next RF boot sequence
Table 53. ANDEF_CFG content
ST25TV02KC ST25TV512C
Augmented NDEF
0b
BitNameFunctionFactory value
b0ANDEF_UID_EN
b1ANDEF_CUS_EN
b2ANDEF_UTC_EN
0: UID field disabled in ANDEF feature
1: UID field enabled in ANDEF feature
0: Custom field disabled in ANDEF feature
1: Custom field enabled in ANDEF feature
0: Unique tap code field disabled in ANDEF feature
1: Unique tap code field enabled in ANDEF feature
b3RFU-0b
0: Tamper detection field disabled in ANDEF feature
b4
ANDEF_TD_EN
b5ANDEF_SEP_EN
(1)
1: Tamper detection field enabled in ANDEF feature
0: ANDEF field separator disabled
1: ANDEF field separator enabled
b7- b6ANDEF_BYTEByte offset in block ANDEF_BLOCK where the ANDEF feature starts operating00b
b15-b8 ANDEF_BLOCK Block address where the ANDEF feature starts operating00h
1. relevant on ST25TV02KC-T devices only, forced to 0b on ST25TVxxxC-A devices
Note:Refer to Table 4. List of configuration registers for the ANDEF_CFG register.
Table 54. ANDEF_SEP access
0b
0b
0b
0b
1b
DS13304 - Rev 3
RF command
Access type
ReadConfiguration @(FID=04h, PID=02h)R : if the CONFIG security session is open and LCK_ANDEF=0b
WriteConfiguration @(FID=04h, PID=02h)
W : if the CONFIG security session is open and LCK_ANDEF=0b
W effective time : immediate
Table 55. ANDEF_SEP content
Bit
b7- b0ANDEF_SEP Character used as ANDEF field separator when ANDEF_SEP_EN=1b78h
NameFunctionFactory value
page 26/87
ST25TV02KC ST25TV512C
Note:Refer to Table 4. List of configuration registers for the ANDEF_SEP register.
Table 56. ANDEF_CUSTOM_LSB access
RF commandAccess type
ReadConfiguration @(FID=04h, PID=03h)R : if the CONFIG security session is open and LCK_ANDEF=0b
WriteConfiguration @(FID=04h, PID=03h)
Table 57. ANDEF_CUSTOM_LSB content
BitNameFunctionFactory value
b31-b0ANDEF_CUSTOM_LSBFirst 4 characters of the ANDEF custom field2E2E2E2Eh
Note:Refer to Table 4. List of configuration registers for the ANDEF_CUSTOM_LSB register.
Table 58. ANDEF_CUSTOM_MSB access
W : if the CONFIG security session is open and LCK_ANDEF=0b
W effective time : immediate
Augmented NDEF
RF commandAccess type
ReadConfiguration @(FID=04h, PID=04h)R : if the CONFIG security session is open and LCK_ANDEF=0b
WriteConfiguration @(FID=04h, PID=04h)
W : if the CONFIG security session is open and LCK_ANDEF=0b
W effective time : immediate
Table 59. ANDEF_CUSTOM_MSB content
Bit
b31-b0ANDEF_CUSTOM_MSBLast 4 characters of the ANDEF custom field2E2E2E2Eh
NameFunctionFactory value
Note:Refer to Table 4. List of configuration registers for the ANDEF_CUSTOM_MSB register.
Table 60. ANDEF_UID access
RF command
ReadSingleBlock
ReadMultipleBlocks
-W : no write access
R : if ANDEF_EN=1b and ANDEF_UID_EN=1b
Access type
Table 61. ANDEF_UID content
Bit
b127-b0 ANDEF_UID Value displayed in the UID field of the ANDEF featureUID in ASCII format starting with "E0"
NameFunctionFactory value
Note:Refer to Table 5. List of system registers for the ANDEF_UID register.
DS13304 - Rev 3
page 27/87
Loading...
+ 60 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.