Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This article describe knowledge about SmartTap 2.1.

All resource upload and record here. 

Specification

Part 1 describe the detail of SmartTap 2.1 feature.

Part 2 describe the timing requirement. But VP3300 would need longer time than requirement because VP3300 implement software encryption(microECC Library).

SmartTap2.1-Part1-NFCProtocolDRAFT-v0.976.pdf

SmartTap2.0-Part2-TerminalCertificationDRAFT-v0.3.1.pdf

Test App

Before validate VP3300 transaction result, we could use terminal app and merchant app to simulate transaction flow.

Reader(ex. VP3300) should act like terminal app, and VAS app(ex. pass) should act like merchant app. Setup detail could be refer to App Setup Instructions.

terminalapp_v1_6_21.apk

merchantapp_v2_6_24.apk

2017-06-22 11_32_02.563561.7z

[READ ME] App Setup Instructions.docx

Long term private key(LTPK)

How to generate a PEM file

It seem that OpenSSL for Windows could generate PEM file, but I have no idea now.

How to get long term private key from pem file

To get private key from a pem file, you may have some tools to support openssl first, such as OpenSSL for Windows.

When you have tools support openssl, for example, change direction to openssl direction

...

c:\>cd "Program Files (x86)"

c:\Program Files (x86)>cd GnuWin32

c:\Program Files (x86)\GnuWin32>cd bin

c:\Program Files (x86)\GnuWin32\bin>

 

And using openssl.exe to read pem file(ex. PRIVATE.key_CS1630.pem, from Pronto)

...

c:\Program Files (x86)\GnuWin32\bin>openssl.exe ec -noout -text -in "c:\PRIVATE.key.pem"

read EC key

Private-Key: (256 bit)

priv:

    00:f5:36:87:08:93:39:20:55:3b:7b:9f:fb:16:ae:

    ed:9c:77:d5:bf:d9:66:2a:f1:49:a6:b9:f9:65:b7:

    3f:0c:ca

pub:

    04:38:0b:8f:7f:0a:43:33:a7:e4:f2:2a:96:b1:ce:

    a8:c3:eb:38:7a:af:d8:36:63:2d:62:dc:c0:a6:61:

    9c:cc:28:b4:28:c5:bf:86:38:d7:0e:93:28:c6:b4:

    61:39:1e:b2:ef:de:a8:db:bf:fe:93:c1:7d:14:e2:

    e6:94:dc:8e:4c

ASN1 OID: prime256v1

And the priv is the string we need.

How to load long term private key to reader

Customer could load LTPK to reader via command C7-62.

Before loading LTPK to reader, we could get private key from PEM file, and we should use RSA 2048 alogrithm to encrypt private key, the step is as below:

RSA Private Key:

...

RSA Public Key:

...

RSA Exp:

...

Long term private key

...

Padding “00” + Version(ex. 00 00 00 01) + Long term private key to 256 bytes data

...

Calculate SHA-256 for data

...

Use RSA private key encrypt data

...

Add encrypt data and sha-256 data

...

IDG Command 

...

How to configuration reader

There are some configurations need to setup for difference type transaction.

...

Yes,

0x00, 0xBC, 0x61, 0x4E(12345678)

...

Yes

0x05, 0x00, 0x10, 0x00, 0x08, 0x01

...

Stop Payment if smart tap2.1 failed support

...

How to parser NDEF

To understand NDEF please refer to 3.2 Record Layout NFCForum-TS-NDEF-1.pdf and NDEF Parser.

Image Removed

...

idRelated Information

...

Jira Legacy
serverID TECH - JIRA
serverId5c72af4b-e2b8-3562-b028-6bcef8f5fab0
keyTS-10251
Jira Legacy
serverID TECH - JIRA
serverId5c72af4b-e2b8-3562-b028-6bcef8f5fab0
keyCS-1630

 

Filter by label (Content by label)
showLabelsfalse
max5
spacesTWRD
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel = "kb-how-to-article" and type = "page" and space = "TWRD"
labelskb-how-to-article