亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法、系統(tǒng)及服務(wù)器與流程

文檔序號:12752671閱讀:461來源:國知局
基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法、系統(tǒng)及服務(wù)器與流程

本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,具體涉及一種基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法、系統(tǒng)、服務(wù)器及終端設(shè)備。



背景技術(shù):

隨著互聯(lián)網(wǎng)和電子商務(wù)的發(fā)展,計算機網(wǎng)絡(luò)應(yīng)用已經(jīng)滲透到各行各業(yè),全球信息化已經(jīng)成為人類發(fā)展的大趨勢。而且很多網(wǎng)站或應(yīng)用都會要求先登錄網(wǎng)站賬號之后,才能進(jìn)行相應(yīng)的操作,例如,用戶想在XX網(wǎng)站上購買衣服,一般要求用戶利用已有的賬號登錄該網(wǎng)站,再購買。在用戶登錄網(wǎng)站或應(yīng)用時,需要對用戶的身份進(jìn)行認(rèn)證,現(xiàn)有技術(shù)存在多種進(jìn)行身份認(rèn)證的方法,但大多數(shù)認(rèn)證方法都是使用用戶名和密碼對用戶身份進(jìn)行認(rèn)證,若用戶輸入的用戶名、密碼與服務(wù)器所存儲的用戶名、密碼相匹配,則服務(wù)器對用戶的身份認(rèn)證成功。

然而,現(xiàn)有技術(shù)中存在服務(wù)器對認(rèn)證記錄造假或者服務(wù)器中存儲的認(rèn)證記錄被篡改的情況,而且用戶名和密碼很容易被盜取,一旦盜取到用戶名和密碼就可以通過認(rèn)證,所以這種認(rèn)證方式的安全性不高。



技術(shù)實現(xiàn)要素:

鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法、服務(wù)器、終端設(shè)備和相應(yīng)的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證系統(tǒng)。

根據(jù)本發(fā)明的一個方面,提供了一種基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,方法包括:

接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求;

向節(jié)點發(fā)送挑戰(zhàn)信息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中,第一交易信息中包含挑戰(zhàn)信息;

根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含挑戰(zhàn)信息;

若是,則確認(rèn)用戶身份認(rèn)證成功。

根據(jù)本發(fā)明的另一個方面,提供了一種基于區(qū)塊鏈的身份認(rèn)證方法,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,方法包括:

向服務(wù)器發(fā)送攜帶有用戶名的登錄請求,以供服務(wù)器根據(jù)用戶名獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

接收服務(wù)器發(fā)送的挑戰(zhàn)信息;

構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成第一交易后將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證,其中,第一交易信息包括挑戰(zhàn)信息。

根據(jù)本發(fā)明的另一個方面,提供了一種服務(wù)器,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,服務(wù)器包括:

接收模塊,用于接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求;

發(fā)送模塊,用于向節(jié)點發(fā)送挑戰(zhàn)信息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中第一交易信息中包含挑戰(zhàn)信息;

區(qū)塊鏈賬戶地址獲取模塊,用于根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

判斷模塊,用于判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含挑戰(zhàn)信息;

認(rèn)證模塊,用于在判斷出區(qū)塊鏈中存在第一交易信息且第一交易信息中包含挑戰(zhàn)信息的情況下,確認(rèn)用戶身份認(rèn)證成功。

根據(jù)本發(fā)明的另一個方面,提供了一種終端設(shè)備,終端設(shè)備為區(qū)塊鏈網(wǎng)絡(luò)的節(jié)點,終端設(shè)備包括:

發(fā)送模塊,用于向服務(wù)器發(fā)送攜帶有用戶名的登錄請求,以供服務(wù)器根據(jù)用戶名獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

接收模塊,用于接收服務(wù)器發(fā)送的挑戰(zhàn)信息;

構(gòu)建模塊,用于構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成第一交易后將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證,其中,第一交易信息包括挑戰(zhàn)信息。

根據(jù)本發(fā)明的另一個方面,提供了一種基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證系統(tǒng),包括上述的服務(wù)器以及終端設(shè)備。

根據(jù)本發(fā)明提供的技術(shù)方案,通過向節(jié)點發(fā)送挑戰(zhàn)信息,判斷區(qū)塊鏈網(wǎng)絡(luò)中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息,可以實現(xiàn)對用戶身份的雙重認(rèn)證,由于保存在區(qū)塊鏈中的交易信息是無法被篡改的并且可回溯查詢,因此,提高了認(rèn)證的安全性和認(rèn)證過程的信用度,登錄是無需用戶輸入密碼,也就無需用戶記憶密碼,提高了便利性,而且防止了其他惡意人員利用所盜取的用戶名和密碼登錄其他網(wǎng)站而造成的撞庫攻擊。

上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。

附圖說明

通過閱讀下文優(yōu)選實施方式的詳細(xì)描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:

圖1示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法的流程圖;

圖2示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法的流程圖;

圖3示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法的信令流程圖;

圖4示出了根據(jù)本發(fā)明一個實施例的服務(wù)器的結(jié)構(gòu)框圖;

圖5示出了根據(jù)本發(fā)明另一個實施例的服務(wù)器的結(jié)構(gòu)框圖;

圖6示出了根據(jù)本發(fā)明一個實施例的終端設(shè)備的結(jié)構(gòu)框圖;

圖7示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證系統(tǒng)的結(jié)構(gòu)框圖。

具體實施方式

下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。

區(qū)塊鏈?zhǔn)且淮褂妹艽a學(xué)方法相關(guān)聯(lián)產(chǎn)生的數(shù)據(jù)塊,每一個數(shù)據(jù)塊中包含了區(qū)塊鏈網(wǎng)絡(luò)交易的信息,用于驗證其信息的有效性(防偽)和生成下一個區(qū)塊,一旦信息添加至區(qū)塊鏈,就會永久的存儲起來,除非能夠同時控制住區(qū)塊鏈網(wǎng)絡(luò)中超過51%的節(jié)點,否則單個節(jié)點上對區(qū)塊鏈的修改是無效的,因此區(qū)塊鏈的數(shù)據(jù)穩(wěn)定性和可靠性極高。本發(fā)明實施例利用了區(qū)塊鏈中信息不可修改的特性,來對用戶身份進(jìn)行認(rèn)證。

圖1示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法的流程圖。圖1所示的方法的執(zhí)行主體可以是服務(wù)器,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,如圖1所示,本實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法,具體可以包括以下步驟:

步驟S100,接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求。

本實施例中的節(jié)點為區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點,例如可以是終端設(shè)備,終端設(shè)備可以包括但不限于手機、個人數(shù)字助理(Personal Digital Assistant,PDA)、無線手持設(shè)備、平板電腦(Tablet Computer)、個人電腦(Personal Computer,PC)、可穿戴設(shè)備等。區(qū)塊鏈網(wǎng)絡(luò)可以是公有區(qū)塊鏈網(wǎng)絡(luò)、聯(lián)盟區(qū)塊鏈網(wǎng)絡(luò)或私有區(qū)塊鏈網(wǎng)絡(luò)。公有區(qū)塊鏈網(wǎng)絡(luò)包括但不限于比特幣網(wǎng)絡(luò)和以太坊(Ethereum)網(wǎng)絡(luò),以及聯(lián)盟區(qū)塊鏈網(wǎng)絡(luò)包括但不限于超級賬本(Hyperledger)網(wǎng)絡(luò)。

以用戶利用終端設(shè)備登錄某網(wǎng)站為例,用戶通過終端設(shè)備向服務(wù)器發(fā)送登錄請求,該登錄請求中包括用于登錄該網(wǎng)站的用戶名,其中,用戶名可以是用戶的手機號、郵箱地址或者由至少一個字符組成,服務(wù)器接收終端設(shè)備發(fā)送的攜帶有用戶名的登錄請求。

步驟S101,向節(jié)點發(fā)送挑戰(zhàn)信息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中,第一交易信息中包含挑戰(zhàn)信息。

這里的挑戰(zhàn)信息可供服務(wù)器對終端設(shè)備的身份進(jìn)行確認(rèn)。具體地,服務(wù)器在接收到終端設(shè)備發(fā)送的登錄請求后,將挑戰(zhàn)信息發(fā)送給終端設(shè)備,其中,挑戰(zhàn)信息可以包括:隨機數(shù)或字符串,終端設(shè)備在接收到服務(wù)器發(fā)送的挑戰(zhàn)信息后,需要在構(gòu)建交易過程中輸入所接收到的挑戰(zhàn)信息,所構(gòu)建的交易付款地址為第一區(qū)塊鏈賬戶地址,收款地址為預(yù)設(shè)的第二區(qū)塊鏈賬戶地址,同時還輸出上述挑戰(zhàn)信息,終端設(shè)備在構(gòu)建完成第一交易后,將第一交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器根據(jù)挑戰(zhàn)信息對終端設(shè)備進(jìn)行身份確認(rèn)。

步驟S102,根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

第一區(qū)塊鏈賬戶地址是用戶的交易地址,而且是用戶已有的交易地址,在本步驟中,第一區(qū)塊鏈賬戶地址是用于進(jìn)行付款交易的地址,其可以是比特幣地址,其中,比特幣地址是由多個字符串所組成的,例如1CeZ4EZamNQixcgPQ6tTXbgYkNfc5dDErB,這里僅是舉例說明不做任何具體限定,第一區(qū)塊鏈賬戶地址還可以是萊特幣地址、無限幣地址等,本領(lǐng)域技術(shù)人員可以根據(jù)實際需要選用合適的第一區(qū)塊鏈賬戶地址。具體地,終端設(shè)備可以調(diào)用已安裝的比特幣錢包實現(xiàn)付款,或者具有比特幣錢包功能的賬戶地址進(jìn)行付款,這里不做具體限定。

在本實施例中,用戶名與用戶的比特幣地址以映射方式預(yù)先存儲于服務(wù)器,服務(wù)器可以存儲很多用戶名及與用戶名關(guān)聯(lián)的比特幣地址,在接收到節(jié)點發(fā)送的攜帶有用戶名的登錄請求后,可以根據(jù)登錄請求中的用戶名獲取到與該用戶名關(guān)聯(lián)的比特幣地址。

步驟S103,判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含挑戰(zhàn)信息,若是,則執(zhí)行步驟S104。

本步驟中的第一交易是終端設(shè)備在接收到服務(wù)器發(fā)送的挑戰(zhàn)信息后構(gòu)建的,終端設(shè)備在構(gòu)建完成第一交易后,將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò)中。預(yù)設(shè)的第二區(qū)塊鏈賬戶地址是用于收款的地址,可以是服務(wù)器指定的比特幣地址,例如可以是服務(wù)器所擁有的比特幣地址。

服務(wù)器在獲知終端設(shè)備構(gòu)建了第一交易后,可以根據(jù)第一區(qū)塊鏈賬戶地址判斷區(qū)塊鏈中是否存在第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息,來對用戶身份進(jìn)行認(rèn)證,若區(qū)塊鏈中存在第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,且第一交易信息中包含挑戰(zhàn)信息,則表明用戶具有用戶名的擁有權(quán),確認(rèn)其為合法用戶,即用戶身份認(rèn)證成功,可以允許用戶利用用戶名登錄到網(wǎng)站;若區(qū)塊鏈中不存在第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,或者第一交易信息中不包含挑戰(zhàn)信息,則表明用戶對相應(yīng)的用戶名不具有擁有權(quán),用戶身份認(rèn)證失敗,不允許用戶利用用戶名登錄到網(wǎng)站。

步驟S104,確認(rèn)用戶身份認(rèn)證成功。

可選地,在本實施例的一個可能的實現(xiàn)方式中,在步驟S100之前,方法還包括:接收節(jié)點發(fā)送的注冊請求,具體地,用戶在登錄網(wǎng)站或應(yīng)用之前,需要先進(jìn)行注冊,用戶通過終端設(shè)備向服務(wù)器發(fā)送注冊請求。

服務(wù)器在接收到終端設(shè)備發(fā)送的注冊請求后,服務(wù)器向節(jié)點發(fā)送攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易并將第二交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中第二交易信息中包含用戶名,這里的反饋信息可以包括第二區(qū)塊鏈賬戶地址和交易金額,具體的反饋信息可以是根據(jù)第一區(qū)塊鏈賬戶地址和交易金額所生成條形碼或二維碼,還可以是第一區(qū)塊鏈賬戶地址和交易金額的文本信息,因此,終端設(shè)備可以通過掃描條形碼或二維碼來獲得第一區(qū)塊鏈賬戶地址和交易金額;當(dāng)然,第一區(qū)塊鏈賬戶地址和交易金額還可以由用戶輸入,這里不做具體限定。

本實施例是通過交易完成注冊過程的,具體地,終端設(shè)備在接收到服務(wù)器發(fā)送的反饋消息后,構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易并將第二交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),在構(gòu)建第二交易時,用戶可以手動輸入用于注冊的用戶名從而完成注冊過程。

具體地,終端設(shè)備在交易的付款地址處輸入第一區(qū)塊鏈賬戶地址,在交易的收款地址處輸入預(yù)設(shè)的第二區(qū)塊鏈賬戶地址,在注冊信息處輸入用戶名,構(gòu)建從第一區(qū)塊鏈賬戶地址到預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的付款交易,在構(gòu)建完成第二交易后,終端設(shè)備將第二交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),使得區(qū)塊鏈網(wǎng)絡(luò)的其它節(jié)點獲知完成一筆交易,以供服務(wù)器對用戶進(jìn)行身份認(rèn)證。

服務(wù)器在接收到注冊請求后,將第二區(qū)塊鏈賬戶地址發(fā)送給終端設(shè)備,以使終端設(shè)備根據(jù)第二區(qū)塊鏈賬戶地址構(gòu)建第二交易,因此,終端設(shè)備可以根據(jù)已有的第二區(qū)塊鏈賬戶地址構(gòu)建第一交易。

具體地,對于服務(wù)器是區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點,終端設(shè)備可以通過廣播方式發(fā)送交易通知消息,服務(wù)器接收終端設(shè)備通過廣播方式發(fā)送的交易通知消息后,從區(qū)塊鏈中獲取從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易信息,將第一區(qū)塊鏈賬戶地址和用戶名關(guān)聯(lián)存儲,以在對用戶身份進(jìn)行驗證時,可以根據(jù)用戶名獲取到與用戶名關(guān)聯(lián)存儲的第一區(qū)塊鏈賬戶地址,進(jìn)而根據(jù)第一區(qū)塊鏈賬戶地址判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息。

可選地,在本實施例的一個可能的實現(xiàn)方式中,在將用戶名和第一區(qū)塊鏈賬戶地址關(guān)聯(lián)存儲之前,方法還包括:根據(jù)用戶名查詢數(shù)據(jù)庫中是否存儲有與用戶名相同的用戶名;若否,則將用戶名與第一區(qū)塊鏈賬戶地址關(guān)聯(lián)存儲至數(shù)據(jù)庫,并向節(jié)點反饋注冊成功信息;若是,則向節(jié)點反饋注冊失敗信息。

一般情況下,服務(wù)器并無法區(qū)分是否是同一用戶,因此一般一個用戶名僅能注冊一次,也就是說,不同用戶所使用的用戶名是不同的,因此,根據(jù)用戶名查詢數(shù)據(jù)庫中是否存儲有與用戶名相同的用戶名,以確定是否存在重復(fù)的用戶名,在數(shù)據(jù)庫中不存在相同的用戶名的情況下,將用戶名與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址關(guān)聯(lián)存儲至數(shù)據(jù)庫,并向終端設(shè)備反饋注冊成功信息;在數(shù)據(jù)庫中存在相同的用戶名的情況下,向終端設(shè)備反饋注冊失敗信息。

本發(fā)明實施例是采用讓第一區(qū)塊鏈賬戶地址向第二區(qū)塊鏈賬戶地址付款完成交易,完成注冊以及實現(xiàn)對用戶身份認(rèn)證的目的,交易的數(shù)額是任意的,可能大于或等于0,然而,本實施例僅是對用戶身份進(jìn)行認(rèn)證,很多用戶可能并不希望有金錢損失,因此,在本實施例的一個可能的實現(xiàn)方式中,在第一區(qū)塊鏈賬戶地址向第二區(qū)塊鏈賬戶地址所付款項的數(shù)額大于0時,在確認(rèn)用戶身份認(rèn)證成功之后,服務(wù)器還可以構(gòu)建從預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款到第一區(qū)塊鏈賬戶地址的第三交易并將第三交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),以將預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的款項返回至第一區(qū)塊鏈賬戶地址。

可選地,在本實施例的一個可能的實現(xiàn)方式中,第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址,方法還包括:將第三區(qū)塊鏈賬戶地址與用戶名關(guān)聯(lián)存儲。這里預(yù)先存儲了下一次登錄時交易的第三區(qū)塊鏈賬戶地址,這樣當(dāng)用戶下一次登錄時,可利用第三區(qū)塊鏈賬戶地址進(jìn)行交易。

可選地,在本實施例的一個可能的實現(xiàn)方式中,在第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址,并將第三區(qū)塊鏈賬戶地址與用戶名關(guān)聯(lián)存儲后,還需要刪除第一區(qū)塊鏈賬戶地址與用戶名的關(guān)聯(lián),使得用戶下一次僅能利用第三區(qū)塊鏈賬戶地址進(jìn)行認(rèn)證,而不能再用第一區(qū)塊鏈賬戶地址進(jìn)行認(rèn)證,從而避免重復(fù)使用相同區(qū)塊鏈賬戶地址進(jìn)行認(rèn)證,提高安全性。

可選地,在本實施例的一個可能的實現(xiàn)方式中,第一交易信息中還包含用于標(biāo)識挑戰(zhàn)信息的標(biāo)識符,根據(jù)該標(biāo)識符可以準(zhǔn)確定位到挑戰(zhàn)信息。

根據(jù)本發(fā)明上述實施例提供的方法,通過向節(jié)點發(fā)送挑戰(zhàn)信息,判斷區(qū)塊鏈網(wǎng)絡(luò)中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息,可以實現(xiàn)對用戶身份的雙重認(rèn)證,由于保存在區(qū)塊鏈中的交易信息是無法被篡改的并且可回溯查詢,因此,提高了認(rèn)證的安全性和認(rèn)證過程的信用度,登錄是無需用戶輸入密碼,也就無需用戶記憶密碼,提高了便利性,而且防止了其他惡意人員利用所盜取的用戶名和密碼登錄其他網(wǎng)站而造成的撞庫攻擊。

圖2示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法的流程圖。圖2所示的方法的執(zhí)行主體可以是終端設(shè)備,其為區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,如圖2所示,本實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法,具體可以包括以下步驟:

步驟S200,向服務(wù)器發(fā)送攜帶有用戶名的登錄請求,以供服務(wù)器根據(jù)用戶名獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

以用戶利用終端設(shè)備登錄某網(wǎng)站為例,用戶通過終端設(shè)備向服務(wù)器發(fā)送登錄請求,例如可以在該登錄請求中包括用于登錄該網(wǎng)站的用戶名,其中,用戶名可以是用戶的手機號、郵箱地址或者由至少一個字符組成,終端設(shè)備可以采用多種方式向服務(wù)器發(fā)送登錄請求,例如采用http協(xié)議或者其它合適的協(xié)議,這里不做具體限定。服務(wù)器接收終端設(shè)備發(fā)送的攜帶有用戶名的登錄請求后,可以根據(jù)用戶名獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址,具體地,可以根據(jù)用戶名查詢預(yù)先存儲有用戶名和第一區(qū)塊鏈賬戶地址的數(shù)據(jù)庫,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

步驟S201,接收服務(wù)器發(fā)送的挑戰(zhàn)信息。

服務(wù)器在接收到終端設(shè)備發(fā)送的登錄請求后,向終端設(shè)備發(fā)送挑戰(zhàn)信息,其中,挑戰(zhàn)信息可以包括:隨機數(shù)或字符串。

步驟S202,構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成第一交易后將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證,其中,第一交易信息包括挑戰(zhàn)信息。

具體的,終端設(shè)備在交易的付款地址處輸入第一區(qū)塊鏈賬戶地址,在交易的收款地址處輸入預(yù)設(shè)的第二區(qū)塊鏈賬戶地址,在輸出部分還輸入所接收到的挑戰(zhàn)信息,構(gòu)建從第一區(qū)塊鏈賬戶地址到預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的付款交易,在構(gòu)建完成第一交易后,終端設(shè)備將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),使得區(qū)塊鏈網(wǎng)絡(luò)的其它節(jié)點獲知完成一筆交易,以供服務(wù)器對用戶進(jìn)行身份認(rèn)證,其中,第一交易信息包括挑戰(zhàn)信息。

可選地,在本實施例的一個可能的實現(xiàn)方式中,在向服務(wù)器發(fā)送攜帶有用戶名的登錄請求之前,該方法還包括:向服務(wù)器發(fā)送注冊請求,其中,終端設(shè)備可以采用多種方式向服務(wù)器發(fā)送的注冊請求,例如采用http協(xié)議或者其它合適的協(xié)議,這里不做具體限定;服務(wù)器在接收到注冊請求后,將攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息發(fā)送給終端設(shè)備,終端設(shè)備接收服務(wù)器發(fā)送的攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息,構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易,并在構(gòu)建完成第二交易后將第二交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份注冊,其中第二交易信息中包含用戶名。

本發(fā)明是通過讓用戶利用第一區(qū)塊鏈賬戶地址向第二區(qū)塊鏈賬戶地址付款完成交易,通過判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息來對用戶身份進(jìn)行認(rèn)證,因此,需要先利用用戶名進(jìn)行注冊,這里注冊過程是通過第一區(qū)塊鏈賬戶地址向第二區(qū)塊鏈賬戶地址付款交易完成注冊的,在構(gòu)建交易時,需要用戶手動輸入用于注冊的用戶名。

可選地,在本實施例的一個可能的實現(xiàn)方式中,第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址,該第三區(qū)塊鏈賬戶地址可以用于下一次登錄時對用戶身份的認(rèn)證。

根據(jù)本發(fā)明上述實施例提供的方法,通過向節(jié)點發(fā)送挑戰(zhàn)信息,判斷區(qū)塊鏈網(wǎng)絡(luò)中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息,可以實現(xiàn)對用戶身份的雙重認(rèn)證,由于保存在區(qū)塊鏈中的交易信息是無法被篡改的并且可回溯查詢,因此,提高了認(rèn)證的安全性和認(rèn)證過程的信用度,登錄是無需用戶輸入密碼,也就無需用戶記憶密碼,提高了便利性,而且防止了其他惡意人員利用所盜取的用戶名和密碼登錄其他網(wǎng)站而造成的撞庫攻擊。

圖3示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法的信令流程圖。服務(wù)器用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點可以是終端設(shè)備,如圖3所示,本實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證方法,具體可以包括以下步驟:

步驟S300,終端設(shè)備向服務(wù)器發(fā)送注冊請求。

步驟S301,服務(wù)器根據(jù)注冊請求向終端設(shè)備發(fā)送攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息。

步驟S302,終端設(shè)備根據(jù)所接收到的攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息,構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易,并在構(gòu)建完成第二交易后將第二交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份注冊,其中第二交易信息中包含用戶名。

步驟S303,服務(wù)器從區(qū)塊鏈中獲取從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易信息,并將第一區(qū)塊鏈賬戶地址和用戶名關(guān)聯(lián)存儲。

步驟S304,終端設(shè)備向服務(wù)器發(fā)送攜帶有用戶名的登錄請求。

步驟S305,服務(wù)器向終端設(shè)備發(fā)送挑戰(zhàn)信息。

步驟S306,終端設(shè)備構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成第一交易后將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證其中,第一交易信息包括挑戰(zhàn)信息。

步驟S307,服務(wù)器在接收到終端設(shè)備發(fā)送的攜帶有用戶名的登錄請求后,根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

步驟S308,服務(wù)器判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含挑戰(zhàn)信息,若是,則確認(rèn)用戶身份認(rèn)證成功。

本實施例中各方法步驟的具體實現(xiàn)方式與圖1和圖2所示實施例中對應(yīng)步驟類似,這里不再贅述。

圖4示出了根據(jù)本發(fā)明一個實施例的服務(wù)器的結(jié)構(gòu)框圖。如圖4所示,本實施的服務(wù)器400,具體可以包括:接收模塊410、發(fā)送模塊420、區(qū)塊鏈賬戶地址獲取模塊430、判斷模塊440和認(rèn)證模塊450。

接收模塊410,用于接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求。

發(fā)送模塊420,用于向節(jié)點發(fā)送挑戰(zhàn)信息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中第一交易信息中包含挑戰(zhàn)信息。

區(qū)塊鏈賬戶地址獲取模塊430,用于根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

判斷模塊440,用于判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含挑戰(zhàn)信息。

認(rèn)證模塊450,用于在判斷出區(qū)塊鏈中存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易且第一交易信息中包含挑戰(zhàn)信息的情況下,確認(rèn)用戶身份認(rèn)證成功。

圖5示出了根據(jù)本發(fā)明一個實施例的服務(wù)器的結(jié)構(gòu)框圖。如圖5所示,本實施的服務(wù)器500,具體可以包括:接收模塊510、發(fā)送模塊520、區(qū)塊鏈賬戶地址獲取模塊530、判斷模塊540和認(rèn)證模塊550。

接收模塊510,用于接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求。

發(fā)送模塊520,用于向節(jié)點發(fā)送挑戰(zhàn)信息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中第一交易信息中包含挑戰(zhàn)信息。其中,挑戰(zhàn)信息可以包括:隨機數(shù)或字符串。

區(qū)塊鏈賬戶地址獲取模塊530,用于根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

判斷模塊540,用于判斷區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含挑戰(zhàn)信息。

認(rèn)證模塊550,用于在判斷出區(qū)塊鏈中存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易且第一交易信息中包含挑戰(zhàn)信息的情況下,確認(rèn)用戶身份認(rèn)證成功。

此外,接收模塊510進(jìn)一步用于:接收節(jié)點發(fā)送的注冊請求;

發(fā)送模塊520進(jìn)一步用于:向節(jié)點發(fā)送攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息,以供節(jié)點構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易并將第二交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),其中第二交易信息中包含用戶名。

服務(wù)器還包括:交易獲取模塊560,用于從區(qū)塊鏈中獲取從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易信息;以及

數(shù)據(jù)庫570,用于關(guān)聯(lián)存儲第一區(qū)塊鏈賬戶地址和用戶名。

為了確保每個注冊的用戶名都不相同,服務(wù)器還包括:查詢模塊580,用于根據(jù)用戶名查詢數(shù)據(jù)庫中是否存儲有與用戶名相同的用戶名;

數(shù)據(jù)庫570進(jìn)一步用于:在根據(jù)用戶名查詢數(shù)據(jù)庫中未存儲有與用戶名相同的用戶名的情況下,關(guān)聯(lián)存儲用戶名與第一區(qū)塊鏈賬戶地址;

服務(wù)器還包括:反饋模塊590,用于在根據(jù)用戶名查詢數(shù)據(jù)庫中未存儲有與用戶名相同的用戶名的情況下,向節(jié)點反饋注冊成功信息;在根據(jù)用戶名查詢數(shù)據(jù)庫中存儲有與用戶名相同的用戶名的情況下,向節(jié)點反饋注冊失敗信息。

另外,服務(wù)器還包括:構(gòu)建模塊591,用于構(gòu)建從預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款到第一區(qū)塊鏈賬戶地址的第三交易并將第三交易信息發(fā)送到區(qū)塊鏈網(wǎng)絡(luò),以將預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的款項返回至第一區(qū)塊鏈賬戶地址。

此外,第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址,數(shù)據(jù)庫570進(jìn)一步用于:關(guān)聯(lián)存儲第三區(qū)塊鏈賬戶地址與用戶名。

在將第三區(qū)塊鏈賬戶地址與用戶名關(guān)聯(lián)存儲后,服務(wù)器還包括:刪除模塊592,用于刪除第一區(qū)塊鏈賬戶地址與用戶名的關(guān)聯(lián)。

此外,第一交易信息中還包含用于標(biāo)識挑戰(zhàn)信息的標(biāo)識符,根據(jù)該標(biāo)識符可以準(zhǔn)確定位到挑戰(zhàn)信息。

根據(jù)本發(fā)明上述實施例提供的服務(wù)器,通過向節(jié)點發(fā)送挑戰(zhàn)信息,判斷區(qū)塊鏈網(wǎng)絡(luò)中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息,可以實現(xiàn)對用戶身份的雙重認(rèn)證,由于保存在區(qū)塊鏈中的交易信息是無法被篡改的并且可回溯查詢,因此,提高了認(rèn)證的安全性和認(rèn)證過程的信用度,登錄是無需用戶輸入密碼,也就無需用戶記憶密碼,提高了便利性,而且防止了其他惡意人員利用所盜取的用戶名和密碼登錄其他網(wǎng)站而造成的撞庫攻擊。

圖6示出了根據(jù)本發(fā)明一個實施例的終端設(shè)備的結(jié)構(gòu)框圖。如圖6所示,本實施的終端設(shè)備600,具體可以包括:發(fā)送模塊610、接收模塊620、構(gòu)建模塊630。

發(fā)送模塊610,用于向服務(wù)器發(fā)送攜帶有用戶名的登錄請求,以供服務(wù)器根據(jù)用戶名獲取與用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址。

接收模塊620,用于接收服務(wù)器發(fā)送的挑戰(zhàn)信息。

構(gòu)建模塊630,用于構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成第一交易后將第一交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證,其中,第一交易信息包括挑戰(zhàn)信息。

此外,發(fā)送模塊610進(jìn)一步用于:向服務(wù)器發(fā)送注冊請求。

接收模塊620進(jìn)一步用于:接收服務(wù)器發(fā)送的攜帶有預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息。

構(gòu)建模塊630進(jìn)一步用于:構(gòu)建從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易,并在構(gòu)建完成第二交易后將第二交易信息發(fā)送至區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份注冊,其中,第二交易信息中包含用戶名。

其中,第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址。

根據(jù)本發(fā)明上述實施例提供的終端設(shè)備,通過向節(jié)點發(fā)送挑戰(zhàn)信息,判斷區(qū)塊鏈網(wǎng)絡(luò)中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息,以及第一交易信息中是否包含挑戰(zhàn)信息,可以實現(xiàn)對用戶身份的雙重認(rèn)證,由于保存在區(qū)塊鏈中的交易信息是無法被篡改的并且可回溯查詢,因此,提高了認(rèn)證的安全性和認(rèn)證過程的信用度,登錄是無需用戶輸入密碼,也就無需用戶記憶密碼,提高了便利性,而且防止了其他惡意人員利用所盜取的用戶名和密碼登錄其他網(wǎng)站而造成的撞庫攻擊。

圖7示出了根據(jù)本發(fā)明一個實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證系統(tǒng)的結(jié)構(gòu)框圖。如圖7所示,該系統(tǒng)700包括服務(wù)器500以及終端設(shè)備600。

在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。

在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。

類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。

本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。

此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。

本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。

應(yīng)該注意的是上述實施例對本發(fā)明進(jìn)行說明而不是對本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。

本發(fā)明公開了:

A1、一種基于區(qū)塊鏈的身份認(rèn)證方法,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,其特征在于,所述方法包括:

接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求;

向所述節(jié)點發(fā)送挑戰(zhàn)信息,以供所述節(jié)點構(gòu)建從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到所述區(qū)塊鏈網(wǎng)絡(luò),其中,所述第一交易信息中包含所述挑戰(zhàn)信息;

根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與所述用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

判斷所述區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含所述挑戰(zhàn)信息;

若是,則確認(rèn)用戶身份認(rèn)證成功。

A2、根據(jù)A1所述的方法,其特征在于,在所述接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求之前,所述方法還包括:

接收所述節(jié)點發(fā)送的注冊請求;

向所述節(jié)點發(fā)送攜帶有所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息,以供所述節(jié)點構(gòu)建從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易并將第二交易信息發(fā)送到所述區(qū)塊鏈網(wǎng)絡(luò),其中所述第二交易信息中包含所述用戶名;

從所述區(qū)塊鏈中獲取從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易信息;以及

將所述第一區(qū)塊鏈賬戶地址和所述用戶名關(guān)聯(lián)存儲。

A3、根據(jù)A2所述的方法,其特征在于,在將所述用戶名和第一區(qū)塊鏈賬戶地址關(guān)聯(lián)存儲之前,所述方法還包括:

根據(jù)所述用戶名查詢數(shù)據(jù)庫中是否存儲有與所述用戶名相同的用戶名;

若否,則將所述用戶名與第一區(qū)塊鏈賬戶地址關(guān)聯(lián)存儲至數(shù)據(jù)庫,并向所述節(jié)點反饋注冊成功信息;

若是,則向所述節(jié)點反饋注冊失敗信息。

A4、根據(jù)A1-A3任一項所述的方法,其特征在于,在確認(rèn)用戶身份認(rèn)證成功之后,所述方法還包括:

構(gòu)建從所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款到所述第一區(qū)塊鏈賬戶地址的第三交易并將第三交易信息發(fā)送到所述區(qū)塊鏈網(wǎng)絡(luò),以將所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的款項返回至所述第一區(qū)塊鏈賬戶地址。

A5、根據(jù)A1-A3任一項所述的方法,其特征在于,所述第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址,所述方法還包括:

將所述第三區(qū)塊鏈賬戶地址與所述用戶名關(guān)聯(lián)存儲。

A6、根據(jù)A5所述的方法,其特征在于,所述方法還包括:

刪除所述第一區(qū)塊鏈賬戶地址與所述用戶名的關(guān)聯(lián)。

A7、根據(jù)A1所述的方法,其特征在于,所述挑戰(zhàn)信息包括:隨機數(shù)或字符串。

A8、根據(jù)A1所述的方法,其特征在于,所述第一交易信息中還包含用于標(biāo)識挑戰(zhàn)信息的標(biāo)識符。

B9、一種基于區(qū)塊鏈的身份認(rèn)證方法,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,其特征在于,所述方法包括:

向服務(wù)器發(fā)送攜帶有用戶名的登錄請求,以供服務(wù)器根據(jù)所述用戶名獲取與所述用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

接收所述服務(wù)器發(fā)送的挑戰(zhàn)信息;

構(gòu)建從所述第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成所述第一交易后將第一交易信息發(fā)送至所述區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證,其中,所述第一交易信息包括挑戰(zhàn)信息。

B10、根據(jù)B9所述的方法,其特征在于,所述方法還包括:

向所述服務(wù)器發(fā)送注冊請求;

接收所述服務(wù)器發(fā)送的攜帶有所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息;

構(gòu)建從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易,并在構(gòu)建完成所述第二交易后將第二交易信息發(fā)送至所述區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份注冊,其中,所述第二交易信息中包含所述用戶名。

B11、根據(jù)B9或B10所述的方法,其特征在于,所述第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址。

C12、一種服務(wù)器,用于對區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點進(jìn)行身份認(rèn)證,其特征在于,所述服務(wù)器包括:

接收模塊,用于接收節(jié)點發(fā)送的攜帶有用戶名的登錄請求;

發(fā)送模塊,用于向所述節(jié)點發(fā)送挑戰(zhàn)信息,以供所述節(jié)點構(gòu)建從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易并將第一交易信息發(fā)送到所述區(qū)塊鏈網(wǎng)絡(luò),其中所述第一交易信息中包含所述挑戰(zhàn)信息;

區(qū)塊鏈賬戶地址獲取模塊,用于根據(jù)預(yù)先存儲的用戶名與第一區(qū)塊鏈賬戶地址之間的對應(yīng)關(guān)系,獲取與所述用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

判斷模塊,用于判斷所述區(qū)塊鏈中是否存在從第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易信息且第一交易信息中是否包含所述挑戰(zhàn)信息;

認(rèn)證模塊,用于在判斷出所述區(qū)塊鏈中存在第一交易信息且第一交易信息中包含所述挑戰(zhàn)信息的情況下,確認(rèn)用戶身份認(rèn)證成功。

C13、根據(jù)C12所述的服務(wù)器,其特征在于,所述接收模塊進(jìn)一步用于:接收所述節(jié)點發(fā)送的注冊請求;

所述發(fā)送模塊進(jìn)一步用于:向所述節(jié)點發(fā)送攜帶有所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息,以供所述節(jié)點構(gòu)建從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易并將第二交易信息發(fā)送到所述區(qū)塊鏈網(wǎng)絡(luò),其中所述第二交易信息中包含所述用戶名;

所述服務(wù)器還包括:交易信息獲取模塊,用于從所述區(qū)塊鏈中獲取從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易信息;以及

數(shù)據(jù)庫,用于關(guān)聯(lián)存儲所述第一區(qū)塊鏈賬戶地址和所述用戶名。

C14、根據(jù)C12所述的服務(wù)器,其特征在于,所述服務(wù)器還包括:查詢模塊,用于根據(jù)所述用戶名查詢數(shù)據(jù)庫中是否存儲有與所述用戶名相同的用戶名;

所述數(shù)據(jù)庫進(jìn)一步用于:在根據(jù)所述用戶名查詢所述數(shù)據(jù)庫中未存儲有與所述用戶名相同的用戶名的情況下,關(guān)聯(lián)存儲所述用戶名與第一區(qū)塊鏈賬戶地址;

所述服務(wù)器還包括:反饋模塊,用于在根據(jù)所述用戶名查詢所述數(shù)據(jù)庫中未存儲有與所述用戶名相同的用戶名的情況下,向所述節(jié)點反饋注冊成功信息;在根據(jù)所述用戶名查詢所述數(shù)據(jù)庫中存儲有與所述用戶名相同的用戶名的情況下,向所述節(jié)點反饋注冊失敗信息。

C15、根據(jù)C12-C14任一項所述的服務(wù)器,其特征在于,所述服務(wù)器還包括:

構(gòu)建模塊,用于構(gòu)建從所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款到所述第一區(qū)塊鏈賬戶地址的第三交易并將第三交易信息發(fā)送到所述區(qū)塊鏈網(wǎng)絡(luò),以將所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的款項返回至所述第一區(qū)塊鏈賬戶地址。

C16、根據(jù)C12-C14任一項所述的服務(wù)器,其特征在于,所述第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址,所述數(shù)據(jù)庫進(jìn)一步用于:關(guān)聯(lián)存儲所述第三區(qū)塊鏈賬戶地址與所述用戶名。

C17、根據(jù)C16所述的服務(wù)器,其特征在于,所述服務(wù)器還包括:

刪除模塊,用于刪除所述第一區(qū)塊鏈賬戶地址與所述用戶名的關(guān)聯(lián)。

C18、根據(jù)C12所述的服務(wù)器,其特征在于,所述挑戰(zhàn)信息包括:隨機數(shù)或字符串。

C19、根據(jù)C12所述的服務(wù)器,其特征在于,所述第一交易信息中還包含用于標(biāo)識挑戰(zhàn)信息的標(biāo)識符。

D20、一種終端設(shè)備,所述終端設(shè)備為區(qū)塊鏈網(wǎng)絡(luò)的節(jié)點,其特征在于,所述終端設(shè)備包括:

發(fā)送模塊,用于向服務(wù)器發(fā)送攜帶有用戶名的登錄請求,以供服務(wù)器根據(jù)所述用戶名獲取與所述用戶名關(guān)聯(lián)的第一區(qū)塊鏈賬戶地址;

接收模塊,用于接收所述服務(wù)器發(fā)送的挑戰(zhàn)信息;

構(gòu)建模塊,用于構(gòu)建從所述第一區(qū)塊鏈賬戶地址向預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第一交易,并在構(gòu)建完成所述第一交易后將第一交易信息發(fā)送至所述區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份認(rèn)證,其中,所述第一交易信息包括挑戰(zhàn)信息。

D21、根據(jù)D20所述的終端設(shè)備,其特征在于,所述發(fā)送模塊進(jìn)一步用于:向所述服務(wù)器發(fā)送注冊請求;

所述接收模塊進(jìn)一步用于:接收所述服務(wù)器發(fā)送的攜帶有所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址的反饋消息;

所述構(gòu)建模塊進(jìn)一步用于:構(gòu)建從所述第一區(qū)塊鏈賬戶地址向所述預(yù)設(shè)的第二區(qū)塊鏈賬戶地址付款的第二交易,并在構(gòu)建完成所述第二交易后將第二交易信息發(fā)送至所述區(qū)塊鏈網(wǎng)絡(luò),以供服務(wù)器進(jìn)行身份注冊,其中,所述第二交易信息中包含所述用戶名。

D22、根據(jù)D20或D21所述的終端設(shè)備,其特征在于,所述第一交易信息中包含用于下一次登錄時進(jìn)行交易的第三區(qū)塊鏈賬戶地址。

E23、一種基于區(qū)塊鏈網(wǎng)絡(luò)的身份認(rèn)證系統(tǒng),其特征在于,所述系統(tǒng)包括:C12-C19任一項所述的服務(wù)器以及D20-D22任一項所述的終端設(shè)備。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1