本申請(qǐng)涉及智能鎖
技術(shù)領(lǐng)域:
:,尤其涉及智能鎖的控制方法、裝置及智能鎖。
背景技術(shù):
::隨著物聯(lián)網(wǎng)的發(fā)展,越來(lái)越多的設(shè)備連入網(wǎng)絡(luò)。例如,智能鎖是一種典型的入網(wǎng)設(shè)備。智能鎖作為一種區(qū)別于傳統(tǒng)機(jī)械鎖的智能鎖具設(shè)備,在用戶識(shí)別、安全性及管理性方面都更加智能化。目前,采用中心化服務(wù)實(shí)現(xiàn)對(duì)智能鎖的控制,例如鑰匙端將控制信息發(fā)送至中心服務(wù)器,通過(guò)中心服務(wù)器將控制信息轉(zhuǎn)發(fā)至鎖端,鎖端接收到控制信息后進(jìn)行控制信息對(duì)應(yīng)的操作。然而,由于中心化服務(wù)器是由廠商控制的,使用智能鎖的用戶會(huì)對(duì)中心化服務(wù)器產(chǎn)生信任問(wèn)題。例如,用于鎖門(mén)的智能門(mén)鎖,用戶并不希望惡意廠商通過(guò)中心服務(wù)器對(duì)自己的開(kāi)鎖權(quán)限進(jìn)行修改,另外,由于智能鎖使用期限長(zhǎng)、更換頻率低,則增大了中心化服務(wù)器的維護(hù)成本。技術(shù)實(shí)現(xiàn)要素:本申請(qǐng)?zhí)峁┲悄苕i的控制方法、裝置及智能鎖,以解決現(xiàn)有技術(shù)中心化服務(wù)維護(hù)成本高以及購(gòu)買(mǎi)者對(duì)中心化服務(wù)缺乏信任的問(wèn)題。根據(jù)本申請(qǐng)實(shí)施例的第一方面,提供一種智能鎖的控制方法,所述方法包括:鑰匙端將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述控制信息是對(duì)鎖端進(jìn)行控制的信息,所述交易信息中包括標(biāo)識(shí)鑰匙端的公鑰;所述鎖端接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息;所述鎖端根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。根據(jù)本申請(qǐng)實(shí)施例的第二方面,提供一種智能鎖的控制裝置,所述裝置包括鎖模塊和鑰匙模塊,所述鎖模塊設(shè)于鎖設(shè)備中,所述鑰匙模塊設(shè)于鑰匙設(shè)備中:所述鑰匙模塊,用于將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述控制信息是對(duì)鎖模塊進(jìn)行控制的信息,所述交易信息中包括標(biāo)識(shí)鑰匙模塊的公鑰;所述鎖模塊,用于接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息,根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。根據(jù)本申請(qǐng)實(shí)施例的第三方面,提供一種智能鎖,所述智能鎖包括鑰匙設(shè)備和鎖設(shè)備;鑰匙設(shè)備將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述控制信息是對(duì)鎖設(shè)備進(jìn)行控制的信息,所述交易信息中包括標(biāo)識(shí)鑰匙設(shè)備的公鑰;鎖設(shè)備接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息,并根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。應(yīng)用本申請(qǐng)實(shí)施例智能鎖的控制方法、裝置及智能鎖時(shí),通過(guò)鑰匙端將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,實(shí)現(xiàn)通過(guò)區(qū)塊鏈傳輸鑰匙端發(fā)給鎖端的控制信息,鎖端只會(huì)信任塊鏈上的控制信息,并根據(jù)此控制信息進(jìn)行相應(yīng)的操作。由于區(qū)塊鏈具有信息不可篡改的特征,則能保證鎖端接收到的信息是鑰匙端發(fā)送的未經(jīng)過(guò)修改的信息,從而保證信息的可靠性,避免中心化服務(wù)修改鑰匙端發(fā)送的信息給用戶造成的損失,提高了用戶對(duì)智能鎖的可信任性。另外,用戶無(wú)需信任任何一個(gè)中心化組織,避免了中心化服務(wù)維護(hù)成本高的問(wèn)題。應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本申請(qǐng)。附圖說(shuō)明此處的附圖被并入說(shuō)明書(shū)中并構(gòu)成本說(shuō)明書(shū)的一部分,示出了符合本申請(qǐng)的實(shí)施例,并與說(shuō)明書(shū)一起用于解釋本申請(qǐng)的原理。圖1A為本申請(qǐng)智能鎖的控制方法的一個(gè)應(yīng)用場(chǎng)景圖。圖1B為本申請(qǐng)智能鎖的控制方法的一個(gè)實(shí)施例流程圖。圖2為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種智能鎖的控制方法的時(shí)序圖。圖3為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的另一種智能鎖的控制方法的時(shí)序圖。圖4為本申請(qǐng)智能鎖的控制裝置所在智能鎖的一種硬件結(jié)構(gòu)圖。圖5為本申請(qǐng)智能鎖的控制裝置的一個(gè)實(shí)施例框圖。具體實(shí)施方式這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本申請(qǐng)相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書(shū)中所詳述的、本申請(qǐng)的一些方面相一致的裝置和方法的例子。在本申請(qǐng)使用的術(shù)語(yǔ)是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本申請(qǐng)。在本申請(qǐng)和所附權(quán)利要求書(shū)中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語(yǔ)“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。應(yīng)當(dāng)理解,盡管在本申請(qǐng)可能采用術(shù)語(yǔ)第一、第二、第三等來(lái)描述各種信息,但這些信息不應(yīng)限于這些術(shù)語(yǔ)。這些術(shù)語(yǔ)僅用來(lái)將同一類(lèi)型的信息彼此區(qū)分開(kāi)。例如,在不脫離本申請(qǐng)范圍的情況下,第一信息也可以被稱為第二信息,類(lèi)似地,第二信息也可以被稱為第一信息。取決于語(yǔ)境,如在此所使用的詞語(yǔ)“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。區(qū)塊鏈(Blockchain)是由節(jié)點(diǎn)參與的分布式數(shù)據(jù)庫(kù)系統(tǒng),可以將其理解為賬簿系統(tǒng),該系統(tǒng)由所有參與者(節(jié)點(diǎn))共同維護(hù)。分布式數(shù)據(jù)庫(kù)系統(tǒng)中的信息劃分成一個(gè)一個(gè)的區(qū)塊,每個(gè)區(qū)塊中保存上一個(gè)區(qū)塊的哈希值,而當(dāng)前區(qū)塊的哈希值會(huì)放入下一個(gè)區(qū)塊中,從而形成一個(gè)鏈狀結(jié)構(gòu)。每個(gè)參與者都維護(hù)一個(gè)完整的區(qū)塊鏈。當(dāng)一個(gè)攻擊者想要修改塊鏈中的信息進(jìn)行作弊時(shí),其余參與者能通過(guò)算力投票發(fā)現(xiàn)并拒絕其作弊的修改,算力投票能防止攻擊者通過(guò)增加節(jié)點(diǎn)形成大多數(shù)。由于區(qū)塊的產(chǎn)生需要由節(jié)點(diǎn)對(duì)網(wǎng)絡(luò)上的信息進(jìn)行打包,并完成工作量證明任務(wù)。工作量證明任務(wù)一般是為了證明該交易沒(méi)有被篡改過(guò)。因此,攻擊者需要超過(guò)全網(wǎng)總計(jì)算能力的50%才有可能實(shí)現(xiàn)作弊,而這對(duì)于一個(gè)成熟的基于區(qū)塊鏈的網(wǎng)絡(luò)而言,由于存在很多節(jié)點(diǎn)進(jìn)行打包,因此作弊是非常困難的;從而保證了塊鏈中信息的可信與安全。區(qū)塊鏈無(wú)需節(jié)點(diǎn)之間彼此信任,所有節(jié)點(diǎn)都維護(hù)并信任區(qū)塊鏈網(wǎng)絡(luò)。基于區(qū)塊鏈的網(wǎng)絡(luò)可以是比特幣網(wǎng)絡(luò)、以太幣網(wǎng)絡(luò)、比特股網(wǎng)絡(luò)等??梢?jiàn),區(qū)塊鏈具有分布式(Distributed)、去中心化(Decentrailized)、篡改十分困難(Immutable)、非對(duì)稱加密(Asymmetriccryptographically)等特征。目前將區(qū)塊鏈直接用于銀行等相關(guān)業(yè)務(wù)。為了避免中心化服務(wù)維護(hù)成本高以及購(gòu)買(mǎi)者對(duì)中心化服務(wù)缺乏信任的缺陷,本申請(qǐng)?zhí)峁┮环N智能鎖的控制方法,該方法采用點(diǎn)對(duì)點(diǎn)去中心化的區(qū)塊鏈技術(shù),將鑰匙端發(fā)送的信息存儲(chǔ)在塊鏈上,實(shí)現(xiàn)通過(guò)區(qū)塊鏈傳輸鑰匙端發(fā)給鎖端的信息,鎖端只會(huì)信任塊鏈上的信息,并根據(jù)此信息進(jìn)行相應(yīng)的操作。由于區(qū)塊鏈具有信息不可篡改的特征,則能保證鎖端接收到的信息是鑰匙端發(fā)送的未經(jīng)過(guò)修改的信息,從而保證信息的可靠性,避免相關(guān)技術(shù)中心化服務(wù)修改鑰匙端發(fā)送的信息給用戶造成的損失,提高了用戶對(duì)智能鎖的可信任性。另外,基于區(qū)塊鏈技術(shù)的網(wǎng)絡(luò)提供授信、存儲(chǔ)、設(shè)備間通信的能力,充分利用設(shè)備閑置的計(jì)算資源,能夠?qū)υO(shè)備提供長(zhǎng)期支持,從而實(shí)現(xiàn)用戶無(wú)需信任任何一個(gè)中心化組織,避免了中心化服務(wù)維護(hù)成本高的問(wèn)題。如圖1A所示,圖1A為本申請(qǐng)智能鎖的控制方法的一個(gè)應(yīng)用場(chǎng)景圖,在該應(yīng)用場(chǎng)景圖中包括鑰匙設(shè)備、基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)、鎖設(shè)備。鑰匙端是具有控制鎖端功能的一端,鑰匙端可以是設(shè)于鑰匙設(shè)備中的程序端,也可以是鑰匙設(shè)備。例如,鑰匙設(shè)備可以是智能手機(jī)、平板電腦、PDA(PersonalDigitalAssistant,個(gè)人數(shù)字助理)、智能手表、智能手環(huán)等具有控制鎖端功能的設(shè)備。鎖端可以是設(shè)于鎖設(shè)備中的程序端,也可以是鎖設(shè)備。圖1A以鑰匙設(shè)備為具有控制鎖端功能的智能手機(jī)、鎖設(shè)備為門(mén)鎖為例進(jìn)行示意??梢岳斫獾氖?,基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)是由很多基于區(qū)塊鏈的網(wǎng)絡(luò)節(jié)點(diǎn)構(gòu)成的網(wǎng)絡(luò),圖1A為了示意方便,用計(jì)算機(jī)對(duì)基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)進(jìn)行示例。鑰匙設(shè)備與網(wǎng)絡(luò)系統(tǒng)的連接可以是臨時(shí)建立的,即在鑰匙設(shè)備需要通過(guò)網(wǎng)絡(luò)系統(tǒng)發(fā)送交易信息給鎖設(shè)備時(shí),將鑰匙設(shè)備與基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)建立連接,通過(guò)所述鑰匙設(shè)備將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中。其中,在建立鑰匙設(shè)備與基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)的連接時(shí),鑰匙設(shè)備可以獲取基于區(qū)塊鏈的網(wǎng)絡(luò)節(jié)點(diǎn)的ip地址(InternetProtocolAddress,網(wǎng)際協(xié)議地址)和基于區(qū)塊鏈的網(wǎng)絡(luò)的端口號(hào),通過(guò)ip地址和端口號(hào)與網(wǎng)絡(luò)節(jié)點(diǎn)建立TCP連接。鎖設(shè)備與網(wǎng)絡(luò)系統(tǒng)的連接可以是持續(xù)性的,即鎖設(shè)備與網(wǎng)絡(luò)系統(tǒng)建立TCP連接后不再斷開(kāi)。如圖1B所示,圖1B為本申請(qǐng)智能鎖的控制方法的一個(gè)實(shí)施例流程圖,該方法可以應(yīng)用在智能鎖上,包括以下步驟101至步驟103:在步驟101中,鑰匙端將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述控制信息是對(duì)鎖端進(jìn)行控制的信息,所述交易信息中包括標(biāo)識(shí)鑰匙端的公鑰。在步驟102中,所述鎖端接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息。在步驟103中,所述鎖端根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。關(guān)于步驟101,交易信息是遵循區(qū)塊鏈協(xié)議的信息,能被區(qū)塊鏈所識(shí)別的信息。為了實(shí)現(xiàn)將控制信息發(fā)送至區(qū)塊鏈,本申請(qǐng)通過(guò)交易信息攜帶該控制信息。作為其中一種交易信息攜帶控制信息的方式,可以將控制信息寫(xiě)在交易信息的附言中,作為交易信息的附加信息進(jìn)行傳輸??梢?jiàn),該種方式容易實(shí)現(xiàn)。另外,也可以將控制信息編碼在交易信息中,例如通過(guò)不同的交易數(shù)據(jù)代表不同的控制信息等??刂菩畔⑹氰€匙端控制鎖端執(zhí)行指定操作的信息。在一個(gè)可選的實(shí)現(xiàn)方式中,控制信息可以是控制鎖端進(jìn)行開(kāi)鎖關(guān)鎖操作的信息,例如鑰匙端可以將開(kāi)鎖控制信息通過(guò)區(qū)塊鏈發(fā)送至鎖端,鎖端進(jìn)行開(kāi)鎖操作,又如,鑰匙端可以將關(guān)鎖控制信息通過(guò)區(qū)塊鏈發(fā)送至鎖端,鎖端進(jìn)行關(guān)鎖操作??梢?jiàn),通過(guò)將開(kāi)鎖/關(guān)鎖控制信息發(fā)送至區(qū)塊鏈,區(qū)塊鏈將開(kāi)鎖/關(guān)鎖控制信息發(fā)送至鎖端,由于區(qū)塊鏈的可靠性,從而能保證鎖端接收到的開(kāi)鎖/關(guān)鎖控制信息是鑰匙端發(fā)送的未經(jīng)過(guò)修改的開(kāi)鎖/關(guān)鎖控制信息,以便鎖端能安全地開(kāi)鎖/關(guān)鎖。在另一個(gè)可選的實(shí)現(xiàn)方式中,控制信息可以是控制鎖端進(jìn)行信息更新的信息。例如,控制信息可以是鑰匙端控制鎖端更新權(quán)限列表的信息,又如,控制信息可以是鑰匙端控制鎖端更新固件的信息等。可見(jiàn),鑰匙端將控制鎖端進(jìn)行信息更新的控制信息發(fā)送至區(qū)塊鏈,區(qū)塊鏈將該控制信息發(fā)送至鎖端,由于區(qū)塊鏈的可靠性,從而能保證鎖端接收到的控制信息是鑰匙端發(fā)送的未經(jīng)過(guò)修改的控制信息,以便鎖端能安全地進(jìn)行信息更新??梢岳斫獾氖?,控制信息還可以是鑰匙端對(duì)鎖端進(jìn)行控制的其他控制信息,在此不再一一贅述。另外,為了實(shí)現(xiàn)鎖端開(kāi)鎖/關(guān)鎖的及時(shí)性,也可以不通過(guò)區(qū)塊鏈傳輸開(kāi)鎖/關(guān)鎖控制信息,而通過(guò)藍(lán)牙、NFC等近距離無(wú)線通信的方式進(jìn)行開(kāi)關(guān)鎖控制。為了遵循區(qū)塊鏈的協(xié)議,鑰匙端可以基于區(qū)塊鏈的算法生成目標(biāo)公鑰和目標(biāo)私鑰,在鑰匙端將交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)前,鑰匙端利用目標(biāo)私鑰對(duì)交易信息進(jìn)行簽名,并將簽名后的交易信息和目標(biāo)公鑰發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)。簽名后的交易信息包括交易信息和簽名數(shù)據(jù),簽名數(shù)據(jù)可以是一串?dāng)?shù)據(jù)等??梢岳斫獾氖牵唧w簽名方法采用相關(guān)技術(shù)中的簽名方法,在此不作限定。基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)對(duì)交易信息進(jìn)行處理后,將交易信息發(fā)送至鎖端。鎖端根據(jù)目標(biāo)公鑰對(duì)簽名后的交易信息進(jìn)行驗(yàn)簽,即對(duì)簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得交易信息。針對(duì)標(biāo)識(shí)鑰匙端的公鑰的確定方式,在一個(gè)可選的實(shí)現(xiàn)方式中,可以直接利用根據(jù)區(qū)塊鏈的算法生成的目標(biāo)公鑰標(biāo)識(shí)鑰匙端,即直接將目標(biāo)公鑰確定為鑰匙端的公鑰。由上述實(shí)施例可見(jiàn),利用根據(jù)區(qū)塊鏈的算法生成的目標(biāo)公鑰標(biāo)識(shí)鑰匙端,只需對(duì)交易信息進(jìn)行一次簽名和驗(yàn)簽過(guò)程,節(jié)約了簽名和驗(yàn)簽時(shí)間。在另一個(gè)可選的實(shí)現(xiàn)方式中,由于存在多種類(lèi)型的區(qū)塊鏈,每種類(lèi)型的區(qū)塊鏈的算法不同,利用根據(jù)區(qū)塊鏈的算法生成的目標(biāo)公鑰標(biāo)識(shí)鑰匙端,則該交易信息只能通過(guò)該種區(qū)塊鏈網(wǎng)絡(luò)系統(tǒng)進(jìn)行傳輸。為了避免限定傳輸交易信息所使用的區(qū)塊鏈種類(lèi),在鑰匙端中定義一對(duì)公鑰私鑰對(duì),利用該定義的公鑰標(biāo)識(shí)鑰匙端。在該實(shí)現(xiàn)方式中,鑰匙端可以利用公鑰對(duì)應(yīng)的私鑰對(duì)控制信息進(jìn)行簽名獲得控制簽名信息,并將攜帶所述控制簽名信息和所述公鑰的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中。為了遵循區(qū)塊鏈的協(xié)議,鑰匙端可以利用目標(biāo)私鑰對(duì)交易信息進(jìn)行簽名,并將簽名后的交易信息和目標(biāo)公鑰發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)?;趨^(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)利用目標(biāo)公鑰對(duì)簽名后的交易信息進(jìn)行驗(yàn)簽,獲得交易信息,并進(jìn)行相應(yīng)的處理。所述鎖端接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息,鎖端根據(jù)所述公鑰對(duì)所述控制簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得所述控制信息,并根據(jù)所述公鑰、所述控制信息和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。其中,控制簽名信息是鑰匙端對(duì)控制信息進(jìn)行簽名后的簽名信息,控制簽名信息可以包括控制信息和簽名數(shù)據(jù)。為了避免同其他簽名信息混淆,將該簽名信息命名為控制簽名信息。其中,在鑰匙端將交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)后,基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)的節(jié)點(diǎn)驗(yàn)證交易信息的合法性,例如通過(guò)驗(yàn)證該賬號(hào)是否存在交易信息所需比特幣來(lái)判斷交易信息是否合法。在交易信息合法的情況下,該節(jié)點(diǎn)將交易信息打包到區(qū)塊里,并完成工作量證明任務(wù)。例如,根據(jù)區(qū)塊鏈的算法證明該交易信息未被篡改過(guò)。當(dāng)節(jié)點(diǎn)完成工作量證明任務(wù)后將區(qū)塊上的打包信息進(jìn)行公布,若公布信息被網(wǎng)絡(luò)系統(tǒng)中的其他節(jié)點(diǎn)認(rèn)可后,將打包信息加載到區(qū)塊鏈上,然后通知鎖端。作為其中一種認(rèn)可方式,其他節(jié)點(diǎn)可以判斷公布信息中的交易是否為新的交易信息,若是,則認(rèn)可該公布信息?;趨^(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)不會(huì)對(duì)交易信息中的控制信息進(jìn)行更改,由于網(wǎng)絡(luò)系統(tǒng)能保證交易信息的可靠性,則交易信息中的控制信息具有可靠性。關(guān)于步驟103,鎖端接收到網(wǎng)絡(luò)系統(tǒng)通知的交易信息后,可以從交易信息中獲取控制信息,根據(jù)交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表判斷鑰匙端是否有控制權(quán)限,并根據(jù)判斷結(jié)果確定是否執(zhí)行控制信息對(duì)應(yīng)的操作。針對(duì)獲取控制信息,當(dāng)利用根據(jù)區(qū)塊鏈的算法生成的目標(biāo)公鑰標(biāo)識(shí)鑰匙端時(shí),鎖端可以直接從交易信息中獲取控制信息。當(dāng)利用鑰匙端中定義的公鑰標(biāo)識(shí)鑰匙端時(shí),鎖端可以根據(jù)公鑰對(duì)所述控制簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得控制信息??梢?jiàn),通過(guò)私鑰簽名公鑰驗(yàn)簽的方式可以證明該控制信息的發(fā)送者是鑰匙端,實(shí)現(xiàn)對(duì)控制信息來(lái)源方的確認(rèn)。在確定控制信息來(lái)源方后,可以根據(jù)標(biāo)識(shí)鑰匙端的公鑰和本地存儲(chǔ)的控制權(quán)限列表判斷鑰匙端是否有控制權(quán)限,并根據(jù)判斷結(jié)果確定是否執(zhí)行控制信息對(duì)應(yīng)的操作。其中,控制權(quán)限可以是開(kāi)鎖權(quán)限、關(guān)鎖權(quán)限、更新固件權(quán)限、授權(quán)權(quán)限、取消授權(quán)權(quán)限等。本地可以預(yù)先存儲(chǔ)有控制權(quán)限列表,控制權(quán)限列表中記錄有具有控制權(quán)限的鑰匙端的公鑰??刂茩?quán)限列表的數(shù)量可以為一個(gè),也可以為多個(gè)。根據(jù)不同的控制權(quán)限可以設(shè)置相應(yīng)的控制權(quán)限列表,例如可以包括具有開(kāi)關(guān)鎖權(quán)限的鑰匙端的公鑰的控制權(quán)限列表、具有更新固件權(quán)限的鑰匙端的公鑰的控制權(quán)限列表、具有授權(quán)/取消授權(quán)權(quán)限的鑰匙端的公鑰的控制權(quán)限列表等。在根據(jù)標(biāo)識(shí)鑰匙端的公鑰和本地存儲(chǔ)的控制權(quán)限列表判斷鑰匙端是否有控制權(quán)限時(shí),可以判斷標(biāo)識(shí)鑰匙端的公鑰是否在本地存儲(chǔ)的控制權(quán)限列表中,當(dāng)公鑰在本地存儲(chǔ)的控制權(quán)限列表中時(shí),執(zhí)行控制信息對(duì)應(yīng)的操作,當(dāng)公鑰不在本地存儲(chǔ)的控制權(quán)限列表中時(shí),不執(zhí)行控制信息對(duì)應(yīng)的操作。在一個(gè)例子中,若存在多種類(lèi)型的控制權(quán)限列表時(shí),可以根據(jù)控制信息獲取相應(yīng)的控制權(quán)限列表,并通過(guò)判斷標(biāo)識(shí)鑰匙端的公鑰是否在控制權(quán)限列表里來(lái)判斷鑰匙端是否有控制權(quán)限,并根據(jù)判斷結(jié)果確定是否執(zhí)行控制信息對(duì)應(yīng)的操作。以下列舉兩種控制信息進(jìn)行說(shuō)明。在一個(gè)可選的實(shí)現(xiàn)方式中,所述鑰匙端為第一鑰匙端,所述控制信息為所述第一鑰匙端向第二鑰匙端進(jìn)行授權(quán)/取消授權(quán)的權(quán)限控制信息,所述權(quán)限控制信息包括所述第二鑰匙端的公鑰,所述控制權(quán)限列表中記錄有具有授權(quán)和/或取消授權(quán)權(quán)限的鑰匙端的公鑰,則鎖端可以判斷標(biāo)識(shí)第一鑰匙端的公鑰是否在控制權(quán)限列表中,在鎖端確定第一鑰匙端的公鑰在所述控制權(quán)限列表中時(shí),所述鎖端根據(jù)所述權(quán)限控制信息授予第二鑰匙端指定操作權(quán)限或取消第二鑰匙端的指定操作權(quán)限。其中,第一鑰匙端的公鑰即標(biāo)識(shí)第一鑰匙端的公鑰,第二鑰匙端的公鑰即標(biāo)識(shí)第二鑰匙端的公鑰。在該實(shí)施例中,當(dāng)標(biāo)識(shí)第一鑰匙端的公鑰在所述控制權(quán)限列表中時(shí),可以判定第一鑰匙端具有控制權(quán)限。控制權(quán)限可以是授權(quán)權(quán)限、取消授權(quán)權(quán)限、或授權(quán)和取消授權(quán)權(quán)限。因此,根據(jù)不同的權(quán)限,可以將控制權(quán)限列表分為第一控制權(quán)限列表、第二控制權(quán)限列表和第三控制權(quán)限列表。某些鑰匙端可以僅具有授權(quán)權(quán)限,則可以在第一控制權(quán)限列表中記錄具有授權(quán)權(quán)限的鑰匙端的公鑰。某些鑰匙端可以僅具有取消授權(quán)權(quán)限,則可以在第二控制權(quán)限列表中記錄具有取消授權(quán)權(quán)限的鑰匙端的公鑰。某些鑰匙端可以同時(shí)具有授權(quán)權(quán)限和取消授權(quán)權(quán)限,則在第三控制權(quán)限列表中記錄同時(shí)具有授權(quán)和取消授權(quán)權(quán)限的鑰匙端的公鑰。其中,授權(quán)是指授予鑰匙端指定操作權(quán)限,取消授權(quán)是指取消鑰匙端的指定操作權(quán)限,即第一鑰匙端向第二鑰匙端進(jìn)行授權(quán)后,第二鑰匙端具有指定操作權(quán)限;第一鑰匙端向第二鑰匙端進(jìn)行取消授權(quán)后,取消第二鑰匙端的指定操作權(quán)限。在一個(gè)例子中,為了實(shí)現(xiàn)鎖端根據(jù)權(quán)限控制信息授予第二鑰匙端指定操作權(quán)限或取消第二鑰匙端的指定操作權(quán)限,鎖端可以根據(jù)權(quán)限控制信息更新指定操作權(quán)限所對(duì)應(yīng)的控制權(quán)限列表。例如,當(dāng)控制信息為第一鑰匙端向第二鑰匙端進(jìn)行授權(quán)的權(quán)限控制信息時(shí),鎖端可以根據(jù)權(quán)限控制信息在指定操作權(quán)限所對(duì)應(yīng)的控制權(quán)限列表中增加第二鑰匙端的公鑰;當(dāng)控制信息為第一鑰匙端向第二鑰匙端進(jìn)行取消授權(quán)的權(quán)限控制信息時(shí),鎖端可以根據(jù)權(quán)限控制信息在指定操作權(quán)限所對(duì)應(yīng)的控制權(quán)限列表中刪除第二鑰匙端的公鑰。其中,指定操作權(quán)限可以是開(kāi)鎖權(quán)限、關(guān)鎖權(quán)限、更新固件權(quán)限、授權(quán)權(quán)限、取消授權(quán)權(quán)限等中的一種或多種。在一個(gè)可選的實(shí)現(xiàn)方式中,指定操作權(quán)限可以與控制權(quán)限相同,即指定操作權(quán)限對(duì)應(yīng)的控制權(quán)限列表與控制權(quán)限對(duì)應(yīng)的控制權(quán)限列表相同。由于控制權(quán)限為授權(quán)和/或取消授權(quán)的權(quán)限,則指定操作權(quán)限可以是授權(quán)和/或取消授權(quán)的權(quán)限。當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中時(shí),鎖端可以根據(jù)權(quán)限控制信息將第二鑰匙端的公鑰添加至控制權(quán)限列表中,以實(shí)現(xiàn)根據(jù)權(quán)限控制信息授予第二鑰匙端指定操作權(quán)限。當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中時(shí),鎖端可以根據(jù)權(quán)限控制信息將第二鑰匙端的公鑰從控制權(quán)限列表中刪除,以實(shí)現(xiàn)根據(jù)權(quán)限控制信息取消第二鑰匙端的指定操作權(quán)限??梢?jiàn),可以通過(guò)權(quán)限控制信息授予第二鑰匙端授權(quán)和/或取消授權(quán)的權(quán)限,或,取消第二鑰匙端授權(quán)和/或取消授權(quán)的權(quán)限。在另一個(gè)可選的實(shí)現(xiàn)方式中,指定操作權(quán)限可以與控制權(quán)限不同,即指定操作權(quán)限對(duì)應(yīng)的控制權(quán)限列表與控制權(quán)限對(duì)應(yīng)的控制權(quán)限列表不同。指定操作權(quán)限可以是開(kāi)鎖權(quán)限、關(guān)鎖權(quán)限、更新固件權(quán)限等。當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中時(shí),鎖端可以根據(jù)權(quán)限控制信息將第二鑰匙端的公鑰添加至指定操作權(quán)限對(duì)應(yīng)的控制權(quán)限列表中,以實(shí)現(xiàn)根據(jù)權(quán)限控制信息授予第二鑰匙端指定操作權(quán)限。當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中時(shí),鎖端可以根據(jù)權(quán)限控制信息將第二鑰匙端的公鑰從指定操作權(quán)限對(duì)應(yīng)的控制權(quán)限列表中刪除,以實(shí)現(xiàn)根據(jù)權(quán)限控制信息取消第二鑰匙端的指定操作權(quán)限。可見(jiàn),可以通過(guò)權(quán)限控制信息授予或取消第二鑰匙端開(kāi)鎖權(quán)限、關(guān)鎖權(quán)限或更新固件權(quán)限等??梢岳斫獾氖牵付ú僮鳈?quán)限可以是一種操作權(quán)限,也可以是多種操作權(quán)限,在此不再一一贅述。由上述實(shí)施例可見(jiàn),本實(shí)施例可以通過(guò)判斷控制權(quán)限列表中是否包括第一鑰匙端的公鑰來(lái)判斷第一鑰匙端是否存在控制權(quán)限。當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中、且權(quán)限控制信息為第一鑰匙端向第二鑰匙端進(jìn)行授權(quán)的權(quán)限控制信息時(shí),授予第二鑰匙端指定操作權(quán)限;當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中、且權(quán)限控制信息為第一鑰匙端向第二鑰匙端進(jìn)行取消授權(quán)的權(quán)限控制信息時(shí),取消第二鑰匙端的指定操作權(quán)限,從而通過(guò)第一鑰匙端對(duì)第二鑰匙端的指定操作權(quán)限進(jìn)行控制,在保證信息安全性的同時(shí),提高智能鎖的智能化。針對(duì)不同的應(yīng)用場(chǎng)景,授權(quán)和取消授權(quán)具有特定的意義。例如,鎖生產(chǎn)端生產(chǎn)智能鎖時(shí)往往附有萬(wàn)能鑰匙,萬(wàn)能鑰匙可以具有控制權(quán)限,即控制權(quán)限列表中默認(rèn)有萬(wàn)能鑰匙的公鑰。萬(wàn)能鑰匙可以授予其他鑰匙具有指定操作權(quán)限,即在指定操作權(quán)限所對(duì)應(yīng)的控制權(quán)限列表中增加新鑰匙的公鑰,從而使其他鑰匙具有指定操作權(quán)限。指定操作權(quán)限可以包括開(kāi)鎖/關(guān)鎖權(quán)限、更新固件權(quán)限、授權(quán)/取消授權(quán)權(quán)限等。為了保證鎖端的安全性,在指定操作權(quán)限所對(duì)應(yīng)的控制權(quán)限列表中增加新鑰匙的公鑰后,新鑰匙具有各種指定操作權(quán)限,其中一個(gè)權(quán)限是取消萬(wàn)能鑰匙的權(quán)限,從而新鑰匙可以取消萬(wàn)能鑰匙的所有權(quán)限,從而使廠商無(wú)法通過(guò)萬(wàn)能鑰匙對(duì)鎖進(jìn)行控制,保證了鎖端的安全性。又如,房東具有授權(quán)/取消授權(quán)的權(quán)限,房客具有開(kāi)關(guān)鎖的權(quán)限。需要更改房客時(shí),只需要檢查一遍塊鏈即可確定對(duì)鎖端具有操作權(quán)限的鑰匙。房東可以采用上述實(shí)施例所述方法將自己的鑰匙端作為第一鑰匙端,將房客的鑰匙端作為第二鑰匙端,從而一一取消房客鑰匙的開(kāi)關(guān)鎖權(quán)限,從而避免更換智能鎖,增加了智能鎖的重用性。又如,當(dāng)快遞員到達(dá)收件地發(fā)現(xiàn)收件人不在時(shí),由于收件地具有收件人的郵箱,郵箱通過(guò)智能鎖封鎖,因此,收件人的鑰匙作為第一鑰匙端,快遞員的鑰匙作為第二鑰匙端,收件人可以通過(guò)自己的鑰匙端對(duì)快遞員的鑰匙端進(jìn)行授權(quán),以使快遞員可以通過(guò)授權(quán)的鑰匙端打開(kāi)郵箱,并將物品投放在郵箱中。為了保證安全性,還可以限定授權(quán)次數(shù),例如限定為一次開(kāi)鎖權(quán)限。由于僅進(jìn)行一次性授權(quán),則快遞員打開(kāi)郵箱鑰匙后,授權(quán)即失效,保證了郵箱的安全性。進(jìn)一步的,鎖端還可以通過(guò)交易信息將信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng),通過(guò)基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)將信息傳輸至鑰匙端,由于區(qū)塊鏈具有去信任的特征,則能保證鑰匙端接收到的信息是鎖端發(fā)送的未經(jīng)過(guò)修改的信息,從而保證信息的可靠性,避免中心化服務(wù)修改鎖端發(fā)送的信息給用戶造成的損失。例如,鎖端還可以通過(guò)基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)向第一鑰匙端發(fā)送授權(quán)結(jié)果的響應(yīng)信息。授權(quán)結(jié)果可以是授權(quán)成功,也可以是授權(quán)失敗。比如,當(dāng)所述第一鑰匙端的公鑰不在所述控制權(quán)限列表中時(shí),通過(guò)基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)向第一鑰匙端發(fā)送授權(quán)失敗的響應(yīng)信息。其中,鎖端可以向基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)發(fā)送交易信息,交易信息中攜帶授權(quán)結(jié)果的響應(yīng)信息,以便告知網(wǎng)絡(luò)系統(tǒng)授權(quán)結(jié)果。第一鑰匙端可以從基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中監(jiān)聽(tīng)到授權(quán)結(jié)果,第二鑰匙端也可以從基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中監(jiān)聽(tīng)到授權(quán)結(jié)果,以便第二鑰匙端明確自身是否有指定操作權(quán)限。如圖2所示,圖2為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的一種智能鎖的控制方法的時(shí)序圖。在該時(shí)序圖中,包括以下步驟:第一鑰匙端通過(guò)私鑰對(duì)權(quán)限控制信息進(jìn)行簽名獲得控制簽名信息,并將攜帶公鑰和控制簽名信息的交易信息在基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)進(jìn)行廣播。其中,權(quán)限控制信息是第一鑰匙端向第二鑰匙端進(jìn)行授權(quán)/取消授權(quán)的信息。所述公鑰和私鑰是第一鑰匙端中的公鑰私鑰對(duì)?;趨^(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)的節(jié)點(diǎn)驗(yàn)證交易信息的合法性,在交易信息合法的情況下,該節(jié)點(diǎn)將交易信息打包到區(qū)塊里,并完成工作量證明任務(wù),當(dāng)節(jié)點(diǎn)完成工作量證明任務(wù)后將區(qū)塊上的打包信息進(jìn)行公布,若公布信息被網(wǎng)絡(luò)系統(tǒng)中的其他節(jié)點(diǎn)認(rèn)可后,將打包信息加載到區(qū)塊鏈上,然后將交易信息通知至鎖端。鎖端監(jiān)聽(tīng)到交易信息后,根據(jù)第一鑰匙端的公鑰對(duì)控制簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得權(quán)限控制信息,并根據(jù)權(quán)限控制信息從本地獲取控制權(quán)限列表。當(dāng)?shù)谝昏€匙端的公鑰不在控制權(quán)限列表中時(shí),鎖端向基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)發(fā)送授權(quán)失敗的授權(quán)結(jié)果。當(dāng)?shù)谝昏€匙端的公鑰在控制權(quán)限列表中時(shí),根據(jù)權(quán)限控制信息授予/取消第二鑰匙端指定操作權(quán)限,并向基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)發(fā)送授權(quán)成功的授權(quán)結(jié)果?;趨^(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)將授權(quán)成功或授權(quán)失敗的授權(quán)結(jié)果進(jìn)行廣播,以使第一鑰匙端和第二鑰匙端監(jiān)聽(tīng)到授權(quán)結(jié)果。在另一個(gè)可選的實(shí)現(xiàn)方式中,所述控制信息為固件更新信息,所述固件為運(yùn)行在鎖端中的程序集合,所述固件更新信息包括新固件的地址信息,本地存儲(chǔ)的控制權(quán)限列表中記錄有具有固件更新權(quán)限的鑰匙端的公鑰。所述鎖端根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作,包括:所述鎖端確定鑰匙端的公鑰在所述控制權(quán)限列表中時(shí),鎖端根據(jù)所述新固件的地址信息下載固件簽名信息,所述固件簽名信息是鑰匙端利用所述公鑰對(duì)應(yīng)的私鑰對(duì)新固件進(jìn)行簽名后的信息。所述鎖端根據(jù)所述公鑰對(duì)所述固件簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后鎖端獲得新固件,并根據(jù)所述新固件進(jìn)行固件更新。在該實(shí)施例中,固件是運(yùn)行在鎖中的程序集合,例如固件可以是控制鎖開(kāi)關(guān)的程序,還可以是其他控制邏輯的程序。在一個(gè)可選的實(shí)現(xiàn)方式中,固件可以是具有以下邏輯的固件:接收鑰匙端發(fā)送的鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求,所述開(kāi)鎖/關(guān)鎖請(qǐng)求是利用鑰匙端公鑰對(duì)應(yīng)的私鑰進(jìn)行簽名后的請(qǐng)求。根據(jù)所述鑰匙端的公鑰對(duì)所述開(kāi)鎖/關(guān)鎖請(qǐng)求進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)關(guān)操作。其中,鑰匙端可以通過(guò)NFC(NearFieldCommunication,近距離無(wú)線通訊技術(shù))、聲波、藍(lán)牙等方式將鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求發(fā)送至鎖端。由上述實(shí)施例可見(jiàn),通過(guò)私鑰簽名、公鑰驗(yàn)簽的方式驗(yàn)證開(kāi)鎖/關(guān)鎖請(qǐng)求的來(lái)源方,從而提高了來(lái)源方的可靠性。在另一個(gè)可選的實(shí)現(xiàn)方式中,固件可以是具有以下邏輯的固件:接收鑰匙端發(fā)送的鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求,所述開(kāi)鎖/關(guān)鎖請(qǐng)求是利用鑰匙端公鑰對(duì)應(yīng)的私鑰進(jìn)行簽名后的請(qǐng)求。根據(jù)所述鑰匙端的公鑰對(duì)所述開(kāi)鎖/關(guān)鎖請(qǐng)求進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后,判斷鑰匙端的公鑰是否在本地存儲(chǔ)的開(kāi)關(guān)鎖控制權(quán)限列表中,所述開(kāi)關(guān)鎖控制權(quán)限列表中記錄有具有開(kāi)關(guān)鎖權(quán)限的鑰匙端的公鑰;當(dāng)判定所述鑰匙端的公鑰在所述開(kāi)關(guān)鎖控制權(quán)限列表中時(shí),執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)關(guān)操作??梢?jiàn),可以通過(guò)鑰匙端將標(biāo)識(shí)鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求發(fā)送至鎖端,所述開(kāi)鎖/關(guān)鎖請(qǐng)求是利用鑰匙端公鑰對(duì)應(yīng)的私鑰進(jìn)行簽名后的請(qǐng)求。鎖端接收鑰匙端發(fā)送的鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求,并根據(jù)所述鑰匙端的公鑰對(duì)所述開(kāi)鎖/關(guān)鎖請(qǐng)求進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后,鎖端判斷鑰匙端的公鑰是否在本地存儲(chǔ)的開(kāi)關(guān)鎖控制權(quán)限列表中,所述開(kāi)關(guān)鎖控制權(quán)限列表中記錄有具有開(kāi)關(guān)鎖權(quán)限的鑰匙端的公鑰;當(dāng)鎖端判定所述鑰匙端的公鑰在所述開(kāi)關(guān)鎖控制權(quán)限列表中時(shí),鎖端執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)關(guān)操作。在一個(gè)可選的實(shí)現(xiàn)方式中,鑰匙端可以通過(guò)Telehash協(xié)議的方式將鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求發(fā)送至鎖端,從而不需要額外的硬件支持,降低了成本。由上述實(shí)施例可見(jiàn),通過(guò)私鑰簽名、公鑰驗(yàn)簽的方式驗(yàn)證開(kāi)鎖/關(guān)鎖請(qǐng)求的來(lái)源方,從而提高了來(lái)源方的可靠性,同時(shí),通過(guò)判斷鑰匙端的公鑰是否在開(kāi)關(guān)鎖控制權(quán)限列表中,從而實(shí)現(xiàn)有權(quán)限的鑰匙端才能對(duì)鎖進(jìn)行開(kāi)關(guān)操作。在另一個(gè)可選的實(shí)現(xiàn)方式中,新固件為預(yù)設(shè)時(shí)間段內(nèi)接收到預(yù)設(shè)個(gè)數(shù)的開(kāi)鎖/關(guān)鎖請(qǐng)求時(shí)執(zhí)行相應(yīng)的開(kāi)鎖操作/關(guān)鎖操作的固件??梢?jiàn),該實(shí)施例限定預(yù)設(shè)時(shí)間段內(nèi)接收到預(yù)設(shè)個(gè)數(shù)的開(kāi)鎖/關(guān)鎖請(qǐng)求時(shí)才能執(zhí)行相應(yīng)的開(kāi)鎖操作/關(guān)鎖操作,從而提高了開(kāi)鎖操作/關(guān)鎖操作的難度,針對(duì)利用鎖封存一些比較重要的文件或物件時(shí)可以采用該控制邏輯。例如,新固件為具有以下邏輯的固件:接收鑰匙端發(fā)送的鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求,所述開(kāi)鎖/關(guān)鎖請(qǐng)求是利用鑰匙端公鑰對(duì)應(yīng)的私鑰進(jìn)行簽名后的請(qǐng)求。當(dāng)預(yù)設(shè)時(shí)間段內(nèi)接收到的開(kāi)鎖/關(guān)鎖請(qǐng)求的個(gè)數(shù)大于或等于預(yù)設(shè)個(gè)數(shù)、且根據(jù)所述鑰匙端的公鑰對(duì)所述開(kāi)鎖/關(guān)鎖請(qǐng)求進(jìn)行驗(yàn)簽通過(guò),則執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)鎖操作/關(guān)鎖操作,否則不執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)鎖操作/關(guān)鎖操作。又如,新固件為具有以下邏輯的固件:接收鑰匙端發(fā)送的鑰匙端的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求,所述開(kāi)鎖/關(guān)鎖請(qǐng)求是利用鑰匙端公鑰對(duì)應(yīng)的私鑰進(jìn)行簽名后的請(qǐng)求。當(dāng)預(yù)設(shè)時(shí)間段內(nèi)接收到的開(kāi)鎖/關(guān)鎖請(qǐng)求的個(gè)數(shù)大于或等于預(yù)設(shè)個(gè)數(shù)、且根據(jù)所述鑰匙端的公鑰對(duì)所述開(kāi)鎖/關(guān)鎖請(qǐng)求進(jìn)行驗(yàn)簽通過(guò)、且各鑰匙端的公鑰均在開(kāi)關(guān)鎖控制權(quán)限列表中,則執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)鎖操作/關(guān)鎖操作,否則不執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)鎖操作/關(guān)鎖操作。針對(duì)新固件,可以是鑰匙端開(kāi)發(fā)的固件,例如鑰匙端開(kāi)發(fā)的固件,或鎖開(kāi)發(fā)商開(kāi)發(fā)的固件。在一個(gè)可選的實(shí)現(xiàn)方式中,鑰匙端利用公鑰對(duì)應(yīng)的私鑰對(duì)新固件進(jìn)行簽名,獲得固件簽名信息,并將所述固件簽名信息發(fā)布至比特流網(wǎng)絡(luò)。其中,比特流(BitTorrent)是一種點(diǎn)對(duì)點(diǎn)內(nèi)容分發(fā)協(xié)議,它采用高效的軟件分發(fā)系統(tǒng)和點(diǎn)對(duì)點(diǎn)技術(shù)共享大體積文件。可見(jiàn),由于BitTorrent是去中心化的網(wǎng)絡(luò),通過(guò)BitTorrent存儲(chǔ)固件,簽名信息,實(shí)現(xiàn)智能鎖無(wú)需中心化服務(wù)器,降低了成本。以上實(shí)施方式中的各種技術(shù)特征可以任意進(jìn)行組合,只要特征之間的組合不存在沖突或矛盾,但是限于篇幅,未進(jìn)行一一描述,因此上述實(shí)施方式中的各種技術(shù)特征的任意進(jìn)行組合也屬于本說(shuō)明書(shū)申請(qǐng)的范圍。以下列舉其中一個(gè)組合進(jìn)行說(shuō)明,如圖3所示,圖3為本申請(qǐng)根據(jù)一示例性實(shí)施例示出的另一種智能鎖的控制方法的時(shí)序圖。在該時(shí)序圖中,包括以下步驟:持有萬(wàn)能鑰匙的開(kāi)發(fā)商開(kāi)發(fā)新固件,并利用私鑰對(duì)新固件進(jìn)行簽名獲得固件簽名信息,將固件簽名信息發(fā)布至BitTorrent網(wǎng)絡(luò)上。其中,私鑰是已公布的鑰匙端的公鑰對(duì)應(yīng)的私鑰??梢岳斫獾氖?,具有上傳固件權(quán)限的非開(kāi)發(fā)商也可以上傳固件,在此不作限定。BitTorrent網(wǎng)絡(luò)發(fā)布成功后,向鑰匙端返回信息發(fā)布成功的發(fā)布結(jié)果。鑰匙端利用公鑰對(duì)應(yīng)的私鑰對(duì)固件更新信息進(jìn)行簽名獲得控制簽名信息,并將攜帶公鑰和控制簽名信息的交易信息上傳至基于塊鏈的網(wǎng)絡(luò)系統(tǒng)。其中,固件更新信息包括新固件的地址信息?;趬K鏈的網(wǎng)絡(luò)系統(tǒng)進(jìn)行相應(yīng)的邏輯處理后,將交易信息通知至鎖端。當(dāng)鑰匙端的公鑰在本地存儲(chǔ)的控制權(quán)限列表中時(shí),鎖端根據(jù)鑰匙端的公鑰對(duì)控制簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得固件更新信息,根據(jù)新固件的地址信息從BitTorrent上下載固件簽名信息。鎖端獲得固件簽名信息后,根據(jù)鑰匙端的公鑰對(duì)固件簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得新固件,根據(jù)所述新固件進(jìn)行固件更新。當(dāng)所述鑰匙端的公鑰不在本地存儲(chǔ)的控制權(quán)限列表中時(shí),忽略此次交易信息。與本申請(qǐng)智能鎖的控制方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了智能鎖的控制裝置及智能鎖的實(shí)施例。本申請(qǐng)智能鎖的控制裝置的實(shí)施例可以應(yīng)用在智能鎖上,其中,裝置實(shí)施例可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過(guò)其所在智能鎖的處理器410將非易失性存儲(chǔ)器420中對(duì)應(yīng)的計(jì)算機(jī)程序信息讀取到內(nèi)存430中運(yùn)行形成的。從硬件層面而言,如圖4所示,為本申請(qǐng)智能鎖的控制裝置所在智能鎖的一種硬件結(jié)構(gòu)圖,除了圖4所示的處理器410、內(nèi)存430、網(wǎng)絡(luò)接口440、以及非易失性存儲(chǔ)器420之外,實(shí)施例中裝置所在的智能鎖通常根據(jù)該設(shè)備的實(shí)際功能,還可以包括其他硬件,圖4中不再一一示出。參見(jiàn)圖5,為本申請(qǐng)智能鎖的控制裝置的一個(gè)實(shí)施例框圖:該裝置包括:鑰匙模塊510和鎖模塊520。所述鑰匙模塊510,用于將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述控制信息是對(duì)鎖模塊520進(jìn)行控制的信息,所述交易信息中包括標(biāo)識(shí)鑰匙模塊的公鑰。所述鎖模塊520,用于接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息,根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。在一個(gè)可選的實(shí)現(xiàn)方式中,所述鑰匙模塊510,用于利用公鑰對(duì)應(yīng)的私鑰對(duì)控制信息進(jìn)行簽名獲得控制簽名信息,并將攜帶所述控制簽名信息和所述公鑰的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述公鑰用于標(biāo)識(shí)鑰匙模塊510。所述鎖模塊520,用于根據(jù)所述公鑰對(duì)所述控制簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得所述控制信息,并根據(jù)所述公鑰、所述控制信息和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。在一個(gè)可選的實(shí)現(xiàn)方式中,所述鑰匙模塊510為第一鑰匙模塊,所述控制信息為所述第一鑰匙模塊向第二鑰匙模塊進(jìn)行授權(quán)/取消授權(quán)的權(quán)限控制信息,所述權(quán)限控制信息包括所述第二鑰匙模塊的公鑰,所述控制權(quán)限列表中記錄有具有授權(quán)和/或取消授權(quán)權(quán)限的鑰匙模塊的公鑰。所述鎖模塊520,用于確定第一鑰匙模塊的公鑰在所述控制權(quán)限列表中時(shí),根據(jù)所述權(quán)限控制信息授予第二鑰匙模塊指定操作權(quán)限或取消第二鑰匙模塊的指定操作權(quán)限。在一個(gè)可選的實(shí)現(xiàn)方式中,所述控制信息為固件更新信息,所述固件為運(yùn)行在鎖模塊中的程序集合,所述固件更新指令包括新固件的地址信息,本地存儲(chǔ)的控制權(quán)限列表中記錄有具有固件更新權(quán)限的鑰匙模塊的公鑰。所述鎖模塊520,用于確定鑰匙模塊510的公鑰在所述控制權(quán)限列表中時(shí),根據(jù)所述新固件的地址信息下載固件簽名信息,所述固件簽名信息是鑰匙模塊510利用所述公鑰對(duì)應(yīng)的私鑰對(duì)新固件進(jìn)行簽名后的信息;根據(jù)所述公鑰對(duì)所述固件簽名信息進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后獲得新固件,并根據(jù)所述新固件進(jìn)行固件更新。在一個(gè)可選的實(shí)現(xiàn)方式中,所述新固件為預(yù)設(shè)時(shí)間段內(nèi)接收到預(yù)設(shè)個(gè)數(shù)的開(kāi)鎖/關(guān)鎖請(qǐng)求時(shí)執(zhí)行相應(yīng)的開(kāi)鎖操作/關(guān)鎖操作的固件。在一個(gè)可選的實(shí)現(xiàn)方式中,所述鑰匙模塊510,還用于:利用所述公鑰對(duì)應(yīng)的私鑰對(duì)新固件進(jìn)行簽名,獲得固件簽名信息,并將所述固件簽名信息發(fā)布至比特流網(wǎng)絡(luò)。在一個(gè)可選的實(shí)現(xiàn)方式中,所述鑰匙模塊510還用于:將鑰匙模塊510的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求發(fā)送至鎖模塊520,所述開(kāi)鎖/關(guān)鎖請(qǐng)求是利用鑰匙模塊510的公鑰對(duì)應(yīng)的私鑰進(jìn)行簽名后的請(qǐng)求。所述鎖模塊520,還用于接收鑰匙模塊510發(fā)送的鑰匙模塊510的公鑰和開(kāi)鎖/關(guān)鎖請(qǐng)求,并根據(jù)所述鑰匙模塊510的公鑰對(duì)所述開(kāi)鎖/關(guān)鎖請(qǐng)求進(jìn)行驗(yàn)簽,驗(yàn)簽通過(guò)后,判斷鑰匙模塊510的公鑰是否在本地存儲(chǔ)的開(kāi)關(guān)鎖控制權(quán)限列表中,所述開(kāi)關(guān)鎖控制權(quán)限列表中記錄有具有開(kāi)關(guān)鎖權(quán)限的鑰匙模塊的公鑰;當(dāng)判定所述鑰匙模塊510的公鑰在所述開(kāi)關(guān)鎖控制權(quán)限列表中時(shí),執(zhí)行所述開(kāi)鎖/關(guān)鎖請(qǐng)求對(duì)應(yīng)的開(kāi)關(guān)操作。基于此,本申請(qǐng)還提供一種智能鎖,所述智能鎖包括鑰匙設(shè)備和鎖設(shè)備。鑰匙設(shè)備將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,所述控制信息是對(duì)鎖設(shè)備進(jìn)行控制的信息,所述交易信息中包括標(biāo)識(shí)鑰匙設(shè)備的公鑰。鎖設(shè)備接收所述網(wǎng)絡(luò)系統(tǒng)發(fā)送的所述交易信息,并根據(jù)所述交易信息中的公鑰和本地存儲(chǔ)的控制權(quán)限列表確定是否執(zhí)行所述控制信息對(duì)應(yīng)的操作。上述裝置中各個(gè)模塊的功能和作用的實(shí)現(xiàn)過(guò)程具體詳見(jiàn)上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過(guò)程,在此不再贅述。對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的模塊可以是或者也可以不是物理上分開(kāi)的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)模塊上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本申請(qǐng)方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。由上述實(shí)施例可見(jiàn),通過(guò)鑰匙端將攜帶有控制信息的交易信息發(fā)送至基于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)中,實(shí)現(xiàn)通過(guò)區(qū)塊鏈傳輸鑰匙端發(fā)給鎖端的控制信息,鎖端只會(huì)信任塊鏈上的控制信息,并根據(jù)此控制信息進(jìn)行相應(yīng)的操作。由于區(qū)塊鏈具有不可篡改的特征,則能保證鎖端接收到的信息是鑰匙端發(fā)送的未經(jīng)過(guò)修改的信息,從而保證信息的可靠性,避免中心化服務(wù)修改鑰匙端發(fā)送的信息給用戶造成的損失,提高了用戶對(duì)智能鎖的可信任性。另外,用戶無(wú)需信任任何一個(gè)中心化組織,避免了中心化服務(wù)維護(hù)成本高的問(wèn)題。本領(lǐng)域技術(shù)人員在考慮說(shuō)明書(shū)及實(shí)踐這里申請(qǐng)的發(fā)明后,將容易想到本申請(qǐng)的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本申請(qǐng)的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本申請(qǐng)的一般性原理并包括本申請(qǐng)未申請(qǐng)的本
技術(shù)領(lǐng)域:
:中的公知常識(shí)或慣用技術(shù)手段。說(shuō)明書(shū)和實(shí)施例僅被視為示例性的,本申請(qǐng)的真正范圍和精神由下面的權(quán)利要求指出。應(yīng)當(dāng)理解的是,本申請(qǐng)并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本申請(qǐng)的范圍僅由所附的權(quán)利要求來(lái)限制。當(dāng)前第1頁(yè)1 2 3 當(dāng)前第1頁(yè)1 2 3