控制閘機開啟的方法、裝置及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種控制閘機開啟的方法、裝置及系統(tǒng),該方法中,終端將服務器生成的動態(tài)密鑰轉發(fā)給閘機進而發(fā)送給主機,并且服務器將生成的動態(tài)密鑰存儲在服務器的緩存裝置中,然后利用主機比較先后經終端和閘機轉發(fā)給主機的動態(tài)密鑰和服務器的緩存裝置中存儲的動態(tài)密鑰是否相同,并且比較閘機的標識是否位于終端的標識列表中,進而實現開啟閘機。可以避免用戶忘記帶門禁卡或是不愿帶門禁卡帶來的不便。
【專利說明】
控制閘機開啟的方法、裝置及系統(tǒng)
技術領域
[0001] 本發(fā)明涉及安檢技術領域,具體地,涉及一種控制閘機開啟的方法、裝置及系統(tǒng)。
【背景技術】
[0002] 目前,考慮到小區(qū)的安全性,在小區(qū)的門口都設置有閘機,人們可以通過刷門禁卡 進入小區(qū)。如果人們想要進入小區(qū),則人們在通過閘機時,將門禁卡放置在閘機的感應區(qū)域 上,閘機的感應區(qū)域采集門禁卡中存儲的信息并與門禁卡中預先存儲的信息進行對比,如 果兩者匹配,則驗證通過,閘機便會打開,人們就可以進入小區(qū)。
[0003] 然而,隨著人們的生活中的所需要攜帶的卡越來越多,難免會出現人們忘記帶門 禁卡或者不愿意帶卡的情況,在這種情況下,人們無法方便地進入小區(qū)??梢?,門禁卡在一 定程度上會給人們的生活帶來不便或困擾。
【發(fā)明內容】
[0004] 本發(fā)明的目的是提供一種控制閘機開啟的方法、裝置及系統(tǒng),該方法、裝置及系統(tǒng) 可以避免用戶忘記帶門禁卡或是不愿帶門禁卡帶來的不便。
[0005] 為了實現上述目的,本發(fā)明第一方面提供一種控制閘機開啟的方法,所述方法包 括:
[0006] 獲得第一閘機的標識和第一動態(tài)密鑰,所述第一動態(tài)密鑰為所述第一閘機接收到 的經由終端轉發(fā)的動態(tài)密鑰,且所述第一動態(tài)密鑰是所述終端從服務器中獲得的;
[0007] 獲得第二動態(tài)密鑰和所述終端的標識列表,所述第二動態(tài)密鑰為服務器生成的動 態(tài)密鑰,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識;
[0008] 在所述第一閘機的標識位于所述標識列表中,且所述第一動態(tài)密鑰與所述第二動 態(tài)密鑰相同時,向所述第一閘機發(fā)送控制消息,所述控制消息用于控制所述第一閘機開啟。
[0009] 可選地,所述方法還包括:
[0010] 檢測所述服務器是否處于正常工作狀態(tài);
[0011] 在所述服務器處于非正常工作狀態(tài)時,獲得第二閘機的標識和第一靜態(tài)密鑰,所 述第一靜態(tài)密鑰為所述第一閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰;
[0012] 獲得所述終端的靜態(tài)密鑰列表和所述終端的標識列表,所述標識列表包含為所述 終端的用戶設置的有進入權限的閘機的標識,所述靜態(tài)密鑰列表包含的靜態(tài)密鑰與所述標 識列表包含的標識 對應;
[0013] 在所述第一標識位于所述標識列表中,且所述第一靜態(tài)密鑰位于所述靜態(tài)密鑰列 表中時,向所述第二閘機發(fā)送控制消息,所述控制消息用于控制所述第二閘機開啟。
[0014] 可選地,在所述向所述第一閘機發(fā)送控制消息之后,所述方法還包括:
[0015] 創(chuàng)建所述終端的靜態(tài)密鑰列表,所述終端的靜態(tài)密鑰列表包含的與所述第一閘機 的標識對應的靜態(tài)密鑰為所述第二動態(tài)密鑰;
[0016] 將所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0017] 可選地,在所述向所述第一閘機發(fā)送控制消息之后,所述方法還包括:
[0018] 將所述終端的靜態(tài)密鑰列表中與所述第一閘機的標識對應的靜態(tài)密鑰更新為所 述第二動態(tài)密鑰,所述靜態(tài)密鑰列表包含的靜態(tài)密鑰與所述終端的標識列表包含的標識一 一對應,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識;
[0019] 將更新后的所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0020] 本發(fā)明第二方面提供一種控制閘機開啟的方法,所述方法包括:
[0021] 接收終端發(fā)送的登錄請求,所述登錄請求攜帶所述終端的標識;
[0022] 確定所述終端的標識列表,所述標識列表包含為所述終端的用戶設置的有進入權 限的閘機的標識;
[0023]接收所述終端發(fā)送的密鑰請求;
[0024]為所述終端生成動態(tài)密鑰;
[0025] 將所述標識列表和所述動態(tài)密鑰發(fā)送給主機,并將所述動態(tài)密鑰發(fā)送給所述終 端,所述標識列表和所述動態(tài)密鑰用于供所述主機判斷是否控制閘機開啟。
[0026] 本發(fā)明第三方面提供一種控制閘機開啟的裝置,所述裝置包括:
[0027] 第一獲得模塊,用于獲得第一閘機的標識和第一動態(tài)密鑰,所述第一動態(tài)密鑰為 所述第一閘機接收到的經由終端轉發(fā)的動態(tài)密鑰,且所述第一動態(tài)密鑰是所述終端從服務 器中獲得的;
[0028] 第二獲得模塊,用于獲得第二動態(tài)密鑰和所述終端的標識列表,所述第二動態(tài)密 鑰為服務器生成的動態(tài)密鑰,所述標識列表包含為所述終端的用戶設置的有進入權限的閘 機的標識;
[0029] 第一發(fā)送模塊,用于在所述第一閘機的標識位于所述標識列表中,且所述第一動 態(tài)密鑰與所述第二動態(tài)密鑰相同時,向所述第一閘機發(fā)送控制消息,所述控制消息用于控 制所述第一閘機開啟。
[0030] 可選地,所述裝置還包括:
[0031] 檢測模塊,用于檢測所述服務器是否處于正常工作狀態(tài);
[0032] 第三獲得模塊,用于在所述服務器處于非正常工作狀態(tài)時,獲得第二閘機的標識 和第一靜態(tài)密鑰,所述第一靜態(tài)密鑰為所述第一閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰;
[0033] 第四獲得模塊,用于獲得所述終端的靜態(tài)密鑰列表和所述終端的標識列表,所述 標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識,所述靜態(tài)密鑰列表包含 的靜態(tài)密鑰與所述標識列表包含的標識一一對應;
[0034] 第二發(fā)送模塊,用于在所述第一標識位于所述標識列表中,且所述第一靜態(tài)密鑰 位于所述靜態(tài)密鑰列表中時,向所述第二閘機發(fā)送控制消息,所述控制消息用于控制所述 第二閘機開啟。
[0035] 可選地,所述裝置還包括:
[0036] 創(chuàng)建模塊,用于在所述向所述第一閘機發(fā)送控制消息之后,創(chuàng)建所述終端的靜態(tài) 密鑰列表,所述終端的靜態(tài)密鑰列表包含的與所述第一閘機的標識對應的靜態(tài)密鑰為所述 第二動態(tài)密鑰;
[0037] 第三發(fā)送模塊,用于將所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0038] 可選地,所述裝置還包括:
[0039] 更新模塊,用于在所述向所述第一閘機發(fā)送控制消息之后,將所述終端的靜態(tài)密 鑰列表中與所述第一閘機的標識對應的靜態(tài)密鑰更新為所述第二動態(tài)密鑰,所述靜態(tài)密鑰 列表包含的靜態(tài)密鑰與所述終端的標識列表包含的標識 對應,所述標識列表包含為所 述終端的用戶設置的有進入權限的閘機的標識;
[0040] 第四發(fā)送模塊,用于將更新后的所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0041] 本發(fā)明第四方面提供一種控制閘機開啟的裝置,所述裝置包括:
[0042] 第一接收模塊,用于接收終端發(fā)送的登錄請求,所述登錄請求攜帶所述終端的標 識;
[0043] 確定模塊,用于確定所述終端的標識列表,所述標識列表包含為所述終端的用戶 設置的有進入權限的閘機的標識;
[0044] 第二接收模塊,用于接收所述終端發(fā)送的密鑰請求;
[0045] 生成模塊,用于為所述終端生成動態(tài)密鑰;
[0046] 發(fā)送模塊,用于將所述標識列表和所述動態(tài)密鑰發(fā)送給主機,并將所述動態(tài)密鑰 發(fā)送給所述終端,所述標識列表和所述動態(tài)密鑰用于供所述主機判斷是否控制閘機開啟。
[0047] 本發(fā)明第五方面提供一種控制閘機開啟的系統(tǒng),所述系統(tǒng)包括:主機、服務器、閘 機和終端;
[0048] 所述主機包括第三方面所述的用于控制閘機開啟的裝置;
[0049] 所述服務器包括第四方面所述的用于控制閘機開啟的裝置;
[0050] 所述閘機內設置有閘機控制器,所述閘機控制器用于控制所述閘機的開啟或關 閉;
[0051 ]所述終端用于從所述服務器中獲得密鑰并轉發(fā)給所述閘機;
[0052]其中,所述閘機與所述主機和所述終端均連接,所述終端與所述服務器連接,所述 主機與所述服務器連接。
[0053]通過上述技術方案,終端將服務器生成的動態(tài)密鑰轉發(fā)給閘機進而發(fā)送給主機, 并且服務器將生成的動態(tài)密鑰存儲在服務器的緩存裝置中,然后利用主機比較先后經終端 和閘機轉發(fā)給主機的動態(tài)密鑰和服務器的緩存裝置中存儲的動態(tài)密鑰是否相同,并且比較 閘機的標識是否位于終端的標識列表中,進而實現開啟閘機??梢员苊庥脩敉泿чT禁卡 或是不愿帶門禁卡帶來的不便。
[0054] 本發(fā)明的其他特征和優(yōu)點將在隨后的【具體實施方式】部分予以詳細說明。
【附圖說明】
[0055] 附圖是用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與下面的具 體實施方式一起用于解釋本發(fā)明,但并不構成對本發(fā)明的限制。在附圖中:
[0056] 圖1為本發(fā)明公開的控制閘機開啟的系統(tǒng)的示意圖;
[0057] 圖2為本發(fā)明公開的控制閘機開啟的系統(tǒng)中各個設備之間的交互過程的示意圖;
[0058] 圖3為本發(fā)明公開的控制閘機開啟的方法的流程圖;
[0059] 圖4為本發(fā)明公開的控制閘機開啟的方法的另一流程圖;
[0060] 圖5為本發(fā)明公開的控制閘機開啟的方法的又一流程圖;
[0061] 圖6為本發(fā)明公開的一種控制閘機開啟的裝置的示意圖;
[0062] 圖7為本發(fā)明公開的另一種控制閘機開啟的裝置的示意圖。
【具體實施方式】
[0063] 以下結合附圖對本發(fā)明的【具體實施方式】進行詳細說明。應當理解的是,此處所描 述的【具體實施方式】僅用于說明和解釋本發(fā)明,并不用于限制本發(fā)明。
[0064] 請參考圖1,圖1為本發(fā)明公開的控制閘機開啟的系統(tǒng)的示意圖,包括:111閘機、 112終端、113主機、114服務器。閘機與主機和終端均連接,終端與服務器連接,主機與服務 器連接。本發(fā)明公開的控制閘機開啟的系統(tǒng)中各個設備之間的連接可以是通過有線網絡連 接,也可以通過無線網絡連接,或者各個設備之間處于同一局域網中。閘機與主機之間的連 接還可以是串口通信,此時,要求閘機和主機內都設置有串口。
[0065] 下面對本發(fā)明公開的控制閘機開啟的系統(tǒng)中各個設備進行說明。
[0066] 1)閘機
[0067] 閘機內設置有閘機控制器,閘機控制器用于控制閘機的開啟或關閉,為確保小區(qū) 的安全,默認情況下,閘機是關閉的,在閘機接收到主機發(fā)送的用于控制閘機開啟的控制消 息之后,閘機控制器控制閘機開啟。閘機內還可以設置感應器,感應器用于采集來自于終端 的信號,感應器可以是光感應器。閘機內還可以設置條形碼解碼器、二維碼解碼器等。閘機 內還可以設置輸入裝置,輸入裝置供用戶輸入進入閘機所需的密碼。閘機內可以設置感應 器、條形碼解碼器、二維碼解碼器、輸入裝置中的一個或多個,本發(fā)明不做限定。
[0068]閘機具有的功能包括:
[0069] a)接收終端發(fā)送的密鑰。
[0070] b)向主機發(fā)送閘機自身的標識和接收到的由終端發(fā)送的密鑰。
[0071] 2)終端
[0072] 終端一方面連接閘機,另一方面連接服務器。終端可以是:智能手機、智能手環(huán)、智 能眼鏡、平板電腦等。終端具有的功能包括:
[0073] a)向服務器發(fā)送終端自身的標識。一種可能的實現方式是:終端上安裝客戶端,注 冊一個本發(fā)明公開的控制閘機開啟的系統(tǒng)的賬號,然后使用該賬號登錄服務器,如果終端 登錄成功,則服務器會獲得終端的標識。
[0074] b)向服務器密鑰請求,并接收服務器發(fā)送的密鑰應答,從密鑰應答中獲取密鑰。其 中,在服務器處于正常工作狀態(tài)時,終端獲取到的密鑰是服務器生成的動態(tài)密鑰,在服務器 處于非正常工作狀態(tài)時,終端獲取到的密鑰是存儲在服務器內的本地數據庫中的靜態(tài)密 鑰。
[0075] 一種可能的實現方式為:終端登錄服務器后,客戶端的顯示屏上會顯示"發(fā)送密鑰 請求"的虛擬按鍵,按下"發(fā)送密鑰請求"的虛擬按鍵,即可實現向服務器發(fā)送密鑰請求。當 然,"發(fā)送密鑰請求"虛擬按鍵也可以替換為在終端內設置"發(fā)送密鑰請求"的物理按鍵。
[0076] c)根據獲取到的密鑰生成0ID信號、條形碼、二維碼、密碼等。在閘機內設置的感應 器是光感應器時,終端根據獲取到的密鑰生成0ID信號;在閘機內設置有條形碼解碼器或二 維碼解碼器時,終端根據獲取到的密鑰生成條形碼或二維碼;在閘機內設置有輸入裝置時, 終端根據獲取到的密鑰生成密碼并顯示在終端的顯示屏上。
[0077] d)向閘機轉發(fā)終端獲取的密鑰。如果用戶想要進入小區(qū),需要閘機開啟,則用戶將 終端靠近閘機內設置的感應器,即可實現向閘機轉發(fā)終端獲取的密鑰。在閘機內設置的感 應器為光感應器時,終端將生成的OID信號靠近光感應器,實現向閘機轉發(fā)終端獲取的密 鑰;在閘機內設置的感應器為條形碼解碼器或二維碼解碼器時,終端將生成條形碼或二維 碼靠近條形碼解碼器,實現向閘機轉發(fā)終端獲取的密鑰;在閘機內設置有輸入裝置時,需要 用戶通過輸入裝置輸入終端的顯示屏上顯示的密碼,實現向閘機轉發(fā)終端獲取的密鑰。 [0078] 3)服務器
[0079] 服務器內設置有本地數據庫,本地數據庫中存儲有終端、閘機、靜態(tài)密鑰之間的對 應關系。服務器內還可以設置緩存裝置,緩存裝置中存儲有終端、服務器生成的動態(tài)密鑰之 間的對應關系。服務器可以是筆記本電腦、平板電腦等。
[0080] 考慮到持有終端的用戶可能具有進入權限的閘機的數量是一個或多個,為終端的 用戶設置的有進入權限的閘機的標識組成終端的標識列表。終端的標識列表上的每個閘機 對應一個靜態(tài)密鑰,進而組成終端的靜態(tài)密鑰列表。請參考表1,表1為終端、閘機、靜態(tài)密鑰 之間的對應關系的示意圖。
[0081 ]表1終端、閘機、靜態(tài)密鑰之間的對應關系的示意圖
[0083]服務器具有的功能包括:
[0084] a)確定終端的標識列表和終端的靜態(tài)密鑰列表。在服務器的本地數據庫中預先存 儲有可能需要進入閘機管轄的小區(qū)的各個終端的標識,以及為各個終端的用戶設置的進入 權限或禁止進入的閘機的標識,還有為各個終端的用戶設置的進入權限的閘機對應的靜態(tài) 密鑰。終端的標識列表和終端的靜態(tài)密鑰列表是在終端向服務器發(fā)送終端自身的標識之 后,服務器根據終端的標識從本地數據庫中提取到的。
[0085] b)接收終端發(fā)送的密鑰請求,并在處于正常工作的狀態(tài)下生成動態(tài)密鑰,然后一 方面從終端發(fā)送的密鑰請求獲取終端的標識,將生成的動態(tài)密鑰以及獲取的終端的標識存 儲在服務器的緩存裝置中;另一方面將生成的動態(tài)密鑰發(fā)送給終端,并且根據獲取的終端 的標識從本地數據庫中提取終端的標識列表,將已存儲的由服務器生成的動態(tài)密鑰以及由 服務器提取的終端的標識列表發(fā)送給主機。
[0086] c)接收終端發(fā)送的密鑰請求,并在處于非正常工作的狀態(tài)下,一方面從終端發(fā)送 的密鑰請求獲取終端的標識,根據終端的標識從本地數據庫中獲取終端的靜態(tài)密鑰列表和 終端的標識列表;另一方面將獲取的靜態(tài)密鑰列表中的一個靜態(tài)密鑰發(fā)送給終端,并且將 由服務器提取的終端的標識列表和終端的靜態(tài)密鑰列表發(fā)送給主機。
[0087] 4)主機
[0088] 主機用于執(zhí)行本發(fā)明公開的控制閘機開啟的方法。由主機判斷持有終端的用戶是 否可以進入閘機所管轄的小區(qū)。主機可以是:筆記本電腦、平板電腦等。主機具有的功能包 括:
[0089] a)接收閘機發(fā)送的閘機自身的標識和閘機接收到的經由終端轉發(fā)的密鑰。
[0090] b)接收服務器發(fā)送的由服務器生成的動態(tài)密鑰以及由服務器提取的終端的標識 列表,或者接收由服務器提取的終端的標識列表和終端的靜態(tài)密鑰列表。
[0091] c)檢測服務器是否處于正常工作狀態(tài),在服務器處于正常工作狀態(tài)下,判斷閘機 自身的標識是否位于終端的標識列表中,且判斷閘機接收到的經由終端轉發(fā)的動態(tài)密鑰與 服務器發(fā)送的由服務器生成的動態(tài)密鑰是否相同;在服務器處于非正常工作狀態(tài)下,判斷 閘機自身的標識是否位于終端的標識列表中,且判斷閘機接收到的經由終端轉發(fā)的靜態(tài)密 鑰位于終端的靜態(tài)密鑰列表中。
[0092] d)在閘機自身的標識位于終端的標識列表中,且閘機接收到的經由終端轉發(fā)的動 態(tài)密鑰與服務器發(fā)送的由服務器生成的動態(tài)密鑰相同時,向閘機發(fā)送控制消息;或在閘機 自身的標識位于終端的標識列表中,且閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰位于終端的 靜態(tài)密鑰列表中時,向閘機發(fā)送控制消息。其中,控制消息用于控制閘機開啟。
[0093] e)創(chuàng)建或更新終端的靜態(tài)密鑰列表。
[0094] 終端的靜態(tài)密鑰列表可以是服務器初始化服務器的本地數據庫的過程中設置的, 還可以是由主機創(chuàng)建的。在服務器處于正常工作狀態(tài)下,主機在向閘機發(fā)送控制消息之后, 將閘機自身的標識和閘機接收到的經由終端轉發(fā)的動態(tài)密鑰以及終端的標識添加到終端 的靜態(tài)密鑰列表中。然后將已創(chuàng)建的終端的靜態(tài)密鑰列表發(fā)送給服務器。
[0095] 主機還可以更新終端的靜態(tài)密鑰列表。在主機對終端的靜態(tài)密鑰列表進行更新 前,終端的靜態(tài)密鑰列表是服務器初始化服務器的本地數據庫的過程中設置的,在服務器 處于正常工作狀態(tài)下,主機在向閘機發(fā)送控制消息之后,根據閘機自身的標識和終端的標 識,從終端的靜態(tài)列表中提取出對應的靜態(tài)密鑰,然后將提取出的靜態(tài)密鑰更新為經由終 端轉發(fā)的動態(tài)密鑰或服務器生成的動態(tài)密鑰。然后將已更新的終端的靜態(tài)密鑰列表發(fā)送給 服務器。
[0096] 下面對本發(fā)明公開的控制閘機開啟的系統(tǒng)中各個設備之間的交互過程進行說明。
[0097] 請參考圖2,圖2為本發(fā)明公開的控制閘機開啟的系統(tǒng)中各個設備之間的交互過程 的示意圖。本發(fā)明公開的控制閘機開啟的系統(tǒng)中各個設備之間的交互過程包括以下步驟: [0098] 1、終端登錄服務器;
[0099] 2、服務器獲取終端的標識,并根據終端的標識獲取終端的標識列表;
[0100] 3、終端向服務器發(fā)送密鑰請求;
[0101] 4a、在服務器處于正常工作的狀態(tài)下,生成動態(tài)密鑰,并將終端的標識和服務器器 生成的動態(tài)密鑰存儲到服務器的緩存裝置中;
[0102] 4b、在服務器處于非正常工作的狀態(tài)下,服務器從本地數據庫中獲取靜態(tài)密鑰和 終端的靜態(tài)密鑰列表;
[0103] 5、服務器向終端發(fā)送密鑰應答,密鑰應答中的密鑰為在服務器處于正常工作的狀 態(tài)下由服務器生成的動態(tài)密鑰,或,在服務器處于非正常工作的狀態(tài)下,服務器從本地數據 庫中獲取的靜態(tài)密鑰;
[0104] 6、終端靠近閘機,將密鑰應答中的密鑰轉發(fā)給閘機;
[0105] 7、閘機將閘機自身的標識和密鑰應答中的密鑰發(fā)送給主機;
[0106] 8a、服務器將已存儲的由服務器生成的動態(tài)密鑰和由服務器獲取的終端的標識列 表發(fā)送給主機;
[0107] 8b、服務器將已獲取的靜態(tài)密鑰和已獲取的終端的靜態(tài)密鑰列表發(fā)送給主機;
[0108] 9a、主機判斷閘機自身的標識是否位于終端的標識列表中,且主機收到的動態(tài)密 鑰是否與服務器已存儲的由服務器生成的動態(tài)密鑰是否相同;
[0109] %、主機判斷閘機自身的標識是否位于終端的標識列表中,且主機收到的靜態(tài)密 鑰是否位于由服務器獲取的終端的靜態(tài)密鑰列表中;
[0110] 10A、在閘機自身的標識位于終端的標識列表中,且主機收到的動態(tài)密鑰與服務器 已存儲的由服務器生成的動態(tài)密鑰相同時,或,在閘機自身的標識位于終端的標識列表中, 且主機收到的靜態(tài)密鑰位于由服務器獲取的終端的靜態(tài)密鑰列表中時,主機向閘機發(fā)送控 制消息,控制消息用于控制閘機開啟;
[0111] 10B、在閘機自身的標識未位于終端的標識列表中,或主機收到的動態(tài)密鑰與服務 器已存儲的由服務器生成的動態(tài)密鑰不同時,或,在閘機自身的標識未位于終端的標識列 表中,或主機收到的靜態(tài)密鑰未位于由服務器獲取的終端的靜態(tài)密鑰列表中時,主機向閘 機發(fā)送保持關閉消息,保持關閉消息用于控制閘機保持關閉。
[0112] 下面從主機側對本發(fā)明公開的控制閘機開啟的方法進行說明。
[0113] 請參考圖3,圖3為本發(fā)明公開的控制閘機開啟的方法的流程圖。本發(fā)明公開的控 制閘機開啟的方法包括以下步驟。
[0114] 在步驟S31中,獲得第一閘機的標識和第一動態(tài)密鑰,所述第一動態(tài)密鑰為所述第 一閘機接收到的經由終端轉發(fā)的動態(tài)密鑰,且所述第一動態(tài)密鑰是所述終端從服務器中獲 得的;
[0115] 在步驟S32中,獲得第二動態(tài)密鑰和所述終端的標識列表,所述第二動態(tài)密鑰為服 務器生成的動態(tài)密鑰,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的標 識;
[0116] 在步驟S33中,在所述第一閘機的標識位于所述標識列表中,且所述第一動態(tài)密鑰 與所述第二動態(tài)密鑰相同時,向所述第一閘機發(fā)送控制消息,所述控制消息用于控制所述 第一閘機開啟。
[0117] 下面以閘機是第一閘機為例進行說明。
[0118] 首先,在步驟S31中,主機接收第一閘機發(fā)送的第一閘機自身的標識和第一閘機收 到的第一動態(tài)密鑰,第一動態(tài)密鑰是服務器生成的,服務器發(fā)送給終端,經終端轉發(fā)給第一 閘機的。
[0119] 然后,在步驟S32中,主機接收服務器發(fā)送的第二動態(tài)密鑰和終端的標識列表,第 二動態(tài)密鑰是服務器生成第一動態(tài)密鑰后將生成的第一動態(tài)密鑰存儲在服務器的緩存裝 置中的,前文已經說明,終端的標識列表是服務器從本地數據庫提取到的。
[0120] 最后,在步驟S33中,主機判斷第一閘機的標識是否位于終端的標識列表中,且第 一動態(tài)密鑰與第二動態(tài)密鑰是否相同,在第一閘機的標識位于終端的標識列表中,且第一 動態(tài)密鑰與第二動態(tài)密鑰相同時,向第一閘機發(fā)送控制消息,控制消息用于控制第一閘機 開啟。
[0121] 本發(fā)明公開的控制閘機開啟的方法中,終端將服務器生成的動態(tài)密鑰轉發(fā)給閘機 進而發(fā)送給主機,并且服務器將生成的動態(tài)密鑰存儲在服務器的緩存裝置中,然后利用主 機比較先后經終端和閘機轉發(fā)給主機的動態(tài)密鑰和服務器的緩存裝置中存儲的動態(tài)密鑰 是否相同,并且比較閘機的標識是否位于終端的標識列表中,進而實現開啟閘機??梢员苊?用戶忘記帶門禁卡或是不愿帶門禁卡帶來的不便。
[0122] 本發(fā)明公開的主機在執(zhí)行完步驟S33之后,還可以執(zhí)行以下步驟。
[0123] 創(chuàng)建所述終端的靜態(tài)密鑰列表,所述終端的靜態(tài)密鑰列表包含的與所述第一閘機 的標識對應的靜態(tài)密鑰為所述第二動態(tài)密鑰;
[0124] 將所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0125] 在前文中已經說明,終端的靜態(tài)密鑰列表可以是由主機創(chuàng)建的。主機在向第一閘 機發(fā)送控制消息之后,可以提取終端的標識、第二動態(tài)密鑰和第一閘機的標識,然后將第二 動態(tài)密鑰作為與第一閘機的標識對應的靜態(tài)密鑰。最后在終端的標識、第二動態(tài)密鑰和第 一閘機的標識之間建立對應關系,利用對應關系創(chuàng)建終端的靜態(tài)密鑰列表,并將創(chuàng)建的終 端的靜態(tài)密鑰列表發(fā)送給服務器。
[0126] 本發(fā)明公開的控制閘機開啟的方法中,將服務器生成的能夠開啟閘機的動態(tài)密鑰 作為終端的靜態(tài)密鑰,實現了更換終端的靜態(tài)密鑰,提高了本發(fā)明公開的控制閘機開啟的 方法的安全性。
[0127] 本發(fā)明公開的主機在執(zhí)行完步驟S33之后,還可以執(zhí)行以下步驟。
[0128] 將所述終端的靜態(tài)密鑰列表中與所述第一閘機的標識對應的靜態(tài)密鑰更新為所 述第二動態(tài)密鑰,所述靜態(tài)密鑰列表包含的靜態(tài)密鑰與所述終端的標識列表包含的標識一 一對應,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識;
[0129] 將更新后的所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0130] 在前文中已經說明,終端的靜態(tài)密鑰列表可以是服務器初始化服務器的本地數據 庫的過程中設置的。主機在向第一閘機發(fā)送控制消息之后,可以提取終端的靜態(tài)密鑰列表 中與第一閘機的標識對應的靜態(tài)密鑰,然后將提取的靜態(tài)密鑰更新為第二動態(tài)密鑰,形成 更新后的靜態(tài)密鑰列表,并將更新后的的終端的靜態(tài)密鑰列表發(fā)送給服務器。
[0131] 本發(fā)明公開的控制閘機開啟的方法中,將服務器生成的能夠開啟閘機的動態(tài)密鑰 作為終端的靜態(tài)密鑰,實現了更換終端的靜態(tài)密鑰,提高了本發(fā)明公開的控制閘機開啟的 方法的安全性。
[0132] 為提高本發(fā)明公開的控制閘機開啟的方法的可靠性,本發(fā)明公開的控制閘機開啟 的方法還包括以下步驟。請參考圖4,圖4為本發(fā)明公開的控制閘機開啟的方法的另一流程 圖。
[0133] 下面以閘機是第二閘機進行說明。
[0134] 在步驟S41中,檢測所述服務器是否處于正常工作狀態(tài)。
[0135] 在步驟S42中,在所述服務器處于非正常工作狀態(tài)時,獲得第二閘機的標識和第一 靜態(tài)密鑰,所述第一靜態(tài)密鑰為所述第一閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰。
[0136] 在步驟S43中,獲得所述終端的靜態(tài)密鑰列表和所述終端的標識列表,所述標識列 表包含為所述終端的用戶設置的有進入權限的閘機的標識,所述靜態(tài)密鑰列表包含的靜態(tài) 密鑰與所述標識列表包含的標識一一對應。
[0137] 在步驟S44中,在所述第一標識位于所述標識列表中,且所述第一靜態(tài)密鑰位于所 述靜態(tài)密鑰列表中時,控制所述第二閘機開啟。
[0138] 考慮到服務器有可能發(fā)生故障,所以在步驟S41中,主機檢測服務器是否處于正常 工作狀態(tài),如果服務器處于正常工作狀態(tài),則主機與服務器之間的通信是連續(xù)的;如果服務 器處于非正常工作狀態(tài),則主機與服務器之間的通信是中斷的。
[0139] 在步驟S42中,主機確定服務器處于非正常工作狀態(tài),則啟用服務器的本地數據 庫,主機接收第二閘機發(fā)送的第二閘機自身的標識和第二閘機收到的第一靜態(tài)密鑰,第一 靜態(tài)密鑰是從服務器的本地數據庫中提取的,服務器發(fā)送給終端,經終端轉發(fā)給第二閘機 的。
[0140]在步驟S43中,主機從服務器的本地數據庫中獲取終端的靜態(tài)密鑰列表和終端的 標識列表。
[0141 ]在步驟S44中,主機判斷第二閘機的標識是否位于終端的標識列表中,且第一靜態(tài) 密鑰是否位于終端的靜態(tài)密鑰列表中,在第二閘機的標識位于終端的標識列表中,且第一 靜態(tài)密鑰位于終端的靜態(tài)密鑰列表中時,向第二閘機發(fā)送控制消息,控制消息用于控制第 二閘機開啟。
[0142] 本發(fā)明公開的控制閘機開啟的方法中,在服務器處于非正常工作狀態(tài)時,可以利 用本地數據庫代替服務器,提高了本發(fā)明公開的控制閘機開啟的方法的可靠性。
[0143] 下面從服務器側對本發(fā)明公開的控制閘機開啟的方法進行說明。
[0144] 請參考圖5,圖5為本發(fā)明公開的控制閘機開啟的方法的又一流程圖。本發(fā)明公開 的管理密鑰的方法包括以下步驟。
[0145] 在步驟S51中,接收終端發(fā)送的登錄請求,所述登錄請求攜帶所述終端的標識。
[0146] 在步驟S52中,確定所述終端的標識列表,所述標識列表包含為所述終端的用戶設 置的有進入權限的閘機的標識。
[0147] 在步驟S53中,接收所述終端發(fā)送的密鑰請求。
[0148] 在步驟S54中,為所述終端生成動態(tài)密鑰。
[0149] 在步驟S55中,將所述標識列表和所述動態(tài)密鑰發(fā)送給主機,并將所述動態(tài)密鑰發(fā) 送給所述終端。
[0150] 在前文中已經說明,終端為了告知服務器終端自身的標識,可以首先在終端上安 裝客戶端,然后注冊,接著向服務器發(fā)送登錄請求,因此,服務器會接收到終端發(fā)送的登錄 請求,在終端登錄成功后,服務器會從登錄請求中獲取終端的標識,然后根據終端的標識確 定終端的標識列表,即確定具有哪些標識的閘機是為終端的用戶設置的有進入權限的。 [0151]此外,在前文中也已經說明,在持有終端的用戶想要進入閘機所管轄的小區(qū)時,會 使用終端向服務器發(fā)送密鑰請求,然后服務器生成動態(tài)密鑰。最后服務器將生成的動態(tài)密 鑰和終端的標識列表發(fā)送給主機,并將生成的動態(tài)密鑰發(fā)給終端,以便于主機判斷持有終 端的用戶是否可以進入閘機所管轄的小區(qū)。
[0152]基于同一發(fā)明構思,本發(fā)明還公開了一種控制閘機開啟的裝置。請參考圖6,圖6為 本發(fā)明公開的一種控制閘機開啟的裝置的示意圖。該裝置1〇〇包括:第一獲得模塊121、第二 獲得模塊122和第一發(fā)送模塊123。
[0153] 第一獲得模塊121,用于獲得第一閘機的標識和第一動態(tài)密鑰,所述第一動態(tài)密鑰 為所述第一閘機接收到的經由終端轉發(fā)的動態(tài)密鑰,且所述第一動態(tài)密鑰是所述終端從服 務器中獲得的;
[0154] 第二獲得模塊122,用于獲得第二動態(tài)密鑰和所述終端的標識列表,所述第二動態(tài) 密鑰為服務器生成的動態(tài)密鑰,所述標識列表包含為所述終端的用戶設置的有進入權限的 閘機的標識;
[0155] 第一發(fā)送模塊123,用于在所述第一閘機的標識位于所述標識列表中,且所述第一 動態(tài)密鑰與所述第二動態(tài)密鑰相同時,向所述第一閘機發(fā)送控制消息,所述控制消息用于 控制所述第一閘機開啟。
[0156] 可選地,所述裝置還包括:
[0157] 檢測模塊,用于檢測所述服務器是否處于正常工作狀態(tài);
[0158]第三獲得模塊,用于在所述服務器處于非正常工作狀態(tài)時,獲得第二閘機的標識 和第一靜態(tài)密鑰,所述第一靜態(tài)密鑰為所述第一閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰;
[0159] 第四獲得模塊,用于獲得所述終端的靜態(tài)密鑰列表和所述終端的標識列表,所述 標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識,所述靜態(tài)密鑰列表包含 的靜態(tài)密鑰與所述標識列表包含的標識一一對應;
[0160] 第二發(fā)送模塊,用于在所述第一標識位于所述標識列表中,且所述第一靜態(tài)密鑰 位于所述靜態(tài)密鑰列表中時,向所述第二閘機發(fā)送控制消息,所述控制消息用于控制所述 第二閘機開啟。
[0161] 可選地,所述裝置還包括:
[0162] 創(chuàng)建模塊,用于在所述向所述第一閘機發(fā)送控制消息之后,創(chuàng)建所述終端的靜態(tài) 密鑰列表,所述終端的靜態(tài)密鑰列表包含的與所述第一閘機的標識對應的靜態(tài)密鑰為所述 第二動態(tài)密鑰;
[0163] 第三發(fā)送模塊,用于將所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0164] 可選地,所述裝置還包括:
[0165] 更新模塊,用于在所述向所述第一閘機發(fā)送控制消息之后,將所述終端的靜態(tài)密 鑰列表中與所述第一閘機的標識對應的靜態(tài)密鑰更新為所述第二動態(tài)密鑰,所述靜態(tài)密鑰 列表包含的靜態(tài)密鑰與所述終端的標識列表包含的標識 對應,所述標識列表包含為所 述終端的用戶設置的有進入權限的閘機的標識;
[0166] 第四發(fā)送模塊,用于將更新后的所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。
[0167] 關于上述實施例中的裝置,其中各個模塊執(zhí)行操作的具體方式已經在有關該方法 的實施例中進行了詳細描述,此處將不做詳細闡述說明。
[0168] 基于同一發(fā)明構思,本發(fā)明還公開了另一種控制閘機開啟的裝置。請參考圖7,圖7 為本發(fā)明公開的另一種控制閘機開啟的裝置的示意圖。該裝置200包括:第一接收模塊221、 確定模塊222、第二接收模塊223、生成模塊224和發(fā)送模塊225。
[0169] 第一接收模塊221,用于接收終端發(fā)送的登錄請求,所述登錄請求攜帶所述終端的 標識;
[0170] 確定模塊222,用于確定所述終端的標識列表,所述標識列表包含為所述終端的用 戶設置的有進入權限的閘機的標識;
[0171] 第二接收模塊223,用于接收所述終端發(fā)送的密鑰請求;
[0172] 生成模塊224,用于為所述終端生成動態(tài)密鑰;
[0173] 發(fā)送模塊225,用于將所述標識列表和所述動態(tài)密鑰發(fā)送給主機,并將所述動態(tài)密 鑰發(fā)送給所述終端,所述標識列表和所述動態(tài)密鑰用于供所述主機判斷是否控制閘機開 啟。
[0174] 關于上述實施例中的裝置,其中各個模塊執(zhí)行操作的具體方式已經在有關該方法 的實施例中進行了詳細描述,此處將不做詳細闡述說明。
[0175] 基于同一發(fā)明構思,本發(fā)明還公開了另一種控制閘機開啟的系統(tǒng)。請參考圖1。圖1 中的主機包括圖6所示的用于控制閘機開啟的裝置;圖1中的服務器包括圖7所示的用于控 制閘機開啟的裝置;圖1中的閘機和終端請參考前文,在此就不再贅述。
[0176]以上結合附圖詳細描述了本發(fā)明的優(yōu)選實施方式,但是,本發(fā)明并不限于上述實 施方式中的具體細節(jié),在本發(fā)明的技術構思范圍內,可以對本發(fā)明的技術方案進行多種簡 單變型,這些簡單變型均屬于本發(fā)明的保護范圍。
[0177] 另外需要說明的是,在上述【具體實施方式】中所描述的各個具體技術特征,在不矛 盾的情況下,可以通過任何合適的方式進行組合,為了避免不必要的重復,本發(fā)明對各種可 能的組合方式不再另行說明。
[0178] 此外,本發(fā)明的各種不同的實施方式之間也可以進行任意組合,只要其不違背本 發(fā)明的思想,其同樣應當視為本發(fā)明所公開的內容。
【主權項】
1. 一種控制閘機開啟的方法,其特征在于,所述方法包括: 獲得第一閘機的標識和第一動態(tài)密鑰,所述第一動態(tài)密鑰為所述第一閘機接收到的經 由終端轉發(fā)的動態(tài)密鑰,且所述第一動態(tài)密鑰是所述終端從服務器中獲得的; 獲得第二動態(tài)密鑰和所述終端的標識列表,所述第二動態(tài)密鑰為服務器生成的動態(tài)密 鑰,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識; 在所述第一閘機的標識位于所述標識列表中,且所述第一動態(tài)密鑰與所述第二動態(tài)密 鑰相同時,向所述第一閘機發(fā)送控制消息,所述控制消息用于控制所述第一閘機開啟。2. 根據權利要求1所述的方法,其特征在于,所述方法還包括: 檢測所述服務器是否處于正常工作狀態(tài); 在所述服務器處于非正常工作狀態(tài)時,獲得第二閘機的標識和第一靜態(tài)密鑰,所述第 一靜態(tài)密鑰為所述第一閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰; 獲得所述終端的靜態(tài)密鑰列表和所述終端的標識列表,所述標識列表包含為所述終端 的用戶設置的有進入權限的閘機的標識,所述靜態(tài)密鑰列表包含的靜態(tài)密鑰與所述標識列 表包含的標識 對應; 在所述第一標識位于所述標識列表中,且所述第一靜態(tài)密鑰位于所述靜態(tài)密鑰列表中 時,向所述第二閘機發(fā)送控制消息,所述控制消息用于控制所述第二閘機開啟。3. 根據權利要求1所述的方法,其特征在于,在所述向所述第一閘機發(fā)送控制消息之 后,所述方法還包括: 創(chuàng)建所述終端的靜態(tài)密鑰列表,所述終端的靜態(tài)密鑰列表包含的與所述第一閘機的標 識對應的靜態(tài)密鑰為所述第二動態(tài)密鑰; 將所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。4. 根據權利要求1所述的方法,其特征在于,在所述向所述第一閘機發(fā)送控制消息之 后,所述方法還包括: 將所述終端的靜態(tài)密鑰列表中與所述第一閘機的標識對應的靜態(tài)密鑰更新為所述第 二動態(tài)密鑰,所述靜態(tài)密鑰列表包含的靜態(tài)密鑰與所述終端的標識列表包含的標識一一對 應,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的標識; 將更新后的所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。5. -種控制閘機開啟的方法,其特征在于,所述方法包括: 接收終端發(fā)送的登錄請求,所述登錄請求攜帶所述終端的標識; 確定所述終端的標識列表,所述標識列表包含為所述終端的用戶設置的有進入權限的 閘機的標識; 接收所述終端發(fā)送的密鑰請求; 為所述終端生成動態(tài)密鑰; 將所述標識列表和所述動態(tài)密鑰發(fā)送給主機,并將所述動態(tài)密鑰發(fā)送給所述終端,所 述標識列表和所述動態(tài)密鑰用于供所述主機判斷是否控制閘機開啟。6. -種控制閘機開啟的裝置,其特征在于,所述裝置包括: 第一獲得模塊,用于獲得第一閘機的標識和第一動態(tài)密鑰,所述第一動態(tài)密鑰為所述 第一閘機接收到的經由終端轉發(fā)的動態(tài)密鑰,且所述第一動態(tài)密鑰是所述終端從服務器中 獲得的; 第二獲得模塊,用于獲得第二動態(tài)密鑰和所述終端的標識列表,所述第二動態(tài)密鑰為 服務器生成的動態(tài)密鑰,所述標識列表包含為所述終端的用戶設置的有進入權限的閘機的 標識; 第一發(fā)送模塊,用于在所述第一閘機的標識位于所述標識列表中,且所述第一動態(tài)密 鑰與所述第二動態(tài)密鑰相同時,向所述第一閘機發(fā)送控制消息,所述控制消息用于控制所 述第一閘機開啟。7. 根據權利要求6所述的裝置,其特征在于,所述裝置還包括: 檢測模塊,用于檢測所述服務器是否處于正常工作狀態(tài); 第三獲得模塊,用于在所述服務器處于非正常工作狀態(tài)時,獲得第二閘機的標識和第 一靜態(tài)密鑰,所述第一靜態(tài)密鑰為所述第一閘機接收到的經由終端轉發(fā)的靜態(tài)密鑰; 第四獲得模塊,用于獲得所述終端的靜態(tài)密鑰列表和所述終端的標識列表,所述標識 列表包含為所述終端的用戶設置的有進入權限的閘機的標識,所述靜態(tài)密鑰列表包含的靜 態(tài)密鑰與所述標識列表包含的標識一一對應; 第二發(fā)送模塊,用于在所述第一標識位于所述標識列表中,且所述第一靜態(tài)密鑰位于 所述靜態(tài)密鑰列表中時,向所述第二閘機發(fā)送控制消息,所述控制消息用于控制所述第二 閘機開啟。8. 根據權利要求6所述的裝置,其特征在于,所述裝置還包括: 創(chuàng)建模塊,用于在所述向所述第一閘機發(fā)送控制消息之后,創(chuàng)建所述終端的靜態(tài)密鑰 列表,所述終端的靜態(tài)密鑰列表包含的與所述第一閘機的標識對應的靜態(tài)密鑰為所述第二 動態(tài)密鑰; 第三發(fā)送模塊,用于將所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。9. 根據權利要求6所述的裝置,其特征在于,所述裝置還包括: 更新模塊,用于在所述向所述第一閘機發(fā)送控制消息之后,將所述終端的靜態(tài)密鑰列 表中與所述第一閘機的標識對應的靜態(tài)密鑰更新為所述第二動態(tài)密鑰,所述靜態(tài)密鑰列表 包含的靜態(tài)密鑰與所述終端的標識列表包含的標識一一對應,所述標識列表包含為所述終 端的用戶設置的有進入權限的閘機的標識; 第四發(fā)送模塊,用于將更新后的所述終端的靜態(tài)密鑰列表發(fā)送給所述服務器。10. -種控制閘機開啟的裝置,其特征在于,所述裝置包括: 第一接收模塊,用于接收終端發(fā)送的登錄請求,所述登錄請求攜帶所述終端的標識; 確定模塊,用于確定所述終端的標識列表,所述標識列表包含為所述終端的用戶設置 的有進入權限的閘機的標識; 第二接收模塊,用于接收所述終端發(fā)送的密鑰請求; 生成模塊,用于為所述終端生成動態(tài)密鑰; 發(fā)送模塊,用于將所述標識列表和所述動態(tài)密鑰發(fā)送給主機,并將所述動態(tài)密鑰發(fā)送 給所述終端,所述標識列表和所述動態(tài)密鑰用于供所述主機判斷是否控制閘機開啟。11. 一種控制閘機開啟的系統(tǒng),其特征在于,所述系統(tǒng)包括:主機、服務器、閘機和終端; 所述主機包括權利要求6-9任一所述的用于控制閘機開啟的裝置; 所述服務器包括權利要求10所述的用于控制閘機開啟的裝置; 所述閘機內設置有閘機控制器,所述閘機控制器用于控制所述閘機的開啟或關閉; 所述終端用于從所述服務器中獲得密鑰并轉發(fā)給所述閘機; 其中,所述閘機與所述主機和所述終端均連接,所述終端與所述服務器連接,所述主機 與所述服務器連接。
【文檔編號】G07C9/00GK105894624SQ201610179261
【公開日】2016年8月24日
【申請日】2016年3月25日
【發(fā)明人】宋宇寧, 王松, 曹少山, 陶鋒, 范衛(wèi)營, 黃銳
【申請人】北京智達宏圖數據技術有限公司