一種重力感應(yīng)智能密鑰裝置的工作方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,尤其涉及一種重力感應(yīng)智能密鑰裝置的工作方法及裝置。
【背景技術(shù)】
[0002]現(xiàn)有技術(shù)中,在與移動(dòng)設(shè)備的音頻口連接時(shí),由于智能密鑰裝置的顯示方向只能是在出廠時(shí)設(shè)定好的,而用戶的移動(dòng)設(shè)備音頻口位置又有所不同,導(dǎo)致屏幕顯示方向無法根據(jù)用戶習(xí)慣進(jìn)行相應(yīng)調(diào)整,本發(fā)明就是在這樣的背景下應(yīng)運(yùn)而生的。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的是為了解決現(xiàn)有技術(shù)中存在的問題,提供了一種重力感應(yīng)智能密鑰裝置的工作方法及裝置。
[0004]本發(fā)明采用的技術(shù)方案是:一種重力感應(yīng)智能密鑰裝置的工作方法,包括:
[0005]智能密鑰裝置等待并接收上位機(jī)下發(fā)的指令,當(dāng)接收到簽名指令時(shí),從所述簽名指令中獲取顯示數(shù)據(jù),從所述顯示數(shù)據(jù)中獲取當(dāng)前顯示數(shù)據(jù),讀取重力感應(yīng)模塊中的信號(hào)數(shù)據(jù),根據(jù)所述信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向,根據(jù)當(dāng)前顯示方向顯示當(dāng)前顯示數(shù)據(jù);
[0006]當(dāng)檢測(cè)到第一翻頁鍵按下時(shí),判斷當(dāng)前顯示方向,如果是第一顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示,如果是第二顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示;
[0007]當(dāng)檢測(cè)到第二翻頁鍵按下時(shí),判斷當(dāng)前顯示方向,如果是第一顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示,如果是第二顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示;
[0008]當(dāng)檢測(cè)到確認(rèn)鍵按下時(shí),執(zhí)行簽名操作,向上位機(jī)返回成功響應(yīng);
[0009]當(dāng)檢測(cè)到取消鍵按下時(shí),向所述上位機(jī)返回失敗響應(yīng)。
[0010]所述智能密鑰裝置等待并接收上位機(jī)下發(fā)的指令之前,還包括:
[0011]步驟al:所述智能密鑰裝置上電初始化,將初始方向設(shè)置為第一顯示方向,將重力感應(yīng)模塊的信號(hào)數(shù)據(jù)設(shè)置為初始信號(hào)數(shù)據(jù);
[0012]步驟a2:所述智能密鑰裝置獲取所述重力感應(yīng)模塊中的信號(hào)數(shù)據(jù),根據(jù)所述信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向,顯示開機(jī)信息;
[0013]步驟a3:所述智能密鑰裝置判斷是否接收到上位機(jī)下發(fā)的指令,如果是,則繼續(xù),否則返回步驟a2。
[0014]所述根據(jù)信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向,具體為:
[0015]步驟al:所述智能密鑰裝置從所述信號(hào)數(shù)據(jù)中獲取第一坐標(biāo)軸上的值和第二坐標(biāo)軸上的值;
[0016]步驟a2:所述智能密鑰裝置判斷所述第一坐標(biāo)軸上的值,如果小于或等于第二預(yù)設(shè)值,則將當(dāng)前顯示方向設(shè)置為第二顯示方向,如果大于所述第二預(yù)設(shè)值且小于第一預(yù)設(shè)值,則執(zhí)行步驟a3 ;
[0017]步驟a3:所述智能密鑰裝置判斷所述第二坐標(biāo)軸上的值,如果大于或等于所述第一預(yù)設(shè)值,則將當(dāng)前顯示方向設(shè)置為第一顯示方向,如果大于所述第二預(yù)設(shè)值且小于所述第一預(yù)設(shè)值,則將當(dāng)前顯示方向設(shè)置為第二顯示方向。
[0018]所述將當(dāng)前顯示方向設(shè)置為第一顯示方向之前,還包括:所述智能密鑰裝置判斷當(dāng)前顯示方向是否為第一顯示方向,如果是,則顯示方向不變,否則將當(dāng)前顯示方向設(shè)置為第一顯示方向;
[0019]所述將當(dāng)前顯示方向設(shè)置為第二顯示方向之前,還包括:所述智能密鑰裝置判斷當(dāng)前顯示方向是否為第二顯示方向,如果是,則顯示方向不變,否則將當(dāng)前顯示方向設(shè)置為第二顯示方向。
[0020]所述將當(dāng)前顯示方向設(shè)置為第一顯示方向,具體為:根據(jù)當(dāng)前顯示方向,獲取保存的第一預(yù)設(shè)顯示指令,將所述第一預(yù)設(shè)顯示指令發(fā)送至顯示屏,將顯示屏的顯示屬性設(shè)置為第一顯示屬性,將當(dāng)前顯示方向設(shè)置為第一顯示方向;
[0021]所述將當(dāng)前顯示方向設(shè)置為第二顯示方向,具體為:根據(jù)當(dāng)前顯示方向,獲取保存的第二預(yù)設(shè)顯示指令,將所述第二預(yù)設(shè)顯示指令發(fā)送至顯示屏,將顯示屏的顯示屬性設(shè)置為第二顯示屬性,將當(dāng)前顯示方向設(shè)置為第二顯示方向。
[0022]所述根據(jù)所述信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向,具體為:
[0023]步驟bl:所述智能密鑰裝置從所述信號(hào)數(shù)據(jù)中獲取第一坐標(biāo)軸上的值和第二坐標(biāo)軸上的值;
[0024]步驟b2:所述智能密鑰裝置判斷所述第一坐標(biāo)軸上的值,如果大于或等于第一預(yù)設(shè)值,則將當(dāng)前顯示方向設(shè)置為第三顯示方向,如果大于第二預(yù)設(shè)值且小于第一預(yù)設(shè)值,則執(zhí)行步驟b3 ;
[0025]步驟b3:所述智能密鑰裝置判斷所述第二坐標(biāo)軸上的值,如果小于或等于第二預(yù)設(shè)值,則將當(dāng)前顯示方向設(shè)置為第四顯示方向。
[0026]所述將當(dāng)前顯示方向設(shè)置為第三顯示方向之前,還包括:所述智能密鑰裝置判斷當(dāng)前顯示方向是否為第三顯示方向,如果是,則顯示方向不變,否則將當(dāng)前顯示方向設(shè)置為第三顯示方向;
[0027]所述將當(dāng)前顯示方向設(shè)置為第四顯示方向之前,還包括:所述智能密鑰裝置判斷當(dāng)前顯示方向是否為第四顯示方向,如果是,則顯示方向不變,否則將當(dāng)前顯示方向設(shè)置為第四顯示方向。
[0028]所述將當(dāng)前顯示方向設(shè)置為第三顯示方向,具體為:根據(jù)當(dāng)前顯示方向,獲取保存的第三預(yù)設(shè)顯示指令,將所述第三預(yù)設(shè)顯示指令發(fā)送至顯示屏,將顯示屏的顯示屬性設(shè)置為第三顯示屬性,將當(dāng)前顯示方向設(shè)置為第三顯示方向;
[0029]所述將當(dāng)前顯示方向設(shè)置為第四顯示方向,具體為:根據(jù)當(dāng)前顯示方向,獲取保存的第四預(yù)設(shè)顯示指令,將所述第四預(yù)設(shè)顯示指令發(fā)送至顯示屏,將顯示屏的顯示屬性設(shè)置為第四顯示屬性,將當(dāng)前顯示方向設(shè)置為第四顯示方向。
[0030]當(dāng)檢測(cè)到第一翻頁鍵按下時(shí),判斷當(dāng)前顯示方向,還包括:如果是第三顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示,如果是第四顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示;
[0031]當(dāng)檢測(cè)到第二翻頁鍵按下時(shí),判斷當(dāng)前顯示方向,還包括:如果是第三顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示,如果是第四顯示方向,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示。
[0032]所述將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)之前,還包括:所述智能密鑰裝置判斷所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前是否還有顯示數(shù)據(jù),如果是,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù),否則等待接收按鍵觸發(fā)。
[0033]所述將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)之前,還包括:所述智能密鑰裝置判斷所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后是否還有顯示數(shù)據(jù),如果是,則將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù),否則等待接收按鍵觸發(fā)。
[0034]所述根據(jù)當(dāng)前顯示方向顯示當(dāng)前顯示數(shù)據(jù)之后,還包括:
[0035]步驟S2-1:所述智能密鑰裝置檢測(cè)按鍵狀態(tài),判斷是否檢測(cè)到按鍵觸發(fā),如果是,則繼續(xù),否則執(zhí)行步驟S2-2;
[0036]步驟S2-2:所述智能密鑰裝置判斷檢測(cè)按鍵觸發(fā)是否超時(shí),如果是,則提示超時(shí)信息,結(jié)束,否則執(zhí)行步驟S2-3 ;
[0037]步驟S2-3:所述智能密鑰裝置讀取所述重力感應(yīng)模塊中的信號(hào)數(shù)據(jù),根據(jù)所述信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向,根據(jù)當(dāng)前顯示方向顯示當(dāng)前顯示數(shù)據(jù),返回步驟S2-1。
[0038]所述簽名指令,具體包括報(bào)文解析指令和報(bào)文簽名指令;
[0039]當(dāng)所述智能密鑰裝置接收到報(bào)文解析指令時(shí),獲取所述報(bào)文解析指令中的報(bào)文,應(yīng)用預(yù)設(shè)哈希算法對(duì)所述報(bào)文進(jìn)行計(jì)算,將計(jì)算得到的哈希結(jié)果保存,并從所述報(bào)文解析指令中解析得到顯示數(shù)據(jù),將所述顯示數(shù)據(jù)保存;
[0040]當(dāng)所述智能密鑰裝置接收到報(bào)文簽名指令時(shí),從保存的顯示數(shù)據(jù)中獲取當(dāng)前顯示數(shù)據(jù),并讀取所述重力感應(yīng)模塊中的信號(hào)數(shù)據(jù),根據(jù)所述信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向,根據(jù)當(dāng)前顯示方向顯示當(dāng)前顯示數(shù)據(jù)。
[0041]所述執(zhí)行簽名操作,具體為:所述智能密鑰裝置獲取保存的所述哈希結(jié)果,應(yīng)用預(yù)設(shè)簽名算法對(duì)所述哈希結(jié)果進(jìn)行簽名,得到簽名結(jié)果,根據(jù)所述簽名結(jié)果生成成功響應(yīng);
[0042]所述當(dāng)檢測(cè)到取消鍵按下時(shí),向上位機(jī)返回失敗響應(yīng),具體為:當(dāng)檢測(cè)到取消鍵按下時(shí),將保存的所述哈希結(jié)果刪除,并向上位機(jī)返回失敗響應(yīng)。
[0043]當(dāng)檢測(cè)到確認(rèn)鍵按下時(shí),還包括:所述智能密鑰裝置提示是否需要執(zhí)行簽名操作,并等待接收按鍵操作;
[0044]當(dāng)檢測(cè)到確認(rèn)鍵再次按下時(shí),執(zhí)行簽名操作,向所述上位機(jī)返回確認(rèn)響應(yīng);
[0045]當(dāng)檢測(cè)到取消鍵按下時(shí),刪除所述顯示數(shù)據(jù),向所述上位機(jī)返回失敗響應(yīng)。
[0046]所述向上位機(jī)返回失敗響應(yīng)之前,還包括:顯示取消簽名信息。
[0047]一種重力感應(yīng)智能密鑰裝置,包括:
[0048]接收模塊,用于等待并接收上位機(jī)下發(fā)的指令;
[0049]獲取模塊,用于當(dāng)所述接收模塊接收到簽名指令時(shí),從所述簽名指令中獲取顯示數(shù)據(jù),從所述顯示數(shù)據(jù)中獲取當(dāng)前顯示數(shù)據(jù);
[0050]重力感應(yīng)模塊,用于生成信號(hào)數(shù)據(jù);
[0051]第一設(shè)置模塊,用于讀取重力感應(yīng)模塊中的信號(hào)數(shù)據(jù),根據(jù)所述信號(hào)數(shù)據(jù)設(shè)置當(dāng)前顯示方向;
[0052]第一顯示模塊,用于根據(jù)所述第一設(shè)置模塊設(shè)置的當(dāng)前顯示方向顯示所述獲取模塊獲取到的當(dāng)前顯示數(shù)據(jù);
[0053]第一判斷模塊,用于當(dāng)所述第一顯示模塊顯示當(dāng)前數(shù)據(jù)且檢測(cè)到第一翻頁鍵按下時(shí),判斷當(dāng)前顯示方向;
[0054]第二判斷模塊,用于當(dāng)所述第一顯示模塊顯示當(dāng)前數(shù)據(jù)且檢測(cè)到第二翻頁鍵按下時(shí),判斷當(dāng)前顯示方向;
[0055]第二顯示模塊,用于當(dāng)所述第一判斷模塊判斷當(dāng)前顯示方向?yàn)榈谝伙@示方向,或當(dāng)所述第二判斷模塊判斷當(dāng)前顯示方向?yàn)榈诙@示方向時(shí),將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之前的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示;
[0056]第三顯示模塊,用于當(dāng)所述第一判斷模塊判斷當(dāng)前顯示方向?yàn)榈诙@示方向,或當(dāng)所述第二判斷模塊判斷當(dāng)前顯示方向?yàn)榈谝伙@示方向時(shí),將所述顯示數(shù)據(jù)中當(dāng)前顯示數(shù)據(jù)之后的數(shù)據(jù)作為當(dāng)前顯示數(shù)據(jù)并進(jìn)行顯示;
[0057]簽名模塊,用于當(dāng)檢測(cè)到確認(rèn)鍵按下時(shí),對(duì)接收模塊接收到的簽名指令執(zhí)行簽名操作;
[0058]發(fā)送