Search Legislation

Commission Implementing Regulation (EU) 2016/799Show full title

Commission Implementing Regulation (EU) 2016/799 of 18 March 2016 implementing Regulation (EU) No 165/2014 of the European Parliament and of the Council laying down the requirements for the construction, testing, installation, operation and repair of tachographs and their components (Text with EEA relevance)

 Help about what version

What Version

  • Latest available (Revised)
  • Original (As adopted by EU)
 Help about advanced features

Advanced Features

Close

This is a legislation item that originated from the EU

After exit day there will be three versions of this legislation to consult for different purposes. The legislation.gov.uk version is the version that applies in the UK. The EU Version currently on EUR-lex is the version that currently applies in the EU i.e you may need this if you operate a business in the EU.

The web archive version is the official version of this legislation item as it stood on exit day before being published to legislation.gov.uk and any subsequent UK changes and effects applied. The web archive also captured associated case law and other language formats from EUR-Lex.

Changes to legislation:

There are outstanding changes not yet made to Commission Implementing Regulation (EU) 2016/799. Any changes that have already been made to the legislation appear in the content and are referenced with annotations. Help about Changes to Legislation

Close

Changes to Legislation

Revised legislation carried on this site may not be fully up to date. Changes and effects are recorded by our editorial team in lists which can be found in the ‘Changes to Legislation’ area. Where those effects have yet to be applied to the text of the legislation by the editorial team they are also listed alongside the legislation in the affected provisions. Use the ‘more’ link to open the changes and effects relevant to the provision you are viewing.

View outstanding changes

Changes and effects yet to be applied to the whole legislation item and associated provisions

3.5.2 READ BINARY U.K.

This command is compliant with ISO/IEC 7816-4, but has a restricted usage compared to the command defined in the norm.

The READ BINARY command is used to read data from a transparent file.

The response of the card consists of returning the data read, optionally encapsulated in a secure messaging structure.

3.5.2.1 Command with offset in P1-P2 U.K.

This command enables the IFD to read data from the EF currently selected, without secure messaging.

Note: This command without secure messaging can only be used to read a file that supports the ALW security condition for the Read access mode.U.K.

TCS_42 Command Message U.K.
ByteLengthValueDescription
CLA1‘00h’
INS1‘B0h’Read Binary
P11‘XXh’Offset in bytes from the beginning of the file: Most Significant Byte
P21‘XXh’Offset in bytes from the beginning of the file: Least Significant Byte
Le1‘XXh’Length of data expected. Number of Bytes to be read.

Note: bit 8 of P1 must be set to 0.U.K.

TCS_43 Response Message U.K.
ByteLengthValueDescription
#1-#XX‘XX..XXh’Data read
SW2‘XXXXh’Status Words (SW1,SW2)
  • If the command is successful, the card returns ‘9000’.

  • If no EF is selected, the processing state returned is ‘6986’.

  • If the security conditions of the selected file are not satisfied, the command is interrupted with ‘6982’.

  • If the Offset is not compatible with the size of the EF (Offset > EF size), the processing state returned is ‘6B00’.

  • If the size of the data to be read is not compatible with the size of the EF (Offset + Le > EF size) the processing state returned is ‘6700’ or ‘6Cxx’ where ‘xx’ indicates the exact length.

  • [F1If an integrity error is detected within the file attributes, the card shall consider the file as corrupted and unrecoverable, the processing state returned is 6400 or 6500 .]

  • If an integrity error is detected within the stored data, the card shall return the demanded data, and the processing state returned is ‘6281’.

3.5.2.1.1 Command with secure messaging (examples) U.K.

This command enables the IFD to read data from the EF currently selected with secure messaging, in order to verify the integrity of the data received and to protect the confidentiality of the data if the security condition SM-R-ENC-MAC-G1 (generation 1) or SM-R-ENC-MAC-G2 (generation 2) is applied.

TCS_44 Command Message U.K.
ByteLengthValueDescription
CLA1‘0Ch’Secure Messaging asked
INS1‘B0h’Read Binary
P11‘XXh’P1 ( offset in bytes from the beginning of the file): Most Significant Byte
P21‘XXh’P2 ( offset in bytes from the beginning of the file): Least Significant Byte
Lc1‘XXh’Length of input data for secure messaging
#61‘97h’TLE: Tag for expected length specification.
#71‘01h’LLE: Length of expected length
#81‘NNh’Expected length specification (original Le): Number of Bytes to be read
#91‘8Eh’TCC: Tag for cryptographic checksum
#101‘XXh’

LCC: Length of following cryptographic checksum

  • ‘04h’ for Generation 1 secure messaging (see Appendix 11 Part A)

  • ‘08h’, ‘0Ch’ or ‘10h’ depending on AES key length for Generation 2 secure messaging (see Appendix 11 Part B)

#11-#(10+L)L‘XX..XXh’Cryptographic checksum
Le1‘00h’As specified in ISO/IEC 7816-4
TCS_45 Response Message if SM-R-ENC-MAC-G1 (generation 1) / SM-R-ENC-MAC-G2 (generation 2) is not required and if Secure Messaging input format is correct: U.K.
[F1Byte Length Value Description
#1 1 81h T PV : Tag for plain value data
#2 L

NNh or

81 NNh

L PV : length of returned data (=original Le).

L is 2 bytes if L PV >127 bytes.

#(2+L) - #(1+L+NN) NN XX..XXh Plain Data value
#(2+L+NN) 1 99h Tag for Processing Status (SW1-SW2) – optional for generation 1 secure messaging
#(3+L+NN) 1 02h Length of Processing Status – optional for generation 1 secure messaging
#(4+L+NN) - #(5+L+NN) 2 XX XXh Processing Status of the unprotected response APDU – optional for generation 1 secure messaging
#(6+L+NN) 1 8Eh TCC: Tag for cryptographic checksum
#(7+L+NN) 1 XXh

LCC: Length of following cryptographic checksum

  • 04h for Generation 1 secure messaging (see Appendix 11 Part A)

  • 08h , 0Ch or 10h depending on AES key length for Generation 2 secure messaging (see Appendix 11 Part B)

#(8+L+NN)-#(7+M+L+NN) M XX..XXh Cryptographic checksum
SW 2 XXXXh Status Words (SW1,SW2)]
TCS_46 Response Message if SM-R-ENC-MAC-G1 (generation 1) / SM-R-ENC-MAC-G2 (generation 2) is required and if Secure Messaging input format is correct: U.K.
[F1Byte Length Value Description
#1 1 87h T PI CG : Tag for encrypted data (cryptogram)
#2 L

MMh or

81 MMh

L PI CG : length of returned encrypted data (different of original Le of the command due to padding).

L is 2 bytes if LPI CG > 127 bytes.

#(2+L)-#(1+L+MM) MM 01XX..XXh Encrypted Data: Padding Indicator and cryptogram
#(2+L+MM) 1 99h Tag for Processing Status (SW1-SW2) – optional for generation 1 secure messaging
#(3+L+MM) 1 02h Length of Processing Status – optional for generation 1 secure messaging
#(4+L+MM) - #(5+L+MM) 2 XX XXh Processing Status of the unprotected response APDU – optional for generation 1 secure messaging
#(6+L+MM) 1 8Eh TCC: Tag for cryptographic checksum
#(7+L+MM) 1 XXh

LCC: Length of following cryptographic checksum

  • 04h for Generation 1 secure messaging (see Appendix 11 Part A)

  • 08h , 0Ch or 10h depending on AES key length for Generation 2 secure messaging (see Appendix 11 Part B)

#(8+L+MM)-#(7+N+L+MM) N XX..XXh Cryptographic checksum
SW 2 XXXXh Status Words (SW1,SW2)]

The READ BINARY command may return regular processing states listed in TCS_43 under Tag ‘99h’ as described in TCS_59 using the secure messaging response structure.

Additionally, some errors specifically related to secure messaging can happen. In that case, the processing state is simply returned, with no secure messaging structure involved:

TCS_47 Response Message if incorrect Secure Messaging input format U.K.
ByteLengthValueDescription
SW2‘XXXXh’Status Words (SW1,SW2)
  • If no current session key is available, the processing state ‘6A88’ is returned. It happens either if the session key has not already been generated or if the session key validity has expired (in this case the IFD must re-run a mutual authentication process to set a new session key).

  • If some expected data objects (as specified above) are missing in the secure messaging format, the processing state ‘6987’ is returned: this error happens if an expected tag is missing or if the command body is not properly constructed.

  • If some data objects are incorrect, the processing state returned is ‘6988’: this error happens if all the required tags are present but some lengths are different from the ones expected.

  • If the verification of the cryptographic checksum fails, the processing state returned is ‘6688’.

3.5.2.2 Command with short EF (Elementary File) identifier U.K.

This command variant enables the IFD to select an EF by means of a short EF identifier and read data from this EF.

TCS_48A tachograph card shall support this command variant for all Elementary Files with a specified short EF identifier. These short EF identifiers are specified in chapter 4.U.K.
TCS_49 Command Message U.K.
ByteLengthValueDescription
CLA1‘00h’
INS1‘B0h’Read Binary
P11‘XXh’

Bit 8 is set to 1

Bit 7 and 6 are set to 00

Bit 5 — 1 encode the short EF identifier of the corresponding EF

P21‘XXh’Encodes an offset from 0 to 255 bytes in the EF referenced by P1
Le1‘XXh’Length of data expected. Number of Bytes to be read.

Note: The short EF identifiers used for the Generation 2 tachograph application are specified in chapter 4.U.K.

If P1 encodes a short EF identifier and the command is successful, the identified EF becomes the currently selected EF (current EF).

TCS_50 Response Message U.K.
ByteLengthValueDescription
#1-#LL‘XX..XXh’Data read
SW2‘XXXXh’Status Words (SW1,SW2)
  • If the command is successful, the card returns ‘9000’.

  • If the file corresponding with the short EF identifier is not found, the processing state returned is ‘6A82’.

  • If the security conditions of the selected file are not satisfied, the command is interrupted with ‘6982’.

  • If the Offset is not compatible with the size of the EF (Offset > EF size), the processing state returned is ‘6B00’.

  • If the size of the data to be read is not compatible with the size of the EF (Offset + Le > EF size) the processing state returned is ‘6700’ or ‘6Cxx’ where ‘xx’ indicates the exact length.

  • [F1If an integrity error is detected within the file attributes, the card shall consider the file as corrupted and unrecoverable, the processing state returned is 6400 or 6500 .]

  • If an integrity error is detected within the stored data, the card shall return the demanded data, and the processing state returned is ‘6281’.

3.5.2.3 Command with odd instruction byte U.K.

This command variant enables the IFD to read data from an EF with 32 768 bytes or more.

TCS_51A tachograph card which supports EFs with 32 768 bytes or more shall support this command variant for these EFs. A tachograph card may or may not support this command variant for other EFs with the exception of the EF Sensor_Installation_Data see TCS_156 and TCS_160.U.K.
TCS_52 Command Message U.K.
ByteLengthValueDescription
CLA1‘00h’
INS1‘B1h’Read Binary
P11‘00h’Current EF
P21‘00h’
Lc1‘NNh’Lc Length of offset data object.
#6-#(5+NN)NN‘XX..XXh’

Offset data object:

Tag

‘54h’

Length

‘01h’ or ‘02h’

Value

offset

[F1Le 1 'XXh' As specified in ISO/IEC 7816-4]

The IFD shall encode the offset data object's length with a minimum possible number of octets, i.e. using the length byte ‘01h’ the IFD shall encode an offset from 0 to 255 and using the length byte ‘02h’ an offset from ‘256’ up to ‘65 535’ bytes.

[F2In case of T = 0 the card assumes the value Le = 00h if no secure messaging is applied.

In case of T = 1 the processing state returned is 6700 if Le= 01h .]

TCS_53 Response Message U.K.
ByteLengthValueDescription
#1-#LL‘XX..XXh’Data read encapsulated in a discretionary data object with tag ‘53h’.
SW2‘XXXXh’Status Words (SW1,SW2)
  • If the command is successful, the card returns ‘9000’.

  • If no EF is selected, the processing state returned is ‘6986’.

  • If the security conditions of the selected file are not satisfied, the command is interrupted with ‘6982’.

  • If the Offset is not compatible with the size of the EF (Offset > EF size), the processing state returned is ‘6B00’.

  • If the size of the data to be read is not compatible with the size of the EF (Offset + Le > EF size) the processing state returned is ‘6700’ or ‘6Cxx’ where ‘xx’ indicates the exact length.

  • [F1If an integrity error is detected within the file attributes, the card shall consider the file as corrupted and unrecoverable, the processing state returned is 6400 or 6500 .]

  • If an integrity error is detected within the stored data, the card shall return the demanded data, and the processing state returned is ‘6281’.

3.5.2.3.1 Command with secure messaging (example) U.K.

The following example illustrates the usage of secure messaging if the security condition SM-MAC-G2 applies.

TCS_54Command messageU.K.
ByteLengthValueDescription
CLA1‘0Ch’Secure Messaging asked
INS1‘B1h’Read Binary
P11‘00h’Current EF
P21‘00h’
Lc1‘XXh’Length of the secured data field
#61‘B3h’Tag for plain value data encoded in BER-TLV
#71‘NNh’LPV: length of transmitted data
#(8)-#(7+NN)NN‘XX..XXh’Plain Data encoded in BER-TLV, i.e. the offset data object with tag ‘54’
#(8+NN)1‘97h’TLE: Tag for expected length specification.
#(9+NN)1‘01h’LLE: Length of expected length
#(10+NN)1‘XXh’Expected length specification (original Le): Number of bytes to be read
#(11+NN)1‘8Eh’TCC: Tag for cryptographic checksum
#(12+NN)1‘XXh’

LCC: Length of following cryptographic checksum

‘08h’, ‘0Ch’ or ‘10h’ depending on AES key length for Generation 2 secure messaging (see Appendix 11 Part B)

#(13+NN)-#(12+M+NN)M‘XX..XXh’Cryptographic checksum
Le1‘00h’As specified in ISO/IEC 7816-4
TCS_55Response message if the command is successfulU.K.
ByteLengthValueDescription
#11‘B3h’Plain Data encoded in BER-TLV
#2L

‘NNh’ or

‘81 NNh’

LPV: length of returned data (=original Le).

L is 2 bytes if LPV>127 bytes.

#(2+L)-#(1+L+NN)NN‘XX..XXh’Plain Data value encoded in BER-TLV, i.e. data read encapsulated in a discretionary data object with tag ‘53h’.
#(2+L+NN)1‘99h’Processing Status of the unprotected response APDU
#(3+L+NN)1‘02h’Length of Processing Status
#(4+L+NN) — #(5+L+NN)2‘XX XXh’Processing Status of the unprotected response APDU
#(6+L+NN)1‘8Eh’TCC: Tag for cryptographic checksum
#(7+L+NN)1‘XXh’

LCC: Length of following cryptographic checksum

‘08h’, ‘0Ch’ or ‘10h’ depending on AES key length for Generation 2 secure messaging (see Appendix 11 Part B)

#(8+L+NN)-#(7+M+L+NN)M‘XX..XXh’Cryptographic checksum
SW2‘XXXXh’Status Words (SW1,SW2)

Back to top

Options/Help

Print Options

You have chosen to open the Whole Regulation

The Whole Regulation you have selected contains over 200 provisions and might take some time to download. You may also experience some issues with your browser, such as an alert box that a script is taking a long time to run.

Would you like to continue?

You have chosen to open Schedules only

The Schedules you have selected contains over 200 provisions and might take some time to download. You may also experience some issues with your browser, such as an alert box that a script is taking a long time to run.

Would you like to continue?

Close

Legislation is available in different versions:

Latest Available (revised):The latest available updated version of the legislation incorporating changes made by subsequent legislation and applied by our editorial team. Changes we have not yet applied to the text, can be found in the ‘Changes to Legislation’ area.

Original (As adopted by EU): The original version of the legislation as it stood when it was first adopted in the EU. No changes have been applied to the text.

Close

See additional information alongside the content

Geographical Extent: Indicates the geographical area that this provision applies to. For further information see ‘Frequently Asked Questions’.

Show Timeline of Changes: See how this legislation has or could change over time. Turning this feature on will show extra navigation options to go to these specific points in time. Return to the latest available version by using the controls above in the What Version box.

Close

Opening Options

Different options to open legislation in order to view more content on screen at once

Close

More Resources

Access essential accompanying documents and information for this legislation item from this tab. Dependent on the legislation item being viewed this may include:

  • the original print PDF of the as adopted version that was used for the EU Official Journal
  • lists of changes made by and/or affecting this legislation item
  • all formats of all associated documents
  • correction slips
  • links to related legislation and further information resources
Close

Timeline of Changes

This timeline shows the different versions taken from EUR-Lex before exit day and during the implementation period as well as any subsequent versions created after the implementation period as a result of changes made by UK legislation.

The dates for the EU versions are taken from the document dates on EUR-Lex and may not always coincide with when the changes came into force for the document.

For any versions created after the implementation period as a result of changes made by UK legislation the date will coincide with the earliest date on which the change (e.g an insertion, a repeal or a substitution) that was applied came into force. For further information see our guide to revised legislation on Understanding Legislation.

Close

More Resources

Use this menu to access essential accompanying documents and information for this legislation item. Dependent on the legislation item being viewed this may include:

  • the original print PDF of the as adopted version that was used for the print copy
  • correction slips

Click 'View More' or select 'More Resources' tab for additional information including:

  • lists of changes made by and/or affecting this legislation item
  • confers power and blanket amendment details
  • all formats of all associated documents
  • links to related legislation and further information resources