TWI720738B - 結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法 - Google Patents
結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法 Download PDFInfo
- Publication number
- TWI720738B TWI720738B TW108145936A TW108145936A TWI720738B TW I720738 B TWI720738 B TW I720738B TW 108145936 A TW108145936 A TW 108145936A TW 108145936 A TW108145936 A TW 108145936A TW I720738 B TWI720738 B TW I720738B
- Authority
- TW
- Taiwan
- Prior art keywords
- certificate
- request
- client
- identity
- server
- Prior art date
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一種結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法,其透過客戶端使用與線上快速認證(FIDO)架構相容之服務請求將公鑰基礎架構(PKI)的憑證簽署要求(CSR)傳送至支援線上快速認證之身分認證伺服器,身分認證伺服器將服務請求中的憑證簽署要求轉送給憑證管理伺服器以進行憑證申請後,客戶端可以產生與線上快速認證架構相容且包含憑證驗證請求的服務請求,使身分認證伺服器將接收自客戶端之服務請求中的憑證驗證請求轉送給憑證驗證伺服器以進行客戶端的身分驗證之技術手段,可以使用生物特徵保護私鑰,並達成無密碼完成身分識別的技術功效。
Description
一種身分識別裝置及其方法,特別係指一種結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法。
公鑰基礎架構(Public Key Infrastructure, PKI),又稱公開金鑰基礎架構、公開金鑰基礎建設、公鑰基礎建設、公鑰基礎設施、或公開密碼基礎建設等,是一組由硬體、軟體、參與者、管理政策與流程組成的基礎架構,其目的在於創造、管理、分配、使用、儲存以及復原數位憑證。由密碼學的角度,公開金鑰基礎建設藉著數位憑證認證機構(CA)將使用者的個人身分跟公開金鑰鏈結在一起。同時,對每個認證機構而言,使用者的身分必須是唯一的。
一般在使用公鑰基礎架構的過程中,使用者在產生金鑰對並進行憑證申請時,需要建立一組密碼,並使用所建立的密碼存取金鑰對中的私鑰。然而,隨著竊聽、盜錄等影響網路安全的技術不斷進步,單純使用密碼的安全性已經不再足夠,因此,使用密碼保護私鑰之公鑰基礎架構的安全性也可能受到挑戰。
綜上所述,可知先前技術中長期以來一直存在公鑰基礎架構使用密碼保護私鑰可能已不夠安全的問題,因此有必要提出改進的技術手段,來解決此一問題。
有鑒於先前技術存在公鑰基礎架構使用密碼保護私鑰可能已不夠安全的問題,本發明遂揭露一種結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法,其中:
本發明所揭露之結合線上快速認證及公鑰基礎架構以識別身分之裝置,至少包含:金鑰產生模組,用以產生包含公鑰及私鑰之金鑰對;認證產生模組,用以產生認證資訊,該認證資訊包含識別碼,且與線上快速認證(Fast IDentity Online, FIDO)架構相容;請求產生模組,用以產生憑證簽署要求(Certificate Signing Request, CSR)及第一服務請求,第一服務請求包含憑證簽署要求、公鑰及認證資訊;通訊模組,用以連線至身分認證伺服器,及用以透過身分認證伺服器傳送第一服務請求至憑證管理伺服器,並接收憑證管理伺服器所傳回之目標憑證;特徵輸入模組,用以輸入生物特徵,並使用生物特徵取得私鑰及識別碼,使請求產生模組產生包含目標憑證之憑證驗證請求,及用以產生一第二服務請求,使通訊模組透過身分認證伺服器傳送憑證驗證請求至憑證驗證伺服器,並接收憑證驗證伺服器所傳回之驗證結果,第二服務請求包含公鑰、憑證驗證請求及識別碼;作業處理模組,用以依據驗證結果選擇是否執行對應作業。
本發明所揭露之結合線上快速認證及公鑰基礎架構以識別身分之方法,其步驟至少包括:客戶端產生金鑰對及認證資訊,金鑰對包含公鑰及私鑰,認證資訊包含識別碼,且認證資訊與線上快速認證架構相容;客戶端產生憑證簽署要求及第一服務請求,並傳送第一服務請求至身分認證伺服器,第一服務請求包含憑證簽署要求、公鑰及認證資訊;身分認證伺服器判斷接收到第一服務請求時,傳送憑證簽署要求至憑證管理伺服器,並將憑證管理伺服器所傳回之目標憑證傳送至客戶端;客戶端輸入生物特徵,並使用生物特徵取得私鑰及識別碼;客戶端取得目標憑證,並產生包含目標憑證之憑證驗證請求;客戶端產生第二服務請求,並傳送第二服務請求至身分認證伺服器,第二服務請求包含公鑰、憑證驗證請求及識別碼;身分認證伺服器判斷接收到憑證驗證請求時,傳送憑證驗證請求至憑證驗證伺服器,並將憑證驗證伺服器所傳回之驗證結果傳送至客戶端;客戶端依據驗證結果選擇是否執行對應作業。
本發明所揭露之裝置與方法如上,與先前技術之間的差異在於本發明透過客戶端使用與線上快速認證架構相容之服務請求將公鑰基礎架構的憑證簽署要求傳送至支援線上快速認證之身分認證伺服器,身分認證伺服器將憑證簽署要求轉送給憑證管理伺服器以進行憑證申請後,客戶端可以產生與線上快速認證架構相容且包含憑證驗證請求之服務請求,並將服務請求傳送至身分認證伺服器,使身分認證伺服器將接收自客戶端的憑證驗證請求轉送給憑證驗證伺服器以進行客戶端的身分驗證,藉以解決先前技術所存在的問題,並可以達成無密碼完成身分識別的技術功效。
以下將配合圖式及實施例來詳細說明本發明之特徵與實施方式,內容足以使任何熟習相關技藝者能夠輕易地充分理解本發明解決技術問題所應用的技術手段並據以實施,藉此實現本發明可達成的功效。
本發明可以將線上快速認證(Fast IDentity Online, FIDO)架構與公鑰基礎架構(Public Key Infrastructure, PKI)結合,使得公鑰基礎架構中使用密碼存取私鑰的方式可以改為如線上快速認證架構使用生物特徵存取私鑰的方式,並可以將線上快速認證架構中集中由伺服器進行註冊與驗證的機制改為如公鑰基礎架構的分散式機制,藉以同時使用線上快速認證架構與公鑰基礎架構的優點提供更安全的身分認證機制。其中,本發明所提之生物特徵包含但不限於指紋、虹膜、人臉等。
以下先以「第1圖」本發明所提之結合線上快速認證及公鑰基礎架構以識別身分之系統架構圖來說明本發明的系統運作。如「第1圖」所示,本發明之系統含有身分認證伺服器110、憑證管理伺服器150、憑證驗證伺服器160、及客戶端200。其中,身分認證伺服器110、憑證管理伺服器150、憑證驗證伺服器160、及客戶端200通常是計算設備。
本發明所提之計算設備包含但不限於一個或多個處理器、一個或多個記憶體模組、以及連接不同元件(包括記憶體模組和處理器)的匯流排等元件。透過所包含之多個元件,計算設備可以載入並執行作業系統,使作業系統在計算設備上運行,也可以執行軟體或程式。另外,計算設備也包含一個外殼,上述之各個元件設置於外殼內。
本發明所提之計算設備的匯流排可以包含一種或多個類型,例如包含資料匯流排(data bus)、位址匯流排(address bus)、控制匯流排(control bus)、擴充功能匯流排(expansion bus)、及/或局域匯流排(local bus)等類型的匯流排。計算設備的匯流排包括但不限於並列的工業標準架構(ISA)匯流排、周邊元件互連(PCI)匯流排、視頻電子標準協會(VESA)局域匯流排、以及串列的通用序列匯流排(USB)、快速周邊元件互連(PCI-E)匯流排等。
本發明所提之計算設備的處理器與匯流排耦接。處理器包含暫存器(Register)組或暫存器空間,暫存器組或暫存器空間可以完全的被設置在處理晶片上,或全部或部分被設置在處理晶片外並經由專用電氣連接及/或經由匯流排耦接至處理器。處理器可為處理單元、微處理器或任何合適的處理元件。若計算設備為多處理器設備,也就是計算設備包含多個處理器,則計算設備所包含的處理器都相同或類似,且透過匯流排耦接與通訊。處理器可以解釋一連串的多個指令以進行特定的運算或操作,例如,數學運算、邏輯運算、資料比對、複製/移動資料等,藉以運行作業系統或執行各種程式、模組、及/或元件。
計算設備的處理器可以與晶片組耦接或透過匯流排與晶片組電性連接。晶片組是由一個或多個積體電路(IC)組成,包含記憶體控制器以及周邊輸出入(I/O)控制器,也就是說,記憶體控制器以及周邊輸出入控制器可以包含在一個積體電路內,也可以使用兩個或更多的積體電路實現。晶片組通常提供了輸出入和記憶體管理功能、以及提供多個通用及/或專用暫存器、計時器等,其中,上述之通用及/或專用暫存器與計時器可以讓耦接或電性連接至晶片組的一個或多個處理器存取或使用。
計算設備的處理器也可以透過記憶體控制器存取安裝於計算設備上的記憶體模組和大容量儲存區中的資料。上述之記憶體模組包含任何類型的揮發性記憶體(volatile memory)及/或非揮發性記憶體(non-volatile memory, NVRAM),例如靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、快閃記憶體(Flash)、唯讀記憶體(ROM)等。上述之大容量儲存區可以包含任何類型的儲存裝置或儲存媒體,例如,硬碟機、光碟片、隨身碟(快閃記憶體)、記憶卡(memory card)、固態硬碟(Solid State Disk, SSD)、或任何其他儲存裝置等。也就是說,記憶體控制器可以存取靜態隨機存取記憶體、動態隨機存取記憶體、快閃記憶體、硬碟機、固態硬碟中的資料。
計算設備的處理器也可以透過周邊輸出入控制器經由周邊輸出入匯流排與周邊輸出裝置、周邊輸入裝置、通訊介面等周邊裝置或介面連接並通訊。周邊輸入裝置可以是任何類型的輸入裝置,例如鍵盤、滑鼠、軌跡球、觸控板、搖桿、GPS接收器等,周邊輸出裝置可以是任何類型的輸出裝置,例如顯示器、印表機等,周邊輸入裝置與周邊輸出裝置也可以是同一裝置,例如觸控螢幕等。通訊介面可以包含無線通訊介面及/或有線通訊介面,無線通訊介面可以包含支援Wi-Fi、Zigbee等無線區域網路、藍牙、紅外線、近場通訊(NFC)、3G/4G/5G等行動通訊網路或其他無線資料傳輸協定的介面,有線通訊介面可為乙太網路裝置、非同步傳輸模式(ATM)裝置、DSL數據機、纜線(Cable)數據機等。處理器可以週期性地輪詢(polling)各種周邊裝置與介面,使得計算設備能夠透過各種周邊裝置與介面進行資料的輸入與輸出,也能夠與具有上面描述之元件的另一個計算設備進行通訊。
身分認證伺服器110透過有線或無線網路與憑證管理伺服器150、憑證驗證伺服器160、及客戶端200連接。
身分認證伺服器110可以判斷客戶端200所傳送之服務請求的服務類型,當服務請求之服務類型為FIDO架構的服務時,身分認證伺服器110自身可以依據客戶端200所傳送的資料或訊號提供對應的FIDO服務,例如註冊服務請求所包含的公鑰等;而當服務請求之服務類型為憑證管理或憑證驗證的服務時,身分認證伺服器110可以將客戶端200所傳送的憑證相關請求轉送給憑證管理伺服器150或憑證驗證伺服器160,並可以將憑證管理伺服器150或憑證驗證伺服器160所產生的資料或訊號轉送回客戶端200。
身分認證伺服器110也可以產生挑戰值(challenge),並可以產生包含所產生之挑戰值及其他參數的確認資料(如FIDO架構中的註冊請求),及可以將所產生的確認資料傳送給客戶端200。
憑證管理伺服器150可以透過有線或無線網路與身分認證伺服器110連接,也可以接收身分認證伺服器110所傳送之資料或訊號,並可以傳送資料或訊號給身分認證伺服器110。
憑證管理伺服器150負責接收身分認證伺服器110所傳送的憑證管理請求,並提供與所接收到之憑證管理請求相對應的憑證管理服務。其中,憑證管理請求包含但不限於申請憑證的憑證簽署要求、查詢憑證的憑證查詢要求、更新憑證的憑證更新要求;憑證管理服務包含但不限於憑證查詢、憑證申請、憑證展期/更新等。
更詳細的,憑證管理伺服器150可以是憑證認證伺服器、或可以包含透過有線或無線網路連接的憑證註冊伺服器及憑證認證伺服器。當憑證管理伺服器150為憑證認證伺服器時,憑證管理伺服器150可以處理接收到的所有憑證管理請求(如讀取數位憑證的效期/狀態、簽發數位憑證、延展數位憑證的效期等)並產生相對應的處理結果,及可以將所產生之處理結果透過身分認證伺服器110傳回客戶端200。而若憑證管理伺服器150包含憑證註冊伺服器及憑證認證伺服器,則憑證註冊伺服器可以與身分認證伺服器110連接,在接收到身分認證伺服器110所傳送的憑證管理請求時,可以依據所接收到的憑證管理請求選擇是否由自身處理或是轉送憑證認證伺服器處理。例如,當憑證管理請求為憑證效期/狀態查詢時,憑證註冊伺服器可以選擇自身處理,也就是讀取憑證的效期/狀態並透過身分認證伺服器110將所讀出之憑證的效期/狀態傳回客戶端200;又如,當憑證管理請求為憑證申請時,憑證註冊伺服器可以選擇將憑證處理請求轉送給憑證認證伺服器處理,也就是當身分認證伺服器110轉送客戶端200所發出之憑證簽署要求(Certificate Signing Request, CSR)給憑證註冊伺服器時,憑證註冊伺服器可以將憑證簽署要求傳送給憑證認證伺服器,使憑證認證伺服器依據憑證簽署要求中的資料簽發數位憑證,並透過憑證註冊伺服器及身分認證伺服器110將所簽發的數位憑證傳回發出憑證簽署要求的客戶端200。在本發明中,憑證認證伺服器所簽發的數位憑證也被稱為目標憑證。
憑證驗證伺服器160透過有線或無線網路與身分認證伺服器110連接,負責依據身分認證伺服器110所傳送之資料或訊號提供對應的憑證驗證服務。例如,當身分認證伺服器110轉送客戶端200所發出之憑證驗證請求至憑證驗證伺服器160時,憑證驗證伺服器160可以依據憑證驗證請求中的簽章值對憑證驗證請求中的資料進行驗證,並透過身份認證伺服器110將驗證結果傳回發出憑證驗證請求的客戶端200。
客戶端200可以透過有線或無線網路與身分認證伺服器110連接。其中,需要特別說明的是,客戶端200不論是向身分認證伺服器110請求FIDO服務或是憑證相關服務,傳送給身分認證伺服器110的封包都會符合FIDO架構所定義的格式。
客戶端200可以提供使用者申請數位憑證並註冊FIDO服務,也可以提供使用者透過FIDO服務使用數位憑證。其中,客戶端200可以如「第2圖」之元件示意圖所示,包含安全元件201、金鑰產生模組220、認證產生模組230、通訊模組240、特徵輸入模組260、請求產生模組280、作業處理模組290,以及可以附加的判斷模組、簽章模組270。
金鑰產生模組220負責產生金鑰對,金鑰產生模組220所產生的金鑰對包含公鑰(public key)及私鑰(private key)。金鑰產生模組220所產生的金鑰對可以在FIDO架構中使用,也就是說,金鑰產生模組220可以使用任何一種橢圓曲線密碼學(Elliptic Curve Cryptography, ECC)的演算法產生金鑰對。
一般而言,金鑰產生模組220所產生的私鑰可以被儲存在客戶端200的安全元件201中。其中,本發明所提之安全元件201可以是硬體元件,如可信平台模組(Trusted Platform Module, TPM)、可信賴執行環境(Trusted Execution Environment, TEE)、或特定的晶片等,也可以是由作業系統或軟體程式模擬出之可讀寫特定儲存空間的虛擬元件,本發明沒有特別的限制。
認證產生模組230負責產生認證資訊。認證產生模組230所產生的認證資訊與FIDO架構相容。其中,認證產生模組230所產生的認證資訊可以包含識別碼(rawID)。在多數實施例中,認證資訊也可以包含簽章模組270對身分認證伺服器110所產生之確認資料簽章而產生的第一簽章值。
認證產生模組230所產生之識別碼為唯一值,通常可以代表客戶端200的使用者。一般而言,認證產生模組230可以使用使用者識別資料、隨機資料、時間戳記、及/或執行本發明之裝置(也就是客戶端200)的裝置識別資料等資料產生識別碼,例如對上述一個或多個資料進行Base64編碼等,但認證產生模組230產生識別碼之資料與方式並不以上述為限。其中,使用者識別資料包含但不限於客戶端200之使用者的身分證號、護照號碼、簽證號碼等;裝置識別資料包含但不限於客戶端200的產品序號、客戶端200上之特定硬體元件的序號等。
認證產生模組230也可以將所產生的識別碼及金鑰產生模組220所產生的私鑰儲存至安全元件201中。一般而言,認證產生模組230可以呼叫FIDO的應用程式介面(API)將識別碼及私鑰儲存至安全元件201中。
通訊模組240負責與身分認證伺服器110連接。通訊模組240可以在與身分認證伺服器110連接後,將請求產生模組280所產生之FIDO架構的服務請求傳送給身分認證伺服器110,並可以接收身分認證伺服器110所傳回的執行結果。
通訊模組240也可以將請求產生模組280所產生之憑證管理請求(如憑證簽署要求)以格式與FIDO架構相容之服務請求傳送給身分認證伺服器110,使得身分認證伺服器110將憑證管理請求轉送給憑證管理伺服器150,並可以接收憑證管理伺服器150透過身分認證伺服器110所傳回的目標憑證。
相似的,通訊模組240也可以將請求產生模組280所產生之憑證驗證請求以格式與FIDO架構相容之服務請求傳送給身分認證伺服器110,使得身分認證伺服器110將憑證驗證請求轉送給憑證驗證伺服器160,並可以接收憑證驗證伺服器160透過身分認證伺服器110所傳回的驗證結果。
特徵輸入模組260負責輸入生物特徵,也負責使用所輸入的生物特徵取得安全元件201所儲存之金鑰產生模組220所產生的私鑰及認證產生模組230所產生的識別碼。一般而言,特徵輸入模組260可以呼叫FIDO的應用程式介面(API),藉以取得儲存於安全元件201中的私鑰與識別碼。
判斷模組可以取得使用者識別資料,並判斷所取得之使用者識別資料是否與特徵輸入模組260所讀出之識別碼相符,例如,判斷模組250可以判斷識別碼是否包含使用者識別資料。
簽章模組270可以使用金鑰產生模組220所產生的私鑰對通訊模組240接收自身分認證伺服器110的第一確認資料簽章以產生第一簽章值。
簽章模組270也可以使用特徵輸入模組260所取得的私鑰對通訊模組240接收自身分認證伺服器110的第二確認資料或預先產生的交易資料簽章以產生第二簽章值。
請求產生模組280負責產生憑證簽署要求,也負責產生第一服務請求。請求產生模組280所產生的第一服務請求包含所產生的憑證簽署要求、金鑰產生模組220所產生的公鑰、及認證產生模組230所產生的認證資訊。
請求產生模組280也負責取得通訊模組240所接收到的目標憑證並產生憑證驗證請求。請求產生模組280所產生的憑證驗證請求包含所取得的目標憑證。在大多數的實施例中,憑證驗證請求也包含通訊模組240接收自身分認證伺服器110的第二確認資料或預先產生的交易資料、及簽章模組270所產生的第二簽章值。
請求產生模組280也負責產生第二服務請求。請求產生模組所產生的第二服務請求包含所產生的憑證驗證請求、金鑰產生模組220所產生的公鑰、及特徵輸入模組260所取得的識別碼。
在部分的實施例中,請求產生模組280是在判斷模組250判斷使用者識別資料與識別碼相符後,才產生憑證驗證請求及第二服務請求。
作業處理模組290負責依據通訊模組240所接收到的驗證結果選擇是否執行對應作業。
接著以一個實施例來解說本發明的運作裝置與方法,並請參照「第3A圖」本發明所提之結合線上快速認證及公鑰基礎架構以識別身分之方法流程圖。在本實施例中,假設客戶端200為智慧型手機,並假設客戶端200中安裝有包含本發明的應用程式,且本發明是以元件或動態連結函式庫等方式包含在應用程式中,但本發明並不以為限。其中,應用程式可以是瀏覽器APP、行動銀行APP、購物APP、或繳稅APP等,本發明亦不以此為限。
當客戶端200執行應用程式時,本發明上述之各模組可以被產生。在客戶端200的使用者使用安裝於客戶端200中之應用程式的過程中,若使用者選擇註冊客戶端200使用FIDO服務。客戶端200中的應用程式可以提供使用者進行裝置綁定作業。
首先,客戶端200的金鑰產生模組220可以產生金鑰對,且客戶端200的認證產生模組230可以產生認證資訊(步驟310)。在本實施例中,假設金鑰產生模組220可以透過FIDO指令使用橢圓曲線密碼學演算法產生金鑰對,認證產生模組230可以讀取或提供使用者輸入使用者識別資料,並產生包含使用者識別資料的識別碼,並可以透過客戶端200的通訊模組240連線至身分認證伺服器110取得包含第一挑戰值(challenge)的第一確認資料,接著,簽章模組270可以使用金鑰產生模組220所產生之私鑰對第一確認資料簽章而產生第一簽章值,認證產生模組230可以產生包含第一簽章值及識別碼的認證資訊,並呼叫FIDO的應用程式介面(API),藉以將所產生的識別碼及金鑰產生模組220所產生的私鑰儲存在客戶端200的安全元件中。其中,客戶端200的安全元件為晶片等硬體元件。
在客戶端200中的金鑰產生模組220產生金鑰對,且客戶端200中的認證產生模組230產生認證資訊(步驟310)後,客戶端200中的請求產生模組280可以產生包含金鑰產生模組220所產生之公鑰的憑證簽署要求,客戶端200中的通訊模組240可以將金鑰產生模組220所產生之公鑰、認證產生模組230所產生之認證資訊及請求產生模組280所產生的憑證簽署要求作為第一服務請求傳送給身分認證伺服器110(步驟320),藉以讓客戶端200向身分認證伺服器110註冊使用FIDO服務,同時透過身分認證伺服器110向憑證管理伺服器150申請數位憑證。
在身分認證伺服器110接收到客戶端200所傳送的服務請求後,身分認證伺服器110可以判斷客戶端200所傳送的服務請求包含認證資訊及憑證簽署要求,因此,身分認證伺服器110可以依據認證資訊註冊服務請求所包含的公鑰,並可以將所接收到的憑證簽署要求傳送給憑證管理伺服器150。
憑證管理伺服器150在接收到身分認證伺服器110所傳送的憑證簽署要求後,可以由所接收到的憑證簽署要求中取得客戶端200所產生的公鑰等資料,並進行簽署以產生目標憑證,以及將所產生的目標憑證傳回身分認證伺服器110。身分認證伺服器110在接收到憑證管理伺服器150所傳送的目標憑證後,可以將所接收到的目標憑證傳送給客戶端200(步驟330)。在本實施例中,假設憑證管理伺服器150包含憑證註冊伺服器與憑證認證伺服器,則在憑證註冊伺服器接收到身分認證伺服器所傳送的憑證簽署要求後,可以產生包含所接收到之憑證簽署要求的憑證申請資料,並對所產生之憑證申請資料簽章後,產生將憑證申請資料及相對應的簽章值傳送給憑證認證伺服器。之後,憑證認證伺服器可以在使用所接收到的簽章值成功驗證所接收到的憑證申請資料後,對憑證簽署要求中的公鑰簽章,並產生包含憑證簽署要求中之公鑰及相對應之簽章值的目標憑證,及將目標憑證傳回憑證註冊伺服器,使憑證註冊伺服器將目標憑證傳送給身分認證伺服器110。
在客戶端200中的通訊模組240接收到身分認證伺服器110所傳送的目標憑證後,可以儲存所接收到的目標憑證,例如將目標憑證儲存在應用程式中,如此,客戶端200(應用程式)便完成裝置綁定作業。
在客戶端200(應用程式)完成裝置綁定作業之後,若在使用者使用應用程式的過程中,客戶端200(應用程式)要求使用者進行身份識別,例如,要求使用者登入或要求確認使用者的身分等,此時,客戶端200(應用程式)可以提供如帳號密碼認證、社群網站認證及FIDO認證等多種身分識別方式給使用者選擇。假設使用者選擇使用FIDO認證進行身份識別,則客戶端200中的特徵輸入模組260可以提供使用者輸入生物特徵,並可以使用使用者所輸入的生物特徵由客戶端200的安全元件中取得客戶端200中之金鑰產生模組220所產生的私鑰及客戶端200之認證產生模組230所產生的識別碼(步驟340)。在本實施例中,假設特徵輸入模組260提供使用者輸入的生物特徵為指紋,特徵輸入模組260可以呼叫FIDO應用程式介面(API)以讀取儲存於安全元件中的識別碼與私鑰。
若客戶端200的應用程式中包含判斷模組250,則判斷模組250可以判斷使用者是否曾經註冊客戶端200使用FIDO服務。在本實施例中,假設判斷模組250可以如「第3B圖」之流程所示,讀取預先儲存的使用者識別資料或提供使用者輸入以取得使用者識別資料(步驟351),並可以判斷特徵輸入模組260所取得之識別碼是否與使用者識別資料相符(步驟355),也就是判斷識別碼是否包含使用者識別資料。
若客戶端200之特徵輸入模組260所取得之識別碼未與客戶端200之判斷模組250所取得的使用者識別資料相符,則客戶端200中的判斷模組250判斷使用者未曾註冊客戶端200使用FIDO服務,客戶端200的應用程式可以進行上述裝置綁定作業(步驟310~330)。
若客戶端200的應用程式中沒有包含判斷模組250,或是客戶端200之特徵輸入模組260所取得之識別碼與客戶端200之判斷模組250所取得的使用者識別資料對應,也就是判斷模組250判斷使用者已註冊客戶端200使用FIDO服務,則客戶端200中的請求產生模組280可以產生憑證驗證請求(步驟360)。在本實施例中,假設請求產生模組280可以先透過通訊模組240連線至身分認證伺服器110取得包含第二挑戰值的第二確認資料,並在簽章模組270使用特徵輸入模組260所取得之私鑰對第二確認資料簽章而產生第二簽章值後,依據判斷模組250所取得之使用者識別資料讀取被儲存的目標憑證,並產生包含所取得之目標憑證、簽章模組270所產生之交易簽章值(若有交易資料,則交易簽章值是由請求產生模組280使用特徵輸入模組260所取得之私鑰對交易資料簽章所產生,若沒有交易資料,則交易簽章值為第二簽章值)、及通訊模組240所取得之第二確認資料的憑證驗證請求。
在客戶端200中的請求產生模組280產生憑證驗證請求(步驟360)後,可以產生包含所產生之憑證驗證請求的認證資訊,並產生包含公鑰及認證資訊的第二服務請求,及可以將所產生的第二服務請求傳送給身分認證伺服器110(步驟370)。在本實施例中,假設請求產生模組280可以產生以clientData欄位記錄所產生之第二簽章值、所產生之憑證驗證請求、及特徵輸入模組260所取得之識別碼的認證資訊,並產生包含所產生之認證資訊及金鑰產生模組220所產生之公鑰的服務請求。
在身分認證伺服器110接收到客戶端200所傳送的服務請求後,身分認證伺服器110可以由客戶端200所傳送的服務請求中讀出認證資訊,並判斷認證資訊包含憑證驗證請求,因此可以將認證資訊所包含的憑證驗證請求傳送給憑證驗證伺服器160。
憑證驗證伺服器160在接收到身分認證伺服器110所傳送的憑證驗證請求後,可以由所接收到的憑證驗證請求中取得公鑰與交易簽章值等資料,並依據所取得之公鑰與交易簽章值進行驗證以產生驗證結果,以及將所產生的驗證結果傳回身分認證伺服器110。身分認證伺服器110在接收到憑證驗證伺服器160所產生的驗證結果後,可以將所接收到的驗證結果傳送給客戶端200(步驟380)。
在客戶端200中的通訊模組240接收到身分認證伺服器110所傳送的驗證結果後,便完成身分驗證作業。客戶端200中的作業處理模組290可以依據驗證結果選擇是否進行相對應的作業(步驟390),例如,作業處理模組290可以在驗證結果表示通過驗證時,也就是使用者成功登入或使用者身分確認正確時,執行金融交易、線上付款、服務申請等作業;而若驗證結果表示沒有通過驗證,則作業處理模組290可以顯示身分驗證失敗。
如此,透過本發明,便可以結合FIDO與公鑰基礎架構的優點,使得公鑰基礎架構使用生物特徵才能取得私鑰進行憑證作業,也將FIDO架構中的認證機制分散到各個憑證驗證伺服器進行,並可以在FIDO架構下進行憑證管理與驗證。
綜上所述,可知本發明與先前技術之間的差異在於具有客戶端使用與線上快速認證(FIDO)架構相容之服務請求將公鑰基礎架構的憑證簽署要求(CSR)傳送至支援線上快速認證之身分認證伺服器,身分認證伺服器將服務請求中的憑證簽署要求轉送給憑證管理伺服器以進行憑證申請後,客戶端可以產生與線上快速認證架構相容且包含憑證驗證請求之服務請求,並將服務請求傳送至身分認證伺服器,使身分認證伺服器將服務請求中的憑證驗證請求轉送給憑證驗證伺服器以進行客戶端之身分驗證之技術手段,藉由此一技術手段可以解決先前技術所存在公鑰基礎架構使用密碼保護私鑰可能已不夠安全的問題,進而達成無密碼完成身分識別的技術功效。
再者,本發明之結合線上快速認證及公鑰基礎架構以識別身分之方法,可實現於硬體、軟體或硬體與軟體之組合中,亦可在電腦裝置中以集中方式實現或以不同元件散佈於若干互連之電腦裝置的分散方式實現。
雖然本發明所揭露之實施方式如上,惟所述之內容並非用以直接限定本發明之專利保護範圍。任何本發明所屬技術領域中具有通常知識者,在不脫離本發明所揭露之精神和範圍的前提下,對本發明之實施的形式上及細節上作些許之更動潤飾,均屬於本發明之專利保護範圍。本發明之專利保護範圍,仍須以所附之申請專利範圍所界定者為準。
110:身分認證伺服器
150:憑證管理伺服器
160:憑證驗證伺服器
200:客戶端
201:安全元件
220:金鑰產生模組
230:認證產生模組
240:通訊模組
250:判斷模組
260:特徵輸入模組
270:簽章模組
280:請求產生模組
290:作業處理模組
步驟310:客戶端產生金鑰對及認證資訊,認證資訊包含識別碼
步驟320:客戶端產生包含憑證簽署要求之第一服務請求並傳送第一服務請求至身分認證伺服器
步驟330:身分認證伺服器傳送憑證簽署要求至憑證管理伺服器並將憑證管理伺服器所傳回之目標憑證傳送至客戶端
步驟340:客戶端輸入生物特徵,並使用生物特徵取得私鑰及識別碼
步驟351:客戶端讀取使用者識別資料
步驟355:客戶端判斷使用者識別資料是否與識別碼相符
步驟360:客戶端產生包含目標憑證之憑證驗證請求
步驟370:客戶端產生並傳送第二服務請求至身分認證伺服器,第二服務請求包含公鑰、憑證驗證請求、識別碼
步驟380:身分認證伺服器傳送憑證驗證請求至憑證驗證伺服器並將憑證驗證伺服器所傳回之驗證結果傳送至客戶端
步驟390:客戶端依據驗證結果選擇是否執行對應作業
第1圖為本發明所提之結合線上快速認證及公鑰基礎架構以識別身分之系統架構圖。
第2圖為本發明所提之結合線上快速認證及公鑰基礎架構以識別身分之裝置之元件示意圖。
第3A圖為本發明所提之結合線上快速認證及公鑰基礎架構以識別身分之方法流程圖。
第3B圖為本發明所提之結合線上快速認證及公鑰基礎架構以識別身分之附加方法流程圖。
步驟310:客戶端產生金鑰對及認證資訊,認證資訊包含識別碼
步驟320:客戶端產生包含憑證簽署要求之第一服務請求並傳送第一服務請求至身分認證伺服器
步驟330:身分認證伺服器傳送憑證簽署要求至憑證管理伺服器並將憑證管理伺服器所傳回之目標憑證傳送至客戶端
步驟340:客戶端輸入生物特徵,並使用生物特徵取得私鑰及識別碼
步驟360:客戶端產生包含目標憑證之憑證驗證請求
步驟370:客戶端產生並傳送第二服務請求至身分認證伺服器,第二服務請求包含公鑰、憑證驗證請求、識別碼
步驟380:身分認證伺服器傳送憑證驗證請求至憑證驗證伺服器並將憑證驗證伺服器所傳回之驗證結果傳送至客戶端
步驟390:客戶端依據驗證結果選擇是否執行對應作業
Claims (10)
- 一種結合線上快速認證及公鑰基礎架構以識別身分之裝置,該裝置至少包含:一金鑰產生模組,用以產生一金鑰對,該金鑰對包含一公鑰及一私鑰;一認證產生模組,用以產生一認證資訊,該認證資訊包含一識別碼,且與線上快速認證架構(Fast IDentity Online,FIDO)相容;一請求產生模組,用以產生一憑證簽署要求(Certificate Signing Request,CSR)及一第一服務請求,其中,該第一服務請求包含該憑證簽署要求、該公鑰及該認證資訊;一通訊模組,用以連線至一身分認證伺服器,及用以透過該身分認證伺服器傳送該第一服務請求至一憑證管理伺服器,並接收該憑證管理伺服器所傳回之一目標憑證;一特徵輸入模組,用以輸入一生物特徵,並使用該生物特徵取得該私鑰及該識別碼,使該請求產生模組取得該目標憑證並使用該私鑰產生包含該目標憑證之一憑證驗證請求,及用以產生一第二服務請求,使該通訊模組透過該身分認證伺服器傳送該第二服務請求至該憑證驗證伺服器,並接收該憑證驗證伺服器所傳回之一驗證結果,其中,該第二服務請求包含該公鑰、該憑證驗證請求、及該識別碼;及一作業處理模組,用以依據該驗證結果選擇是否執行對應作業。
- 如申請專利範圍第1項所述之結合線上快速認證及公鑰基礎架構以識別身分之裝置,其中該裝置更包含一簽章模組,用以使用該私鑰對該通訊模組至該身分認證伺服器取得之第一確認資料簽章以產生一第一簽章值,該認 證產生模組更用以產生包含使用者識別資料、隨機資料、時間戳記、及/或該裝置之裝置識別資料之該識別碼,並產生包含該第一簽章值及該識別碼之該認證資訊。
- 如申請專利範圍第1項所述之結合線上快速認證及公鑰基礎架構以識別身分之裝置,其中該裝置更包含一判斷模組,用以取得一使用者識別資料,並判斷該使用者識別資料與該識別碼是否相符,該請求產生模組更用以於該判斷模組判斷該使用者識別資料與該識別碼相符時產生該憑證驗證請求及該第二服務請求。
- 如申請專利範圍第1項所述之結合線上快速認證及公鑰基礎架構以識別身分之裝置,其中該裝置更包含一簽章模組,用以使用該私鑰對預先產生之一交易資料或該通訊模組至該身分認證伺服器取得之一第二確認資料簽章以產生一第二簽章值,該請求產生模組更用以產生包含該交易資料/該第二確認資料、該第二簽章值、及該目標憑證之該憑證驗證請求。
- 如申請專利範圍第1項所述之結合線上快速認證及公鑰基礎架構以識別身分之裝置,其中該裝置更包含一安全元件,該認證產生模組是透過呼叫FIDO應用程式介面(API)將該私鑰及該識別碼儲存於該安全元件中,該請求產生模組是呼叫FIDO應用程式介面讀取儲存於該安全元件中之該私鑰及該識別碼。
- 一種結合線上快速認證及公鑰基礎架構以識別身分之方法,該方法至少包含下列步驟:一客戶端產生一金鑰對及一認證資訊,該金鑰對包含一公鑰及一私鑰,該認證資訊包含一識別碼,且該認證資訊與線上快速認證架構相容; 該客戶端產生一憑證簽署要求及一第一服務請求,並傳送該第一服務請求至一身分認證伺服器,該第一服務請求包含該憑證簽署要求、該公鑰及該認證資訊;該身分認證伺服器判斷接收到該第一服務請求後,傳送該憑證簽署要求至一憑證管理伺服器,並將該憑證管理伺服器所傳回之一目標憑證傳送至該客戶端儲存;該客戶端輸入一生物特徵,並使用該生物特徵取得該私鑰及該識別碼;該客戶端取得該目標憑證,並使用該私鑰產生包含該目標憑證之一憑證驗證請求;該客戶端產生一第二服務請求,並傳送該第二服務請求至該身分認證伺服器,該第二服務請求包含該公鑰、該憑證驗證請求、及該識別碼;該身分認證伺服器判斷接收到該憑證驗證請求時,傳送該憑證驗證請求至一憑證驗證伺服器,並將該憑證驗證伺服器所傳回之一驗證結果傳送至該客戶端;及該客戶端依據該驗證結果選擇是否執行對應作業。
- 如申請專利範圍第6項所述之結合線上快速認證及公鑰基礎架構以識別身分之方法,其中該客戶端產生該認證資訊之步驟為產生包含使用者識別資料、隨機資料、時間戳記、及/或該客戶端之裝置識別資料之該識別碼,並至該身分認證伺服器取得一第一確認資料,及使用該私鑰對該第一確認資料簽章以產生一第一簽章值,並產生包含該第一簽章值及該識別碼之該認證資訊。
- 如申請專利範圍第6項所述之結合線上快速認證及公鑰基礎架構以識別身分之方法,其中該方法於該客戶端使用該生物特徵取得該私鑰及該識 別碼之步驟後,更包含該客戶端取得一使用者識別資料,並判斷該使用者識別資料與該識別碼是否相符之步驟。
- 如申請專利範圍第6項所述之結合線上快速認證及公鑰基礎架構以識別身分之方法,其中該客戶端產生該憑證驗證請求之步驟,更包含該客戶端取得預先產生之一交易資料或至該身分認證伺服器取得一第二確認資料,並使用該私鑰對該交易資料/該第二確認資料簽章以產生一第二簽章值後,產生包含該第二確認資料、該第二簽章值、及該目標憑證之該憑證驗證請求。
- 如申請專利範圍第6項所述之結合線上快速認證及公鑰基礎架構以識別身分之方法,其中該方法於該客戶端產生該金鑰對及該認證資訊之步驟後,更包含該客戶端呼叫FIDO應用程式介面儲存該私鑰及該識別碼至一安全元件之步驟,且該方法於該客戶端使用該生物特徵取得該私鑰之步驟為該客戶端呼叫FIDO應用程式介面讀取儲存於該安全元件中之該私鑰及該識別碼。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108145936A TWI720738B (zh) | 2019-12-16 | 2019-12-16 | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108145936A TWI720738B (zh) | 2019-12-16 | 2019-12-16 | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI720738B true TWI720738B (zh) | 2021-03-01 |
TW202125294A TW202125294A (zh) | 2021-07-01 |
Family
ID=76035807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108145936A TWI720738B (zh) | 2019-12-16 | 2019-12-16 | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI720738B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI843979B (zh) * | 2022-01-03 | 2024-06-01 | 玉山商業銀行股份有限公司 | 跨平台身分驗證的方法與系統 |
TWI844163B (zh) * | 2022-11-14 | 2024-06-01 | 合作金庫商業銀行股份有限公司 | 金融驗證系統 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI831646B (zh) * | 2023-03-15 | 2024-02-01 | 臺灣網路認證股份有限公司 | 憑證核發暨文件簽署之系統及其方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201430607A (zh) * | 2012-12-28 | 2014-08-01 | Nok Nok Labs Inc | 判定認證能力之查詢系統及方法 |
US20150294313A1 (en) * | 2014-04-14 | 2015-10-15 | Mastercard International Incorporated | Systems, apparatus and methods for improved authentication |
CN106330850A (zh) * | 2015-07-02 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 一种基于生物特征的安全校验方法及客户端、服务器 |
CN109784024A (zh) * | 2018-12-14 | 2019-05-21 | 航天信息股份有限公司 | 一种基于多认证器多因子的快速在线身份认证fido方法和系统 |
TWM594186U (zh) * | 2019-12-16 | 2020-04-21 | 臺灣網路認證股份有限公司 | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及系統 |
-
2019
- 2019-12-16 TW TW108145936A patent/TWI720738B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201430607A (zh) * | 2012-12-28 | 2014-08-01 | Nok Nok Labs Inc | 判定認證能力之查詢系統及方法 |
US20150294313A1 (en) * | 2014-04-14 | 2015-10-15 | Mastercard International Incorporated | Systems, apparatus and methods for improved authentication |
CN106330850A (zh) * | 2015-07-02 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 一种基于生物特征的安全校验方法及客户端、服务器 |
CN109784024A (zh) * | 2018-12-14 | 2019-05-21 | 航天信息股份有限公司 | 一种基于多认证器多因子的快速在线身份认证fido方法和系统 |
TWM594186U (zh) * | 2019-12-16 | 2020-04-21 | 臺灣網路認證股份有限公司 | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及系統 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI843979B (zh) * | 2022-01-03 | 2024-06-01 | 玉山商業銀行股份有限公司 | 跨平台身分驗證的方法與系統 |
TWI844163B (zh) * | 2022-11-14 | 2024-06-01 | 合作金庫商業銀行股份有限公司 | 金融驗證系統 |
Also Published As
Publication number | Publication date |
---|---|
TW202125294A (zh) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10535062B1 (en) | Using a contactless card to securely share personal data stored in a blockchain | |
TWI720738B (zh) | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及方法 | |
US11164179B2 (en) | Secure credential storage and retrieval | |
TWI754811B (zh) | 以裝置識別資料透過電信伺服器識別身份之系統及方法 | |
TWM594186U (zh) | 結合線上快速認證及公鑰基礎架構以識別身分之裝置及系統 | |
TWM539667U (zh) | 透過載具線上申請憑證以進行網路交易之系統 | |
TWI644276B (zh) | 於線上完成開戶並申請行動銀行之系統及其方法 | |
TWM606867U (zh) | 以線上快速認證之認證機制啟用數位憑證之系統 | |
TWM539668U (zh) | 於線上完成開戶並申請行動銀行之系統 | |
CN116628652A (zh) | 金融系统身份验证方法、装置、电子设备及存储介质 | |
TWM592629U (zh) | 身份確認時取得附加資料以執行對應作業之系統 | |
TWM580206U (zh) | System for identifying identity through device identification by device identification data | |
TWI730549B (zh) | 於憑證申請過程中確認金鑰對產生演算法之系統及方法 | |
TWI698823B (zh) | 於簽章時驗證使用者身分之系統及方法 | |
TWM603573U (zh) | 身分認證時產生授權內容以供交易前檢核之系統 | |
TWM607988U (zh) | 以線上快速認證之硬體載具認證並簽章之系統 | |
TWI813905B (zh) | 以線上快速認證之認證機制啟用數位憑證之系統及方法 | |
TWI754812B (zh) | 以裝置識別資料透過電信伺服器進行登入之系統及方法 | |
TWM588313U (zh) | 透過金融帳戶資料確認使用者身分之系統 | |
TWM583978U (zh) | 使用實體載具儲存數位憑證以進行線上交易之系統 | |
TWI777105B (zh) | 身份確認時取得附加資料以執行對應作業之系統及方法 | |
TWM586390U (zh) | 依服務指令進行身份確認以執行對應服務之系統 | |
TW201824129A (zh) | 透過載具線上申請憑證以進行網路交易之系統及其方法 | |
TWI745015B (zh) | 身分認證時產生授權內容以供交易前檢核之系統及方法 | |
TWM576681U (zh) | Computing device for verifying user identity at the time of signature |