|
首先討論u盾工作原理 以下內(nèi)容來自本人與天地融科技股份有限公司的工程師qq聊天記錄,等稍后補充完善。 1。 U盾第一次使用,需要在銀行網(wǎng)站下載證書。U盾內(nèi)部產(chǎn)生密鑰對,并且存儲用戶cer公鑰,cer證書和產(chǎn)生的密鑰對通過某種關系映射。即:cer證書只能找到對應的rsa私鑰。 2 。用戶選擇證書后,U盾軟件會通過用戶cer證書找到rsa私鑰,校驗完Pin后,ie把交易數(shù)據(jù)發(fā)送給U盾軟件,U盾軟件再發(fā)給U盾。U盾然后顯示交易信息,等待用戶“ok”確認。確認完成后,就成功了 其次是ssl加密過程,來于公鑰、私鑰、數(shù)字簽名、數(shù)字證書、對稱與非對稱算法、HTTPS - yoyoso的個人頁面 - 開源中國社區(qū) HTTPS在傳輸數(shù)據(jù)之前需要客戶端(瀏覽器)與服務端(網(wǎng)站)之間進行一次握手,在握手過程中將確立雙方加密傳輸數(shù)據(jù)的密碼信息。TLS/SSL協(xié)議不僅僅是一套加密傳輸?shù)膮f(xié)議,更是一件經(jīng)過藝術(shù)家精心設計的藝術(shù)品,TLS/SSL中使用了非對稱加密,對稱加密以及HASH算法。握手過程的簡單描述如下: 1.瀏覽器將自己支持的一套加密規(guī)則發(fā)送給網(wǎng)站。 2.網(wǎng)站從中選出一組加密算法與HASH算法,并將自己的身份信息以證書的形式發(fā)回給瀏覽器。證書里面包含了網(wǎng)站地址,加密公鑰,以及證書的頒發(fā)機構(gòu)等信息。 3.獲得網(wǎng)站證書之后瀏覽器要做以下工作: a) 驗證證書的合法性(頒發(fā)證書的機構(gòu)是否合法,證書中包含的網(wǎng)站地址是否與正在訪問的地址一致等),如果證書受信任,則瀏覽器欄里面會顯示一個小鎖頭,否則會給出證書不受信的提示。 b) 如果證書受信任,或者是用戶接受了不受信的證書,瀏覽器會生成一串隨機數(shù)的密碼,并用證書中提供的公鑰加密。 c) 使用約定好的HASH計算握手消息,并使用生成的隨機數(shù)對消息進行加密,最后將之前生成的所有信息發(fā)送給網(wǎng)站。 4.網(wǎng)站接收瀏覽器發(fā)來的數(shù)據(jù)之后要做以下的操作: a) 使用自己的私鑰將信息解密取出密碼,使用密碼解密瀏覽器發(fā)來的握手消息,并驗證HASH是否與瀏覽器發(fā)來的一致。 b) 使用密碼加密一段握手消息,發(fā)送給瀏覽器。 5.瀏覽器解密并計算握手消息的HASH,如果與服務端發(fā)來的HASH一致,此時握手過程結(jié)束,之后所有的通信數(shù)據(jù)將由之前瀏覽器生成的隨機密碼并利用對稱加密算法進行加密。 |
|
|
來自: liang1234_ > 《https》