Translating PIN Block Under Issuer ZPK using Thales Simulator

Dec 23, 2014 at 5:04 AM

I was trying to translate pin block under zpk using command

The command that I sent was:"0008JG02650331ED5A60E6011234567890121412348D665AC5A3"

HSM Simulator Data received :

=== [JG], starts 11:24:06.058 =======
[Key,Value]=[Account Number,123456789012]
[Key,Value]=[PIN Block Format Code,01]

HSM simulator Data Sent:
30 30 30 38 4A 48 31 30 | 0008JH10

I am getting 10 as response code instead 00

Please let me know the mistake I am doing in sending command.

OR is there any other command to Translating PIN Block Under Issuer ZPK

Thanks in advance.
Dec 23, 2014 at 5:11 AM
I too have almost same doubt regarding JG command.Please Help
Dec 26, 2014 at 7:02 AM

1 question here. Sorry to ask a question instead of giving an answer.
You have sent this command to the simulator "0008JG02650331ED5A60E6011234567890121412348D665AC5A3"
May i know how did you derive this ?
Is it hexadecimal representation?

Jan 5, 2015 at 5:52 AM

I think "0008JG02650331ED5A60E6011234567890121412348D665AC5A3" is command sent to simulator.

This may be derived on the basis of message format which includes message header,command to be sent,etc.

Don't think it is a hexadecimal representation.

I too have been working on this.

Thanks ,
Jan 19, 2015 at 1:22 AM

10 error code means "source key parity error". Bascly that means, that you are using incorrect key to decrypt PIN block. Try to verify terminal (source) ZPK using BU host command or KC console command (key type = 001). It should fail to generate key check value.

When HSM decrypts key from under LMK it verifies each byte to have odd parity (parity bit must be correct). If the key is decrypted with wrong key, it is very low possibility that it will have all bytes odd. The HSM returns the fail error code.

Just for info, if destination key is wrong HSM will return 11 error code.