Versions Compared

Key

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

Task 1 Create Google Private Key

Download drive-download-20180207T222536Z-001.zip and extract to drive C:\CS-1630\20180208

and it should look like this

Image Removed

and there are 2 PEM file in drive-download-20180207T222536Z-001\

Image Removed

open command line tool, and change path

...

C:\Users\Richard Cheng>cd c:\

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

c:\Program Files (x86)>cd GnuWin32

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

c:\Program Files (x86)\GnuWin32\bin>openssl.exe ec -noout -text -in "c:\CS-1630\20180208\drive-download-20180207T222536Z-001\PRIVATE.key.pem"

Image Removed

There are 2 part in this private key, and we need to load priv part to reader, 

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

...

Append encrypt data and sha-256 data

...

IDG Command

...

Task 2 Create Pronto Private Key

Download pronto.key.zip and extract to drive C:\CS-1630\20180208

and it should look like this

Image Removed

and there are 2 PEM file in pronto.key\

Image Removed

open command line tool, and change path

C:\Users\Richard Cheng>cd c:\

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

c:\Program Files (x86)>cd GnuWin32

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

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

Image Removed

There are 2 part in this private key, and we need to load priv part to reader, 

RSA Private Key:

...

RSA Public Key:

...

RSA Exp:

...

Long term private key

...

Calculate SHA-256 for data

...

Use RSA private key encrypt data

...

Append encrypt data and sha-256 data

...

IDG Command

...

Test test-cases2074294809.json with Terminal App case 0.3

  1. Download Terminal configuration file terminal_configs.7z to Android phone, which used to as Terminal.

  2. Click Terminal App → Setting → Click "LOAD" → go to direction where store Terminal configuration file → serch for 0.3.json → clikc OK

    → scroll down, change Merchant ID to 50248994(if need) and check Long term private key, which should be same as the priv we use openssl to read PEM file(Google's or Pronto's) → return to Terminal App → tapping new pass
    → SW 9102.

    Image RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage Removed

    Image RemovedImage Removed

  3. Change LTPK to Pronto's, Terminal APP → Setting → scroll down to LTPK → click LTPK → "LOAD KEY FROM FILE" → select Pronto' s PEM file → SAVE → tapping new pass → SW 9102.

Image RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage Removed

Suggenstion

To validate customer' s pass via Terminal App is a best way. If Terminal App could read data and get SW 9000, that means VP3300 should get same data.

One more thing should be notice is, test case 0.3 need to do negotiate with pass, so we could read log from Terminal App, and knwo SW of Negotiate is 9500(Authorization failed).

I think this issue do not releate to VPP3300, customer and Google may use Terminal App and pass to read something back successfully first.