主秘鑰,即(terminal master key) tmk,主要作用是用來驗證工作秘鑰是否合法,以及加密tpk(終端pin金鑰),保證tpk在傳輸線路上的安全性。一般情況下是人工在pos設定或者通過ic卡匯入,tmk被寫入金鑰保護晶元,也就是我們說的se,其具有開機程式自毀功能,能很好的保護tmk的安全性,主秘鑰是和每一台pos相關聯的,即主秘鑰和pos裝置是一一對應的,如我們現在使用的主金鑰為乙個32位的字串:086a2338252c4e6935b3702327407380,生產中應保持pos的tmk與pos中心的主金鑰的一致性。另外,主金鑰分為明文和密文,由服務提供商提供。若提供的是密文,則需要先解密後校驗,校驗通過後,才能儲存。
例如:如果是密文,服務商會額外提供乙個解密用24個位元組48位的交易主金鑰:e51d9047310f731798cf74af483931b3712c8c734b2e669e(密文),如果將交易主金鑰密文解密,需用服務商提供的解密金鑰「31313131313131313131313131313131」對交易主金鑰的前32位進行解密,得到16個位元組32位的明文1cf88ab5d64f314f9ef237fbd99e29cd。對明文再用8個位元組的0x00做3des加密,得到的是712c8c734b2e669e。若是交易主金鑰的後16位,則驗證成功,反之,驗證失敗。
密文驗證邏輯:若是密文,則需要先使用已經提供的解密金鑰對主金鑰的前32位進行解密,得到其明文,再對明文前8個位元組16位字串,做3des加密,得到乙個16位的字串,若與主金鑰的後16位一致,則驗證成功,反之失敗。
工作秘鑰也稱為資料金鑰,包含pin秘鑰,mac秘鑰以及磁軌秘鑰。在pos每次做簽到交易時,由pos中心下發給pos。需要經常性地定期更換,通常每天更換一次。在聯機更新的報文中對工作金鑰必須用主金鑰加密,形成密文後進行傳輸。
例如:pin金鑰——對pin金鑰密文用金鑰(交易主金鑰明文)做解密,得到明文c7d50808a7dffe62b9943b45a4c77fc7。再對明文用8位元組0x00做3des加密,得到ae103ae98d332dcb。與checkvalue相等。與checkvalue相等,則驗證通過,可正常載入到pos機上,如果不等,則驗證不通過,報錯。
工作金鑰的載入邏輯:對工作金鑰密文使用主金鑰進行解密,得到其明文,再對其做3des加密得到密文,然後對比checvalue,若一致,則驗證通過,不一致,則報錯,驗證失敗。
會話金鑰(session key)也稱為資料加密金鑰,或者工作金鑰,是保證使用者跟裝置或者兩台裝置之間安全通訊會話而隨機產生的加密和解密金鑰,它可由通訊使用者之間進行協商得到。一般是動態地、僅在需要進行會話資料加密時產生。會話金鑰一般也是對稱金鑰,因為加密和解密使用同一金鑰。
pin秘鑰,即(terminal pin encryption key)tpk,用於計算加密pin(個人銀行卡的6位數密碼)。在簽到時,以密文的形式下發到pos終端,pos接收到密文後,需要使用主秘鑰去解密,然後校驗,通過後將tpk儲存在專用的金鑰保護晶元裡,也就是se中。tpk需要經常性地定期更換,通常每天更換一次,並且,tpk具有開機自毀功能。
安全性體現:當使用者在密碼鍵盤上輸入銀行卡密碼時,輸出的是加密後的密文(通過tpk加密pin後的密文),所以在網路傳輸中,即使被截獲也是密文,能夠最大限度的保護使用者密碼的安全。
POS主金鑰與工作金鑰關聯詳解
以下是針對pos的卡交易的一種金鑰邏輯記錄 交易主金鑰 載入到pos機中,用於驗證工作金鑰是否合法等 工作金鑰 包括pin金鑰 mac金鑰 磁軌金鑰,用於加密密碼 mac 磁軌資訊。在資訊上送到服務端前加密。載入的順序是,先載入主金鑰,再載入工作金鑰。如果二者不匹配,在載入過程中會報錯。我們要載入兩...
POS主金鑰與工作金鑰關聯詳解
以下是針對pos的卡交易的一種金鑰邏輯記錄 交易主金鑰 載入到pos機中,用於驗證工作金鑰是否合法等 工作金鑰 包括pin金鑰 mac金鑰 磁軌金鑰,用於加密密碼 mac 磁軌資訊。在資訊上送到服務端前加密。載入的順序是,先載入主金鑰,再載入工作金鑰。如果二者不匹配,在載入過程中會報錯。我們要載入兩...
POS主金鑰與工作金鑰關聯詳解
這個講解的比較淺顯易懂。以下是針對pos的卡交易的一種金鑰邏輯記錄 交易主金鑰 載入到pos機中,用於驗證工作金鑰是否合法等 工作金鑰 包括pin金鑰 mac金鑰 磁軌金鑰,用於加密密碼 mac 磁軌資訊。在資訊上送到服務端前加密。載入的順序是,先載入主金鑰,再載入工作金鑰。如果二者不匹配,在載入過...