Information technology — Telecommunications and information exchange between systems — NFC Security — — Part 2: NFC-SEC cryptography standard using ECDH and AES

ISO/IEC 13157-2:2010 specifies mechanisms for the Shared Secret Service (SSE) and the Secure Channel Service (SCH) in ISO/IEC 13157-1. It specifies cryptographic mechanisms that use the Elliptic Curves Diffie-Hellman (ECDH) protocol for key agreement and the AES algorithm for data encryption and integrity. ISO/IEC 13157-2:2010 addresses secure communication of two NFC devices that do not share any common secret data ("keys") before they start communicating with each other.

Technologies de l'information — Téléinformatique — Sécurité NFC — Partie 2: Norme de cryptographie NFC-SEC utilisant ECDH et AES

General Information

Status
Withdrawn
Publication Date
27-Apr-2010
Withdrawal Date
27-Apr-2010
Current Stage
9599 - Withdrawal of International Standard
Start Date
29-Mar-2016
Completion Date
29-Mar-2016
Ref Project

RELATIONS

Buy Standard

Standard
ISO/IEC 13157-2:2010 - Information technology -- Telecommunications and information exchange between systems -- NFC Security —
English language
16 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (sample)

INTERNATIONAL ISO/IEC
STANDARD 13157-2
First edition
2010-05-01
Information technology —
Telecommunications and information
exchange between systems — NFC
Security —
Part 2:
NFC-SEC cryptography standard using
ECDH and AES
Technologies de l'information — Téléinformatique — Sécurité NFC —
Partie 2: Norme de cryptographie NFC-SEC utilisant ECDH et AES
Reference number
ISO/IEC 13157-2:2010(E)
ISO/IEC 2010
---------------------- Page: 1 ----------------------
ISO/IEC 13157-2:2010(E)
PDF disclaimer

This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but

shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In

downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat

accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.

Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation

parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In

the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.

COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2010

All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,

electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or

ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO/IEC 2010 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 13157-2:2010(E)
Contents Page

Foreword ............................................................................................................................................................iv

Introduction.........................................................................................................................................................v

1 Scope......................................................................................................................................................1

2 Conformance .........................................................................................................................................1

3 Normative references............................................................................................................................1

4 Terms and definitions ...........................................................................................................................2

5 Conventions and notations ..................................................................................................................2

5.1 Concatenation........................................................................................................................................2

5.2 Hexadecimal numbers ..........................................................................................................................2

6 Acronyms ...............................................................................................................................................2

7 General ...................................................................................................................................................3

8 Protocol Identifier (PID) ........................................................................................................................3

9 Primitives................................................................................................................................................3

9.1 Key agreement.......................................................................................................................................4

9.2 Key Derivation Functions .....................................................................................................................5

9.3 Key Usage ..............................................................................................................................................5

9.4 Key Confirmation...................................................................................................................................6

9.5 Data Encryption .....................................................................................................................................6

9.6 Data Integrity..........................................................................................................................................7

9.7 Message Sequence Integrity ................................................................................................................7

10 Data Conversions ..................................................................................................................................7

10.1 Integer-to-Octet-String Conversion .....................................................................................................7

10.2 Octet-String-to-Integer Conversion .....................................................................................................7

10.3 Point-to-Octet-String Conversion ........................................................................................................8

10.4 Octet-String-to-Point Conversion ........................................................................................................8

11 SSE and SCH service invocation.........................................................................................................8

11.1 Pre-requisites.........................................................................................................................................9

11.2 Key Agreement ......................................................................................................................................9

11.3 Key Derivation .....................................................................................................................................10

11.4 Key Confirmation.................................................................................................................................11

12 SCH data exchange .............................................................................................................................12

12.1 Preparation...........................................................................................................................................12

12.2 Data Exchange.....................................................................................................................................12

Annex A (normative) AES-XCBC-PRF-128 and AES-XCBC-MAC-96 algorithms........................................14

Annex B (normative) Fields sizes....................................................................................................................15

Annex C (informative) Informative references ...............................................................................................16

© ISO/IEC 2010 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 13157-2:2010(E)
Foreword

ISO (the International Organization for Standardization) and IEC (the International Electrotechnical

Commission) form the specialized system for worldwide standardization. National bodies that are members of

ISO or IEC participate in the development of International Standards through technical committees

established by the respective organization to deal with particular fields of technical activity. ISO and IEC

technical committees collaborate in fields of mutual interest. Other international organizations, governmental

and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information

technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.

International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.

The main task of the joint technical committee is to prepare International Standards. Draft International

Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as

an International Standard requires approval by at least 75 % of the national bodies casting a vote.

Attention is drawn to the possibility that some of the elements of this document may be the subject of patent

rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.

ISO/IEC 13157-2 was prepared by Ecma International (as ECMA-386) and was adopted, under a special

“fast-track procedure”, by Joint Technical Committee ISO/IEC JTC 1, Information technology, in parallel with

its approval by national bodies of ISO and IEC.

ISO/IEC 13157 consists of the following parts, under the general title Information technology —

Telecommunications and information exchange between systems — NFC Security:
— Part 1: NFC-SEC NFCIP-1 security services and protocol
— Part 2: NFC-SEC cryptography standard using ECDH and AES
iv © ISO/IEC 2010 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 13157-2:2010(E)
Introduction

The NFC Security series of standards comprise a common services and protocol standard and NFC-SEC

cryptography standards.

This NFC-SEC cryptography standard specifies cryptographic mechanisms that use the Elliptic Curves

Diffie-Hellman (ECDH) protocol for key agreement and the AES algorithm for data encryption and integrity.

This International Standard addresses secure communication of two NFC devices that do not share any

common secret data ("keys") before they start communicating with each other.
© ISO/IEC 2010 – All rights reserved v
---------------------- Page: 5 ----------------------
INTERNATIONAL STANDARD ISO/IEC 13157-2:2010(E)
Information technology — Telecommunications and information
exchange between systems — NFC Security —
Part 2:
NFC-SEC cryptography standard using ECDH and AES
1 Scope

This International Standard specifies the message contents and the cryptographic methods for PID 01.

This International Standard specifies cryptographic mechanisms that use the Elliptic Curves Diffie-Hellman

(ECDH) protocol for key agreement and the AES algorithm for data encryption and integrity.

2 Conformance

Conformant implementations employ the security mechanisms specified in this NFC-SEC cryptography

standard (identified by PID 01) and conform to ISO/IEC 13157-1.

The NFC-SEC security services shall be established through the protocol specified in ISO/IEC 13157-1 and

the mechanisms specified in this International Standard.
3 Normative references

The following referenced documents are indispensable for the application of this document. For dated

references, only the edition cited applies. For undated references, the latest edition of the referenced

document (including any amendments) applies.

ISO/IEC 10116:2006, Information technology — Security techniques — Modes of operation for an n-bit block

cipher

ISO/IEC 11770-3:2008, Information technology — Security techniques — Key management — Part 3:

Mechanisms using asymmetric techniques

ISO/IEC 13157-1:2010, Information technology — Telecommunications and information exchange between

systems — NFC Security — Part 1: NFC-SEC NFCIP-1 security services and protocol (also published by

Ecma as Standard ECMA-385)

ISO/IEC 15946-1:2008, Information technology — Security techniques — Cryptographic techniques based on

elliptic curves — Part 1: General

ISO/IEC 18031:2005, Information technology — Security techniques — Random bit generation

ISO/IEC 18033-3:2005, Information technology — Security techniques — Encryption algorithms — Part 3:

Block ciphers
© ISO/IEC 2010 – All rights reserved 1
---------------------- Page: 6 ----------------------
ISO/IEC 13157-2:2010(E)

ISO/IEC 18092:2004, Information technology — Telecommunications and information exchange between

systems — Near Field Communication — Interface and Protocol (NFCIP-1) (also published by Ecma as

Standard ECMA-340)
IEEE 1363, IEEE Standard Specifications for Public-Key Cryptography
FIPS 186-2, Digital Signature Standard (DSS)
4 Terms and definitions

For the purposes of this document, the terms and definitions given in ISO/IEC 13157-1 apply.

5 Conventions and notations

The conventions and notations of ISO/IEC 13157-1 as well as the following apply in this document unless

otherwise stated.
5.1 Concatenation

A || B represents the concatenation of the fields A and B: content of A followed by content of B.

5.2 Hexadecimal numbers

(XY) denotes a hexadecimal number XY (i.e. with the Radix of 16) and each pair of characters is encoded in

one octet.
6 Acronyms

For the purposes of this document, the acronyms given in ISO/IEC 13157-1 and the following apply.

A Sender, as specified in ISO/IEC 13157-1
AES Advanced Encryption Standard
B Receiver, as specified in ISO/IEC 13157-1
d Sender’s private EC key
d Recipient’s private EC key
DataLen Length of the UserData
EC Elliptic Curve
ECDH Elliptic Curve Diffie-Hellman
EncData Encrypted data
G The base point on EC
ID Sender nfcid3
ID Recipient nfcid3
ID Any Recipient identification number (e.g. ID )
R B
ID Any Sender identification number (e.g. ID )
S A
IV Initial Value
K Key
2 © ISO/IEC 2010 – All rights reserved
---------------------- Page: 7 ----------------------
ISO/IEC 13157-2:2010(E)
KDF Key Derivation Function
KE Encryption Key
KI Integrity Key
MAC Message Authentication Code
Mac /Mac Integrity protection value of Sender/ Recipient
A B
MacTag Key confirmation tag from Sender
MacTag Key confirmation tag from Recipient
MK Master Key
NA / NB Nonce generated by Sender/Recipient
NAA / NBB Nonce generated by the pair of NFC-SEC entities
Nonce Sender’s nonce
Nonce Recipient’s nonce
PK Public Key
PK Recipient’s Public Key
PK Sender’s Public Key
PRNG Pseudo Random Number Generator
QA / QB Compressed EC public key of Sender / Recipient
Q / Q Decompressed EC public key of Sender / Recipient
A B
RNG Random Number Generator
SharedSecret Shared secret
UserData NFC-SEC User data
z Unsigned integer representation of the Shared Secret
Z Octet string representation of z
The acronyms used in Clauses 9 and 10 not listed above are formal parameters.
7 General

This International Standard specifies mechanisms for the Shared Secret Service (SSE) and the Secure

Channel Service (SCH) in ISO/IEC 13157-1.

To enable secure communication between NFC devices that do not share any common secret data ("keys")

before they start communicating with each other, public key cryptography is used to establish a shared secret

between these devices, and more specifically the Elliptic Curve Diffie-Hellman key exchange scheme. This

shared secret is used to establish the SSE and the SCH.
8 Protocol Identifier (PID)

This International Standard shall use the one octet protocol identifier PID with value 1.

9 Primitives

This Clause specifies cryptographic primitives. Clauses 11 and 12 specify the actual use of these primitives.

Table 1 summarizes the features.
© ISO/IEC 2010 – All rights reserved 3
---------------------- Page: 8 ----------------------
ISO/IEC 13157-2:2010(E)
Table 1 – Summary of features
Supported services SSE (see ISO/IEC 13157-1)
SCH (see ISO/IEC 13157-1)
Key agreement
ECDH P-192
KDF AES-XCBC-PRF-128
Key confirmation AES-XCBC-MAC-96
Data encryption AES128-CTR
IV Init: AES-XCBC-PRF-128
Data integrity AES-XCBC-MAC-96
Sequence integrity SN (see ISO/IEC 13157-1)
Encryption order Encryption (9.5) before MAC calculation (9.6)
9.1 Key agreement

Peer NFC-SEC entities shall agree on a shared secret using Key agreement mechanism 4 from ISO/IEC

11770-3 and the Elliptic Curves Diffie-Hellman primitives from IEEE 1363 as further specified below.

9.1.1 Curve P-192
Curve P-192 as specified in FIPS 186-2 shall be used.
9.1.2 EC Key Pair Generation Primitive

The private key d shall be obtained from a random or pseudo-random process conforming to ISO/IEC 18031.

a) Obtain the private key, d, from a random or pseudo-random process conforming to ISO/IEC 18031.

b) Compute the public key, PK, as a point on EC, PK = dG.
9.1.3 EC Public key validation

The EC public key shall be validated as specified in Public Key Validation of ISO/IEC 15946-1.

9.1.4 ECDH secret value derivation Primitive

The ECDH primitive as specified in 7.2.1 ECSVDP-DH of IEEE 1363 shall output the ‘valid’ shared secret z

and ‘invalid’ otherwise.
9.1.5 Random nonces

Each peer NFC-SEC entity should send fresh random nonces with the EC public key of the entity.

The nonces are used to provide more entropy to the keys derived from the shared secret (z), and to facilitate

the EC key pair management.

The correct generation of these nonces is under the responsibility of the entity.

The entity should guarantee that the nonces it generates have 96 bits of entropy valid for the duration of the

protocol. The nonces used in an NFC-SEC transaction shall be cryptographically uncorrelated with the nonces

from a previous transaction.
See ISO/IEC 18031 for further recommendations on random number generation.
4 © ISO/IEC 2010 – All rights reserved
---------------------- Page: 9 ----------------------
ISO/IEC 13157-2:2010(E)
9.2 Key Derivation Functions

Two Key Derivation Functions (KDF) are specified; one for the SSE and one for the SCH.

The KDFs shall use AES in XCBC-PRF-128 mode
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.