一種安全裝置、安全控制方法及身份證讀卡終端的制作方法
【專利摘要】本發(fā)明提供了一種安全裝置、安全控制方法及身份證讀卡終端,其中,安全控制方法包括:應用模塊接收至少一個安全認證信息,對每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將安全狀態(tài)存儲在存儲區(qū)域;應用模塊接收指令,將指令發(fā)送至安全控制模塊;安全控制模塊接收指令,查找與指令相對應的安全狀態(tài),判斷安全狀態(tài)是否為認證通過狀態(tài);在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用底層驅動模塊;底層驅動模塊響應應用模塊的調用,并將響應結果返回至應用模塊,由此實現指令的安全執(zhí)行。
【專利說明】
一種安全裝置、安全控制方法及身份證讀卡終端
技術領域
[0001]本發(fā)明涉及一種電子技術領域,尤其涉及一種安全裝置、安全控制方法及身份證讀卡終端。
【背景技術】
[0002]在現有技術中,電子裝置接收到操作指令后,直接根據指令調用系統(tǒng)層執(zhí)行相應的操作,而不需要對收到指令時電子裝置的當前的安全環(huán)境是否滿足指令的執(zhí)行要求進行確認,造成電子裝置在不安全環(huán)境中仍會執(zhí)行敏感操作,使得電子裝置在使用時不能滿足安全性要求。
【發(fā)明內容】
[0003 ]本發(fā)明旨在解決上述問題。
[0004]本發(fā)明的主要目的在于提供一種安全裝置。
[0005]本發(fā)明的另一目的在于提供一種身份證讀卡終端。
[0006]本發(fā)明的另一目的在于提供一種安全控制方法。
[0007]為達到上述目的,本發(fā)明的技術方案具體是這樣實現的:
[0008]本發(fā)明一方面提供了一種安全裝置,包括:應用模塊、安全控制模塊和底層驅動模塊,
[0009]應用模塊,用于接收至少一個安全認證信息,對每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將安全狀態(tài)存儲在存儲區(qū)域;應用模塊,用于接收指令,將指令發(fā)送至安全控制模塊;安全控制模塊,用于接收指令,查找存儲區(qū)域中存儲的與指令相對應的安全狀態(tài),判斷安全狀態(tài)是否為認證通過狀態(tài);應用模塊,用于在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,調用底層驅動模塊;底層驅動模塊,用于響應應用模塊的調用,并將響應結果返回至應用模塊。
[0010]可選的,應用模塊,用于接收指令,將指令發(fā)送至安全控制模塊,包括:應用模塊,用于接收指令,分析是否有相應的指令或指令接口,如果存在相應的指令或指令接口,將指令發(fā)送至安全控制模塊。
[0011 ]可選的,安全認證信息為PIN碼或生物特征信息或根據認證密鑰獲得的信息。
[0012]可選的,底層驅動模塊,包括:安全算法庫和/或文件系統(tǒng);應用模塊,用于在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,調用底層驅動模塊,包括:應用模塊,用于在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,調用安全算法庫和/或文件系統(tǒng)。
[0013 ]本發(fā)明的另一方面提供了一種包括上述安全裝置的身份證讀卡終端。
[0014]本發(fā)明的另一方面提供了一種安全控制方法,包括:應用模塊接收至少一個安全認證信息,對每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將安全狀態(tài)存儲在存儲區(qū)域;應用模塊接收指令,將指令發(fā)送至安全控制模塊;安全控制模塊接收指令,查找存儲區(qū)域中存儲的與指令相對應的安全狀態(tài),判斷安全狀態(tài)是否為認證通過狀態(tài);在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用底層驅動模塊;底層驅動模塊響應應用模塊的調用,并將響應結果返回至應用模塊。
[0015]可選的,在應用模塊接收指令之后,方法還包括:應用模塊分析是否有相應的指令或指令接口,如果存在相應的指令或指令接口,觸發(fā)將指令發(fā)送至安全控制模塊的步驟。
[0016]可選的,安全認證信息為PIN碼或生物特征信息或根據認證密鑰獲得的信息。
[0017]可選的,底層驅動模塊,包括:安全算法庫和/或文件系統(tǒng);在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用底層驅動模塊,包括:在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用安全算法庫和/或文件系統(tǒng)。
[0018]由上述本發(fā)明提供的技術方案可以看出,本發(fā)明提供了一種安全裝置、安全控制方法及身份證讀卡終端,安全裝置接收每一條指令之后,會預先判斷當前的安全狀態(tài)是否滿足指令的執(zhí)行要求,只有在安全狀態(tài)滿足指令的執(zhí)行要求時,才允許指令執(zhí)行,保證指令在安全環(huán)境中才能執(zhí)行。
【附圖說明】
[0019]為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域的普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他附圖。
[0020]圖1為本發(fā)明實施例1提供的安全裝置的結構示意圖;
[0021]圖2為本發(fā)明實施例2提供的身份證讀卡終端的結構示意圖;
[0022]圖3為本發(fā)明實施例3提供的安全控制方法的流程圖;
[0023]圖4為本發(fā)明實施例4提供的身份證讀取方法的流程圖。
【具體實施方式】
[0024]下面結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明的保護范圍。
[0025]在本發(fā)明的描述中,需要理解的是,術語“中心”、“縱向”、“橫向”、“上”、“下”、“前”、“后”、“左”、“右”、“豎直”、“水平”、“頂”、“底”、“內”、“外”等指示的方位或位置關系為基于附圖所示的方位或位置關系,僅是為了便于描述本發(fā)明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構造和操作,因此不能理解為對本發(fā)明的限制。此外,術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或數量或位置。
[0026]在本發(fā)明的描述中,需要說明的是,除非另有明確的規(guī)定和限定,術語“安裝”、“相連”、“連接”應做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個元件內部的連通。對于本領域的普通技術人員而言,可以具體情況理解上述術語在本發(fā)明中的具體含義。
[0027]下面將結合附圖對本發(fā)明實施例作進一步地詳細描述。
[0028]實施例1
[0029]本實施例提供了一種安全裝置,如圖1所示,該裝置包括:應用模塊10、安全控制模塊11以及底層驅動模塊12。
[0030]在本實施例中,各個模塊的工作原理描述如下。
[0031 ] 應用模塊10,用于接收至少一個安全認證信息,對每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將安全狀態(tài)存儲在存儲區(qū)域;應用模塊10,用于接收指令,將指令發(fā)送至安全控制模塊11;安全控制模塊11,用于接收指令,查找存儲區(qū)域中存儲的與指令相對應的安全狀態(tài),判斷安全狀態(tài)是否為認證通過狀態(tài);應用模塊10,用于在安全控制模塊11判斷出安全狀態(tài)為認證通過狀態(tài)時,調用底層驅動模塊12;底層驅動模塊12,用于響應應用模塊10的調用,并將響應結果返回至應用模塊10。
[0032]本實施例提供的安全裝置在接收每一條指令后,都會判斷當前的安全狀態(tài)是否滿足指令的執(zhí)行要求,只有安全狀態(tài)滿足指令的執(zhí)行要求時才執(zhí)行相應指令,保證了安全裝置的使用安全。
[0033]在本實施例中,安全狀態(tài)可以用二進制字符串表示,二進制字符串中的每個比特代表一個安全認證信息的安全狀態(tài),可以用比特I代表安全認證信息認證通過、比特O代表安全認證信息認證不通過。應用模塊10接收安全認證信息后,如果認證通過,可以將安全認證信息對應的比特位置為1,如果認證不通過,可以將安全認證信息對應的比特位置為O。應用模塊10接收指令后,安全控制模塊11查找存儲區(qū)域中與接收的指令相對應的二進制字符串,并判斷二進制字符串中表示指令執(zhí)行需要的安全狀態(tài)的比特位是否為I,如果為I,應用模塊10調用底層驅動模塊12,如果為0,拒絕應用模塊10調用底層驅動模塊12。當然,在本實施例中,也可以用比特O代表安全認證信息認證通過、比特I代表安全認證信息認證不通過。
[0034]在本實施例中,應用模塊10接收的指令可以為讀卡指令、密鑰更新指令等,在本實施例中不作具體限制。
[0035]作為本發(fā)明實施例的一個可選實施方式,應用模塊10,還用于分析是否有相應的指令或指令接口,如果存在相應的指令或指令接口,觸發(fā)將指令發(fā)送至安全控制模塊11的步驟。在具體實施過程中,應用模塊10可以用于接收指令后,分析是否有相應的指令或指令接口,如果存在相應的指令或指令接口,應用模塊10則判斷接收的指令為合法指令,將合法指令發(fā)送至安全控制模塊11,安全控制模塊11接收到合法指令后,查找與接收的指令相對應的安全狀態(tài);如果不存在相應的指令或指令接口,應用模塊10則判斷接收的指令為非法指令,拒絕將指令發(fā)送至安全控制模塊11。
[0036]作為本發(fā)明實施例的一個可選實施方式,安全認證信息可以為PIN碼或生物特征信息或根據認證密鑰獲得的信息。
[0037]在本實施例中,PIN碼可以為開機密碼、登錄密碼等,在本實施例中不作限制。在具體實施過程中,生物特征信息可以為指紋信息、人臉信息、聲紋信息、虹膜信息等能夠表示個體唯一性的信息。
[0038]在一個可選實施方式中,可以按照以下方式獲得根據認證密鑰獲得的信息:應用模塊10接收外部設備發(fā)送的一個隨機數,并調用底層驅動模塊12使用認證密鑰對接收的隨機數進行計算,將計算結果返回外部設備,外部設備使用相應的認證密鑰對同一隨機數進行計算,比較兩次計算的結果是否相同,并將比較結果返回給應用模塊10,返回的比較結果即為根據認證密鑰獲得的信息。應用模塊10根據返回的比較結果,能夠判斷安全裝置是否存儲了與外部設備相同的認證密鑰,如果兩次計算結果相同,表示根據認證密鑰獲得的信息認證通過,將對應的安全狀態(tài)置為認證通過狀態(tài),如果兩次計算結果不相同,表示根據認證密鑰獲得的信息認證未通過,將對應的安全狀態(tài)置為認證未通過狀態(tài)。
[0039]在一個可選實施方式中,也可以按照以下方式獲得根據認證密鑰獲得的信息:夕卜部設備對其自身產生的隨機數進行加密得到加密數據,使用認證密鑰對得到的加密數據進行簽名得到簽名值,并將加密數據和簽名值一起發(fā)送至安全裝置的應用模塊10。應用模塊10接收加密數據和簽名值后,調用底層驅動模塊12使用認證密鑰對簽名值進行驗簽,驗簽結果即為根據認證密鑰獲得的信息。應用模塊10根據驗簽結果,能夠對外部設備的身份進行認證并判斷安全裝置是否存儲了與外部設備相同的認證密鑰。如果驗簽通過,表示外部設備身份合法且根據認證密鑰獲得的信息認證通過,將對應的安全狀態(tài)置為認證通過狀態(tài),如果驗簽不通過,表示外部設備身份非法且根據認證密鑰獲得的信息認證未通過,將對應的安全狀態(tài)置為認證未通過狀態(tài)。
[0040]在本實施例中,底層驅動模塊12使用認證密鑰對簽名值進行驗簽的【具體實施方式】為:底層驅動模塊12使用認證密鑰對接收到的簽名值進行解密,得到摘要,并利用HASH算法對接收到的加密數據進行計算得到加密數據的摘要,并比較解密得到的摘要與計算得到的加密數據的摘要是否相同,如果相同,則對簽名值的驗簽通過,如果不相同,則對簽名值的驗簽不通過。
[0041]將PIN碼或生物特征信息作為安全認證信息,通過對安全裝置的使用者身份進行校驗,防止安全裝置被他人盜用,保證了安全裝置的安全。將根據認證密鑰獲得的信息作為安全認證信息,能夠對發(fā)起密鑰更新的外部設備的身份進行認證并判斷安全裝置是否存儲了相應的認證密鑰,保證了安全裝置在密鑰更新過程中的安全。
[0042]作為本發(fā)明實施例的一個可選實施方式,底層驅動模塊12,包括:安全算法庫121和/或文件系統(tǒng)122;應用模塊10,用于在安全控制模塊11判斷出安全狀態(tài)為認證通過狀態(tài)時,調用底層驅動模塊12,包括:應用模塊10,用于在安全控制模塊11判斷出安全狀態(tài)為認證通過狀態(tài)時,調用安全算法庫121和/或文件系統(tǒng)122。
[0043]在本實施例中,底層驅動模塊12可以提供API接口供應用模塊10調用。在具體實施過程中,安全算法庫121可以對下層硬件平臺提供的加密、簽名等安全算法對應的算法模塊進行封裝,生成每一個安全算法需要的API接口。應用模塊10可以通過調用安全算法庫121生成的API接口實現對安全算法庫121的調用。
[0044]在本實施例中,文件系統(tǒng)122可以用于管理文件的生成、保存、查詢、修改和刪除等。此外,文件系統(tǒng)122中可以定義基本的文件結構和存儲方式,并提供接口供應用模塊10進行調用。文件系統(tǒng)122中供應用模塊調用的接口也可以為API接口。文件系統(tǒng)122定義的文件可以為二進制文件、定長文件、變長文件、循環(huán)文件等,在本實施例中不作具體限制。文件系統(tǒng)122還可以用于提供對文件的操作方式,對文件的操作方式包括讀文件、寫文件等,在本實施例中不作具體限制。
[0045]安全算法庫使得安全裝置能夠實現安全算法計算,文件系統(tǒng)使得安全裝置對文件實現安全管理。
[0046]實施例2
[0047]本實施例提供了一種身份證讀卡終端,如圖2所示,該身份證讀卡終端包括實施例1中的安全裝置。本實施例提供的身份證讀卡終端在接收每一條指令后,都會判斷當前的安全狀態(tài)是否滿足指令的執(zhí)行要求,只有安全狀態(tài)滿足指令的執(zhí)行要求才執(zhí)行相應指令,保證了讀卡的安全。
[0048]需要說明的是,本實施例提供的身份證讀卡終端并不設置有驗證安全控制模塊,而是在云認證平臺中設置可以對從身份證讀取的密文數據實現解密的模塊,任何用戶均可通過有線或無線網絡接入到云認證平臺以實現對身份證的讀取。
[0049]在本實施例中,身份證讀卡終端還可以包含通訊模塊23,通訊模塊23至少包括兩個接口:讀卡接口 231和通信接口 232。讀卡接口 231用于身份證讀卡終端與身份證進行通訊,可以為14443接口,也可以為其他非接觸接口,在本實施例中不作限定。通信接口232用于身份證讀卡終端與云認證平臺進行通信。如果通信接口 232可直接通過有線網絡或無線網絡與云認證平臺通信,則此時通信接口可以為無線網絡接口(例如:WIFI接口)或有線網絡接口;如果通信接口 232與上位機(例如手機、PAD(平板電腦)或PC等)連接,利用上位機通過有線網絡或者無線網絡與云認證平臺通信,則此時的通信接口 232可以為USB接口或藍牙接口等能夠與上位機進行通信的接口,在本實施例中不作限定。
[0050]在本實施例中,底層驅動模塊12還可以包含通訊協議庫123,通訊協議庫123中包含身份證讀卡終端所需的通訊協議,通訊協議庫123中至少包含兩類通訊協議:讀卡接口231對應的通訊協議以及通信接口 232對應的通訊協議。讀卡接口 231對應的通訊協議可以為14443通訊協議,也可以為其他非接觸接口對應的通訊協議,在本實施例中不作限定。如果通信接口 232可直接通過有線網絡或無線網絡與云認證平臺通信,則此時通信接口 232對應的通訊協議為無線網絡接口通訊協議(例如:WIFI協議)或有線網絡協議;如果通信接口232與上位機連接,利用上位機(例如手機、PAD(平板電腦)或PC等)通過有線網絡或者無線網絡與云認證平臺通信,則此時通信接口 232對應的通訊協議可以為USB協議或藍牙協議,在本實施例中不作限定。
[0051]在具體實施過程中,通訊模塊23中的讀卡接口231接收到身份證發(fā)送的載波信號后,首先通過通訊協議庫123將接收的載波信號轉換為數字指令,并將數字指令發(fā)送到應用模塊10中進行處理。通訊模塊23的讀卡接口 231接收到應用模塊10返回的數字指令后,將接收的數字指令轉換為載波信號,并將載波信號發(fā)送至身份證。
[0052]實施例3
[0053]本實施例提供了一種安全控制方法,該安全控制方法應用于實施例1中的安全裝置。
[0054]圖3為本實施例提供的安全控制方法的流程圖,該方法主要包括以下步驟(S301?
S305):
[0055]S301:應用模塊接收至少一個安全認證信息,對每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將安全狀態(tài)存儲在存儲區(qū)域;
[0056]在本實施例中,安全狀態(tài)可以用^■進制字符串表不,^■進制字符串中的每個比特代表一個安全認證信息的安全狀態(tài),可以用比特1代表安全認證信息認證通過、比特〇代表安全認證信息認證不通過,也可以用比特0代表安全認證信息認證通過、比特1代表安全認證信息認證不通過,在本實施例中不作具體限制。應用模塊接收安全認證信息后,如果認證通過,可以將安全認證信息對應的比特位置為1,如果認證不通過,可以將安全認證信息對應的比特位置為0。
[0057]作為本發(fā)明實施例的一個可選實施方式,安全認證信息可以為PIN碼或生物特征信息或根據認證密鑰獲得的信息。[〇〇58]在本實施例中,PIN碼可以為開機密碼、登錄密碼等,在本實施例中不作限制。在具體實施過程中,生物特征信息可以為指紋信息、人臉信息、聲紋信息、虹膜信息等能夠表示個體唯一性的信息。[〇〇59]在一個可選實施方式中,可以按照以下方式獲得根據認證密鑰獲得的信息:應用模塊接收外部設備發(fā)送的一個隨機數,并調用底層驅動模塊使用認證密鑰對接收的隨機數進行計算,將計算結果返回外部設備,外部設備使用相應的認證密鑰對同一隨機數進行計算,比較兩次計算的結果是否相同,并將比較結果返回給應用模塊,返回的比較結果即為根據認證密鑰獲得的信息。應用模塊根據返回的比較結果,能夠判斷安全裝置是否存儲了與外部設備相同的認證密鑰,如果兩次計算結果相同,表示根據認證密鑰獲得的信息認證通過,將對應的安全狀態(tài)置為認證通過狀態(tài),如果兩次計算結果不相同,表示根據認證密鑰獲得的信息認證未通過,將對應的安全狀態(tài)置為認證未通過狀態(tài)。
[0060]在一個可選實施方式中,也可以按照以下方式獲得根據認證密鑰獲得的信息:夕卜部設備對其自身產生的隨機數進行加密得到加密數據,使用認證密鑰對得到的加密數據進行簽名得到簽名值,并將加密數據和簽名值一起發(fā)送至安全裝置的應用模塊。應用模塊接收加密數據和簽名值后,調用底層驅動模塊使用認證密鑰對簽名值進行驗簽,驗簽結果即為根據認證密鑰獲得的信息。應用模塊根據驗簽結果,能夠對外部設備的身份進行認證并判斷安全裝置是否存儲了與外部設備相同的認證密鑰。如果驗簽通過,表示外部設備身份合法且根據認證密鑰獲得的信息認證通過,將對應的安全狀態(tài)置為認證通過狀態(tài),如果驗簽不通過,表示外部設備身份非法且根據認證密鑰獲得的信息認證未通過,將對應的安全狀態(tài)置為認證未通過狀態(tài)。
[0061]在本實施例中,底層驅動模塊使用認證密鑰對簽名值進行驗簽的【具體實施方式】為:底層驅動模塊使用認證密鑰對接收到的簽名值進行解密,得到摘要,并利用HASH算法對接收到的加密數據進行計算得到加密數據的摘要,并比較解密得到的摘要與計算得到的加密數據的摘要是否相同,如果相同,則對簽名值的驗簽通過,如果不相同,則對簽名值的驗簽不通過。
[0062]將PIN碼或生物特征信息作為安全認證信息,通過對安全裝置的使用者身份進行校驗,防止安全裝置被他人盜用,保證了安全裝置的安全。將根據認證密鑰獲得的信息作為安全認證信息,能夠對發(fā)起密鑰更新的外部設備的身份進行認證并判斷安全裝置是否存儲了相應的認證密鑰,保證了安全裝置在密鑰更新過程中的安全。
[0063]S302:應用模塊接收指令,將指令發(fā)送至安全控制模塊;[〇〇64]在本實施例中,應用模塊接收的指令可以為讀卡指令、密鑰更新指令等,在本實施例中不作具體限制。
[0065]作為本發(fā)明實施例的一個可選實施方式,在應用模塊接收指令之后,方法還包括: 應用模塊分析是否有相應的指令或指令接口,如果存在相應的指令或指令接口,觸發(fā)將指令發(fā)送至安全控制模塊的步驟。在具體實施過程中,應用模塊接收指令后,分析是否有相應的指令或指令接口,如果存在相應的指令或指令接口,應用模塊則判斷接收的指令為合法指令,將合法指令發(fā)送至安全控制模塊;如果不存在相應的指令或指令接口,應用模塊則判斷接收的指令為非法指令,拒絕將指令發(fā)送至安全控制模塊。
[0066]S303:安全控制模塊接收指令,查找存儲區(qū)域中存儲的安全狀態(tài),判斷安全狀態(tài)是否為認證通過狀態(tài);[〇〇67]在本實施例中,安全狀態(tài)可以用二進制字符串表示,以比特1代表安全認證信息認證通過、比特0代表安全認證信息認證未通過為例,安全控制模塊接收指令后,查找存儲區(qū)域中存儲的與接收的指令相對應的二進制字符串,安全控制模塊查找到與接收的指令相應的二進制字符串后,判斷二進制字符串中滿足指令執(zhí)行需要的安全狀態(tài)的比特位是否為1, 如果為1,應用模塊調用底層驅動模塊,如果為0,拒絕應用模塊調用底層驅動模塊。
[0068]S304:在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用底層驅動豐吳塊;[〇〇69]S305:底層驅動模塊響應應用模塊的調用,并將響應結果返回至應用模塊。
[0070]作為發(fā)明實施例的一個可選實施方式,底層驅動模塊,包括:安全算法庫和/或文件系統(tǒng);在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用底層驅動模塊, 包括:在安全控制模塊判斷出安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用安全算法庫和/或文件系統(tǒng)。
[0071]在本實施例中,底層驅動模塊可以提供API接口供應用模塊調用。在具體實施過程中,安全算法庫可以對下層硬件平臺提供的加密、簽名等安全算法對應的算法模塊進行封裝,生成每一個安全算法需要的API接口。應用模塊可以通過調用安全算法庫生成的API接口實現對安全算法庫的調用。[〇〇72]在本實施例中,文件系統(tǒng)管理文件的生成、保存、查詢、修改和刪除等。此外,文件系統(tǒng)中可以定義基本的文件結構和存儲方式,并提供接口供應用模塊進行調用。文件系統(tǒng)中供應用模塊調用的接口也可以為API接口。文件系統(tǒng)定義的文件可以為二進制文件、定長文件、變長文件、循環(huán)文件等,在本實施例中不作具體限制。文件系統(tǒng)還可以用于提供對文件的操作方式,對文件的操作方式包括讀文件、寫文件等,在本實施例中不作具體限制。 [〇〇73]本實施例提供的安全算法庫能夠實現安全算法計算,文件系統(tǒng)能夠對文件實現安全管理。
[0074]通過本實施例提供的安全控制方法,對每一條指令都會判斷當前的安全狀態(tài)是否滿足指令的執(zhí)行要求,只有安全狀態(tài)滿足指令的執(zhí)行要求才執(zhí)行相應指令,保證了指令的執(zhí)行安全。
[0075] 實施例4[〇〇76]本實施例提供了一種身份證讀取方法,該身份證讀取方法應用于實施例2中的身份證讀卡終端。[〇〇77]圖4為本實施例提供的身份證讀取方法的流程圖,該方法主要包括以下步驟(S401 ?S405):[〇〇78]S401:應用模塊接收至少一個PIN碼,對接收的每一個PIN碼進行認證,如果認證通過,將認證通過的PIN碼對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的PIN碼對應的安全狀態(tài)置為認證未通過狀態(tài),將安全狀態(tài)存儲在存儲區(qū)域;[〇〇79]在本實施例中,PIN碼對應的安全狀態(tài)可以用二進制字符串表示,二進制字符串中的每個比特代表一個索引的PIN碼的安全狀態(tài)。在具體實施過程中,可以用一個8位的二進制字符串表示PIN碼的安全狀態(tài),應用模塊接收一個PIN碼后,如果認證通過,可以將該PIN 碼對應的比特位置為1,如果認證不通過,可以將該PIN碼對應的比特位置為0。例如,可以以 00000001表示第一 PIN碼認證通過、以00000010表示第二PIN碼認證通過、以00000100表示第三PIN碼認證通過,也可以以00010000表示第一 PIN碼認證通過、以00100000表示第二PIN 碼認證通過、以01000000表示第三PIN碼認證通過,也可以以其他方式表示,在本實施例中不作限制。
[0080]S402:應用模塊接收身份證讀取指令,將身份證讀取指令發(fā)送至安全控制模塊;
[0081]在本實施例中,應用模塊可接收身份證讀取指令后,可以分析是否有相應的身份證讀取指令或身份證讀取指令接口,如果存在相應的身份證讀取指令或身份證讀取指令接口,貝判斷接收的身份證讀取指令為合法的身份證讀取指令,通知安全控制模塊查找執(zhí)行身份證讀取指令需要的PIN碼的安全狀態(tài),如果不存在相應的身份證讀取指令或身份證讀取指令接口,則判斷接收的身份證讀取指令為非法的身份證讀取指令,拒絕將身份證讀取指令發(fā)送至安全控制模塊。[〇〇82]S403:安全控制模塊查找存儲區(qū)域中存儲的身份證讀取指令對應的PIN碼的安全狀態(tài),判斷身份證讀取指令對應的安全狀態(tài)是否為認證通過狀態(tài);[〇〇83]在本實施例中,與身份證讀取指令相對應的安全狀態(tài)可以為一個或多個PIN碼的安全狀態(tài),在具體實施過程中,與身份證讀取指令相對應的安全狀態(tài)可以為表示第一PIN碼的安全狀態(tài)的二進制字符串,也可以為表示第二PIN碼的安全狀態(tài)的二進制字符串,也可以為表示第一 PIN碼的安全狀態(tài)的二進制字符串和表示第二PIN碼的安全狀態(tài)的二進制字符串,在本實施例中不作限制。[〇〇84]S404:在安全控制模塊判斷出身份證讀取指令對應的安全狀態(tài)為認證通過狀態(tài)時,應用模塊調用底層驅動模塊;
[0085]在本實施例中,安全控制模塊查找到表示PIN碼的安全狀態(tài)的二進制字符串后,判斷二進制字符串中滿足身份證讀取指令執(zhí)行需要的一個或多個PIN碼的安全狀態(tài)的比特位是否為1,如果為1,應用模塊調用底層驅動模塊,如果為〇,拒絕應用模塊調用底層驅動模塊。[〇〇86]S405:底層驅動模塊響應應用模塊的調用,并將響應結果返回至應用模塊。
[0087]在本實施例中,底層驅動模塊可以包括通訊協議庫。身份證讀取指令通過安全控制層的安全校驗后,調用通訊協議庫,進行身份證信息讀取。
[0088]在本實施例中,底層驅動模塊還可以包括文件系統(tǒng)和安全算法庫。在讀取身份證信息后,從底層驅動模塊的文件系統(tǒng)調取密鑰,通過安全算法庫進行加密運算得到密文、進行簽名運算得到簽名值,將密文和簽名值返回至應用模塊。[〇〇89]通過本實施例提供的身份證讀取方法,在接收身份證讀取指令后,首先判斷執(zhí)行身份證讀取指令需要的PIN碼的安全狀態(tài)是否為認證通過,只有PIN碼的安全狀態(tài)為認證通過時才執(zhí)行身份證讀取指令,保證了身份證讀取過程的安全。
[0090]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實施方式的范圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執(zhí)行功能,這應被本發(fā)明的實施例所屬技術領域的技術人員所理解。
[0091]應當理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實現。例如,如果用硬件來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用于對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現場可編程門陣列(FPGA)等。[〇〇92]本技術領域的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,該程序在執(zhí)行時,包括方法實施例的步驟之一或其組合。
[0093]此外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現,也可以采用軟件功能模塊的形式實現。所述集成的模塊如果以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。
[0094]上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。
[0095]在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結合。[〇〇96] 盡管上面已經示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領域的普通技術人員在不脫離本發(fā)明的原理和宗旨的情況下在本發(fā)明的范圍內可以對上述實施例進行變化、修改、替換和變型。本發(fā)明的范圍由所附權利要求及其等同限定。
【主權項】
1.一種安全裝置,其特征在于,包括:應用模塊、安全控制模塊和底層驅動模塊, 所述應用模塊,用于接收至少一個安全認證信息,對所述每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將所述安全狀態(tài)存儲在存儲區(qū)域; 所述應用模塊,用于接收指令,將所述指令發(fā)送至所述安全控制模塊; 所述安全控制模塊,用于接收所述指令,查找所述存儲區(qū)域中存儲的與所述指令相對應的安全狀態(tài),判斷所述安全狀態(tài)是否為認證通過狀態(tài); 所述應用模塊,用于在所述安全控制模塊判斷出所述安全狀態(tài)為認證通過狀態(tài)時,調用所述底層驅動模塊; 所述底層驅動模塊,用于響應所述應用模塊的調用,并將響應結果返回至所述應用模塊。2.根據權利要求1所述的安全裝置,其特征在于, 所述應用模塊,還用于分析是否有相應的指令或指令接口,如果存在相應的所述指令或所述指令接口,觸發(fā)所述將所述指令發(fā)送至所述安全控制模塊的步驟。3.根據權利要求1或2所述的安全裝置,其特征在于,所述安全認證信息為PIN碼或生物特征信息(指紋信息或人臉信息或聲紋信息或虹膜信息)或根據認證密鑰獲得的信息。4.根據權利要求1或2所述的安全裝置,其特征在于,所述底層驅動模塊,包括:安全算法庫和/或文件系統(tǒng); 所述應用模塊,用于在所述安全控制模塊判斷出所述安全狀態(tài)為認證通過狀態(tài)時,調用所述底層驅動模塊,包括: 所述應用模塊,用于在所述安全控制模塊判斷出所述安全狀態(tài)為認證通過狀態(tài)時,調用所述安全算法庫和/或所述文件系統(tǒng)。5.一種身份證讀卡終端,其特征在于,包括權利要求1-4任一項所述的安全裝置。6.一種安全控制方法,其特征在于,所述方法包括: 應用模塊接收至少一個安全認證信息,對所述每一個安全認證信息進行認證,如果認證通過,將認證通過的安全認證信息對應的安全狀態(tài)置為認證通過狀態(tài),如果認證不通過,將認證不通過的安全認證信息對應的安全狀態(tài)置為認證未通過狀態(tài),將所述安全狀態(tài)存儲在存儲區(qū)域; 所述應用模塊接收指令,將所述指令發(fā)送至所述安全控制模塊; 所述安全控制模塊接收所述指令,查找所述存儲區(qū)域中存儲的與所述指令相對應的安全狀態(tài),判斷所述安全狀態(tài)是否為認證通過狀態(tài); 在所述安全控制模塊判斷出所述安全狀態(tài)為認證通過狀態(tài)時,所述應用模塊調用底層驅動t吳塊; 所述底層驅動模塊響應所述應用模塊的調用,并將響應結果返回至所述應用模塊。7.根據權利要求6所述的安全控制方法,其特征在于,在所述應用模塊接收指令之后,所述方法還包括: 所述應用模塊分析是否有相應的指令或指令接口,如果存在相應的所述指令或所述指令接口,觸發(fā)所述將所述指令發(fā)送至所述安全控制模塊的步驟。8.根據權利要求6或7所述的安全控制方法,其特征在于,所述安全認證信息為PIN碼或生物特征信息或根據認證密鑰獲得的信息。9.根據權利要求6或7所述的安全控制方法,其特征在于,所述底層驅動模塊,包括:安全算法庫和/或文件系統(tǒng); 在所述安全控制模塊判斷出所述安全狀態(tài)為認證通過狀態(tài)時,所述應用模塊調用底層驅動t吳塊,包括: 在所述安全控制模塊判斷出所述安全狀態(tài)為認證通過狀態(tài)時,所述應用模塊調用所述安全算法庫和/或所述文件系統(tǒng)。
【文檔編號】G06F21/45GK106022095SQ201610041556
【公開日】2016年10月12日
【申請日】2016年1月21日
【發(fā)明人】李明
【申請人】李明