這個講解的比較淺顯易懂。
**:----------------------------------------------
以下是針對pos的卡交易的一種金鑰邏輯記錄:
交易主金鑰:載入到pos機中,用於驗證工作金鑰是否合法等;
工作金鑰:包括pin金鑰、mac金鑰、磁軌金鑰,用於加密密碼、mac、磁軌資訊。在資訊上送到服務端前加密。
載入的順序是,先載入主金鑰,再載入工作金鑰。如果二者不匹配,在載入過程中會報錯。
我們要載入兩部分的金鑰到pos機中,主金鑰一般是由有銀聯認可資質的服務商下發的。下發的主金鑰可能有兩種形式,密文或者明文。
如果是密文,服務商會額外提供乙個解密用的金鑰。例如
交易主金鑰:
e51d9047310f731798cf74af483931b3712c8c734b2e669e
(密文),如果將交易主金鑰密文解密,請用服務商提供的解密金鑰「
31313131313131313131313131313131
」對交易主金鑰的前32位進行解密,得到明文
1cf88ab5d64f314f9ef237fbd99e29cd
。對明文再用
8個位元組的
0x00
做3des
加密,得到的是
712c8c734b2e669e
。最後得到的這個值就是交易主金鑰的後16位,所以驗證是成功的。如果不等,則驗證是失敗的。
當我們驗證完交易主金鑰,並正確後,就往下做工作金鑰的載入。
工作金鑰也由服務商下發,pos端
獲取工作金鑰(一般為密文),如果以以下作為例子,如:
pin金鑰:c1ddd6ed1cab0f57abd1cec0370ab1c1 checkvalue:ae103ae98d332dcb
mac金鑰:9fbac976c9257c5b1baf05afad30dffe checkvalue:0d71efc36c294171
磁軌金鑰:7603e9e0ee8e8fe5dab80c29b692db86 checkvalue:3f5480eb4f2a29ee
加解密金鑰:交易主金鑰明文——這個就是主金鑰必須先載入的原因
驗證方法:
pin金鑰
——對pin金鑰密文用金鑰(
交易主金鑰明文
)做解密,得到明文
c7d50808a7dffe62b9943b45a4c77fc7
。再對明文用8位元組
0x00
做3des
加密,得到
ae103ae98d332dcb
。與checkvalue
相等。
與checkvalue相等,則驗證通過,可正常載入到pos機上,如果不等,則驗證不通過,報錯。
當主金鑰和工作金鑰都成功載入後,在做交易,比如刷卡消費時,載入到pos的金鑰,會將你的卡資訊加密,然後再上傳到服務端,避免你的資訊外洩。
流程是這樣的:
(1)獲取交易主金鑰(密文)->解密得到明文->載入交易主金鑰到pos。
(2)用交易主金鑰明文驗證工作金鑰的合法性,合法即可載入到pos。
(3)以上都成功後,可以做卡交易。
POS主金鑰與工作金鑰關聯詳解
以下是針對pos的卡交易的一種金鑰邏輯記錄 交易主金鑰 載入到pos機中,用於驗證工作金鑰是否合法等 工作金鑰 包括pin金鑰 mac金鑰 磁軌金鑰,用於加密密碼 mac 磁軌資訊。在資訊上送到服務端前加密。載入的順序是,先載入主金鑰,再載入工作金鑰。如果二者不匹配,在載入過程中會報錯。我們要載入兩...
POS主金鑰與工作金鑰關聯詳解
以下是針對pos的卡交易的一種金鑰邏輯記錄 交易主金鑰 載入到pos機中,用於驗證工作金鑰是否合法等 工作金鑰 包括pin金鑰 mac金鑰 磁軌金鑰,用於加密密碼 mac 磁軌資訊。在資訊上送到服務端前加密。載入的順序是,先載入主金鑰,再載入工作金鑰。如果二者不匹配,在載入過程中會報錯。我們要載入兩...
什麼是主金鑰 工作金鑰 會話金鑰 PIN金鑰?
主秘鑰,即 terminal master key tmk,主要作用是用來驗證工作秘鑰是否合法,以及加密tpk 終端pin金鑰 保證tpk在傳輸線路上的安全性。一般情況下是人工在pos設定或者通過ic卡匯入,tmk被寫入金鑰保護晶元,也就是我們說的se,其具有開機程式自毀功能,能很好的保護tmk的安...