Tuesday 31 August 2010

Nokia 6131/6212 - Crypto Capabilities

It looks like the secure chip in the Nokia NFC phones does not support Elliptic Curve Cryptography - RSA works fine though. I've tried to create ECC keypairs using NIST curve specifications SECP160K1 and SECT163K1 but the response is 0x6F03 (no such algorithm). However the latter curve does work (signature generation and verification OK) on my single and dual interface smart cards (JCOP20/JCOP30).

In my previous post I saw that the COS for the Nokia 6131 NFC is G&D SmartCafe Expert 3.1 In G&D's sparse public documentation and SmartCafe Expert 3.1 flyer only RSA is mentioned so I conclude ECC is definitely not supported. As an interesting side note, the flyer says the COS is JavaCard 2.2.1 compliant - which confirms a conclusion in an earlier post.


Since there are so few other mobiles with NFC I guess we'll have to wait for microSD cards with embedded NFC and secure elements which support ECC.

Secure Chip Identifier List

Useful resource: a list of ATR/ATS for secure chip ICs and their COSs. Mirror here.

From the list:

3B 88 80 01 00 73 C8 40 13 00 90 00 71
 Nokia 6131 NFC phone
 http://wiki.forum.nokia.com/index.php/Nokia_6131_NFC_-_FAQs
 Giesecke & Devrient’s (G&D) Sm@rtCafé Expert 3.1 

3B 8D 80 01 0D 78 80 84 02 00 73 C8 40 13 00 90 FF F8
 Nokia 6212 phone seen as NFC device
  

Edit: Rousseau also hosts a free Python ATR parsing service based on the list above.

I also found "Visa Approved Visa GlobalPlatform Card Products as of December 2007" which indicates the COS and IC vendor on VISA certified secure chips.
More (albeit slightly off-topic): "Visa Approved, Visa Smart Debit Credit (VSDC) Chip Cards as of December 2007"
A list of VISA-related documents can be found here (thanks to TwinTech and Google Translate).

Wednesday 4 August 2010

Updated: JCOP feature info

Tracking back to a previous post where I listed features of NXP JCOP: NXP's linecard for PKI processors has been updated to document 75016728, including a new section about JCOP J2A and J3A (page 10).

Tuesday 3 August 2010

Machine Readable Travel Documents

While hunting for info about file systems on Java Card I came across this very useful reference implementation of the ICAO MRTD standard by Radboud Uni. It demonstrates (among other things) how to wrap and unwrap SCP02 protected APDUs and how to chain object and byte arrays into a very rudimentary file system (see FileSystem.java).