TWI730549B - System for checking key pair generating algorithm during certificate applying process and method thereof - Google Patents

System for checking key pair generating algorithm during certificate applying process and method thereof Download PDF

Info

Publication number
TWI730549B
TWI730549B TW108146347A TW108146347A TWI730549B TW I730549 B TWI730549 B TW I730549B TW 108146347 A TW108146347 A TW 108146347A TW 108146347 A TW108146347 A TW 108146347A TW I730549 B TWI730549 B TW I730549B
Authority
TW
Taiwan
Prior art keywords
certificate
client
algorithm
key pair
authentication server
Prior art date
Application number
TW108146347A
Other languages
Chinese (zh)
Other versions
TW202125295A (en
Inventor
蔡家宏
Original Assignee
臺灣網路認證股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 臺灣網路認證股份有限公司 filed Critical 臺灣網路認證股份有限公司
Priority to TW108146347A priority Critical patent/TWI730549B/en
Application granted granted Critical
Publication of TWI730549B publication Critical patent/TWI730549B/en
Publication of TW202125295A publication Critical patent/TW202125295A/en

Links

Images

Abstract

A system for checking a key pair generating algorithm during certificate applying process and a method thereof are provided. By using an algorithm to generate key pairs by a client, generating a certificate signing request(CSR) including public key of the key pairs and a message of the algorithm by the client, transmitting the CSR from the client to a Certificate Authority(CA) via Registration Authority, and generating a certificate by the CA after the CA determines the message included in the CSR matches a requirement set up by the CA, the system and the method can check key pairs generating algorithm when CA issues certificate, and achieve the effect of increasing security and encryption and decryption efficiency.

Description

於憑證申請過程中確認金鑰對產生演算法之系統及方法System and method for confirming key pair generation algorithm in certificate application process

一種憑證申請系統及其方法,特別係指一種於憑證申請過程中確認金鑰對產生演算法之系統及方法。A certificate application system and method, in particular, refers to a system and method for confirming the key pair generation algorithm in the certificate application process.

公鑰基礎架構(Public Key Infrastructure, PKI),又稱公開金鑰基礎架構、公開金鑰基礎建設、公鑰基礎建設、公鑰基礎設施、或公開密碼基礎建設等,是一組由硬體、軟體、參與者、管理政策與流程組成的基礎架構,其目的在於創造、管理、分配、使用、儲存以及復原數位憑證。由密碼學的角度,公鑰基礎建設藉著數位憑證認證機構(Certificate Authority, CA)將使用者的個人身分跟公開金鑰鏈結在一起。同時,對每個數位憑證認證機構而言,使用者的身分必須是唯一的。Public Key Infrastructure (PKI), also known as public key infrastructure, public key infrastructure, public key infrastructure, public key infrastructure, or public cryptographic infrastructure, is a group of hardware, An infrastructure composed of software, participants, management policies, and procedures is designed to create, manage, distribute, use, store, and restore digital certificates. From the perspective of cryptography, the public key infrastructure uses a digital certificate authority (CA) to link the personal identity of the user with the public key. At the same time, for each digital certificate certification authority, the user's identity must be unique.

使用者可以使用預定的演算法產生包含公開金鑰(簡稱公鑰)與私有金鑰(簡稱私鑰)的金鑰對,再使用公鑰產生憑證簽署請求,並透過憑證簽署請求向數位憑證認證機構申請數位憑證,如此,使用者便可以使用數位憑證透過公鑰基礎架構在網路上證明自己的身分。The user can use a predetermined algorithm to generate a key pair consisting of a public key (public key for short) and a private key (private key for short), then use the public key to generate a certificate signing request, and authenticate to the digital certificate through the certificate signing request The organization applies for a digital certificate so that users can use the digital certificate to prove their identity on the Internet through the public key infrastructure.

然而,隨著技術的進步,可能出現速度更快、效率更高的加解密演算法,或是某些加解密演算法可能出現漏洞,這表示加解密速度/效率不佳或出現漏洞的加解密演算法需要被淘汰。但公鑰基礎建設的數位憑證認證機構並沒有拒絕被使用者用來產生金鑰對之演算法的有效機制,當數位憑證認證機構接收到使用者的憑證簽署請求後,只要憑證簽署請求通過數位憑證認證機構的驗證,數位憑證認證機構便會核發數位憑證給使用者。However, with the advancement of technology, there may be faster and more efficient encryption and decryption algorithms, or some encryption and decryption algorithms may have loopholes, which means that the encryption and decryption speed/efficiency is not good or there are loopholes. Algorithms need to be eliminated. However, the digital certificate certification authority of the public key infrastructure does not reject the effective mechanism of the algorithm used by the user to generate the key pair. When the digital certificate authority receives the user’s certificate signing request, it will only pass the digital certificate signing request. Upon verification by the certificate certification authority, the digital certificate certification authority will issue a digital certificate to the user.

綜上所述,可知先前技術中長期以來一直存在數位憑證認證機構在核發數位憑證之過程中不會檢查使用者產生金鑰對之演算法的問題,因此有必要提出改進的技術手段,來解決此一問題。In summary, it can be seen that there has been a long-standing problem in the prior art that the digital certificate certification authority does not check the algorithm of the key pair generated by the user in the process of issuing digital certificates. Therefore, it is necessary to propose improved technical means to solve the problem. This question.

有鑒於先前技術存在數位憑證認證機構不會驗證使用者產生金鑰對之演算法的問題,本發明遂揭露一種於憑證申請過程中確認金鑰對產生演算法之系統及其方法,其中:In view of the problem in the prior art that the digital certificate certification authority does not verify the algorithm for generating the key pair by the user, the present invention discloses a system and method for confirming the algorithm for generating the key pair during the certificate application process, in which:

本發明所揭露之於憑證申請過程中確認金鑰對產生演算法之系統,至少包含:客戶端,用以使用演算法產生包含客戶端公鑰及客戶端私鑰之金鑰對,及用以產生包含該客戶端公鑰及演算法訊息之憑證簽署請求;憑證註冊主機,用以接收憑證簽署請求,及用以產生包含憑證簽署請求之憑證申請資料,並對憑證申請資料簽章以產生主機簽章資料;憑證認證伺服器,用以接收憑證申請資料及主機簽章資料,並依據主機簽章資料驗證憑證申請資料,及用以於憑證申請資料通過驗證時,檢查憑證申請資料,並於憑證申請資料通過檢查時,依據憑證簽署請求中之演算法訊息判斷客戶端所使用之演算法是否符合演算要求,及於演算法符合演算要求時,產生數位憑證,並透過憑證註冊主機傳送數位憑證至客戶端,使客戶端儲存數位憑證。The system for confirming the key pair generation algorithm in the certificate application process disclosed in the present invention at least includes: a client for generating a key pair including a client public key and a client private key by using the algorithm, and Generate a certificate signing request containing the client's public key and algorithm information; the certificate registration host is used to receive the certificate signing request, and to generate the certificate application data containing the certificate signing request, and sign the certificate application data to generate the host Signature data; the certificate authentication server is used to receive certificate application data and host signature data, and verify the certificate application data according to the host signature data, and to check the certificate application data when the certificate application data is verified, and When the certificate application data passes the check, the algorithm information in the certificate signing request is used to determine whether the algorithm used by the client meets the calculation requirements, and when the algorithm meets the calculation requirements, a digital certificate is generated and the digital certificate is sent through the certificate registration host To the client, make the client store the digital certificate.

本發明所揭露之於憑證申請過程中確認金鑰對產生演算法之方法,其步驟至少包括:客戶端使用演算法產生包含客戶端公鑰及客戶端私鑰之金鑰對;客戶端產生包含憑證簽署請求包含客戶端公鑰及演算法訊息之憑證簽署請求,並傳送憑證簽署請求至憑證註冊主機;憑證註冊主機產生包含憑證簽署請求之憑證申請資料,並對憑證申請資料簽章以產生主機簽章資料後,傳送憑證申請資料及主機簽章資料至憑證認證伺服器;憑證認證伺服器依據主機簽章資料成功驗證憑證申請資料後,檢查憑證申請資料;憑證認證伺服器於憑證申請資料通過檢查後,依據憑證簽署請求中之演算法訊息判斷客戶端使用之演算法符合演算要求時,產生數位憑證,並透過憑證註冊主機傳送數位憑證至客戶端;客戶端儲存數位憑證。The method for confirming the key pair generation algorithm in the certificate application process disclosed in the present invention includes at least the steps: the client uses the algorithm to generate a key pair including the client public key and the client private key; the client generation includes The certificate signing request includes a certificate signing request containing the client's public key and algorithm information, and sends the certificate signing request to the certificate registration host; the certificate registration host generates the certificate application data containing the certificate signing request, and signs the certificate application data to generate the host After signing the signature data, send the certificate application data and host signature data to the certificate authentication server; the certificate authentication server successfully verifies the certificate application data according to the host signature data, then checks the certificate application data; the certificate authentication server passes the certificate application data After checking, according to the algorithm information in the certificate signing request, when it is determined that the algorithm used by the client meets the calculation requirements, a digital certificate is generated, and the digital certificate is sent to the client through the certificate registration host; the client stores the digital certificate.

本發明所揭露之系統與方法如上,與先前技術之間的差異在於本發明透過在客戶端使用演算法產生金鑰對,並透過憑證註冊主機將包含產生金鑰對之演算法的演算法訊息的憑證簽署請求傳送至憑證認證伺服器後,憑證認證伺服器可以判斷憑證簽署請求中之演算法訊息是否符合演算要求,並在客戶端產生金鑰對之演算法符合演算要求時才產生數位憑證,藉以解決先前技術所存在的問題,並可以達成增加安全性與加解密效能之技術功效。The system and method disclosed in the present invention are as described above. The difference between the present invention and the prior art is that the present invention generates a key pair by using an algorithm on the client side, and the certificate registration host will include the algorithm information of the algorithm for generating the key pair. After the certificate signing request of is sent to the certificate authentication server, the certificate authentication server can determine whether the algorithm information in the certificate signing request meets the calculation requirements, and only generate a digital certificate when the algorithm of the key pair generated by the client meets the calculation requirements , In order to solve the problems of the prior art, and can achieve the technical effect of increasing security and encryption and decryption performance.

以下將配合圖式及實施例來詳細說明本發明之特徵與實施方式,內容足以使任何熟習相關技藝者能夠輕易地充分理解本發明解決技術問題所應用的技術手段並據以實施,藉此實現本發明可達成的功效。In the following, the features and implementation of the present invention will be described in detail with the drawings and embodiments. The content is sufficient to enable any person familiar with the relevant art to easily and fully understand the technical means used by the present invention to solve the technical problems and implement them accordingly. The achievable effect of the present invention.

本發明可以讓憑證認證伺服器在接收到客戶端所傳送的憑證簽署請求(Certificate Signing Request, CSR)後,判斷客戶端產生金鑰對所使用之演算法是否符合憑證認證伺服器所接受的演算要求,並在客戶端產生金鑰對所使用之演算法符合演算要求時,產生傳回客戶端的數位憑證(certificate)。其中,憑證認證伺服器為數位憑證認證機構(Certificate Authority, CA)中的一台或多台伺服器。The present invention allows the certificate authentication server to determine whether the algorithm used by the client to generate the key pair conforms to the algorithm accepted by the certificate authentication server after receiving the certificate signing request (Certificate Signing Request, CSR) sent by the client When the algorithm used by the client to generate the key pair meets the calculation requirements, a digital certificate (certificate) that is returned to the client is generated. Among them, the certificate authentication server is one or more servers in a digital certificate authority (CA).

以下先以「第1圖」本發明所提之於憑證申請過程中確認金鑰對產生演算法之系統架構圖來說明本發明的系統運作。如「第1圖」所示,本發明之系統含有客戶端110、憑證註冊主機120、及憑證認證伺服器130。其中,憑證註冊主機120與憑證認證伺服器130通常是數位設備;客戶端110則可以是手機、平板、電腦等數位設備,也可以是執行於數位設備上的特定軟體,但本發明並不以此為限。In the following, the system architecture diagram of the algorithm for verifying the key pair generation during the certificate application process mentioned in the "Figure 1" of the present invention is used to illustrate the system operation of the present invention. As shown in "Figure 1", the system of the present invention includes a client 110, a certificate registration host 120, and a certificate authentication server 130. Among them, the certificate registration host 120 and the certificate authentication server 130 are usually digital devices; the client 110 can be digital devices such as mobile phones, tablets, computers, or specific software running on the digital devices, but the present invention does not This is limited.

本發明所提之計算設備包含但不限於一個或多個處理器、一個或多個記憶體模組、以及連接不同元件(包括記憶體模組和處理器)的匯流排等元件。透過所包含之多個元件,計算設備可以載入並執行作業系統,使作業系統在計算設備上運行,也可以執行軟體或程式。另外,計算設備也包含一個外殼,上述之各個元件設置於外殼內。The computing device mentioned in the present invention includes, but is not limited to, one or more processors, one or more memory modules, and components such as buses connecting different components (including memory modules and processors). Through the included multiple components, the computing device can load and execute the operating system, make the operating system run on the computing device, and can also execute software or programs. In addition, the computing device also includes a housing, and the above-mentioned components are arranged in the housing.

本發明所提之計算設備的匯流排可以包含一種或多個類型,例如包含資料匯流排(data bus)、位址匯流排(address bus)、控制匯流排(control bus)、擴充功能匯流排(expansion bus)、及/或局域匯流排(local bus)等類型的匯流排。計算設備的匯流排包括但不限於並列的工業標準架構(ISA)匯流排、周邊元件互連(PCI)匯流排、視頻電子標準協會(VESA)局域匯流排、以及串列的通用序列匯流排(USB)、快速周邊元件互連(PCI-E)匯流排等。The bus of the computing device mentioned in the present invention may include one or more types, for example, including data bus, address bus, control bus, extended function bus ( expansion bus), and/or local bus (local bus). The bus of computing equipment includes, but is not limited to, parallel industry standard architecture (ISA) bus, peripheral component interconnect (PCI) bus, Video Electronics Standards Association (VESA) local bus, and serial universal serial bus (USB), PCI-E bus, etc.

本發明所提之計算設備的處理器與匯流排耦接。處理器包含暫存器(Register)組或暫存器空間,暫存器組或暫存器空間可以完全的被設置在處理晶片上,或全部或部分被設置在處理晶片外並經由專用電氣連接及/或經由匯流排耦接至處理器。處理器可為處理單元、微處理器或任何合適的處理元件。若計算設備為多處理器設備,也就是計算設備包含多個處理器,則計算設備所包含的處理器都相同或類似,且透過匯流排耦接與通訊。處理器可以解釋一連串的多個指令以進行特定的運算或操作,例如,數學運算、邏輯運算、資料比對、複製/移動資料等,藉以運行作業系統或執行各種程式、模組、及/或元件。The processor of the computing device provided by the present invention is coupled with the bus. The processor contains a register group or register space. The register group or register space can be completely set on the processing chip, or all or part of it can be set outside the processing chip and connected via a dedicated electrical connection. And/or coupled to the processor via the bus. The processor may be a processing unit, a microprocessor, or any suitable processing element. If the computing device is a multi-processor device, that is, the computing device includes multiple processors, the processors included in the computing device are all the same or similar, and they are coupled and communicated through a bus. The processor can interpret a series of multiple instructions to perform specific operations or operations, such as mathematical operations, logical operations, data comparison, copy/move data, etc., to run the operating system or execute various programs, modules, and/or element.

計算設備的處理器可以與晶片組耦接或透過匯流排與晶片組電性連接。晶片組是由一個或多個積體電路(IC)組成,包含記憶體控制器以及周邊輸出入(I/O)控制器,也就是說,記憶體控制器以及周邊輸出入控制器可以包含在一個積體電路內,也可以使用兩個或更多的積體電路實現。晶片組通常提供了輸出入和記憶體管理功能、以及提供多個通用及/或專用暫存器、計時器等,其中,上述之通用及/或專用暫存器與計時器可以讓耦接或電性連接至晶片組的一個或多個處理器存取或使用。The processor of the computing device can be coupled to the chipset or electrically connected to the chipset through a bus. The chipset is composed of one or more integrated circuits (ICs), including a memory controller and peripheral input/output (I/O) controllers, that is to say, the memory controller and peripheral input/output controllers can be included in In an integrated circuit, two or more integrated circuits can also be used. Chipsets usually provide I/O and memory management functions, as well as multiple general-purpose and/or special-purpose registers, timers, etc., among which the aforementioned general-purpose and/or special-purpose registers and timers can be coupled or One or more processors electrically connected to the chipset are accessed or used.

計算設備的處理器也可以透過記憶體控制器存取安裝於計算設備上的記憶體模組和大容量儲存區中的資料。上述之記憶體模組包含任何類型的揮發性記憶體(volatile memory)及/或非揮發性(non-volatile memory, NVRAM)記憶體,例如靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、快閃記憶體(Flash)、唯讀記憶體(ROM)等。上述之大容量儲存區可以包含任何類型的儲存裝置或儲存媒體,例如,硬碟機、光碟片、隨身碟(快閃記憶體)、記憶卡(memory card)、固態硬碟(Solid State Disk, SSD)、或任何其他儲存裝置等。也就是說,記憶體控制器可以存取靜態隨機存取記憶體、動態隨機存取記憶體、快閃記憶體、硬碟機、固態硬碟中的資料。The processor of the computing device can also access the data in the memory module and the mass storage area installed on the computing device through the memory controller. The above-mentioned memory modules include any type of volatile memory (volatile memory) and/or non-volatile memory (NVRAM), such as static random access memory (SRAM), dynamic random access Memory (DRAM), flash memory (Flash), read-only memory (ROM), etc. The above-mentioned large-capacity storage area can include any type of storage device or storage medium, such as hard disk drives, optical discs, flash drives (flash memory), memory cards, and solid state disks (Solid State Disk, SSD), or any other storage device, etc. In other words, the memory controller can access data in static random access memory, dynamic random access memory, flash memory, hard disk drives, and solid state drives.

計算設備的處理器也可以透過周邊輸出入控制器經由周邊輸出入匯流排與周邊輸出裝置、周邊輸入裝置、通訊介面、以及GPS接收器等周邊裝置或介面連接並通訊。周邊輸入裝置可以是任何類型的輸入裝置,例如鍵盤、滑鼠、軌跡球、觸控板、搖桿等,周邊輸出裝置可以是任何類型的輸出裝置,例如顯示器、印表機等,周邊輸入裝置與周邊輸出裝置也可以是同一裝置,例如觸控螢幕等。通訊介面可以包含無線通訊介面及/或有線通訊介面,無線通訊介面可以包含支援Wi-Fi、Zigbee等無線區域網路、藍牙、紅外線、近場通訊(NFC)、3G/4G/5G等行動通訊網路或其他無線資料傳輸協定的介面,有線通訊介面可為乙太網路裝置、非同步傳輸模式(ATM)裝置、DSL數據機、纜線(Cable)數據機等。處理器可以週期性地輪詢(polling)各種周邊裝置與介面,使得計算設備能夠透過各種周邊裝置與介面進行資料的輸入與輸出,也能夠與具有上面描述之元件的另一個計算設備進行通訊。The processor of the computing device can also connect and communicate with peripheral output devices, peripheral input devices, communication interfaces, and GPS receivers and other peripheral devices or interfaces through the peripheral I/O bus through the peripheral I/O controller. The peripheral input device can be any type of input device, such as a keyboard, mouse, trackball, touchpad, joystick, etc. The peripheral output device can be any type of output device, such as a display, a printer, etc., a peripheral input device It can also be the same device as the peripheral output device, such as a touch screen. The communication interface can include a wireless communication interface and/or a wired communication interface. The wireless communication interface can include a mobile communication network that supports Wi-Fi, Zigbee and other wireless local area networks, Bluetooth, infrared, near field communication (NFC), 3G/4G/5G, etc. The wired communication interface can be an Ethernet device, Asynchronous Transfer Mode (ATM) device, DSL modem, cable modem, etc. The processor can periodically poll various peripheral devices and interfaces, so that the computing device can input and output data through various peripheral devices and interfaces, and can also communicate with another computing device having the above-described components.

客戶端110可以透過有線或無線網路與憑證註冊主機120連接,並可以傳送資料或訊號給憑證註冊主機120,也可以接收憑證註冊主機120所傳送的資料或訊號。The client 110 can be connected to the certificate registration host 120 via a wired or wireless network, and can send data or signals to the certificate registration host 120, and can also receive data or signals sent by the certificate registration host 120.

客戶端110負責使用預定的演算法(加解密演算法)產生包含一把公鑰(public key)及一把私鑰(private key)的金鑰對。一般而言,客戶端110可以呼叫預先安裝之可信任的安控元件使用預先定義的演算法產生金鑰對。The client 110 is responsible for using a predetermined algorithm (encryption and decryption algorithm) to generate a key pair including a public key and a private key. Generally speaking, the client 110 can call a pre-installed trusted security component to generate a key pair using a predefined algorithm.

在本發明中,客戶端110所產生之公鑰與私鑰也被稱為客戶端公鑰與客戶端私鑰。本發明所提之演算法可以是符合橢圓曲線密碼學(Elliptic Curve Cryptography, ECC)的演算法等,但本發明並不以此為限。In the present invention, the public key and private key generated by the client 110 are also referred to as the client public key and the client private key. The algorithm proposed in the present invention may be an algorithm conforming to Elliptic Curve Cryptography (ECC), etc., but the present invention is not limited to this.

客戶端110也負責產生包含客戶端公鑰的憑證簽署請求,並可以將所產生的憑證簽署請求傳送給憑證註冊主機120。客戶端110所產生之憑證簽署請求中包含產生金鑰對所使用之演算法的演算法訊息。其中,演算法訊息包含演算法名稱等。The client 110 is also responsible for generating a certificate signing request containing the client's public key, and can transmit the generated certificate signing request to the certificate registration host 120. The certificate signing request generated by the client 110 includes the algorithm information of the algorithm used to generate the key pair. Among them, the algorithm information includes the algorithm name and so on.

客戶端110也負責接收憑證註冊伺服器120所傳送的數位憑證,並儲存所接收到的數位憑證。更詳細的,客戶端110可以依據申請數位憑證的用途將所申請的數位憑證匯入相對應的載具內儲存。其中,客戶端110申請數位憑證之用途包含但不限於身份識別或加解密等;客戶端110匯入數位憑證之載具包含但不限於晶片卡、電子檔案(如PFX檔)、瀏覽器程式的本地儲存(local storage)等。The client 110 is also responsible for receiving the digital certificate sent by the certificate registration server 120 and storing the received digital certificate. In more detail, the client 110 can import the applied digital certificate into a corresponding carrier for storage according to the purpose of applying for the digital certificate. Among them, the purpose of the client 110 to apply for a digital certificate includes but is not limited to identification or encryption and decryption, etc.; the carrier of the client 110 to import the digital certificate includes, but is not limited to, chip cards, electronic files (such as PFX files), and browser programs. Local storage, etc.

憑證註冊主機120為通過數位憑證認證機構審核(也就是獲得數位憑證認證機構簽發數位憑證)而可以做為憑證註冊中心(Registration Authority, RA)的數位設備。憑證註冊主機120可以透過有線或無線網路與客戶端110及/或憑證認證伺服器130連接,並可以接收客戶端110及/或憑證認證伺服器130所傳送的資料或訊號,也可以傳送資料或訊號給客戶端110及/或憑證認證伺服器130。The credential registration host 120 is a digital device that has passed the audit of a digital credential certification authority (that is, obtained a digital credential issued by a digital credential certification authority) and can be used as a digital device of a certification registration authority (RA). The certificate registration host 120 can connect to the client 110 and/or the certificate authentication server 130 through a wired or wireless network, and can receive data or signals sent by the client 110 and/or the certificate authentication server 130, and can also send data Or a signal to the client 110 and/or the certificate authentication server 130.

憑證註冊主機120負責產生憑證申請資料,並使用所擁用之主機私鑰對所產生之憑證申請資料簽章以產生相對應之主機簽章資料。憑證註冊主機120所產生的憑證申請資料包含接收自客戶端110的憑證簽署請求。The certificate registration host 120 is responsible for generating certificate application data, and uses the host private key to sign the generated certificate application data to generate corresponding host signature data. The certificate application data generated by the certificate registration host 120 includes the certificate signing request received from the client 110.

憑證註冊主機120也負責接收憑證認證伺服器130所傳送的數位憑證,並將所接收到的數位憑證轉送到客戶端110。一般而言,憑證註冊主機120也可以保存所接收到的數位憑證,也就是保存透過自身申請之客戶端110的數位憑證。The certificate registration host 120 is also responsible for receiving the digital certificate sent by the certificate authentication server 130 and forwarding the received digital certificate to the client 110. Generally speaking, the certificate registration host 120 can also save the received digital certificate, that is, save the digital certificate of the client 110 applied by itself.

憑證認證伺服器130可以透過有線或無線網路與憑證註冊主機120連接,並可以接收憑證註冊主機120所傳送的資料或訊號,也可以傳送資料或訊號給憑證註冊主機120。The certificate authentication server 130 can be connected to the certificate registration host 120 via a wired or wireless network, and can receive data or signals sent by the certificate registration host 120, and can also send data or signals to the certificate registration host 120.

憑證認證伺服器130負責接收憑證註冊主機120所傳送的憑證申請資料與主機簽章資料,並可以依據所接收到之主機簽章資料驗證所接收到的憑證申請資料。The certificate authentication server 130 is responsible for receiving the certificate application data and host signature data sent by the certificate registration host 120, and can verify the received certificate application data based on the received host signature data.

憑證認證伺服器130也負責在接收自憑證註冊主機120之憑證申請資料通過驗證時,進一步檢查所接收到的憑證申請資料。舉例來說,憑證認證伺服器130可以讀出憑證申請資料中的憑證簽署請求,並依據憑證簽署請求中的客戶端簽章資料驗證憑證簽署請求。但憑證認證伺服器130檢查憑證申請資料之方式與過程並不上述為限。The certificate authentication server 130 is also responsible for further checking the received certificate application data when the certificate application data received from the certificate registration host 120 is verified. For example, the certificate authentication server 130 may read the certificate signing request in the certificate application data, and verify the certificate signing request according to the client signature data in the certificate signing request. However, the method and process for the certificate authentication server 130 to check the certificate application data are not limited to the above.

憑證認證伺服器130也負責在憑證申請資料通過檢查時,依據憑證申請資料中之憑證簽署請求所包含的演算法訊息判斷客戶端110產生金鑰對所使用之演算法是否符合憑證認證伺服器130預定的演算要求。舉例來說,演算要求可以是憑證認證伺服器130認可之演算法的演算法名稱,憑證認證伺服器130可以判斷演算要求中是否包含演算法訊息所包含之演算法名稱,若是,表示客戶端110產生金鑰對之演算法符合演算要求;反之,若憑證認證伺服器130所記錄的演算要求中不存在演算法訊息所包含的演算法名稱,則表示客戶端110產生金鑰對之演算法不符合演算要求。但憑證認證伺服器130判斷客戶端110產生金鑰對之演算法是否符合演算要求之方式並不以上述為限,例如,演算要求也可以是時間門檻值,憑證認證伺服器130可以使用一種或多種預定的算式組進行運算,若在時間門檻值內金鑰對被破解,則憑證認證伺服器130可以判斷產生金鑰對之演算法不符合演算要求。The certificate authentication server 130 is also responsible for determining whether the algorithm used by the client 110 to generate the key pair conforms to the certificate authentication server 130 based on the algorithm information contained in the certificate signing request in the certificate application data when the certificate application data passes the inspection. Scheduled calculation requirements. For example, the calculation request may be the algorithm name of the algorithm recognized by the certificate authentication server 130. The certificate authentication server 130 may determine whether the calculation request includes the algorithm name contained in the algorithm message. If so, it means the client 110 The algorithm for generating the key pair meets the calculation requirements; on the contrary, if the algorithm name contained in the algorithm message does not exist in the calculation request recorded by the certificate authentication server 130, it means that the algorithm for generating the key pair by the client 110 does not exist. Meet the calculation requirements. However, the method by which the certificate authentication server 130 determines whether the algorithm for generating the key pair of the client 110 meets the calculation requirements is not limited to the above. For example, the calculation request may also be a time threshold. The certificate authentication server 130 may use one or A variety of predetermined algorithm sets are calculated. If the key pair is cracked within the time threshold, the certificate authentication server 130 can determine that the algorithm for generating the key pair does not meet the calculation requirements.

憑證認證伺服器130也負責在憑證申請資料中之憑證簽署請求所包含的演算法符合憑證認證伺服器130預定的演算要求時產生數位憑證。更詳細的,憑證認證伺服器130可以使用伺服器私鑰對憑證簽署請求中之客戶端公鑰簽章以產生相對應的伺服器簽章資料,並產生包含客戶端公鑰及伺服器簽章資料的數位憑證。一般而言,憑證認證伺服器130所產生之客戶端110的數位憑證為終端實體 (end-entity, EE)憑證,但本發明並不以此為限。The certificate authentication server 130 is also responsible for generating a digital certificate when the algorithm included in the certificate signing request in the certificate application data meets the predetermined calculation requirements of the certificate authentication server 130. In more detail, the certificate authentication server 130 can use the server private key to sign the client public key in the certificate signing request to generate the corresponding server signature data, and generate the client public key and the server signature. The digital certificate of the data. Generally speaking, the digital certificate of the client 110 generated by the certificate authentication server 130 is an end-entity (EE) certificate, but the present invention is not limited to this.

憑證認證伺服器130也負責將所產生的數位憑證傳送給憑證註冊主機120,藉以透過憑證註冊主機120將所產生的數位憑證傳送給客戶端110。The certificate authentication server 130 is also responsible for transmitting the generated digital certificate to the certificate registration host 120, so as to transmit the generated digital certificate to the client 110 through the certificate registration host 120.

接著以一個實施例來解說本發明的運作系統與方法,並請參照「第2A圖」本發明所提之於憑證申請過程中確認金鑰對產生演算法之方法流程圖。在本實施例中,假設客戶端110為電腦,但本發明並不以此為限。Next, an embodiment is used to explain the operating system and method of the present invention, and please refer to "Figure 2A" the flow chart of the method for verifying the key pair generation algorithm in the certificate application process of the present invention. In this embodiment, it is assumed that the client 110 is a computer, but the invention is not limited to this.

首先,客戶端110使用演算法產生包含客戶端公鑰與客戶端私鑰的金鑰對,並接著產生包含被產生之金鑰對中之客戶端公鑰與產生金鑰對所使用之演算法的演算法訊息的憑證簽署請求,及將所產生之憑證簽署請求傳送給憑證註冊主機120(步驟210),藉以透過憑證註冊主機120向憑證認證伺服器130申請數位憑證。First, the client 110 uses an algorithm to generate a key pair including the client public key and the client private key, and then generates a key pair including the client public key in the generated key pair and the algorithm used to generate the key pair And send the generated certificate signing request to the certificate registration host 120 (step 210), so as to apply for a digital certificate from the certificate authentication server 130 through the certificate registration host 120.

在憑證註冊主機120接收到客戶端110所傳送的憑證簽署請求後,憑證註冊主機120可以產生包含所接收之憑證簽署請求的憑證申請資料,並可以對所產生之憑證申請資料簽章,藉以在簽章後產生主機簽章資料。之後,憑證註冊主機120可以將所產生之憑證申請資料及主機簽章資料傳送給憑證認證伺服器130(步驟220)。After the certificate registration host 120 receives the certificate signing request sent by the client 110, the certificate registration host 120 can generate certificate application data containing the received certificate signing request, and can sign the generated certificate application data, so as to After signing, the host signature data will be generated. After that, the certificate registration host 120 may send the generated certificate application data and host signature data to the certificate authentication server 130 (step 220).

憑證認證伺服器130在接收到憑證註冊主機120所傳送的憑證申請資料及主機簽章資料後,可以使用所接收到之主機簽章資料驗證所接收之憑證申請資料,並可以依據驗證結果判斷憑證申請資料是否通過以主機簽章資料進行之驗證(步驟230)。After the certificate authentication server 130 receives the certificate application data and host signature data sent by the certificate registration host 120, it can use the received host signature data to verify the received certificate application data, and can determine the certificate according to the verification result Whether the application materials pass the verification with the host signature data (step 230).

若憑證認證伺服器130判斷憑證申請資料沒有通過驗證,則憑證認證伺服器130可以拒絕客戶端110之憑證申請,並可以透過憑證註冊主機120將拒絕申請訊息傳送到客戶端110,使得客戶端110顯示憑證申請被拒絕的訊息;若憑證認證伺服器130判斷憑證申請資料通過驗證,則憑證認證伺服器130可以進一步檢查憑證申請資料,並可以判斷憑證申請資料是否通過檢查(步驟250)。在本實施例中,憑證認證伺服器130可以依據憑證簽署請求中的客戶端簽章資料驗證憑證簽署請求,若憑證簽署請求沒有通過驗證,則憑證認證伺服器130可以判斷憑證申請資料沒有通過檢查,而若憑證簽署請求通過驗證,則憑證認證伺服器130可以判斷憑證申請資料通過檢查。If the certificate authentication server 130 determines that the certificate application data has not been verified, the certificate authentication server 130 may reject the certificate application of the client 110, and may send the rejection application message to the client 110 through the certificate registration host 120, so that the client 110 A message indicating that the certificate application is rejected is displayed; if the certificate authentication server 130 determines that the certificate application data has passed the verification, the certificate authentication server 130 may further check the certificate application data, and may determine whether the certificate application data has passed the check (step 250). In this embodiment, the certificate authentication server 130 can verify the certificate signing request based on the client signature data in the certificate signing request. If the certificate signing request fails the verification, the certificate authentication server 130 can determine that the certificate application data has not passed the check If the certificate signing request passes the verification, the certificate authentication server 130 can determine that the certificate application data passes the inspection.

若憑證認證伺服器130判斷憑證申請資料沒有通過檢查,憑證認證伺服器130可以拒絕客戶端110之憑證申請,並可以透過憑證註冊主機120將拒絕申請訊息傳送到客戶端110,使得客戶端110顯示憑證申請被拒絕的訊息;若憑證認證伺服器130判斷憑證申請資料通過檢查,則憑證認證伺服器130可以更進一步地判斷憑證簽署請求中之演算法訊息所表示的演算法是否符合預先設定的演算要求(步驟260)。在本實施例中,假設憑證認證伺服器130可以依據演算要求所記錄之演算法名稱中是否存在演算法訊息所包含的演算法名稱判斷客戶端110產生金鑰對所使用之演算法是否符合演算要求。If the certificate authentication server 130 determines that the certificate application data has not passed the check, the certificate authentication server 130 can reject the certificate application of the client 110, and can send the reject application message to the client 110 through the certificate registration host 120, so that the client 110 displays A message that the certificate application is rejected; if the certificate authentication server 130 determines that the certificate application data passes the check, the certificate authentication server 130 can further determine whether the algorithm indicated by the algorithm message in the certificate signing request conforms to the preset calculation Request (step 260). In this embodiment, it is assumed that the certificate authentication server 130 can determine whether the algorithm used by the client 110 to generate the key pair conforms to the algorithm based on whether the algorithm name contained in the algorithm message exists in the algorithm name recorded in the calculation request. Claim.

若憑證認證伺服器130判斷客戶端110所使用之演算法不符合演算要求,也就是憑證認證伺服器130預先設定之演算要求所包含的演算法名稱中不存在憑證簽署請求中之演算法訊息所包含的演算法名稱,憑證認證伺服器130可以拒絕客戶端110之憑證申請,並可以透過憑證註冊主機120將拒絕申請訊息傳送到客戶端110,使得客戶端110顯示憑證申請被拒絕的訊息;若憑證認證伺服器130判斷客戶端110所使用之演算法符合演算要求,也就是憑證簽署請求中之演算法訊息所包含的演算法名稱被記錄在憑證認證伺服器130預先設定之演算要求中,則憑證認證伺服器130可以產生數位憑證,並可以透過憑證註冊主機120將數位憑證傳送給客戶端110(步驟270)。在本實施例中,假設如「第2B圖」所示之流程,憑證認證伺服器130可以使用伺服器私鑰對憑證簽署請求中之客戶端公鑰簽章以產生相對應之伺服器簽章資料(步驟271),並可以產生包含客戶端公鑰及伺服器簽章資料之數位憑證(步驟273),之後,憑證認證伺服器130可以將所產生的數位憑證傳回憑證註冊主機120(步驟275),使得憑證註冊主機120將所接收到的數位憑證轉傳回客戶端110(步驟277)。If the certificate authentication server 130 determines that the algorithm used by the client 110 does not meet the calculation requirements, that is, the algorithm name included in the calculation request preset by the certificate authentication server 130 does not exist in the algorithm information in the certificate signing request. If it contains the algorithm name, the certificate authentication server 130 can reject the certificate application of the client 110, and can send the reject application message to the client 110 through the certificate registration host 120, so that the client 110 displays a message that the certificate application is rejected; if The certificate authentication server 130 determines that the algorithm used by the client 110 meets the calculation requirements, that is, the algorithm name contained in the algorithm message in the certificate signing request is recorded in the calculation request preset by the certificate authentication server 130, then The certificate authentication server 130 may generate a digital certificate, and may transmit the digital certificate to the client 110 through the certificate registration host 120 (step 270). In this embodiment, assuming the process shown in "Figure 2B", the certificate authentication server 130 can use the server private key to sign the client public key in the certificate signing request to generate a corresponding server signature Data (step 271), and a digital certificate containing the client public key and server signature data can be generated (step 273). After that, the certificate authentication server 130 can send the generated digital certificate back to the certificate registration host 120 (step 275), so that the voucher registration host 120 forwards the received digital voucher back to the client 110 (step 277).

繼續回到「第2A圖」,在客戶端110所接收到憑證認證伺服器130透過憑證註冊主機120所傳送的數位憑證後,客戶端110可以儲存所接收到的數位憑證(步驟280)。在本實施例中,客戶端110可以依據申請數位憑證的用途將所接收到的數位憑證匯入晶片卡、特定檔案、或特定軟體等載具中。Continuing back to "Figure 2A", after the client 110 receives the digital certificate sent by the certificate authentication server 130 through the certificate registration host 120, the client 110 can store the received digital certificate (step 280). In this embodiment, the client 110 can import the received digital certificate into a chip card, a specific file, or a specific software according to the purpose of applying for the digital certificate.

如此,透過本發明,憑證認證伺服器130便可以在客戶端110申請憑證的過程中檢查客戶端110產生金鑰對所使用的演算法。In this way, through the present invention, the certificate authentication server 130 can check the algorithm used by the client 110 to generate the key pair during the process of the client 110 applying for a certificate.

綜上所述,可知本發明與先前技術之間的差異在於具有客戶端使用演算法產生金鑰對,並透過憑證註冊主機將包含產生金鑰對之演算法的演算法訊息的憑證簽署請求傳送至憑證認證伺服器後,憑證認證伺服器可以判斷憑證簽署請求中之演算法訊息是否符合演算要求,並在客戶端產生金鑰對之演算法符合演算要求時才產生數位憑證之技術手段,藉由此一技術手段可以解決先前技術所存在數位憑證認證機構在核發數位憑證之過程中不會檢查使用者產生金鑰對之演算法的問題,進而達成增加安全性與加解密效能之技術功效。In summary, it can be seen that the difference between the present invention and the prior art is that the client uses an algorithm to generate a key pair, and sends a certificate signing request including an algorithm message of the algorithm for generating the key pair through the certificate registration host. After reaching the certificate authentication server, the certificate authentication server can determine whether the algorithm information in the certificate signing request meets the calculation requirements, and only generates the digital certificate when the algorithm of the key pair generated by the client meets the calculation requirements. As a result, a technical method can solve the problem that the digital certificate certification authority in the prior art does not check the algorithm of the key pair generated by the user during the process of issuing the digital certificate, thereby achieving the technical effect of increasing security and encryption and decryption performance.

再者,本發明之於憑證申請過程中確認金鑰對產生演算法之方法,可實現於硬體、軟體或硬體與軟體之組合中,亦可在電腦系統中以集中方式實現或以不同元件散佈於若干互連之電腦系統的分散方式實現。Furthermore, the method of the present invention for confirming the key pair generation algorithm in the certificate application process can be implemented in hardware, software, or a combination of hardware and software, and can also be implemented in a centralized manner in a computer system or in different ways. The components are distributed in a number of interconnected computer systems in a decentralized manner.

雖然本發明所揭露之實施方式如上,惟所述之內容並非用以直接限定本發明之專利保護範圍。任何本發明所屬技術領域中具有通常知識者,在不脫離本發明所揭露之精神和範圍的前提下,對本發明之實施的形式上及細節上作些許之更動潤飾,均屬於本發明之專利保護範圍。本發明之專利保護範圍,仍須以所附之申請專利範圍所界定者為準。Although the embodiments of the present invention are disclosed as above, the content described is not intended to directly limit the scope of patent protection of the present invention. Any person with ordinary knowledge in the technical field to which the present invention belongs, without departing from the spirit and scope of the present invention, makes slight modifications to the form and details of the implementation of the present invention, all belong to the patent protection of the present invention. range. The scope of patent protection of the present invention shall still be determined by the scope of the attached patent application.

110:客戶端110: client

120:憑證註冊主機120: Credential registration host

130:憑證認證伺服器130: certificate authentication server

步驟210:客戶端使用演算法產生金鑰對,及產生包含客戶端公鑰及演算法訊息之憑證簽署請求,並傳送憑證簽署請求至憑證註冊主機Step 210: The client uses an algorithm to generate a key pair, generates a certificate signing request including the client's public key and algorithm information, and sends the certificate signing request to the certificate registration host

步驟220:憑證註冊主機產生包含憑證簽署請求之憑證申請資料,及對憑證申請資料以產生主機簽章資料,並傳送憑證申請資料及主機簽章資料至憑證認證伺服器Step 220: The certificate registration host generates certificate application data including the certificate signing request, generates host signature data for the certificate application data, and transmits the certificate application data and host signature data to the certificate authentication server

步驟230:憑證認證伺服器判斷憑證申請資料是否通過以主機簽章資料進行之驗證Step 230: The certificate authentication server determines whether the certificate application data passes the verification with the host signature data

步驟250:憑證認證伺服器判斷憑證申請資料是否通過檢查Step 250: The certificate authentication server determines whether the certificate application data passes the check

步驟260:憑證認證伺服器判斷演算法是否符合演算要求Step 260: The certificate authentication server determines whether the algorithm meets the calculation requirements

步驟270:憑證認證伺服器產生數位憑證,並透過憑證註冊主機傳送數位憑證至客戶端Step 270: The certificate authentication server generates a digital certificate and sends the digital certificate to the client through the certificate registration host

步驟271:憑證認證伺服器使用伺服器私鑰對憑證簽署請求中之客戶端公鑰簽章以產生伺服器簽章資料Step 271: The certificate authentication server uses the server private key to sign the client public key in the certificate signing request to generate server signature data

步驟273:憑證認證伺服器產生包含客戶端公鑰及伺服器簽章資料之數位憑證Step 273: The certificate authentication server generates a digital certificate containing the client public key and server signature data

步驟275:憑證認證伺服器傳送數位憑證至憑證註冊主機Step 275: The certificate authentication server sends the digital certificate to the certificate registration host

步驟277:憑證註冊主機傳送數位憑證至客戶端Step 277: The certificate registration host sends the digital certificate to the client

步驟280:客戶端儲存數位憑證Step 280: The client stores the digital certificate

第1圖為本發明所提之於憑證申請過程中確認金鑰對產生演算法之系統架構圖。 第2A圖為本發明所提之於憑證申請過程中確認金鑰對產生演算法之方法流程圖。 第2B圖為本發明所提之憑證認證伺服器產生數位憑證並傳回客戶端之方法流程圖。 Figure 1 is a system architecture diagram of the algorithm for verifying key pair generation during the certificate application process according to the present invention. Figure 2A is a flow chart of the method for confirming the key pair generation algorithm in the certificate application process according to the present invention. Figure 2B is a flow chart of the method for the certificate authentication server to generate a digital certificate and send it back to the client according to the present invention.

步驟210:客戶端使用演算法產生金鑰對,及產生包含客戶端公鑰及演算法訊息之憑證簽署請求,並傳送憑證簽署請求至憑證註冊主機 Step 210: The client uses an algorithm to generate a key pair, generates a certificate signing request including the client's public key and algorithm information, and sends the certificate signing request to the certificate registration host

步驟220:憑證註冊主機產生包含憑證簽署請求之憑證申請資料,及對憑證申請資料以產生主機簽章資料,並傳送憑證申請資料及主機簽章資料至憑證認證伺服器 Step 220: The certificate registration host generates certificate application data including the certificate signing request, generates host signature data for the certificate application data, and transmits the certificate application data and host signature data to the certificate authentication server

步驟230:憑證認證伺服器判斷憑證申請資料是否通過以主機簽章資料進行之驗證 Step 230: The certificate authentication server determines whether the certificate application data passes the verification with the host signature data

步驟250:憑證認證伺服器判斷憑證申請資料是否通過檢查 Step 250: The certificate authentication server determines whether the certificate application data passes the check

步驟260:憑證認證伺服器判斷演算法是否符合演算要求 Step 260: The certificate authentication server determines whether the algorithm meets the calculation requirements

步驟270:憑證認證伺服器產生數位憑證,並透過憑證註冊主機傳送數位憑證至客戶端 Step 270: The certificate authentication server generates a digital certificate and sends the digital certificate to the client through the certificate registration host

步驟280:客戶端儲存數位憑證 Step 280: The client stores the digital certificate

Claims (10)

一種於憑證申請過程中確認金鑰對產生演算法之方法,該方法至少包含下列步驟:一客戶端使用一演算法產生一金鑰對,該金鑰對包含一客戶端公鑰及一客戶端私鑰;該客戶端產生一憑證簽署請求,並傳送該憑證簽署請求至一憑證註冊主機,該憑證簽署請求包含該客戶端公鑰及該演算法之一演算法訊息;該憑證註冊主機產生包含該憑證簽署請求之一憑證申請資料,並對該憑證申請資料簽章以產生一主機簽章資料後,傳送該憑證申請資料及該主機簽章資料至一憑證認證伺服器;該憑證認證伺服器依據該主機簽章資料成功驗證該憑證申請資料後,檢查該憑證申請資料;該憑證認證伺服器於該憑證申請資料通過檢查後,依據該演算法訊息判斷該演算法符合演算要求時,產生一數位憑證,並透過該憑證註冊主機傳送該數位憑證至該客戶端;及該客戶端儲存該數位憑證。 A method for confirming the key pair generation algorithm in the certificate application process. The method includes at least the following steps: a client uses an algorithm to generate a key pair, the key pair includes a client public key and a client Private key; the client generates a certificate signing request, and sends the certificate signing request to a certificate registration host, the certificate signing request includes the client public key and one of the algorithm information; the certificate registration host generates and includes The certificate application data is one of the certificate signing requests, and after the certificate application data is signed to generate a host signature data, the certificate application data and the host signature data are sent to a certificate authentication server; the certificate authentication server After successfully verifying the certificate application data based on the host signature data, it checks the certificate application data; after the certificate application data passes the check, the certificate authentication server generates a certificate when it determines that the algorithm meets the calculation requirements based on the algorithm information. A digital certificate, and send the digital certificate to the client through the certificate registration host; and the client stores the digital certificate. 如申請專利範圍第1項所述之於憑證申請過程中確認金鑰對產生演算法之方法,其中依據該演算法訊息判斷該演算法是否符合演算要求之步驟為判斷該演算要求是否包含該演算法之名稱或判斷該金鑰對是否在該演算要求所表示之時間門檻值內被破解。 For example, the method for confirming the key pair generation algorithm during the certificate application process described in item 1 of the scope of patent application, wherein the step of judging whether the algorithm meets the calculation requirements based on the algorithm information is to determine whether the calculation requirements include the calculation The name of the law or determine whether the key pair is cracked within the time threshold indicated by the calculation request. 如申請專利範圍第1項所述之於憑證申請過程中確認金鑰對產生演算法之方法,其中該客戶端使用該演算法產生該金鑰對之步驟為該客戶端呼叫安控元件使用橢圓曲線演算法產生該金鑰對。 As described in item 1 of the scope of patent application, the method for confirming the key pair generation algorithm in the certificate application process, wherein the step of generating the key pair by the client using the algorithm is that the client calls the security control component using an ellipse The curve algorithm generates the key pair. 如申請專利範圍第1項所述之於憑證申請過程中確認金鑰對產生演算法之方法,其中該憑證認證伺服器檢查該憑證申請資料之步驟更包含該憑證認證伺服器依據該憑證簽署請求中之一客戶端簽章資料驗證該憑證簽署請求之步驟。 For example, the method for verifying the key pair generation algorithm in the certificate application process as described in item 1 of the scope of patent application, wherein the step of the certificate authentication server checking the certificate application data further includes the certificate authentication server signing the request according to the certificate One of the steps in which the client signature data verifies the certificate signing request. 如申請專利範圍第1項所述之於憑證申請過程中確認金鑰對產生演算法之方法,其中該客戶端儲存該數位憑證之步驟為該客戶端依據該數位憑證之用途將該數位憑證匯入相對應之載具內儲存。 For example, the method for confirming the key pair generation algorithm in the certificate application process described in the first item of the scope of patent application, wherein the step of storing the digital certificate by the client is that the client remits the digital certificate according to the purpose of the digital certificate Store in the corresponding vehicle. 一種於憑證申請過程中確認金鑰對產生演算法之系統,該系統至少包含:一客戶端,用以使用一演算法產生一金鑰對,該金鑰對包含一客戶端公鑰及一客戶端私鑰,及用以產生一憑證簽署請求,該憑證簽署請求包含該客戶端公鑰及該演算法之一演算法訊息;一憑證註冊主機,用以接收該憑證簽署請求,及用以產生包含該憑證簽署請求之一憑證申請資料,並對該憑證申請資料簽章以產生一主機簽章資料;及一憑證認證伺服器,用以接收該憑證申請資料及該主機簽章資料,並依據該主機簽章資料驗證該憑證申請資料,及用以於該憑證申請資料通過驗證時,檢查該憑證申請資料,並於該憑證申請資料通過檢查時,依據該演算法訊息判斷該演算法是否符合一演算要求,及於該演算法符合該演算 要求時,產生一數位憑證,並透過該憑證註冊主機傳送該數位憑證至該客戶端,使該客戶端儲存該數位憑證。 A system for confirming a key pair generation algorithm during a certificate application process. The system at least includes: a client for generating a key pair using an algorithm, the key pair including a client public key and a client Client private key, and used to generate a certificate signing request, the certificate signing request includes the client public key and an algorithm message of the algorithm; a certificate registration host, used to receive the certificate signing request, and used to generate Contains one of the certificate application data of the certificate signing request, and signs the certificate application data to generate a host signature data; and a certificate authentication server for receiving the certificate application data and the host signature data, and based The host signature data verifies the certificate application data, and is used to check the certificate application data when the certificate application data passes the verification, and when the certificate application data passes the check, determine whether the algorithm conforms to the algorithm information A calculation requirement, and the algorithm meets the calculation When requested, a digital certificate is generated, and the digital certificate is sent to the client through the certificate registration host, so that the client stores the digital certificate. 如申請專利範圍第6項所述之於憑證申請過程中確認金鑰對產生演算法之系統,其中該憑證認證伺服器是判斷該演算要求是否包含該演算法之名稱或判斷該金鑰對是否在該演算要求所表示之時間門檻值內被破解以判斷該演算法是否符合演算要求。 For example, the system for verifying the key pair generation algorithm during the certificate application process described in item 6 of the scope of patent application, wherein the certificate authentication server determines whether the calculation request includes the name of the algorithm or determines whether the key pair It is cracked within the time threshold indicated by the calculation requirement to determine whether the algorithm meets the calculation requirement. 如申請專利範圍第6項所述之於憑證申請過程中確認金鑰對產生演算法之系統,其中該客戶端是呼叫安控元件使用橢圓曲線演算法產生該金鑰對。 As described in item 6 of the scope of patent application, the system for confirming the key pair generation algorithm during the certificate application process, wherein the client is a call security control component that uses the elliptic curve algorithm to generate the key pair. 如申請專利範圍第6項所述之於憑證申請過程中確認金鑰對產生演算法之系統,其中該憑證認證伺服器更用以依據該憑證簽署請求中之一客戶端簽章資料驗證該憑證簽署請求。 For example, the system for verifying the key pair generation algorithm during the certificate application process described in item 6 of the scope of patent application, wherein the certificate authentication server is further used to verify the certificate according to one of the client signature data in the certificate signing request Sign the request. 如申請專利範圍第6項所述之於憑證申請過程中確認金鑰對產生演算法之系統,其中該客戶端是依據該數位憑證之用途將該數位憑證匯入相對應之載具內儲存。For example, the system for verifying the key pair generation algorithm during the certificate application process described in item 6 of the scope of patent application, wherein the client imports the digital certificate into the corresponding vehicle for storage according to the purpose of the digital certificate.
TW108146347A 2019-12-18 2019-12-18 System for checking key pair generating algorithm during certificate applying process and method thereof TWI730549B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108146347A TWI730549B (en) 2019-12-18 2019-12-18 System for checking key pair generating algorithm during certificate applying process and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108146347A TWI730549B (en) 2019-12-18 2019-12-18 System for checking key pair generating algorithm during certificate applying process and method thereof

Publications (2)

Publication Number Publication Date
TWI730549B true TWI730549B (en) 2021-06-11
TW202125295A TW202125295A (en) 2021-07-01

Family

ID=77517208

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108146347A TWI730549B (en) 2019-12-18 2019-12-18 System for checking key pair generating algorithm during certificate applying process and method thereof

Country Status (1)

Country Link
TW (1) TWI730549B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200007347A1 (en) * 2018-06-29 2020-01-02 Canon Kabushiki Kaisha Information processing apparatus, control method for information processing apparatus, and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7796751B2 (en) * 2002-08-28 2010-09-14 Ntt Docomo, Inc. Certificate-based encryption and public key infrastructure
US8214637B2 (en) * 2001-01-10 2012-07-03 Sony Corporation Public key certificate issuing system, public key certificate issuing method, digital certification apparatus, and program storage medium
TW201537937A (en) * 2014-03-19 2015-10-01 Beijing Anxunben Science & Technology Co Ltd Unified identity authentication platform and authentication method thereof
TW201935357A (en) * 2018-02-09 2019-09-01 玉山商業銀行股份有限公司 Method and system for electrical transaction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214637B2 (en) * 2001-01-10 2012-07-03 Sony Corporation Public key certificate issuing system, public key certificate issuing method, digital certification apparatus, and program storage medium
US7796751B2 (en) * 2002-08-28 2010-09-14 Ntt Docomo, Inc. Certificate-based encryption and public key infrastructure
TW201537937A (en) * 2014-03-19 2015-10-01 Beijing Anxunben Science & Technology Co Ltd Unified identity authentication platform and authentication method thereof
TW201935357A (en) * 2018-02-09 2019-09-01 玉山商業銀行股份有限公司 Method and system for electrical transaction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200007347A1 (en) * 2018-06-29 2020-01-02 Canon Kabushiki Kaisha Information processing apparatus, control method for information processing apparatus, and storage medium

Also Published As

Publication number Publication date
TW202125295A (en) 2021-07-01

Similar Documents

Publication Publication Date Title
JP6151402B2 (en) Inclusive verification of platform to data center
WO2022179115A1 (en) User authentication method and apparatus, server and storage medium
US11790119B2 (en) Application integrity attestation
TWM594186U (en) Device and system combining online rapid authentication and public key infrastructure to identify identity
TWI644276B (en) System for opening account and applying mobile banking account online and method thereof
US20230120616A1 (en) Baseboard management controller (bmc) for storing cryptographic keys and performing cryptographic operations
TWI730549B (en) System for checking key pair generating algorithm during certificate applying process and method thereof
EP3847779A1 (en) Hardware security module that enforces signature requirements
CN116264861A (en) Distributed secure communication system
TWM592629U (en) System to obtain appended data and execute corresponding operation when identity is confirmed
TWM539668U (en) System for opening account online and applying for mobile banking
WO2021143027A1 (en) Transaction endorsement processing method, server, and computer-readable storage medium
US11416370B2 (en) Platform measurement collection mechanism
TWM618092U (en) Certificate management system for automated domain verification
TWI720738B (en) System for combining architectures of fido and pki to identity user and method thereof
TWM583978U (en) System of using physical carrier to store digital certificate for performing online transaction
TWI777105B (en) System for obtaining additional data when identifying to execute operation and method thereof
TWI691859B (en) System for identifying according to instruction to execute service and method thereof
TWM586390U (en) A system for performing identity verification according to the service instruction to execute the corresponding service
TWI767113B (en) System for using certificate stored in carrier to conduct online transactions and method thereof
US20240097918A1 (en) Managing unique secrets in distributed systems
TW201824129A (en) System for applying for certificate online through carrier for transaction and method thereof
TWI831029B (en) System for confirming identity on different devices by verifying certification and verification code and method thereof
TWI746920B (en) System for using certificate to verify identity from different domain through portal and method thereof
TW202117628A (en) System for using financial account to confirm identity and method thereof