公司:#百度 #小米
崗位:#接口測試工程師
關(guān)鍵字:#接口測試 #接口測試工程師 #API接口 #fiddler
第一步,F(xiàn)iddler截獲客戶端發(fā)送給服務(wù)器的HTTPS請求,F(xiàn)iddler偽裝成客戶端向服務(wù)器發(fā)送請求進(jìn)行握手 。
第二步,服務(wù)器發(fā)回相應(yīng),F(xiàn)iddler獲取到服務(wù)器的CA證書, 用根證書(這里的根證書是CA認(rèn)證中心給自己頒發(fā)的證書)公鑰進(jìn)行解密, 驗(yàn)證服務(wù)器數(shù)據(jù)簽名, 獲取到服務(wù)器CA證書公鑰。然后Fiddler偽造自己的CA證書(這里的CA證書,也是根證書,只不過是Fiddler偽造的根證書), 冒充服務(wù)器證書傳遞給客戶端瀏覽器。
第三步,與普通過程中客戶端的操作相同,客戶端根據(jù)返回的數(shù)據(jù)進(jìn)行證書校驗(yàn)、生成密碼Pre_master、用Fiddler偽造的證書公鑰,并生成HTTPS通信用的對稱密鑰enc_key。
第四步,客戶端將重要信息傳遞給服務(wù)器, 又被Fiddler截獲。Fiddler將截獲的密文用自己偽造證書的私鑰解開, 獲得并計(jì)算得到HTTPS通信用的對稱密鑰enc_key。Fiddler將對稱密鑰用服務(wù)器證書公鑰傳遞給服務(wù)器。
第五步,與普通過程中服務(wù)器端的操作相同,服務(wù)器用私鑰解開后建立信任,然后再發(fā)送握手消息給客戶端。
第六步,F(xiàn)iddler截獲服務(wù)器發(fā)送的密文, 用對稱密鑰解開, 再用自己偽造證書的私鑰傳給客戶端。
第七步,客戶端拿到信息后,用公鑰解開,驗(yàn)證HASH。握手過程正式完成,客戶端與服務(wù)器端就這樣建立了”信任“。