pos裝置硬體晶元在出廠時會設定乙個裝置id和乙個金鑰。而在銀聯的pos互動協議中,有乙個概念叫做「簽到」,就是pos裝置向伺服器發起簽到請求,然後讓伺服器返回三個工作金鑰,分別用於加密pos傳輸給伺服器的銀行卡的三個資訊。三個工作金鑰是通過pos裝置硬體晶元內的金鑰(在伺服器端也有)進行加密的。
既然pos裝置已經有了乙個固化的金鑰,為什麼還一定要乙個簽到來獲取工作金鑰呢?為什麼不直接用固化的金鑰進行資料加密傳輸給伺服器呢?既然是金鑰,肯定和安全性有關係,那麼這種模式是如何加強了安全性的呢?
我們知道,pos裝置與伺服器(一般是金融機構)的互動資料都是加密傳輸的,而且這種加密的資料是使用可解密的方式加密,而不是使用非可逆加密(例如md5就是非可逆加密)。
既然是可逆的,就存在破解的可能。那麼如果乙個黑客是如何破解乙個加密方法,進而獲得加密的金鑰呢?當然,直接破解硬體裝置底層是一種方法,但是這種方法一般需要直接操作硬體裝置,甚至可能破壞硬體裝置。
而另外一種方法,就是通過加密的資料和結果反推。舉乙個模擬,就如同我們做二元一次方程一樣。只要變數和完全不同的方程式足夠多,我們就可以算出各個變數的值。所以,只要你的金鑰不變,通過截獲足夠多的原始資料和加密後的密文就可以獲得多個這樣的方程式出來: f(卡資訊,金鑰) = 密文 。擁有的方程式越多,那麼越容易破解出金鑰這個變數和 f 這個演算法函式(時間更短)。
所以,這種破解方法最終的關鍵點在於金鑰不可變,只要不變,那麼就自然可以積攢的「方程式」來破解。既然如此,那麼破除這種破解的方法就是金鑰定期/不定期更新。只要金鑰一變,所有以前積攢的方程式都完全失效,破出來也沒用(等你耗費很長時間破解了,這個工作金鑰已經失效了)。
那麼另外就有乙個問題了,通過頻繁的擷取簽到請求是否可以直接破解到硬體的金鑰呢?答案是不行,為什麼呢?還是和上邊一樣的分析方法。f(工作金鑰,金鑰) = 密文。這個時候真實的工作金鑰和金鑰都是變數。相當於整個函式對於攔截者,無從下手(除非暴力破解硬體裝置);
可見,pos協議的「簽到」,其實不僅僅是乙個簡單的「報到」,更重要的是加強了整個互動的安全性和可靠性。
銀聯POS機為何要簽到?簽到失敗怎麼辦?
pos機簽到分操作員簽到和pos機簽到。pos機操作員簽到是驗證操作員的合法性,需要輸入操作員號 櫃員號 和密碼,部分只需要輸入密碼,該簽到在pos機上完成,屬於離線操作。pos機簽到是驗證pos機的合法性,需要與後台發生通訊,pos機簽到時一般會有資料接受傳送的提示,簽到時後台會下發乙個mac 報...
為什麼要選擇ISP 為什麼要選擇AHD
在影象傳輸中,我們為什麼選擇nextchip?為什麼要選擇isp?為什麼要選擇ahd?為什麼選擇北京冠宇銘通?這個問題我倒著回答各位 一 北京冠宇銘通科技是nextchip目前為止唯一一家正式官方授權 車載產品廠家之一 二 ahd和其他幾種傳輸方式相比,擁有自己的專利,其他幾家有專利的沒有幾個,如果...
為什麼要分詞
這裡不討論這個問題,我要說的為什麼要分詞?分詞是什麼!有人問 分詞有什麼作用啊?某人答 搜尋引擎要用到中文分詞,所以非常重要 這完全是廢話,說了等於沒說。搜尋引擎又為什麼要分詞呢?其實一般意思上指的分詞是比較狹隘的意思,指中文的詞是怎樣劃分的。因為中文沒有空格,所以要理解一篇文 章,你首先當然要切分...