本公開涉及網(wǎng)絡(luò)安全領(lǐng)域,尤其涉及一種身份驗證方法、裝置和存儲介質(zhì)。
背景技術(shù):
近年來,隨著互聯(lián)網(wǎng)的發(fā)展,越來越多的公司通過移動互聯(lián)網(wǎng)和電子設(shè)備提供網(wǎng)上交易、移動支付和網(wǎng)上銀行等在線服務(wù)。為了在上述在線服務(wù)中保護用戶的財產(chǎn)和隱私,網(wǎng)絡(luò)安全成為其中非常重要的一環(huán),用戶登錄時的身份驗證就是網(wǎng)絡(luò)安全中較為普遍的保護方法。身份驗證又稱“驗證”、“鑒權(quán)”,是指通過一定的手段,完成對用戶身份的確認。相關(guān)技術(shù)中,身份驗證包括相對簡單地輸入用戶名和密碼的方式,以及較為復(fù)雜的多因素身份認證解決方案,該多因素認證解決方案涉及發(fā)送至用戶控制的移動終端的sms(短消息服務(wù))消息以及生物測量數(shù)據(jù)等等。
技術(shù)實現(xiàn)要素:
為克服相關(guān)技術(shù)中存在的問題,本公開提供一種身份驗證方法、裝置和存儲介質(zhì)。
根據(jù)本公開實施例的第一方面,提供一種身份驗證方法,應(yīng)用于網(wǎng)關(guān)設(shè)備,所述方法包括:
接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;
響應(yīng)于所述訪問請求,獲取已生成的與所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及所述第一用戶賬號對應(yīng)的私鑰;
向所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送所述訪問請求,所述訪問請求中攜帶利用所述私鑰對所述網(wǎng)關(guān)設(shè)備的指定信息的簽名,用于所述服務(wù)器通過與所述私鑰對應(yīng)的公鑰對所述簽名進行驗證來對所述第一用戶賬號進行身份驗證。
可選的,在所述接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求之前,所述方法還包括:
接收所述用戶設(shè)備發(fā)送的配置請求,所述配置請求中包含所述第一用戶賬號和密碼;
通過所述第一用戶賬號和密碼向所述服務(wù)器進行所述第一用戶賬號的身份驗證;
當所述第一用戶賬號通過驗證時,生成所述公鑰和所述私鑰;
儲存所述私鑰;
將所述公鑰發(fā)送至所述服務(wù)器。
可選的,所述在所述接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求之前,所述方法還包括:
接收所述用戶設(shè)備發(fā)送的配置請求,所述配置請求中包含所述第一用戶賬號,以及與所述第一用戶賬號綁定的通信號碼;
向所述服務(wù)器發(fā)送驗證請求,所述驗證請求中包含所述第一用戶賬號和所述通信號碼,用于所述服務(wù)器向所述通信號碼發(fā)送驗證碼;
接收用戶設(shè)備上傳的驗證碼,并發(fā)送至所述服務(wù)器,所述驗證碼用于所述服務(wù)器對所述第一用戶賬號進行身份驗證;
當所述第一用戶賬號通過驗證時,生成所述公鑰和所述私鑰;
儲存所述私鑰;
將所述公鑰發(fā)送至所述服務(wù)器。
可選的,所述向所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送所述訪問請求,所述訪問請求中攜帶利用所述私鑰對所述網(wǎng)關(guān)設(shè)備的指定信息的簽名,包括:
利用所述私鑰對所述網(wǎng)關(guān)設(shè)備的id的進行簽名處理,得到所述簽名;
向所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送攜帶所述簽名的所述訪問請求。
可選的,所述向所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送攜帶所述簽名的所述訪問請求,包括:
在所述訪問請求中的所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的url后添加包含所述簽名的字段;
將添加包含所述簽名的字段后的所述訪問請求發(fā)送至所述服務(wù)器。
根據(jù)本公開實施例的第二方面,提供一種身份驗證方法,應(yīng)用于服務(wù)器,所述方法包括:
從網(wǎng)關(guān)設(shè)備接收用戶設(shè)備的訪問請求,所述訪問請求是所述用戶設(shè)備通過第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;
當確定所述訪問請求中攜帶了所述網(wǎng)關(guān)設(shè)備利用私鑰對所述網(wǎng)關(guān)設(shè)備的指定信息的簽名時,獲取已存儲的與所述私鑰對應(yīng)的公鑰,所述公鑰是由所述網(wǎng)關(guān)設(shè)備生成后發(fā)送至所述服務(wù)器的;
通過所述公鑰對所述簽名進行驗證,所述私鑰和所述公鑰與所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及所述第一用戶賬號對應(yīng);
當所述簽名通過驗證時,確認所述第一用戶賬號通過驗證。
可選的,所述方法還包括:
當確定所述訪問請求中未攜帶所述簽名時,向所述第一用戶賬號綁定的通信號碼發(fā)送驗證碼;或者,
當所述簽名驗證失敗時,向所述第一用戶賬號綁定的通信號碼發(fā)送驗證碼。
根據(jù)本公開實施例的第三方面,提供一種身份驗證裝置,應(yīng)用于網(wǎng)關(guān)設(shè)備,所述裝置包括:
接收模塊,被配置為接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;
密鑰獲取模塊,被配置為響應(yīng)于所述訪問請求,獲取已生成的與所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及所述第一用戶賬號對應(yīng)的私鑰;
發(fā)送模塊,被配置為向所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送所述訪問請求,所述訪問請求中攜帶利用所述私鑰對所述網(wǎng)關(guān)設(shè)備的指定信息的簽名,用于所述服務(wù)器通過與所述私鑰對應(yīng)的公鑰對所述簽名進行驗證來對所述第一用戶賬號進行身份驗證。
可選的,在所述接收模塊之前,所述裝置還包括:
配置接收模塊,被配置為接收所述用戶設(shè)備發(fā)送的配置請求,所述配置請求中包含所述第一用戶賬號和密碼;
賬號驗證模塊,被配置為通過所述第一用戶賬號和密碼向所述服務(wù)器進行所述第一用戶賬號的身份驗證;
密鑰生成模塊,被配置為當所述第一用戶賬號通過驗證時,生成所述公鑰和所述私鑰;
密鑰儲存模塊,被配置為儲存所述私鑰;
密鑰發(fā)送模塊,被配置為將所述公鑰發(fā)送至所述服務(wù)器。
可選的,所述在所述接收模塊之前,所述裝置還包括:
配置接收模塊,被配置為接收所述用戶設(shè)備發(fā)送的配置請求,所述配置請求中包含所述第一用戶賬號,以及與所述第一用戶賬號綁定的通信號碼;
賬號驗證模塊,被配置為向所述服務(wù)器發(fā)送驗證請求,所述驗證請求中包含所述第一用戶賬號和所述通信號碼,用于所述服務(wù)器向所述通信號碼發(fā)送驗證碼;
驗證碼轉(zhuǎn)發(fā)模塊,被配置為接收用戶設(shè)備上傳的驗證碼,并發(fā)送至所述服務(wù)器,所述驗證碼用于所述服務(wù)器對所述第一用戶賬號進行身份驗證;
密鑰生成模塊,被配置為當所述第一用戶賬號通過驗證時,生成所述公鑰和所述私鑰;
密鑰儲存模塊,被配置為儲存所述私鑰;
密鑰發(fā)送模塊,被配置為將所述公鑰發(fā)送至所述服務(wù)器。
可選的,所述發(fā)送模塊,包括:
簽名獲取子模塊,被配置為利用所述私鑰對所述網(wǎng)關(guān)設(shè)備的id的進行簽名處理,得到所述簽名;
訪問發(fā)送子模塊,被配置為向所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送攜帶所述簽名的所述訪問請求。
可選的,所述訪問發(fā)送子模塊,被配置為:
在所述訪問請求中的所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)的url后添加包含所述簽名的字段;
將添加包含所述簽名的字段后的所述訪問請求發(fā)送至所述服務(wù)器。
根據(jù)本公開實施例的第四方面,提供一種身份驗證裝置,應(yīng)用于服務(wù)器,所述裝置包括:
接收模塊,被配置為從網(wǎng)關(guān)設(shè)備接收用戶設(shè)備的訪問請求,所述訪問請求是所述用戶設(shè)備通過第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;
密鑰獲取模塊,被配置為當確定所述訪問請求中攜帶了所述網(wǎng)關(guān)設(shè)備利用私鑰對所述網(wǎng)關(guān)設(shè)備的指定信息的簽名時,獲取已存儲的與所述私鑰對應(yīng)的公鑰,所述公鑰是由所述網(wǎng)關(guān)設(shè)備生成后發(fā)送至所述服務(wù)器的;
簽名驗證模塊,被配置為通過所述公鑰對所述簽名進行驗證,所述私鑰和所述公鑰與所述目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及所述第一用戶賬號對應(yīng);
驗證確認模塊,被配置為當所述簽名通過驗證時,確認所述第一用戶賬號通過驗證。
可選的,所述裝置還包括:
驗證碼發(fā)送模塊,被配置為當確定所述訪問請求中未攜帶所述簽名時,向所述第一用戶賬號綁定的通信號碼發(fā)送驗證碼;或者,
當所述簽名驗證失敗時,向所述第一用戶賬號綁定的通信號碼發(fā)送驗證碼。
根據(jù)本公開實施例的第五方面,提供一種計算機可讀存儲介質(zhì),其上存儲有計算機程序指令,該程序指令被處理器執(zhí)行時實現(xiàn)本公開第一方面所提供的身份驗證方法的步驟。
根據(jù)本公開實施例的第六方面,提供一種計算機可讀存儲介質(zhì),其上存儲有計算機程序指令,該程序指令被處理器執(zhí)行時實現(xiàn)本公開第二方面所提供的身份驗證方法的步驟。
本公開的實施例提供的技術(shù)方案可以包括以下有益效果:
本公開實施例能夠接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;響應(yīng)于該訪問請求,獲取已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰;向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求,該訪問請求中攜帶利用該私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名,用于該服務(wù)器通過與該私鑰對應(yīng)的公鑰對該簽名進行驗證來對該第一用戶賬號進行身份驗證。能夠通過將網(wǎng)關(guān)設(shè)備配置為針對于網(wǎng)絡(luò)應(yīng)用服務(wù)的用戶賬號的安全設(shè)備,免除用戶登錄網(wǎng)絡(luò)應(yīng)用服務(wù)時需要進行的包括短信息驗證等的多因素身份驗證過程,在保證安全性的前提下簡化用戶登錄過程,優(yōu)化網(wǎng)絡(luò)服務(wù)體驗。
應(yīng)當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本公開。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本公開的實施例,并與說明書一起用于解釋本公開的原理。
圖1是根據(jù)一示例性實施例示出的一種身份驗證方法的流程圖。
圖2是根據(jù)一示例性實施例示出的另一種身份驗證方法的流程圖。
圖3是根據(jù)一示例性實施例示出的又一種身份驗證方法的流程圖。
圖4是根據(jù)一示例性實施例示出的一種訪問請求發(fā)送方法的流程圖。
圖5是根據(jù)另一示例性實施例示出的一種身份驗證方法的流程圖。
圖6是根據(jù)另一示例性實施例示出的另一種身份驗證方法的流程圖。
圖7是根據(jù)一示例性實施例示出的一種身份驗證流程的示意圖。
圖8是根據(jù)一示例性實施例示出的一種用于網(wǎng)關(guān)設(shè)備的身份驗證裝置的框圖。
圖9是根據(jù)一示例性實施例示出的另一種用于網(wǎng)關(guān)設(shè)備的身份驗證裝置的框圖。
圖10是根據(jù)一示例性實施例示出的又一種用于網(wǎng)關(guān)設(shè)備的身份驗證裝置的框圖。
圖11是根據(jù)一示例性實施例示出的一種發(fā)送模塊的框圖。
圖12是根據(jù)一示例性實施例示出的一種用于服務(wù)器的身份驗證裝置的框圖。
圖13是根據(jù)一示例性實施例示出的另一種用于服務(wù)器的身份驗證裝置的框圖。
圖14是根據(jù)一示例性實施例示出的一種用于身份驗證的裝置的框圖。
圖15是根據(jù)一示例性實施例示出的另一種用于身份驗證的裝置的框圖。
具體實施方式
這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本公開相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本公開的一些方面相一致的裝置和方法的例子。
在介紹本公開提供的身份驗證方法之前,首先對本公開所涉及應(yīng)用場景進行介紹,該應(yīng)用場景可以包括一網(wǎng)關(guān)設(shè)備和一服務(wù)器。該網(wǎng)關(guān)設(shè)備可以為能夠在多個網(wǎng)絡(luò)間提供數(shù)據(jù)轉(zhuǎn)換服務(wù)的計算機系統(tǒng)和設(shè)備,例如可以是路由器以及支持路由功能的交換機、集線器甚至計算機等。該服務(wù)器可以為一種能夠為網(wǎng)絡(luò)應(yīng)用或者業(yè)務(wù)網(wǎng)站提供儲存和計算服務(wù)的服務(wù)器,例如可以是文件服務(wù)器,數(shù)據(jù)庫服務(wù)器,應(yīng)用程序服務(wù)器,web服務(wù)器等?,F(xiàn)在通過下面的實施例對本公開提供的身份驗證方法進行說明。
圖1是根據(jù)一示例性實施例示出的一種身份驗證方法的流程圖,該身份驗證方法用于網(wǎng)關(guān)設(shè)備中,本實施例以該網(wǎng)關(guān)設(shè)備為上述的應(yīng)用場景中所述的路由器為例進行說明,如圖1所示,該身份驗證方法包括以下步驟。
在步驟101中,接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求。
示例地,該用戶設(shè)備為用戶對網(wǎng)絡(luò)應(yīng)用服務(wù)進行登錄和使用的電子設(shè)備,例如可以為智能手機。該第一用戶賬號為登錄該網(wǎng)絡(luò)應(yīng)用服務(wù)所需的用戶賬號。當用戶在某個路由器提供的網(wǎng)絡(luò)環(huán)境下利用該電子設(shè)備通過該第一用戶賬號對該目標網(wǎng)絡(luò)應(yīng)用服務(wù)器進行訪問時,首先由該路由器對該訪問請求進行識別和處理。
在步驟102中,響應(yīng)于該訪問請求,獲取已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰。
示例地,當該路由器接收到該訪問請求時,首先確認該路由器中是否有已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰,當確認該路由器中存在該私鑰時,獲取該私鑰的密鑰信息,其中該私鑰以及與其對應(yīng)的公鑰,是預(yù)先對該路由器進行配置后生成的密鑰對,該密鑰對與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng),從而實現(xiàn)將該路由器配置為可信的安全網(wǎng)關(guān)的目的。數(shù)字簽名技術(shù)是基于非對稱加密算法的一種簽名技術(shù),通常是通過將指定內(nèi)容的摘要信息用發(fā)送者的私鑰加密,與原文一起傳送給接收者。接收者只有用發(fā)送者的公鑰才能解密被加密的摘要信息,然后用hash(哈希)函數(shù)對收到的原文產(chǎn)生一個摘要信息,與解密的摘要信息對比,如果相同,則說明收到的信息是完整的,在傳輸過程中沒有被修改,否則說明信息被修改過,因此數(shù)字簽名能夠驗證信息的完整性,以及能夠?qū)Πl(fā)送者的身份進行驗證。
在步驟103中,向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求,該訪問請求中攜帶利用該私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名。
示例地,該指定信息可以為網(wǎng)關(guān)設(shè)備的id,以路由器為例,該指定信息可以為路由器的mac(mediaaccesscontrol,介質(zhì)訪問控制)地址,在向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求之前,需要利用該私鑰對該mac地址進行數(shù)字簽名處理,得到對應(yīng)的簽名,再將該簽名添加至該訪問請求的數(shù)據(jù)信息中,示例地,該數(shù)據(jù)信息可以為該訪問請求中的該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的url(uniformresourcelocator,統(tǒng)一資源定位符)。
其中,該訪問請求用于該服務(wù)器通過與該私鑰對應(yīng)的公鑰對該簽名進行驗證來對該第一用戶賬號進行身份驗證。
綜上所述,本公開實施例能夠接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;響應(yīng)于該訪問請求,獲取已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰;向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求,該訪問請求中攜帶利用該私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名,用于該服務(wù)器通過與該私鑰對應(yīng)的公鑰對該簽名進行驗證來對該第一用戶賬號進行身份驗證。能夠通過將網(wǎng)關(guān)設(shè)備配置為針對于網(wǎng)絡(luò)應(yīng)用服務(wù)的用戶賬號的安全設(shè)備,免除用戶登錄網(wǎng)絡(luò)應(yīng)用服務(wù)時需要進行的包括短信息驗證的多因素身份驗證過程,在保證安全性的前提下簡化用戶登錄過程,優(yōu)化網(wǎng)絡(luò)服務(wù)體驗。
圖2是根據(jù)一示例性實施例示出的另一種身份驗證方法的流程圖,如圖2所示,該身份驗證方法用于網(wǎng)關(guān)設(shè)備中,在步驟101之前,還可以包括以下步驟。
在步驟104中,接收該用戶設(shè)備發(fā)送的配置請求,該配置請求中包含該第一用戶賬號和密碼。
在步驟105中,通過該第一用戶賬號和密碼向該服務(wù)器進行該第一用戶賬號的身份驗證。
示例地,當路由器接收到用戶設(shè)備發(fā)送的配置請求時,首先需要確認該配置請求中的第一用戶賬號和密碼是否能夠通過目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器的身份驗證,即確認該第一用戶賬號是否為能夠登錄該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的合法賬號。
在步驟106中,當該第一用戶賬號通過驗證時,生成該公鑰和該私鑰。
在步驟107中,儲存該私鑰。
在步驟108中,將該公鑰發(fā)送至該服務(wù)器。
由此可見,在步驟101之前,需要對路由器進行安全配置,用戶通過在自己信任的路由器(例如家里或者辦公室的路由器)中輸入目標網(wǎng)絡(luò)應(yīng)用服務(wù)的第一用戶賬號和密碼后,由該路由器驗證該第一用戶賬號是能夠登錄該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的合法賬號,驗證成功后該路由器可以生成與該第一用戶賬號對應(yīng)的密鑰對。經(jīng)過上述安全配置過程,該路由器被設(shè)置為針對于該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號的安全路由器。
或者在另一種方式中,也可以采用賬號加驗證碼的方式對路由器進行配置,圖3是根據(jù)一示例性實施例示出的又一種身份驗證方法的流程圖,如圖3所示,該身份驗證方法用于網(wǎng)關(guān)設(shè)備中,在步驟101之前,還可以包括以下步驟。
在步驟109中,接收該用戶設(shè)備發(fā)送的配置請求,該配置請求中包含該第一用戶賬號,以及與該第一用戶賬號綁定的通信號碼。
在步驟110中,向該服務(wù)器發(fā)送驗證請求,該驗證請求中包含該第一用戶賬號和該通信號碼。
其中,該驗證請求用于該服務(wù)器向該通信號碼發(fā)送驗證碼。
在步驟111中,接收用戶設(shè)備上傳的驗證碼,并發(fā)送至該服務(wù)器,該驗證碼用于該服務(wù)器對該第一用戶賬號進行身份驗證。
即用戶通過在自己信任的路由器(例如家里或者辦公室的路由器)中輸入目標網(wǎng)絡(luò)應(yīng)用服務(wù)的第一用戶賬號,以及服務(wù)器發(fā)送的驗證碼來對該第一用戶賬號,驗證成功后該路由器可以生成與該第一用戶賬號對應(yīng)的密鑰對。經(jīng)過上述安全配置過程,該路由器被設(shè)置為針對于該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號的安全路由器。
圖4是根據(jù)一示例性實施例示出的一種訪問請求發(fā)送方法的流程圖,如圖4所示,該步驟103包括以下步驟。
在步驟1031中,利用該私鑰對該網(wǎng)關(guān)設(shè)備的id的進行簽名處理,得到該簽名。
在步驟1032中,向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送攜帶該簽名的訪問請求。
示例地,該步驟1032可以包括:在該訪問請求中的該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的url后添加包含該簽名的字段;將添加包含該簽名的字段后的訪問請求發(fā)送至服務(wù)器。
圖5是根據(jù)另一示例性實施例示出的一種身份驗證方法的流程圖,該身份驗證方法用于上述的應(yīng)用場景中所述的服務(wù)器中,如圖5所示,該身份驗證方法包括以下步驟。
在步驟201中,從網(wǎng)關(guān)設(shè)備接收用戶設(shè)備的訪問請求,該訪問請求是該用戶設(shè)備通過第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求。
在步驟202中,當確定該訪問請求中攜帶了該網(wǎng)關(guān)設(shè)備利用私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名時,獲取已存儲的與該私鑰對應(yīng)的公鑰。
其中,該公鑰是由該網(wǎng)關(guān)設(shè)備生成后發(fā)送至該服務(wù)器的。該公鑰由服務(wù)器儲存,并在接收到該訪問請求時,由服務(wù)器根據(jù)該訪問請求中攜帶的簽名查找并獲取對應(yīng)的公鑰。
在步驟203中,通過該公鑰對該簽名進行驗證,該私鑰和該公鑰與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)。
示例地,通過該公鑰對該訪問請求中攜帶的該網(wǎng)關(guān)設(shè)備利用私鑰對路由器的mac地址的簽名進行驗證。其中,網(wǎng)關(guān)設(shè)備利用私鑰對路由器的mac地址的簽名可以是路由器利用該私鑰對該路由器的mac地址進行簽名操作得到的簽名,相應(yīng)的,服務(wù)器利用該公鑰對該簽名進行驗證,可以是該服務(wù)器利用該公鑰對該簽名進行解密,并將解密后得到的數(shù)據(jù)與該mac地址的原文(或是利用該預(yù)設(shè)hash算法得到的該mac地址的摘要)進行對比,當解密后的數(shù)據(jù)與mac地址的原文一致時,確定該簽名通過驗證?;蛘?,上述簽名可以是對該mac地址的摘要進行的簽名,該摘要可以是利用預(yù)設(shè)hash算法得到的該mac地址哈希值,在此情況下,該服務(wù)器利用該公鑰對該簽名進行解密后,將解密后得到的數(shù)據(jù)與該mac地址的摘要原文進行對比,如果一致,則確定該簽名通過驗證。
在步驟204中,當該簽名通過驗證時,確認該第一用戶賬號通過驗證。
圖6是根據(jù)另一示例性實施例示出的另一種身份驗證方法的流程圖,該身份驗證方法用于上述的應(yīng)用場景中所述的服務(wù)器中,如圖6所示,該身份驗證方法還可以包括以下步驟。
在步驟205中,當確定該訪問請求中未攜帶該簽名時,向該第一用戶賬號綁定的通信號碼發(fā)送驗證碼。
在步驟206中,當該簽名驗證失敗時,向該第一用戶賬號綁定的通信號碼發(fā)送驗證碼。
示例地,當該訪問請求中未攜帶該簽名或者該簽名驗證失敗時,可以確認該第一用戶賬號無法通過安全路由器的方式被驗證,因此需要重新發(fā)送驗證碼,以對該第一用戶賬號身份驗證。
圖7是根據(jù)一示例性實施例示出的一種身份驗證流程的示意圖,其中,以網(wǎng)關(guān)設(shè)備為路由器為例,在該流程中可以包括用戶設(shè)備710,路由器720,目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器730。
用戶首先需要將該路由器720配置為安全路由器,如圖7所示,配置安全路由器的過程可以包括以下步驟:
在步驟701中,該用戶設(shè)備710首先向該路由器720發(fā)送配置請求,該配置請求包括用戶賬號和密碼,該用戶賬號和密碼能夠用于訪問該目標網(wǎng)絡(luò)應(yīng)用服務(wù);
在步驟702中,響應(yīng)于該配置請求,該路由器720將該配置請求中的用戶賬號和密碼發(fā)送至該服務(wù)器730;
在步驟703中,該服務(wù)器730進行身份驗證并得到驗證結(jié)果;
在步驟704中,該服務(wù)器730將該驗證結(jié)果發(fā)送至路由器720;
在步驟705中,當該驗證結(jié)果為驗證通過時,該路由器720生成該用戶賬號對應(yīng)的公鑰和私鑰;
在步驟706中,該路由器720保存該私鑰,并將該公鑰發(fā)送至該服務(wù)器730。
在前述配置過程完成后,用戶使用該用戶賬號通過該路由器720對該服務(wù)器730進行訪問時,用戶不必再輸入用戶賬號和密碼,可以包括以下步驟:
在步驟707中,該路由器720接收該用戶設(shè)備710發(fā)送的訪問請求;
在步驟708中,該路由器720利用該私鑰對該路由器720的id的進行簽名;
在步驟709中,將攜帶該簽名的訪問請求發(fā)送至該服務(wù)器730;
在步驟710中,該服務(wù)器730通過已儲存的公鑰對該簽名進行驗證,得到驗證結(jié)果;
在步驟711中,當該簽名通過驗證時,服務(wù)器730向該用戶設(shè)備710返回允許該用戶賬號進行登錄的信息;或者,
在步驟712中,當確定該訪問請求中未攜帶該簽名,或者該簽名驗證失敗時,向該用戶賬號綁定的通信號碼發(fā)送驗證碼(該步驟712未在圖中示出)。
綜上所述,在本公開實施例中,網(wǎng)關(guān)設(shè)備能夠接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求,并響應(yīng)于該訪問請求,獲取已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰,而后網(wǎng)關(guān)設(shè)備向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求,該訪問請求中攜帶利用該私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名,而后該服務(wù)器通過與該私鑰對應(yīng)的公鑰對該簽名進行驗證來對該第一用戶賬號進行身份驗證。由此可見,本公開提供的技術(shù)方案能夠通過將網(wǎng)關(guān)設(shè)備配置為針對于網(wǎng)絡(luò)應(yīng)用服務(wù)的用戶賬號的安全設(shè)備,免除用戶登錄網(wǎng)絡(luò)應(yīng)用服務(wù)時需要進行的包括短信息驗證的多因素身份驗證過程,在保證安全性的前提下簡化用戶登錄過程,優(yōu)化網(wǎng)絡(luò)服務(wù)體驗。
圖8是根據(jù)一示例性實施例示出的一種用于網(wǎng)關(guān)設(shè)備的身份驗證裝置框圖,該用于網(wǎng)關(guān)設(shè)備的身份驗證裝置300可以用于執(zhí)行圖1所述的方法,該裝置300可以通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為網(wǎng)關(guān)設(shè)備的部分或者全部。參照圖8,該身份驗證裝置300包括:
接收模塊310,被配置為接收用戶設(shè)備發(fā)起的基于第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;
密鑰獲取模塊320,被配置為響應(yīng)于該訪問請求,獲取已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰;
發(fā)送模塊330,被配置為向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求,該訪問請求中攜帶利用該私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名,用于該服務(wù)器通過與該私鑰對應(yīng)的公鑰對該簽名進行驗證來對該第一用戶賬號進行身份驗證。
圖9是根據(jù)一示例性實施例示出的另一種用于網(wǎng)關(guān)設(shè)備的身份驗證裝置框圖,該用于網(wǎng)關(guān)設(shè)備的身份驗證裝置300可以用于執(zhí)行圖2所述的方法,該裝置300可以通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為網(wǎng)關(guān)設(shè)備的部分或者全部。參照圖9,該身份驗證裝置300還可以包括:
配置接收模塊340,被配置為接收該用戶設(shè)備發(fā)送的配置請求,該配置請求中包含該第一用戶賬號和密碼;
賬號驗證模塊350,被配置為通過該第一用戶賬號和密碼向該服務(wù)器進行該第一用戶賬號的身份驗證;
密鑰生成模塊360,被配置為當該第一用戶賬號通過驗證時,生成該公鑰和該私鑰;
密鑰儲存模塊370,被配置為儲存該私鑰;
密鑰發(fā)送模塊380,被配置為將該公鑰發(fā)送至該服務(wù)器。
圖10是根據(jù)一示例性實施例示出的又一種用于網(wǎng)關(guān)設(shè)備的身份驗證裝置框圖,該用于網(wǎng)關(guān)設(shè)備的身份驗證裝置300可以用于執(zhí)行圖3所述的方法,該裝置300可以通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為網(wǎng)關(guān)設(shè)備的部分或者全部。參照圖10,該身份驗證裝置300還可以包括:
配置接收模塊340,被配置為接收該用戶設(shè)備發(fā)送的配置請求,該配置請求中包含該第一用戶賬號,以及與該第一用戶賬號綁定的通信號碼;
賬號驗證模塊350,被配置為向該服務(wù)器發(fā)送驗證請求,該驗證請求中包含該第一用戶賬號和該通信號碼,用于該服務(wù)器向該通信號碼發(fā)送驗證碼;
驗證碼轉(zhuǎn)發(fā)模塊390,被配置為接收用戶設(shè)備上傳的驗證碼,并發(fā)送至該服務(wù)器,該驗證碼用于該服務(wù)器對該第一用戶賬號進行身份驗證;
密鑰生成模塊360,被配置為當該第一用戶賬號通過驗證時,生成該公鑰和該私鑰;
密鑰儲存模塊370,被配置為儲存該私鑰;
密鑰發(fā)送模塊380,被配置為將該公鑰發(fā)送至該服務(wù)器。
圖11是根據(jù)一示例性實施例示出的一種發(fā)送模塊的框圖,該發(fā)送模塊330可以用于執(zhí)行圖4所述的方法。參照圖11,該發(fā)送模塊330包括:
簽名獲取子模塊331,被配置為利用所述私鑰對所述網(wǎng)關(guān)設(shè)備的id的進行簽名處理,得到該簽名;
訪問發(fā)送子模塊332,被配置為向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送攜帶該簽名的訪問請求。
可選的,該訪問發(fā)送子模塊332,可以被配置為:
在該訪問請求中的該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的url后添加包含該簽名的字段;
將添加包含該簽名的字段后的訪問請求發(fā)送至該服務(wù)器。
圖12是根據(jù)另一示例性實施例示出的一種用于服務(wù)器的身份驗證裝置框圖,該用于服務(wù)器的身份驗證裝置400可以用于執(zhí)行圖5所述的方法,該裝置400可以通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為服務(wù)器的部分或者全部。參照圖12,該身份驗證裝置400包括:
接收模塊410,被配置為從網(wǎng)關(guān)設(shè)備接收用戶設(shè)備的訪問請求,該訪問請求是該用戶設(shè)備通過第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求。
密鑰獲取模塊420,被配置為當確定該訪問請求中攜帶了該網(wǎng)關(guān)設(shè)備利用私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名時,獲取已存儲的與該私鑰對應(yīng)的公鑰,該公鑰是由該網(wǎng)關(guān)設(shè)備生成后發(fā)送至該服務(wù)器的;
簽名驗證模塊430,被配置為通過該公鑰對該簽名進行驗證,該私鑰和該公鑰與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng);
驗證確認模塊440,被配置為當該簽名通過驗證時,確認該第一用戶賬號通過驗證。
圖13是根據(jù)另一示例性實施例示出的另一種用于服務(wù)器的身份驗證裝置框圖,該用于服務(wù)器的身份驗證裝置400可以用于執(zhí)行圖6所述的方法。參照圖13,該身份驗證裝置400包括:
驗證碼發(fā)送模塊450,被配置為當確定該訪問請求中未攜帶該簽名時,向該第一用戶賬號綁定的通信號碼發(fā)送驗證碼;或者,當該簽名驗證失敗時,向該第一用戶賬號綁定的通信號碼發(fā)送驗證碼。
在上述技術(shù)方案中,首先接收用戶設(shè)備發(fā)起的訪問請求,該訪問請求時該用戶設(shè)備通過第一用戶賬號訪問目標網(wǎng)絡(luò)應(yīng)用服務(wù)的訪問請求;然后,響應(yīng)于該訪問請求,獲取已生成的與該目標網(wǎng)絡(luò)應(yīng)用服務(wù)以及該第一用戶賬號對應(yīng)的私鑰;最后,向該目標網(wǎng)絡(luò)應(yīng)用服務(wù)的服務(wù)器發(fā)送該訪問請求,該訪問請求中攜帶利用該私鑰對該網(wǎng)關(guān)設(shè)備的指定信息的簽名,用于該服務(wù)器通過與該私鑰對應(yīng)的公鑰對該簽名進行驗證來對該第一用戶賬號進行身份驗證。能夠通過將網(wǎng)關(guān)設(shè)備配置為針對于網(wǎng)絡(luò)應(yīng)用服務(wù)的用戶賬號的安全設(shè)備,免除用戶登錄網(wǎng)絡(luò)應(yīng)用服務(wù)時需要進行的包括短信息驗證的多因素身份驗證過程,在保證安全性的前提下簡化用戶登錄過程,優(yōu)化網(wǎng)絡(luò)服務(wù)體驗。
關(guān)于上述實施例中的裝置,其中各個模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。
本公開還提供一種計算機可讀存儲介質(zhì),其上存儲有計算機程序指令,該程序指令被處理器執(zhí)行時實現(xiàn)本公開提供的身份驗證方法的步驟。
圖14是根據(jù)一示例性實施例示出的一種用于身份驗證的裝置1400的框圖。例如,裝置1400可以是網(wǎng)關(guān)設(shè)備、路由器、集線器以及交換機等。
參照圖14,裝置1400可以包括以下一個或多個組件:處理組件1402,存儲器1404,電力組件1406,輸入/輸出(i/o)的接口1412,以及通信組件1416。
處理組件1402通??刂蒲b置1400的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機操作和記錄操作相關(guān)聯(lián)的操作。處理組件1402可以包括一個或多個處理器1420來執(zhí)行指令,以完成上述身份驗證方法的全部或部分步驟。此外,處理組件1402可以包括一個或多個模塊,便于處理組件1402和其他組件之間的交互。
存儲器1404被配置為存儲各種類型的數(shù)據(jù)以支持在裝置1400的操作。這些數(shù)據(jù)的示例包括用于在裝置1400上操作的任何應(yīng)用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲器1404可以由任何類型的易失性或非易失性存儲設(shè)備或者它們的組合實現(xiàn),如靜態(tài)隨機存取存儲器(sram),電可擦除可編程只讀存儲器(eeprom),可擦除可編程只讀存儲器(eprom),可編程只讀存儲器(prom),只讀存儲器(rom),磁存儲器,快閃存儲器,磁盤或光盤。
電力組件1406為裝置1400的各種組件提供電力。電力組件1406可以包括電源管理系統(tǒng),一個或多個電源,及其他與為裝置1400生成、管理和分配電力相關(guān)聯(lián)的組件。
i/o接口1412為處理組件1402和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點擊輪,按鈕等。
通信組件1416被配置為便于裝置1400和其他設(shè)備之間有線或無線方式的通信。裝置1400可以接入基于通信標準的無線網(wǎng)絡(luò),如wifi,2g或3g,或它們的組合。在一個示例性實施例中,通信組件1416經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號或廣播相關(guān)信息。在一個示例性實施例中,所述通信組件1416還包括近場通信(nfc)模塊,以促進短程通信。例如,在nfc模塊可基于射頻識別(rfid)技術(shù),紅外數(shù)據(jù)協(xié)會(irda)技術(shù),超寬帶(uwb)技術(shù),藍牙(bt)技術(shù)和其他技術(shù)來實現(xiàn)。
在示例性實施例中,裝置1400可以被一個或多個應(yīng)用專用集成電路(asic)、數(shù)字信號處理器(dsp)、數(shù)字信號處理設(shè)備(dspd)、可編程邏輯器件(pld)、現(xiàn)場可編程門陣列(fpga)、控制器、微控制器、微處理器或其他電子元件實現(xiàn),用于執(zhí)行上述身份驗證方法。
在示例性實施例中,還提供了一種包括指令的非臨時性計算機可讀存儲介質(zhì),例如包括指令的存儲器1404,上述指令可由裝置1400的處理器1420執(zhí)行以完成上述身份驗證方法。例如,所述非臨時性計算機可讀存儲介質(zhì)可以是rom、隨機存取存儲器(ram)、cd-rom、磁帶、軟盤和光數(shù)據(jù)存儲設(shè)備等。
圖15是根據(jù)一示例性實施例示出的一種用于身份驗證的裝置1500的框圖。例如,裝置1500可以被提供為一服務(wù)器。參照圖15,裝置1500包括處理組件1522,其進一步包括一個或多個處理器,以及由存儲器1532所代表的存儲器資源,用于存儲可由處理組件1522的執(zhí)行的指令,例如應(yīng)用程序。存儲器1532中存儲的應(yīng)用程序可以包括一個或一個以上的每一個對應(yīng)于一組指令的模塊。此外,處理組件1522被配置為執(zhí)行指令,以執(zhí)行上述身份驗證方法。
裝置1500還可以包括一個電源組件1526被配置為執(zhí)行裝置1500的電源管理,一個有線或無線網(wǎng)絡(luò)接口1550被配置為將裝置1500連接到網(wǎng)絡(luò),和一個輸入輸出(i/o)接口1558。裝置1500可以操作基于存儲在存儲器1532的操作系統(tǒng),例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或類似。
本領(lǐng)域技術(shù)人員在考慮說明書及實踐本公開后,將容易想到本公開的其它實施方案。本申請旨在涵蓋本公開的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本公開的一般性原理并包括本公開未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實施例僅被視為示例性的,本公開的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當理解的是,本公開并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進行各種修改和改變。本公開的范圍僅由所附的權(quán)利要求來限制。