專利名稱:密碼隨日期進行變化的動態密碼鎖系統的制作方法
技術領域:
本發明涉及一種密碼隨日期進行變化的動態密碼鎖系統,特別涉及到該類密碼鎖的控制器。
背景技術:
目前,現有的電子密碼鎖其密碼的產生有兩大類第一大類為可以進行設置的固定密碼,密碼存儲在非易失性存儲器中,每次開鎖時輸入密碼,輸入的密碼和存儲在非易失性存儲器中密碼進行核對一致時開鎖,還可以通過密碼設置修改非易失性存儲器中密碼的值,更新密碼以增強安全性。第二大類為使用電子鑰匙的情況,電子鑰匙可以是各種接觸或非接觸的磁卡,IC卡等電子標簽,電子標簽中記錄了密碼鎖的密碼,解決了用戶需要記住密碼的苦惱。電子鑰匙還可以使用動態密碼,隨著電子鑰匙的每次使用,在電子鑰匙和密碼鎖進行數據交換的過程中,通過算法或隨機數動態更新非易失性存儲器和電子鑰匙中的密碼,使之不易別他人仿制或破解。通過加密技術的不斷革新,以上兩種類型的密碼鎖的安全性越來越強,已經在賓館,寫字樓和家庭中廣泛使用。但是以上兩大類密碼鎖在針對密碼鎖的臨時使用者的使用上稍顯不便,固定密碼鎖在臨時使用者使用后需要密碼鎖管理者到密碼鎖所在地進行密碼的修改;電子鑰匙需要把電子鑰匙實物交給臨時使用者并在使用后收回。因此,在需要經常服務于臨時使用者的場合,一種可以自動修改密碼而且方便管理密碼的電子密碼鎖變的很重要。
發明內容
本發明的目的在于克服以上現有技術的局限而提供的一種密碼隨日期(或時間) 進行變化的動態密碼鎖,臨時密碼生成器可以根據密碼鎖管理者的固定密碼和指定的日期 (或時間)通過特定算法(例如單向散列函數等)動態地生成臨時密碼,供密碼鎖的臨時使用者在指定的日期(或時間段)使用該臨時密碼進行開鎖。本發明所提供的技術可適用于直接密碼按鍵開鎖和通過有線、無線鏈路連接的遙控開鎖以及使用電子鑰匙(打孔卡、條形碼、磁卡、IC卡、RFID、信息紐扣等)開鎖等各類電子密碼鎖。使用臨時密碼時,可以直接通過數字鍵盤輸入密碼,也可以使用一維條碼、二維條碼、打孔卡、磁卡、IC卡、RFID、信息紐扣、閃存數據存儲裝置、無線通信裝置、紅外線通信裝置、電子鑰匙等作為介質存儲臨時密碼,并在鎖體上采用對應方式的硬件對存儲有臨時密碼的介質進行讀取。本發明的密碼隨日期進行變化的動態密碼鎖系統由鎖體和臨時密碼生成器兩部分組成,這兩部分之間不需要任何形式的連接,也不需要任何形式的數據交換。臨時密碼生成器可以是類似計算器的電子裝置、運行在個人計算機或手機上的軟件,也可以是以互聯網應用程序等遠程服務方式提供的一種服務形式。鎖體中有鎖機構部分和控制部分,其中控制部分由微處理器IC1,非易失性存儲器IC2,時鐘單元IC3,用于顯示的LED顯示器IC4 (適用時)等組成,通過一個輸出驅動器IC5,所述控制器可控制鎖體機構以及報警器 IC6。電子裝置形式的臨時密碼生成器中包括微處理器IC7和用于顯示的液晶顯示器IC8。采用本發明的密碼鎖是這樣工作的開始時,在鎖體內的非易失性存儲器IC2中存入一組固定密碼(管理權限密碼或一般密碼),并在時鐘單元IC3中設置正確的日期和時間,當使用臨時密碼生成器輸入固定密碼(管理權限密碼或一般密碼)和特定日期(例如 2011年2月10日)后,臨時密碼生成器通過特定算法(例如單向散列函數等)計算得出固定字長的臨時密碼(例如4位),在前面所述特定日期(例如2011年2月10日)到來時, 在密碼鎖上輸入臨時密碼,密碼鎖通過提取非易失性存儲器IC2中的固定密碼(管理權限密碼或一般密碼)和時鐘單元IC3中的日期,進行和臨時密碼生成器中同樣的特定算法的計算,得出固定字長字符串(例如4位),把該字符串和輸入的臨時密碼進行比對,如果一致則控制驅動機構開鎖,若不一致再次比對固定密碼(管理權限密碼或一般密碼)和輸入的臨時密碼,如果一致則控制驅動機構開鎖,若不一致則控制報警器報警。因此,本發明的密碼隨日期進行變化的動態密碼鎖系統的特征在于開鎖用的臨時密碼是通過固定密碼和日期通過特定算法(例如單向散列函數等)計算出來的,隨著固定密碼的變更或者是日期的更替,臨時密碼隨之自動進行可預測的變更。本發明的有益效果是密碼鎖管理者在對密碼鎖臨時使用者進行使用授權時,只需通過臨時密碼生成器輸入固定密碼(管理權限密碼或一般密碼)和指定的密碼鎖臨時使用者的使用日期,就可方便地取得在該使用日期使用的臨時密碼。密碼鎖臨時使用者在前述使用日期可以方便的輸入臨時密碼打開密碼鎖,而不需要知道該密碼鎖的固定密碼(管理權限密碼或一般密碼),在指定的使用日期結束后,該臨時密碼失效,密碼鎖臨時使用者無法打開密碼鎖。由此一來,相對于使用固定密碼的密碼鎖,在確保安全性的前提下,該動態密碼鎖系統省略了密碼鎖管理者在每個密碼鎖臨時使用者使用后都需要重新設定密碼的工作,方便了密碼鎖的管理。
下面結合附圖和實施例對本發明進一步說明。圖1示意性說明本發明密碼鎖系統的鎖體和電子裝置型臨時密碼生成器的功能框圖。圖2說明本發明鎖系統控制器部分的工作流程。圖3說明本發明鎖系統電子裝置型臨時密碼生成器的工作流程。圖4舉例說明本發明鎖系統的結構。圖5舉例說明本發明鎖體控制部分的電路原理。圖6舉例說明本發明臨時密碼生成器的電路原理。圖7舉例說明本發明鎖體的非易失性存儲器中數據的安排。圖8舉例說明本發明臨時密碼的計算流程。
具體實施例方式本發明的密碼隨日期進行變化的動態密碼鎖系統由鎖體和臨時密碼生成器兩部分組成,參見圖1,這兩部分之間不需要任何形式的連接,也不需要任何形式的數據交換。
4臨時密碼生成器可以是類似計算器的電子裝置,也可以是運行在個人計算機或手機上的軟件。鎖體中有鎖機構部分和控制部分,其中控制部分由微處理器IC1,非易失性存儲器IC2, 時鐘單元IC3,用于顯示的LED顯示器IC4(適用時)等組成,通過一個輸出驅動器IC5,所述控制器可控制鎖體機構以及報警器IC6。電子裝置形式的臨時密碼生成器中包括微處理器IC7和用于顯示的液晶顯示器IC8。開鎖用的臨時密碼是通過固定密碼和日期通過特定算法(例如單向散列函數等) 計算出來的,隨著固定密碼的變更或者是日期的更替,臨時密碼隨之自動進行對密碼鎖管理者來說可預測的變更。臨時密碼只在特定的日期有效,在該特定日期以外的任何時間,該密碼無效。臨時密碼可以使用如圖1右側所示的臨時密碼生成器生成,其處理過程如圖3 所示,IC7首先接收密碼鎖管理者從鍵盤輸入的固定密碼字符串和特定日期字符串,并對這兩項進行特定算法的運算(例如單向散列函數等)得到固定長度的臨時密碼。在前面所述特定日期到來時,在密碼鎖上輸入臨時密碼,密碼鎖通過提取非易失性存儲器IC2中的固定密碼(管理權限密碼或一般密碼)和時鐘單元IC3中的日期,進行和臨時密碼生成器中同樣的特定算法,得出固定字長字符串(例如4位),把該字符串和輸入的臨時密碼進行比對,如果一致則控制驅動機構開鎖,若不一致則再次比較固定密碼(管理權限密碼或一般密碼)和輸入的臨時密碼,如果一致則控制驅動機構開鎖,若不一致控制報警器報警,參見圖2。臨時密碼P的生成需要固定密碼F和特定日期D兩個變量,根據需要采用特定的算法,可采用適度復雜的單向散列函數來進行計算而得出,這樣,即使知道該算法的詳細步驟,并掌握臨時密碼和日期的情況下,也很難甚至無法推算出該密碼鎖的固定密碼,確保了密碼鎖的安全性。前面所述的臨時密碼生成器可以有多種形式提供給密碼鎖管理者,第一種是類似便攜計算器的電子裝置,其示意性的大致構成參見圖1的右側部分,主要包括數字鍵盤,微處理器IC7和用于顯示的液晶顯示器IC8。其程序處理流程參見圖3,首先微處理器IC7接收密碼鎖管理者從數字鍵盤輸入的固定密碼字符串和特定日期字符串,并對這兩項進行特定算法的運算(例如單向散列函數等)得到固定長度的臨時密碼,再通過液晶顯示器IC8 顯示給密碼鎖管理者。第二種是以軟件的方式提供給密碼鎖管理者,該軟件可以安裝運行在個人電腦,手機等個人消費類電子產品上,該軟件接收密碼鎖管理者從個人消費類電子產品的鍵盤上輸入的固定密碼字符串和特定日期字符串,并對這兩項進行特定算法的運算 (例如單向散列函數等)得到固定長度的臨時密碼,再通過個人消費類電子產品的顯示屏顯示給密碼鎖管理者。第三種是以遠程服務的方式為密碼鎖管理者進行臨時密碼計算的服務。方式可以采用互聯網網頁或應用程序服務器,電話自動聲訊臺,自動短信息網關服務器等遠程服務。密碼鎖管理者通過網頁輸入,聲訊服務的鍵盤輸入,短信等方式提交固定密碼字符串和特定日期字符串,遠程服務平臺中的程序自動取得固定密碼字符串和特定日期字符串并對這兩項進行特定算法的運算(例如單向散列函數等)得到固定長度的臨時密碼, 再通過網頁顯示、自動聲訊服務或短信等方式提供給密碼鎖管理者。可以選擇以上一種提供給密碼鎖管理者,也可以同時采用多種方式提供給密碼鎖管理者。需要注意的是無論采用哪種方式,其前提是該臨時密碼的計算的算法必須和密碼鎖管理者手中使用的密碼鎖的內部算法一致。
由臨時密碼生成器生成的臨時密碼可以直接通過數字鍵盤輸入的方式使用,也可以使用一維條碼、二維條碼、打孔卡、磁卡、IC卡、RFID、信息紐扣、閃存數據存儲裝置、無線通信裝置、紅外線通信裝置、電子鑰匙等作為介質存儲臨時密碼,并在鎖體上采用對應方式的硬件對存儲有臨時密碼的介質進行讀取。下面用一個例子來說明本發明,但本發明并不局限于此。這是一個用類似便攜計算器的電子裝置型臨時密碼生成器來生成臨時密碼,并使用帶有數字鍵盤來輸入密碼的密碼鎖。與傳統的密碼鎖的開鎖方式類似。它的外形示意圖如圖4所示,密碼鎖帶有數字鍵盤的面板,把手等部件,臨時密碼生成器為類似便攜計算器的電子裝置。在使用前對密碼鎖進行固定密碼和日期、時間的設定。使用臨時密碼生成器輸入固定密碼和特定日期后,顯示臨時密碼。在特定日期到來時, 在密碼鎖上輸入臨時密碼進行開鎖。密碼鎖的電路原理框圖如圖5所示。在這個設計實例中,鎖體微處理器選用 AT89C51,鎖體內的非易失性存儲器選用ATMC04,時鐘單元選用AT8563。鎖體微處理器的 P0. 0到P0. 6共7個管腳與數字鍵盤陣列相連,用于數字鍵盤的字符輸入。微處理器的Pl. 6 和Pl. 7分別與鎖體非易失性存儲器的數據線SDA和時鐘線SCL相連,用于讀寫存儲在非易失性存儲器中的固定密碼。微處理器的Pl. 4和Pl. 5分別與鎖體時鐘單元芯片的數據線 SDA和時鐘線SCL相連,用于設置和讀取日期、時間信息。微處理器的P2. 4到P2. 7與4個 LED燈相連,用于操作指示顯示。微處理器的Pl. 1用以在密碼核對正確時給出驅動信號使機構開鎖動作,然后定時關上。微處理器的Pl. 0用以在密碼核對不正確時給出報警聲控信號使發聲元件發聲。微處理器的R )接收外部報警信號,它的T)(D給出報警信息(例如鎖號,時間等)。臨時密碼生成器的電路原理框圖如圖6所示。在這個設計實例中,臨時密碼生成器微處理器選用AT89C51。臨時密碼生成器微處理器的P0. 0到P0. 6共7個管腳與數字鍵盤陣列相連,用于臨時密碼生成器的數字鍵盤的字符輸入。微處理器的Pl. 0到Pl. 7共8 個管腳和P2. 0到P2. 5共6個管腳與上面六個7段式數碼顯示器連接,用于顯示輸出數字鍵盤輸入的數字字符和計算得出的臨時密碼數字字符。上述這些連接只是一個例子,眾所周知微處理器的I/O分配是非常靈活的,可以根據需要和設計者的習慣任意調整。各集成電路的類型也不拘于此,可以選用類似功能的組件。另外,需要指出,圖5和圖6中屬于常規連接及使用的元件均已略去,請參閱有關的器件手冊。在本實施例中設計管理權限的固定密碼為6字節,一般權限的開鎖用固定密碼為 4字節,計算產生的臨時密碼長度為4字節,因以上設定只是示例說明,實際情況下各項密碼的長度可以根據應用情況進行任意調整。圖7給出了非易失性存儲器中數據存儲的一個例子,為了便于實際使用,其固定密碼分為了一組管理權限的固定密碼和三組一般開鎖權限的固定密碼,并存儲了鎖號和軟件版本以利于更為清晰地管理密碼鎖。該例不是唯一的一種方案。在本實施例中臨時密碼計算流程如圖8所示。在這個設計實例中,為得到4位臨時密碼,對密碼鎖管理者的6位固定密碼和指定的日期的6位字符串進行計算的算法選用 SHA-I安全散列算法,并使用一些輔助算法使最終得到的臨時密碼為4個數字。眾所周知現今加密技術算法也是多種多樣,對固定密碼和日期字符串進行計算時選用的算法也同樣不拘于此,同樣可以選用類似功能的其它算法。
權利要求
1.一種密碼隨日期或時間進行變化的動態密碼鎖系統,由鎖體和臨時密碼生成器兩部分組成,鎖體中有鎖機構部分和控制部分,其中控制部分由微處理器,非易失性存儲器,時鐘單元組成,通過一個輸出驅動器以驅動鎖機構部分工作,其特征在于密碼鎖管理者使用臨時密碼生成器輸入固定密碼F和日期D,臨時密碼生成器對F和D 使用算法進行計算得到臨時密碼P,交給密碼鎖臨時使用者使用,當密碼鎖臨時使用者在上述日期在鎖體上輸入臨時密碼P時,微處理器從非易失性存儲器中取得固定密碼字符串F, 從時鐘單元中取得該日期的日期字符串D,之后對F和D使用與上述同樣算法進行計算得到結果字符串B,比較B和P,若相同則通過輸出驅動器以驅動鎖機構開鎖。
2.根據權利要求1所述的鎖系統,其特征是臨時密碼生成器為獨立的電子裝置。
3.根據權利要求1所述的鎖系統,其特征是臨時密碼生成器為可安裝運行在個人電腦、消費類個人電子產品和通訊終端其中的一種或多種之上的應用軟件。
4.根據權利要求1所述的鎖系統,其特征是臨時密碼生成器為互聯網應用程序服務器、電話聲訊服務、自動短信息網關服務器其中的一種或多種形式的遠程服務。
5.根據權利要求1所述的鎖系統,其特征是臨時密碼使用一維條碼、二維條碼、打孔卡、磁卡、IC卡、RFID、信息紐扣、閃存數據存儲裝置、無線通信裝置、紅外線通信裝置、電子鑰匙其中的一種或多種方式作為存儲臨時密碼的介質。
全文摘要
本發明提供一種密碼隨日期(或時間)進行變化的動態密碼鎖系統,由鎖體和臨時密碼生成器兩部分組成。在鎖體內的非易失性存儲器中存儲密碼鎖的固定密碼,開鎖用的臨時密碼是通過固定密碼和日期通過特定算法(例如單向散列函數等)計算得出的,隨著固定密碼的變更或者是日期的更替,臨時密碼隨之自動進行可計算的變更。由此一來,臨時密碼可以由掌握密碼鎖中固定密碼的密碼鎖管理者在不接觸密碼鎖的情況下計算得出,交給密碼鎖臨時使用者后,密碼鎖臨時使用者只有在特定時間段內使用該臨時密碼開鎖。
文檔編號E05B45/06GK102168509SQ20111007043
公開日2011年8月31日 申請日期2011年3月23日 優先權日2011年3月23日
發明者袁磊 申請人:袁磊