> This is my step i am thinking , would anybody give advise :
> - We set HSM support clear pin
Which HSM do you use?
> - Export Pin block from another bank .
I'm assuming that the source bank will not be sharing their LMK with
you, so perhaps these will be encrypted under a new key specifically for
this export?
> - Decrypt an Encrypted PIN ( using command message : NG)
> - Encrypt new clear pin ( using command message : LH)
Rather then decrypt+encrypt, does your HSM provide a translate command?
Combining these two functions into one so that the PIN is never in the
clear *outside* of the HSM?
> and stored this new value
I wonder if you are talking about PIN Blocks in transactions - rather
than PINs themselves?
--
Mark
Option 1.
I think it will be safe to just migrate the card data and regenerate
PIN and reprint PIN Mailers.
Which means your bank incurs some expense of PIN Mailer printing and
delivering to customer.
Option 2.
Migrate all card information and find out from the HSM supplier on how
to use your new LMK with information encrypted under former HSM's LMK.
Do you really store the PIN in an encrypted form?
dinhc...@gmail.com wrote:
> Hi all ,
> Firstly , Our questions is about Data migration with Pin block but i
> believe members have experience shall help me and give me ideas.
> My bank have new Switch system and no longer to use Switch from other
> bank that is used in the past . Problem is that old information
> includes card , cvv , expired date and pin is stored on that bank
> because this bank issue card instead of my bank
> So we need to migrate pin decrypted under their LMK to my LMK .
Which HSM do you use?
> This is my step i am thinking , would anybody give advise :
> - We set HSM support clear pin
I'm assuming that the source bank will not be sharing their LMK with
> - Export Pin block from another bank .
you, so perhaps these will be encrypted under a new key specifically for
this export?
Rather then decrypt+encrypt, does your HSM provide a translate command?
> - Decrypt an Encrypted PIN ( using command message : NG)
> - Encrypt new clear pin ( using command message : LH)
Combining these two functions into one so that the PIN is never in the
clear *outside* of the HSM?
I wonder if you are talking about PIN Blocks in transactions - rather
> and stored this new value
than PINs themselves?
--
Mark
>> Do you really store the PIN in an encrypted form?
>
> yes , i do . I see my vendor use Compare method to check pin .
The PIN verification - comparing the transaction PIN block (cardholder
entered PIN) with known value takes place inside the HSM via a command
to the HSM though?
Which command will you use - only asking out of interest...
.. what data components go into the this command?
>> Which HSM do you use?
>
> We use Thales 8000
Ok.
>
>>
>>> - Export Pin block from another bank .
>> I'm assuming that the source bank will not be sharing their LMK with
>> you, so perhaps these will be encrypted under a new key specifically for
>> this export?
>
> Can we do this ? Do you have experience or example ?
I would think so, I have never done this myself...
Assuming the source bank is not going to give you their LMK, they can
generate a key and share it with you securely - do you have a
documented/known key exchange process with them?
They can then translate the PIN from under their LMK to be under this
this new transport key and send you the file - probably also encrypted
under another set of keys and algorythm.
You can then translate the PIN from under the transport key to be under
your LMK in your HSM.
Those are the basic steps, each has work and perhaps discovery for you
to complete.
>
>>
>>> - Decrypt an Encrypted PIN ( using command message : NG)
>>> - Encrypt new clear pin ( using command message : LH)
>> Rather then decrypt+encrypt, does your HSM provide a translate command?
>> Combining these two functions into one so that the PIN is never in the
>> clear *outside* of the HSM?
>>
>>> and stored this new value
>> I wonder if you are talking about PIN Blocks in transactions - rather
>> than PINs themselves?
>
>
> yes , i think about pin block . I think i have misunderstanding .
> Would you make it clear ?
PIN Blocks travel within a transaction that was acquired at a PIN based
device most usually an ATM - perhaps in field 52?
The ATM produces a PIN block using an acquirer working key which is
shared with the Switch, the Switch would then translate this PIN block
from under the AWK to be under a key the Issuer system knows so that the
Issuer can check (with an HSM) that the cardholder entered the correct PIN.
The HSM command would take the PIN block, the IWK (encrypted under LMK),
the card digits and the PIN key (again encrypted under LMK), other data
may also go in. The HSM then has enough data to be able to decide if
the PIN is correct.
If your system saves the actual PIN (encrypted) then that is different
to my experience.
Once this Switch is out of the flow, will you be dealing with the ATM's
directly?
In your opening question, perhaps when you use the word 'Switch' you
really mean 'Issuer system'?
--
Mark
Hey Gustavo, nice to see you around!
The PIN verification - comparing the transaction PIN block (cardholder
Chung vu wrote:
>> Do you really store the PIN in an encrypted form?
>
> yes , i do . I see my vendor use Compare method to check pin .
entered PIN) with known value takes place inside the HSM via a command
to the HSM though?
Which command will you use - only asking out of interest...
.. what data components go into the this command?
Ok.
>> Which HSM do you use?
>
> We use Thales 8000
I would think so, I have never done this myself...
>
>>
>>> - Export Pin block from another bank .
>> I'm assuming that the source bank will not be sharing their LMK with
>> you, so perhaps these will be encrypted under a new key specifically for
>> this export?
>
> Can we do this ? Do you have experience or example ?
Assuming the source bank is not going to give you their LMK, they can
generate a key and share it with you securely - do you have a
documented/known key exchange process with them?
They can then translate the PIN from under their LMK to be under this
this new transport key and send you the file - probably also encrypted
under another set of keys and algorythm.
--
Mark
Well, I Actually did that operation last year for a local bank that re-issued
all the customers cards due to a sponsor change (yes ... banks do such
things).-
The bank didn't want the customers to notice that change in the daily
operation, so they wanted to keep old pins with new cards. That requires a
new pin offset for each new card (It's not exactly the same case, but you
need to perform the same operations).
You may do this only if the pin validation that you use allowes it, there are
several pin validation methods that do not allow translation.
In my case, the bank used IBM 3624 pin validation method, that's an old DES
based validation method, so pin translation could take place.-
>> Which command will you use - only asking out of interest...
>>
>> .. what data components go into the this command?
>
>
> To verify pin , we use messge BC ( COMPARISON Method) to compare pin block .
> Pin block stored on DB is encryted under LMK .
> data component for BC command:
> The TPK under which the PIN block is encrypted; encrypted under LMK pair
> 14-15.
> The PIN from the Host database encrypted under LMK pair 02-03.
> The PIN block containing the PIN for verification; encrypted under the TPK
> Is it clear ?
Yes, that is fine.
> It is the same way you explain below . I think so .
It is similar, below I am describing PIN translation for the means of
transport.
Here your HSM is comparing two clear values (a clear PIN block - I would
guess).
> Would you have link or document to share for me ?
>
No, sorry I don't.
>>
>> They can then translate the PIN from under their LMK to be under this
>> this new transport key and send you the file - probably also encrypted
>> under another set of keys and algorythm.
>
>
> I already though about sólution
Ok, it is important to keep *all* card data secure.
--
Mark
The natural PIN is the one that is produced from the PIN generation
algorithm using the PIN generation key.
A PIN offset for a card with a natural 4 digit PIN would be 0000.
> It is better solution for our customer .
It might be better for you, but not for the cardholder - they don't care
as long as you take care.
>>
>> You may do this only if the pin validation that you use allowes it, there
>> are
>> several pin validation methods that do not allow translation.
>>
>> In my case, the bank used IBM 3624 pin validation method, that's an old DES
>> based validation method, so pin translation could take place.-
>
>
> can we do transatlte if pin validation method is Comparation method ?
Translate is something you do *between* two keys.
Your method means the HSM must get two clear values and return a value
indicating if they match.
The two things are therefore not really related.
--
Mark
Check your HSM documentation to see if your pin verification method is
one of these:
? Atalla Identikey
? IBM 3624
? Visa PVV (PIN Verification Value)
? Atalla Bi-Level DES
? Diebold
? NCR
- Other.-
In the first case I think there's no solution (I'm not sure about
Diebold's verification process)
As Alejandro pointed early this ONLY works in an audited environment.
In fact the discs were destroyed after that operation (I think I heard
the auditors saying something about killing the programmer but I
managed to run away....) :-D
Mark also points that your "best solution" might not be the the
cardholder's best solution, as they don't care as long as you take
care. That's absolutely true, al sensitive data must be protected all
the time.
An ideal solution might include disabling for a while the pin change
function, in order not to allow data changes during migration,
So, please, tell us:
a) Algorithm name (I don't know the "comparison" method, please verify
that).
b) Availability of cryptographic parameters (old and eventually new).
c) Availability of testing environment (ATM, testing network, HSM,
etc)
d) The cost of programming inside your switch (do you have to do all
this stuff in TAL ???)
You should consider the cost of re-issuing cards. This could be the
cleanest solution.
Finally,
Regards.
Gus
----------------------------------------------------------------------------------------------
Hi Gusta ,
My question is below , help me
On Tue, Jun 16, 2009 at 8:10 PM, Gustavo Núñez <gustavo.nuniez@adinet.
com.uy
> wrote:
>
>
> Well, I Actually did that operation last year for a local bank that
> re-issued
> all the customers cards due to a sponsor change (yes ... banks do
such
> things).-
>
> The bank didn't want the customers to notice that change in the
daily
> operation, so they wanted to keep old pins with new cards. That
requires a
> new pin offset for each new card (It's not exactly the same case,
but you
> need to perform the same operations).
pin offset , what do you explian in detail , if we keep pin and
change card
number .
It is better solution for our customer .
>
>
> You may do this only if the pin validation that you use allowes it,
there
> are
> several pin validation methods that do not allow translation.
>
> In my case, the bank used IBM 3624 pin validation method, that's an
old DES
> based validation method, so pin translation could take place.-
can we do transatlte if pin validation method is Comparation method ?
>
Chung,
Nothing to be changed within the security config, as all used command does not involve clear pin operations. The HSM should of course be in the Authorized state.
The process is 100% safe if the 1st step (ZMK exchange) is secured by 3 allowed persons/components both from your side and the other bank side.
A i s s a.
De :
jpos-...@googlegroups.com [mailto:jpos-...@googlegroups.com] De la part de Chung vu
Envoyé : mardi 16 juin 2009
17:17
Chung,
Nothing to be changed within the security config, as all used command does not involve clear pin operations. The HSM should of course be in the Authorized state.
The process is 100% safe if the 1st step (ZMK exchange) is secured by 3 allowed persons/components both from your side and the other bank side.
A i s s a.
De : jpos-...@googlegroups.com [mailto: jpos-...@googlegroups.com ] De la part de Chung vu
b) Availability of cryptographic parameters (old and eventually new).
c) Availability of testing environment (ATM, testing network, HSM, etc)
d) The cost of programming inside your switch (do you have to do all this stuff in TAL ???)
You should consider the cost of re-issuing cards. This could be the cleanest solution.
I m not sure to understand your algorithm!!
Also I m confused about using KA command to generate CVKA/B (Card Verification Key), KA Is to generate the KCV (Key Check Value)
Anyway try to change the Key Variant before the key CVK1+CVK2 in the translate command put (X,Y, U, T)
Aissa
De : jpos-...@googlegroups.com [mailto:jpos-...@googlegroups.com] De la part de Chung vu
Envoyé : mercredi 17 juin
2009 02:22
À : jpos-...@googlegroups.com
Objet : Re: Data Migration !
Hi Aissa ,
More
information to Alissa :
In the past , i don't know how to generate double length for CVK and PVK and i
fowlow this rule when we have single :
3DES PVK=PVK1+PVK2
3DES CVK1=3DES
CVK2=CVKA+СVKB.
Both of key to generating .
Ok , I see , i think you was using progammer API,
Try this please on the console :
Online - AUTH > IV
Key type [Pvk/Cvk]: C
Enter ZMK:
Enter key A:
Enter key B:
De : jpos-...@googlegroups.com [mailto:jpos-...@googlegroups.com] De la part de Chung vu
Envoyé : mercredi 17 juin
2009 11:20
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
Join us in IRC at http://webchat.freenode.net/?channels=jpos
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/f98ef3f6-fe48-4619-8dc6-38c582119f9c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.