TWI724683B - Computer-implemented method for managing user key pairs, system for managing user key pairs, and apparatus for managing user key pairs - Google Patents

Computer-implemented method for managing user key pairs, system for managing user key pairs, and apparatus for managing user key pairs Download PDF

Info

Publication number
TWI724683B
TWI724683B TW108145295A TW108145295A TWI724683B TW I724683 B TWI724683 B TW I724683B TW 108145295 A TW108145295 A TW 108145295A TW 108145295 A TW108145295 A TW 108145295A TW I724683 B TWI724683 B TW I724683B
Authority
TW
Taiwan
Prior art keywords
user
identity information
icc
memory
key
Prior art date
Application number
TW108145295A
Other languages
Chinese (zh)
Other versions
TW202036337A (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 開曼群島商創新先進技術有限公司
Publication of TW202036337A publication Critical patent/TW202036337A/en
Application granted granted Critical
Publication of TWI724683B publication Critical patent/TWI724683B/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen

Abstract

Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for managing cryptographic keys based on user identity information. One of the methods includes receiving a request to store identity information and a user key pair to a memory on a chip, the request being digitally signed with a digital signature, the identity information uniquely identifying the user, and the user key pair being assigned to the user; determining that the digital signature is authentic based on a public key pre-stored in the memory; encrypting the identity information and the user key pair; and storing the identity information and the user key pair to the memory.

Description

電腦實施的用於管理用戶金鑰對的方法、用於管理用戶金鑰對的系統以及用於管理用戶金鑰對的裝置 Computer-implemented method for managing user key pairs, system for managing user key pairs, and device for managing user key pairs

本文有關身分認證技術和資料安全性。 This article is about identity authentication technology and data security.

身分認證技術通常用於電腦網路中以驗證用戶身分並確保資料安全性。如同在電腦網路中數位化儲存或傳送的其他資訊一樣,身分資訊可以由資料集表示。電腦可以基於用戶的數位身分來識別和認證用戶。對於資料安全性,重要的是確保數字身分屬於授權用戶,或者換句話說,數字身分與用戶的實際身分相匹配。 Identity authentication technology is usually used in computer networks to verify user identity and ensure data security. Like other information stored or transmitted digitally in a computer network, identity information can be represented by a data set. Computers can identify and authenticate users based on their digital identities. For data security, it is important to ensure that the digital identity belongs to an authorized user, or in other words, the digital identity matches the user's actual identity.

隨著技術的發展,已經出現了諸如區塊鏈網路和物聯網(IoT)網路的去中心化系統。在去中心化系統下,個人可以安全地自行儲存他們自己的身分資訊。例如,用戶可以持有數位錢包,該數位錢包儲存用戶可以用來添加數位簽 章以授權區塊鏈網路或IoT設備上的交易的私密金鑰。私密金鑰通常作為具有加密語義的資料串儲存在計算設備上,並且意圖僅供用戶存取。與其他資料串一樣,私密金鑰可潛在地被複製和共用。具有私密金鑰的任何用戶都可以控制與該私密金鑰相關聯的數位資產。此外,如果私密金鑰丟失,則無法檢索數字資產。因此,安全儲存和有效使用密碼金鑰會是重要的。 With the development of technology, decentralized systems such as blockchain networks and Internet of Things (IoT) networks have emerged. Under the decentralized system, individuals can safely store their own identity information. For example, a user can hold a digital wallet, which stores the user can use to add a digital signature Zhang Yi authorizes the private key for transactions on blockchain networks or IoT devices. The private key is usually stored on the computing device as a data string with encryption semantics, and is intended to be accessed only by the user. Like other data strings, private keys can potentially be copied and shared. Any user with a private key can control the digital assets associated with the private key. In addition, if the private key is lost, the digital asset cannot be retrieved. Therefore, safe storage and effective use of cryptographic keys will be important.

期望開發一種金鑰管理技術,其可以有效地驗證用戶的身分資訊並安全地管理用戶的密碼金鑰。 It is desired to develop a key management technology that can effectively verify the user's identity information and safely manage the user's password key.

本文描述了用於基於唯一地標識用戶的身分資訊來管理分配給用戶的用戶密碼金鑰的技術。這些技術總體上涉及由身分加密晶片(ICC)接收身分資訊和用戶密碼金鑰,身分資訊和用戶密碼金鑰被數位地簽有數位簽章,該數位簽章由分配給主用戶的私密金鑰產生,基於分配給主用戶的公開金鑰確定數位簽章是可信的,公開金鑰被預先儲存在ICC上的記憶體中,並且將身分資訊和用戶密碼金鑰加密並儲存到記憶體中。 This article describes a technique for managing the user password key assigned to a user based on the identity information that uniquely identifies the user. These technologies generally involve the receipt of identity information and user password keys by an identity encryption chip (ICC). The identity information and user password keys are digitally signed with a digital signature, which is assigned to the master user’s private key Generated, based on the public key assigned to the main user to determine that the digital signature is credible, the public key is pre-stored in the memory on the ICC, and the identity information and user password key are encrypted and stored in the memory .

本文還提供了耦接到一個或多個處理器並且其上儲存有指令的一個或多個非暫態電腦可讀儲存媒體,當所述指令由所述一個或多個處理器執行時,所述指令將促使所述一個或多個處理器按照本文提供的方法的實施例執行操作。 This document also provides one or more non-transitory computer-readable storage media coupled to one or more processors and storing instructions thereon. When the instructions are executed by the one or more processors, the The instructions will cause the one or more processors to perform operations in accordance with the embodiments of the methods provided herein.

本文還提供了用於實施本文提供的所述方法的系統。該系統包括一個或多個處理器以及耦接到所述一個或多個處理器並且其上儲存有指令的電腦可讀儲存媒體,當所述指令由所述一個或多個處理器執行時,所述指令將導致所述一個或多個處理器按照本文提供的方法的實施例執行操作。 This article also provides a system for implementing the methods provided herein. The system includes one or more processors and a computer-readable storage medium coupled to the one or more processors and storing instructions thereon. When the instructions are executed by the one or more processors, The instructions will cause the one or more processors to perform operations in accordance with the embodiments of the methods provided herein.

應瞭解,依據本文的方法可以包括本文描述的方面和特徵的任意組合。也就是說,根據本文的方法不限於本文具體描述的方面和特徵的組合,還包括所提供的方面和特徵的任意組合。 It should be understood that the methods according to this document can include any combination of the aspects and features described herein. That is to say, the method according to this document is not limited to the combination of the aspects and features specifically described herein, but also includes any combination of the provided aspects and features.

以下在圖式和描述中闡述了本文的一個或多個實施例的細節。根據說明書和圖式以及申請專利範圍,本文的其他特徵和優點將顯而易見。 The details of one or more embodiments herein are set forth in the drawings and description below. According to the specification and drawings and the scope of patent application, other features and advantages of this article will be obvious.

100:身分加密晶片(ICC) 100: Identity Encryption Chip (ICC)

102:記憶體 102: memory

104:邏輯計算元件 104: Logic Computing Components

110:步驟 110: Step

112:步驟 112: Step

114:步驟 114: step

116:步驟 116: step

120:步驟 120: Step

122:步驟 122: step

124:步驟 124: Step

125:步驟 125: step

126:步驟 126: Step

128:步驟 128: steps

130:步驟 130: steps

132:步驟 132: Step

134:步驟 134: Step

200:處理 200: processing

202:步驟 202: Step

204:步驟 204: Step

206:步驟 206: Step

208:步驟 208: Step

210:步驟 210: Step

212:步驟 212: Step

214:步驟 214: Step

300:處理 300: Treatment

302:步驟 302: Step

304:步驟 304: Step

306:步驟 306: Step

308:步驟 308: step

310:步驟 310: Step

400:處理 400: processing

402:步驟 402: step

404:步驟 404: Step

406:步驟 406: Step

408:步驟 408: step

410:步驟 410: Step

412:步驟 412: step

500:金鑰管理設備 500: key management device

504:金鑰管理 504: Key Management

506:儲存 506: storage

508:寫入 508: write

510:隨機產生 510: Randomly Generated

512:刪除 512: delete

514:演算法管理 514: Algorithm Management

516:身分驗證演算法 516: Identity Verification Algorithm

518:數位簽章驗證演算法 518: Digital Signature Verification Algorithm

520:加密/解密演算法 520: encryption/decryption algorithm

522:權杖演算法 522: Scepter Algorithm

524:輸入管理 524: Input Management

526:演算法輸入 526: Algorithm input

528:身分資訊輸入 528: Identity Information Input

530:密碼金鑰輸入 530: Password key input

532:數位簽章 532: Digital Signature

534:身分驗證 534: Identity Verification

600:步驟 600: step

602:步驟 602: step

604:步驟 604: step

606:步驟 606: step

608:步驟 608: step

700:裝置/身分加密晶片 700: Device/identity encryption chip

702:請求接收模組 702: request receiving module

704:數位簽章認證模組 704: Digital Signature Authentication Module

706:加密模組 706: Encryption Module

708:儲存模組 708: Storage Module

[圖1]是顯示用於執行可用於執行本文的實施例的處理的身分加密晶片的示例的示圖。 [Fig. 1] is a diagram showing an example of an identity encryption chip for executing processing that can be used to perform the embodiments of this document.

[圖2]是顯示根據本文的實施例的用於身分加密晶片初始化處理的示例的流程圖。 [FIG. 2] is a flowchart showing an example of initialization processing for an identity encryption chip according to an embodiment of this document.

[圖3]是顯示根據本文的實施例的用於向身分加密晶片輸入資訊的處理的示例的流程圖。 [FIG. 3] is a flowchart showing an example of processing for inputting information to an identity encryption chip according to an embodiment of this document.

[圖4]是顯示根據本文的實施例的使用身分加密晶片執行加密操作的處理的示例的流程圖。 [FIG. 4] is a flowchart showing an example of a process of performing an encryption operation using an identity encryption chip according to an embodiment of this document.

[圖5]是顯示根據本文的實施例的金鑰管理設備的示 例的示圖。 [FIG. 5] is a diagram showing a key management device according to an embodiment of this document Example diagram.

[圖6]描繪了可以根據本文的實施例執行的方法的示例。 [Figure 6] depicts an example of a method that can be performed according to the embodiments herein.

[圖7]描繪了根據本文的實施例的裝置的模組的示例。 [Fig. 7] An example of the module of the device according to the embodiment of this document is depicted.

各圖式中相同的圖式標記和名稱表示相同的元件。 The same drawing symbols and names in the drawings indicate the same elements.

本文描述了用於基於唯一地標識用戶的身分資訊來管理分配給用戶的用戶密碼金鑰的技術。這些技術總體上涉及由身分加密晶片(ICC)接收身分資訊和用戶密碼金鑰,身分資訊和用戶密碼金鑰被數位地簽有由分配給主用戶的私密金鑰產生的數位簽章,基於分配給主用戶的公開金鑰確定數位簽章是可信的,公開金鑰被預先儲存在ICC上的記憶體中,並且將身分資訊和用戶密碼金鑰加密並儲存到記憶體。 This article describes a technique for managing the user password key assigned to a user based on the identity information that uniquely identifies the user. These technologies generally involve the receipt of identity information and user password keys by an identity encryption chip (ICC). The identity information and user password keys are digitally signed with a digital signature generated by the private key assigned to the main user, based on the distribution The public key given to the main user confirms that the digital signature is trustworthy. The public key is pre-stored in the memory on the ICC, and the identity information and user password key are encrypted and stored in the memory.

圖1是顯示用於執行可用於執行本文的實施例的處理的ICC 100的示例的示圖。在較高層面上,ICC 100可以是包括記憶體102和邏輯計算元件104的電腦晶片。ICC 100可用於安全地執行加密操作。在一些實施例中,ICC 100可以是包括一個或多個晶片組件的晶片組。記憶體102和邏輯計算元件104可以整合到不同的晶片組件中。在一些實施例中,記憶體102可用於提供永久儲存。在一些示例中,記憶體102可以是可編程唯讀記憶體(PROM),其允許 資料被寫入一次並且之後僅唯讀。在一些示例中,記憶體102可以是電可抹除可程式設計唯讀記憶體(EEPROM)或快閃記憶體,其可以被重新格式化並重新程式設計。在一些實施例中,邏輯計算元件可以是專用積體電路(ASIC)或單晶片微電腦(SCM)。 FIG. 1 is a diagram showing an example of an ICC 100 for performing processing that can be used to perform the embodiments herein. At a higher level, the ICC 100 may be a computer chip including a memory 102 and a logic computing element 104. The ICC 100 can be used to perform encryption operations securely. In some embodiments, the ICC 100 may be a wafer set including one or more wafer assemblies. The memory 102 and the logic computing element 104 can be integrated into different chip components. In some embodiments, the memory 102 can be used to provide permanent storage. In some examples, the memory 102 may be a programmable read-only memory (PROM), which allows The data is written once and only read only afterwards. In some examples, the memory 102 may be an electrically erasable programmable read-only memory (EEPROM) or a flash memory, which can be reformatted and reprogrammed. In some embodiments, the logic computing element may be a dedicated integrated circuit (ASIC) or a single chip microcomputer (SCM).

在一些電腦網路中,實施密碼術以維護資料或交易的隱私。例如,如果兩個用戶想要保持交易隱私,使得其他用戶無法辨別該交易的細節,則用戶可以加密交易資料。示例性加密操作包括但不限於對稱式金鑰密碼編譯和非對稱式金鑰密碼編譯。對稱加密是指使用單個金鑰既進行加密(從明文產生密文)又進行解密(從密文產生明文)的加密處理。 In some computer networks, cryptography is implemented to maintain the privacy of data or transactions. For example, if two users want to maintain transaction privacy so that other users cannot distinguish the details of the transaction, the user can encrypt the transaction data. Exemplary encryption operations include, but are not limited to, symmetric key cryptography and asymmetric key cryptography. Symmetric encryption refers to an encryption process that uses a single key to both encrypt (generate ciphertext from plaintext) and decrypt (generate plaintext from ciphertext).

非對稱加密使用金鑰對,每個金鑰對包括私密金鑰和公開金鑰,私密金鑰僅對對應用戶是已知的,並且公開金鑰可以公開地傳播。用戶可以使用另一用戶的公開金鑰來加密資料,並且該加密的資料可以使用該另一用戶的私密金鑰來解密。 Asymmetric encryption uses key pairs. Each key pair includes a private key and a public key. The private key is only known to the corresponding user, and the public key can be publicly distributed. The user can use another user's public key to encrypt data, and the encrypted data can be decrypted using the other user's private key.

可以使用非對稱加密來提供數位簽章,這使得交易中的參與者能夠確認交易中的其他參與者以及交易的有效性。例如,用戶可以對訊息進行數位簽章,而另一用戶可以基於數位簽章確認訊息是由該用戶發送的。數位簽章還可用於確保訊息在傳輸過程中不被篡改。例如,用戶A將向用戶B發送訊息。用戶A產生訊息的雜湊值,然後使用其私密金鑰加密雜湊值以提供為加密雜湊值的數位簽章。 用戶A將數位簽章附加到訊息,並將帶有數位簽章的訊息發送給用戶B。用戶B使用用戶A的公開金鑰解密數位簽章,並提取雜湊值。用戶B對訊息進行雜湊處理並比較雜湊值。如果雜湊值相同,則用戶B可以確認該訊息確實來自用戶A,並且未被篡改。 Asymmetric encryption can be used to provide a digital signature, which enables participants in a transaction to confirm other participants in the transaction and the validity of the transaction. For example, a user can digitally sign a message, and another user can confirm that the message was sent by the user based on the digital signature. Digital signatures can also be used to ensure that messages are not tampered with during transmission. For example, user A will send a message to user B. User A generates a hash value of the message, and then uses his private key to encrypt the hash value to provide a digital signature that is the encrypted hash value. User A attaches a digital signature to the message, and sends the message with the digital signature to user B. User B uses User A's public key to decrypt the digital signature and extract the hash value. User B hashes the message and compares the hash value. If the hash value is the same, user B can confirm that the message is indeed from user A and has not been tampered with.

ICC 100可以用於基於對用戶身分資訊進行驗證來安全地執行加密操作。記憶體102可用於儲存可信用戶身分資訊和密碼金鑰資訊。記憶體102還可以儲存身分認證演算法(例如,作為電腦可執行碼)和加密操作演算法(例如,作為電腦可執行碼)。在一些實施例中,儲存在記憶體102中的資訊和演算法被加密以即使在ICC 100被進行逆向工程的情況下也防止洩密。當從用戶接收到用以執行加密操作的請求時,邏輯計算元件104可以使用從用戶收集的身分資訊和儲存在記憶體102中的可信用戶身分資訊,以基於身分認證演算法驗證用戶的身分。例如,如果身分資訊是用戶指紋的指紋圖像,則身分認證演算法可以是本地認證演算法,其將從用戶收集的指紋圖像和儲存的指紋圖像進行比較。如果收集的指紋圖像與儲存的指紋圖像匹配,則成功驗證用戶的身分。然後,邏輯計算元件104可以使用所儲存的密碼金鑰資訊來執行所請求的加密操作。在執行加密操作之後,可以由ICC 100輸出操作結果。透過使用ICC 100,可以僅在驗證或認證用戶的身分可信之後執行加密操作。這樣,可以保證用戶執行操作的許可權。此外,由於密碼金鑰作為密文儲存在ICC 100中,因此加密 操作在ICC 100內部執行。只有操作結果從ICC 100輸出。以這種方式,可以確保密碼金鑰的安全性。 The ICC 100 can be used to perform encryption operations securely based on verifying user identity information. The memory 102 can be used to store trusted user identity information and password key information. The memory 102 can also store an identity authentication algorithm (for example, as a computer executable code) and an encryption operation algorithm (for example, as a computer executable code). In some embodiments, the information and algorithms stored in the memory 102 are encrypted to prevent leakage even when the ICC 100 is reverse engineered. When receiving a request to perform an encryption operation from the user, the logical computing component 104 can use the identity information collected from the user and the trusted user identity information stored in the memory 102 to verify the identity of the user based on the identity authentication algorithm . For example, if the identity information is a fingerprint image of a user's fingerprint, the identity authentication algorithm may be a local authentication algorithm, which compares the fingerprint image collected from the user with the stored fingerprint image. If the collected fingerprint image matches the stored fingerprint image, the user's identity is successfully verified. Then, the logical computing component 104 can use the stored cryptographic key information to perform the requested encryption operation. After the encryption operation is performed, the operation result can be output by the ICC 100. By using ICC 100, it is possible to perform encryption operations only after verifying or authenticating the user's identity. In this way, the user's permission to perform operations can be guaranteed. In addition, since the cryptographic key is stored in the ICC 100 as cipher text, it is encrypted The operation is performed inside the ICC 100. Only the operation result is output from the ICC 100. In this way, the security of the cryptographic key can be ensured.

在一些實施例中,ICC 100的主用戶可以使用公有授權金鑰來向用戶提供對ICC 100的存取。主用戶可以是ICC 100的管理者、網路系統管理員、所有者或發佈者。簡而言之,主用戶是控制ICC 100的用戶,並且授權金鑰對被分配給主用戶。授權金鑰對包括公有授權金鑰和私有授權金鑰,公有授權金鑰和私有授權金鑰使主用戶(或代表主用戶執行的ICC 100)能夠參與非對稱加密通訊和/或執行加密操作(例如,加密、解密)。在110,將公有授權金鑰寫入ICC 100。 In some embodiments, the master user of the ICC 100 can use a public authorization key to provide the user with access to the ICC 100. The main user can be an administrator of the ICC 100, a network system administrator, an owner, or a publisher. In short, the master user is the user who controls the ICC 100, and the authorization key pair is assigned to the master user. The authorization key pair includes a public authorization key and a private authorization key. The public authorization key and the private authorization key enable the master user (or the ICC 100 executing on behalf of the master user) to participate in asymmetric encrypted communication and/or perform encryption operations ( For example, encryption, decryption). At 110, the public authorization key is written into the ICC 100.

在112,清除記憶體內容並且將公有授權金鑰寫入記憶體102。在一些實施例中,記憶體102是永久記憶體。在一些實施例中,為了防止篡改,公有授權金鑰只能被寫入記憶體102的儲存單元一次。如果需要使用新的公有授權金鑰來替換現有的公有授權金鑰,則可以在寫入新的公有授權金鑰之前抹除記憶體102的內容。在一些實施例中,可以在將公有授權金鑰寫入記憶體102之前對公有授權金鑰進行加密以增強安全性。 At 112, the memory content is erased and the public authorization key is written into the memory 102. In some embodiments, the memory 102 is permanent memory. In some embodiments, in order to prevent tampering, the public authorization key can only be written into the storage unit of the memory 102 once. If a new public license key needs to be used to replace the existing public license key, the content of the memory 102 can be erased before the new public license key is written. In some embodiments, the public authorization key may be encrypted before writing the public authorization key to the memory 102 to enhance security.

在114,將用戶的身分資訊和用戶的密碼金鑰對輸入到ICC 100。密碼金鑰對包括公有用戶金鑰和私有用戶金鑰,公有用戶金鑰和私有用戶金鑰使用戶(或代表用戶執行的計算設備)參與非對稱加密通訊和/或執行加密操作(例如,加密、解密)。在一些實施例中,身分資訊可以是用 戶的生物特徵資訊。生物特徵資訊的示例包括但不限於指紋、聲紋、心跳和虹膜資訊。在116,可以將數位簽章添加到身分資訊和密碼金鑰對。在一些實施例中,主用戶可以將數位簽章添加到輸入的身分資訊和密碼金鑰對。分配給主用戶的私有授權金鑰可用於產生數位簽章。在一些實施例中,私有授權金鑰也可以由主用戶發佈給可信用戶。可信用戶可以使用私有授權金鑰直接對身分資訊和密碼金鑰對簽名。在118,從記憶體102讀取公有授權金鑰以在120驗證數位簽章。如果驗證成功,則確定用戶被授權使用ICC 100來執行加密操作。 At 114, the user's identity information and the user's password key pair are input into the ICC 100. The cryptographic key pair includes a public user key and a private user key. The public user key and the private user key enable the user (or the computing device executing on behalf of the user) to participate in asymmetric encrypted communication and/or perform encryption operations (for example, encryption , Decrypt). In some embodiments, the identity information can be used Biometric information of the household. Examples of biometric information include, but are not limited to, fingerprint, voiceprint, heartbeat, and iris information. At 116, a digital signature can be added to the identity information and password key pair. In some embodiments, the master user can add a digital signature to the entered identity information and password key pair. The private authorization key assigned to the master user can be used to generate a digital signature. In some embodiments, the private authorization key may also be issued by the master user to the trusted user. Trusted users can use the private authorization key to directly sign the identity information and the password key pair. At 118, the public authorization key is read from the memory 102 to verify the digital signature at 120. If the verification is successful, it is determined that the user is authorized to use the ICC 100 to perform encryption operations.

在122,將身分資訊和密碼金鑰對寫入記憶體102以儲存。在一些實施例中,可以在將身分資訊和密碼金鑰寫入記憶體102之前對身分資訊和密碼金鑰進行加密對以增強安全性。在一些實施例中,公有授權金鑰可用於對身分資訊和密碼金鑰對進行加密。在一些實施例中,身分資訊和密碼金鑰對可以被寫入記憶體102的單獨儲存單元。 At 122, the identity information and the password key pair are written into the memory 102 for storage. In some embodiments, the identity information and the password key may be encrypted before being written into the memory 102 to enhance security. In some embodiments, the public authorization key can be used to encrypt the identity information and the cryptographic key pair. In some embodiments, the identity information and the cryptographic key pair can be written into a separate storage unit of the memory 102.

在124,用戶將用以執行加密操作的請求發送到ICC 100。在一些實施例中,還可以將要被執行加密操作的資料發送到ICC 100。例如,如果加密操作是加密,則對應的資料可以是要被加密的資料檔案。在125,收集用戶的身分資訊並將其發送到ICC 100。在126,從記憶體102讀取在122寫入記憶體102的身分資訊,以在128執行身分驗證。可以基於將在125接收的身分資訊與儲存的身分資訊進行比較來執行身分驗證。如果身分資訊匹配,則驗證成 功並且在130從記憶體102讀取密碼金鑰資訊以在132執行加密操作。如果身分資訊不匹配,則驗證不成功,並且可以拒絕用以執行加密操作的請求。在一些實施例中,可以基於所接收的特定類型的身分資訊,使用身分驗證演算法來執行身分驗證。在一些實施例中,可以基於加密操作演算法來執行加密操作。如上所述,加密操作可以是加密、解密或向資料添加數位簽章。在執行加密操作之後,可以在134輸出操作結果。 At 124, the user sends a request to perform an encryption operation to ICC 100. In some embodiments, the data to be encrypted can also be sent to the ICC 100. For example, if the encryption operation is encryption, the corresponding data may be a data file to be encrypted. At 125, the user's identity information is collected and sent to the ICC 100. At 126, the identity information written in the memory 102 at 122 is read from the memory 102 to perform identity verification at 128. Identity verification can be performed based on comparing the identity information received at 125 with the stored identity information. If the identity information matches, it will be verified as Then, the cryptographic key information is read from the memory 102 at 130 to perform the encryption operation at 132. If the identity information does not match, the verification is unsuccessful, and the request to perform the encryption operation can be rejected. In some embodiments, an identity verification algorithm may be used to perform identity verification based on the received specific type of identity information. In some embodiments, encryption operations may be performed based on encryption operation algorithms. As mentioned above, the encryption operation can be encryption, decryption or adding a digital signature to the data. After the encryption operation is performed, the operation result may be output at 134.

如上所述,ICC 100可以在硬體內創建可信環境,以便授權用戶安全地執行加密操作。例如,擁有ICC 100的主用戶可以授權多個用戶將他們的身分資訊和密碼金鑰對儲存到ICC 100。用戶要求儲存的資訊由主用戶的私有授權金鑰進行數位簽章。可以透過主用戶的公有授權金鑰來驗證數位簽章是否可信,該主用戶的公有授權金鑰預先儲存在ICC 100中。如果數位簽章是可信的,則對應的身分資訊和密碼金鑰對可以儲存在ICC 100中。 As described above, the ICC 100 can create a trusted environment in the hardware so that authorized users can perform encryption operations securely. For example, a master user who owns the ICC 100 can authorize multiple users to store their identity information and password key pairs in the ICC 100. The information requested by the user to be stored is digitally signed by the master user’s private authorization key. The authenticity of the digital signature can be verified through the public authorization key of the master user, and the public authorization key of the master user is pre-stored in the ICC 100. If the digital signature is trusted, the corresponding identity information and password key pair can be stored in the ICC 100.

當用戶請求加密操作時,ICC 100可以從記憶體檢索特定用戶的身分資訊和密碼金鑰對。身分資訊可以用於驗證用戶的身分,並且密碼金鑰對可以用於在驗證用戶的身分之後執行所請求的加密操作。可以針對各種實際場景執行加密操作。例如,加密操作可以是將數位簽章添加到區塊鏈交易的操作。在該示例中,節點A(例如,代表用戶操作的計算設備)可以是區塊鏈網路內的計算設備,其發起對與節點B的區塊鏈交易資料進行數位簽章的請求。區塊 鏈交易資料可以是節點A和節點B之間的交易資料的雜湊值。節點A可以使用ICC 100產生對經雜湊處理的交易資料的數位簽章。為了使用ICC 100,收集與節點A相關聯的身分資訊,並將其與儲存在ICC 100中的身分資訊進行比較。如果收集的身分資訊與儲存的身分資訊匹配,則可以授權節點A使用ICC 100執行加密操作。更具體地說,可以從ICC 100的記憶體中讀取密碼金鑰對中的私密金鑰,以產生對經雜湊處理的交易資料的數位簽章。然後,節點A可以將具有數位簽章的經雜湊處理的交易資料發送到節點B。節點B使用密碼金鑰對中的公開金鑰解密數位簽章並提取雜湊值。節點B對訊息進行雜湊處理並比較雜湊值。如果雜湊值相同,則節點B可以確認該訊息確實來自節點A並且未被篡改。 When a user requests an encryption operation, the ICC 100 can retrieve the identity information and password key pair of a specific user from the memory. The identity information can be used to verify the user's identity, and the password key pair can be used to perform the requested encryption operation after verifying the user's identity. Encryption operations can be performed for various practical scenarios. For example, the encryption operation may be an operation of adding a digital signature to a blockchain transaction. In this example, node A (for example, a computing device operating on behalf of a user) may be a computing device in a blockchain network, which initiates a request for digital signature of blockchain transaction data with node B. Block The chain transaction data can be a hash value of the transaction data between node A and node B. Node A can use ICC 100 to generate a digital signature of the hashed transaction data. In order to use the ICC 100, the identity information associated with the node A is collected and compared with the identity information stored in the ICC 100. If the collected identity information matches the stored identity information, the node A can be authorized to use the ICC 100 to perform encryption operations. More specifically, the private key in the cryptographic key pair can be read from the memory of the ICC 100 to generate a digital signature of the hashed transaction data. Then, node A can send the hashed transaction data with a digital signature to node B. Node B uses the public key in the cryptographic key pair to decrypt the digital signature and extract the hash value. Node B hashes the message and compares the hash value. If the hash value is the same, node B can confirm that the message is indeed from node A and has not been tampered with.

圖2是顯示根據本文的實施例的用於ICC初始化的處理200的示例的流程圖。在一些實施例中,ICC由諸如管理者、網路系統管理員或ICC的發佈者的主用戶初始化。在一些實施例中,主用戶可以控制哪些用戶被授權使用ICC來安全地執行加密操作。 FIG. 2 is a flowchart showing an example of a process 200 for ICC initialization according to an embodiment of this document. In some embodiments, the ICC is initialized by a master user such as an administrator, a network system administrator, or a publisher of the ICC. In some embodiments, the master user can control which users are authorized to use ICC to perform encryption operations securely.

在202,重置ICC。在一些實施例中,回應於接收到輸入公有授權金鑰的請求而重置ICC。在一些實施例中,重置ICC可以包括抹除儲存在ICC的記憶體中的內容,或將其重新格式化。在一些實施例中,重置ICC還可以包括將ICC的邏輯計算元件的設置重配或重置為預設值。透過重置ICC,可以保證使用一個公有授權金鑰來控制輸入到 ICC的資訊。此外,先前儲存在ICC中的任何身分資訊和密碼金鑰對都被抹除以確保資料安全性。在一些實施例中,ICC是新的ICC並且是第一次使用,ICC可以被初始化以接受公有授權金鑰的輸入。在一些實施例中,公有授權金鑰可以是由主用戶的私有授權金鑰產生的用於驗證數位簽章的公開金鑰。 At 202, the ICC is reset. In some embodiments, the ICC is reset in response to receiving a request to enter the public authorization key. In some embodiments, resetting the ICC may include erasing the content stored in the memory of the ICC or reformatting it. In some embodiments, resetting the ICC may also include resetting or resetting the setting of the logic calculation element of the ICC to a preset value. By resetting the ICC, you can ensure that a public authorization key is used to control the input to ICC information. In addition, any identity information and password key pairs previously stored in ICC are erased to ensure data security. In some embodiments, the ICC is a new ICC and is used for the first time, and the ICC can be initialized to accept the input of the public authorization key. In some embodiments, the public authorization key may be a public key generated by the master user's private authorization key for verifying the digital signature.

在204,ICC接收公有授權金鑰。在206,調用公有授權金鑰輸入函數以將公有授權金鑰輸入到記憶體。在208,確定ICC的記憶體是否是一次性可編程(OTP)記憶體。OTP記憶體只允許將資料寫入記憶體一次。當主用戶向ICC輸入新的公有授權金鑰時,可以抹除任何先前儲存的身分資訊和密碼金鑰對,以確保新的公有授權金鑰不控制先前已輸入資訊的用戶。因此,如果記憶體是OTP,則可以在212加密公有授權金鑰並將加密的公有授權金鑰輸入到記憶體。否則,在公有授權金鑰被加密並輸入到記憶體之前,在210清除記憶體的內容。在212之後,處理200在214結束。 At 204, the ICC receives the public authorization key. In 206, the public license key input function is called to input the public license key into the memory. At 208, it is determined whether the memory of the ICC is a one-time programmable (OTP) memory. OTP memory only allows data to be written to the memory once. When the main user inputs a new public authorization key to ICC, any previously stored identity information and password key pair can be erased to ensure that the new public authorization key does not control the user who has previously entered the information. Therefore, if the memory is OTP, the public authorization key can be encrypted at 212 and the encrypted public authorization key can be input to the memory. Otherwise, before the public authorization key is encrypted and entered into the memory, the contents of the memory are cleared at 210. After 212, the process 200 ends at 214.

圖3是顯示根據本文實施例的用於將資訊輸入到ICC的處理300的示例的流程圖。在對ICC進行初始化之後,主用戶可以授權用戶將對應的身分資訊和密碼金鑰對儲存到ICC。這樣,授權用戶可以使用ICC安全地執行加密操作。 FIG. 3 is a flowchart showing an example of a process 300 for inputting information into an ICC according to an embodiment of this document. After initializing the ICC, the master user can authorize the user to save the corresponding identity information and password key pair to the ICC. In this way, authorized users can use ICC to perform encryption operations securely.

在302,ICC接收身分資訊和密碼金鑰對。在一些實施例中,身分資訊可以由與ICC可通訊地耦接的計算設備收 集。示例性計算設備可以包括IoT設備、智慧型手環、智慧型手錶、膝上型電腦(或桌上型電腦)和智慧型手機。在一些實施例中,身分資訊可以是用戶的生物特徵資訊,例如指紋、聲紋、心跳和虹膜資訊。計算設備可以包括指紋感測器、麥克風、心跳感測器或虹膜掃描器以收集生物特徵資訊。例如,計算設備可以是可以收集用戶的心跳資訊的智慧型手錶。心跳資訊可以用作識別用戶的身分資訊。在收集身分資訊之後,可以將其與用戶的密碼金鑰對一起發送到ICC。在一些實施例中,ICC可以基於例如藍牙、近場通訊(NFC)、Wi-Fi或蜂巢式資料的無線通訊協定與計算設備無線地通訊。在一些實施例中,ICC可以插入或整合到計算設備以執行與計算設備的有線通訊。 At 302, the ICC receives the identity information and the cryptographic key pair. In some embodiments, the identity information may be received by a computing device communicatively coupled with the ICC. set. Exemplary computing devices may include IoT devices, smart bracelets, smart watches, laptop computers (or desktop computers), and smart phones. In some embodiments, the identity information may be biometric information of the user, such as fingerprint, voiceprint, heartbeat, and iris information. The computing device may include a fingerprint sensor, a microphone, a heartbeat sensor, or an iris scanner to collect biometric information. For example, the computing device may be a smart watch that can collect the user's heartbeat information. The heartbeat information can be used to identify the user's identity information. After collecting the identity information, it can be sent to the ICC together with the user's password key pair. In some embodiments, the ICC may communicate wirelessly with the computing device based on wireless communication protocols such as Bluetooth, Near Field Communication (NFC), Wi-Fi, or cellular data. In some embodiments, the ICC can be plugged into or integrated into the computing device to perform wired communication with the computing device.

在304,將數位簽章添加到身分資訊和密碼金鑰對。在一些實施例中,主用戶可以將數位簽章添加到屬於授權用戶的身分資訊和密碼金鑰對。用於產生數位簽章的私密金鑰可以是私有授權金鑰。私有授權金鑰與如在圖2的描述中所討論的ICC初始化處理200期間儲存在ICC中的公有授權金鑰屬於同一金鑰對。 At 304, the digital signature is added to the identity information and password key pair. In some embodiments, the master user can add a digital signature to the identity information and password key pair belonging to the authorized user. The private key used to generate the digital signature may be a private authorization key. The private authorization key belongs to the same key pair as the public authorization key stored in the ICC during the ICC initialization process 200 as discussed in the description of FIG. 2.

在306,基於公有授權金鑰來驗證數位簽章。如果數位簽章是正確的,則在308對身分資訊和密碼金鑰對進行加密,並將加密的身分資訊和密碼金鑰對儲存到ICC的記憶體中。之後,處理300在310結束。如果數位簽章不正確,則拒絕請求,並且處理300在310結束。在用戶的身分資訊和密碼金鑰對被輸入到ICC之後,用戶可以使用ICC 來安全地執行加密操作。 At 306, the digital signature is verified based on the public authorization key. If the digital signature is correct, the identity information and password key pair are encrypted at 308, and the encrypted identity information and password key pair are stored in the memory of the ICC. After that, the process 300 ends at 310. If the digital signature is incorrect, the request is rejected and the process 300 ends at 310. After the user’s identity information and password key pair are entered into ICC, the user can use ICC To perform encryption operations securely.

圖4是顯示根據本文的實施例的用於使用ICC執行加密操作的處理400的示例的流程圖。在402,接收用以執行加密操作的請求。加密操作的示例可以包括資料加密、資料解密和添加數位簽章。 FIG. 4 is a flowchart showing an example of a process 400 for performing an encryption operation using ICC according to an embodiment of this document. At 402, a request to perform an encryption operation is received. Examples of encryption operations can include data encryption, data decryption, and adding digital signatures.

在404,接收用戶的身分資訊。如在圖3的描述中所討論的那樣,身分資訊可以由計算設備收集並發送到ICC。在406,可以驗證身分資訊。在一些實施例中,可以將身分資訊與儲存在ICC的記憶體中的身分資訊進行比較。如果身分資訊與儲存的身分資訊匹配,則驗證成功,並且可以使用儲存在ICC的記憶體中的密碼金鑰對在408執行所請求的加密操作。否則,處理400在412結束。在408之後,處理400進行到410,其中返回操作結果。操作結果可以取決於在408執行的加密操作。例如,如果加密操作是檔案加密,則可以返回使用用戶的公開金鑰加密的檔案。類似地,如果加密操作是檔案解密,則可以返回使用用戶的私密金鑰解密的檔案。如果加密操作是添加數位簽章,則使用私密金鑰產生具有用戶的數位簽章的檔案,並返回該檔案。在410之後,處理在412結束。 At 404, the user's identity information is received. As discussed in the description of FIG. 3, the identity information can be collected by the computing device and sent to the ICC. At 406, the identity information can be verified. In some embodiments, the identity information can be compared with the identity information stored in the memory of the ICC. If the identity information matches the stored identity information, the verification is successful, and the cryptographic key pair stored in the memory of the ICC can be used to perform the requested encryption operation at 408. Otherwise, the process 400 ends at 412. After 408, the process 400 proceeds to 410, where the operation result is returned. The result of the operation may depend on the encryption operation performed at 408. For example, if the encryption operation is file encryption, the file encrypted with the user's public key can be returned. Similarly, if the encryption operation is file decryption, the file decrypted using the user's private key can be returned. If the encryption operation is to add a digital signature, the private key is used to generate a file with the user's digital signature, and the file is returned. After 410, processing ends at 412.

圖5是顯示根據本文的實施例的金鑰管理設備500的示例的示圖。在一些實施例中,可以由金鑰管理設備500管理由ICC使用以為用戶執行加密操作的密碼金鑰對。金鑰管理設備500可以執行金鑰管理504和演算法管理514。金鑰管理504可以包括密碼金鑰對的儲存506、寫入508、隨 機產生510和刪除512。密碼金鑰可以包括與主用戶相關聯的非對稱金鑰對(包括公有授權金鑰)和與ICC的授權用戶相關聯以執行加密操作的密碼金鑰對。 FIG. 5 is a diagram showing an example of a key management device 500 according to an embodiment of this document. In some embodiments, the key management device 500 may manage the cryptographic key pair used by the ICC to perform the encryption operation for the user. The key management device 500 can perform key management 504 and algorithm management 514. Key management 504 can include storage 506, writing 508, random The machine generates 510 and deletes 512. The cryptographic key may include an asymmetric key pair (including a public authorization key) associated with the master user and a cryptographic key pair associated with an authorized user of the ICC to perform encryption operations.

由演算法管理514管理的演算法可以包括儲存和管理身分驗證演算法516、數位簽章驗證演算法518、加密和解密演算法520以及權杖演算法522。身分驗證演算法516可以用於執行如圖4的步驟406的描述中所討論的身分驗證。如本文所述,數位簽章驗證演算法518可用於執行數位簽章驗證。如本文所述,加密和解密演算法520可用於執行所請求的加密操作。例如,如果所請求的加密操作是對用戶檔案的加密操作,則可以執行加密和解密演算法520以從ICC的記憶體檢索用戶的公開金鑰並加密用戶檔案。權杖演算法522可用於管理權杖,該權杖指示對無需驗證用戶身分而執行所請求的加密操作的時間限制或數量限制。在一些實施例中,可以產生權杖並將其臨時儲存在ICC的記憶體中。權杖可以提供以下的授權:執行多次加密操作或在預定時間段內執行加密操作,而無需驗證用戶身分。例如,可以產生權杖以向ICC的用戶提供以下的授權:將數位簽章添加到接下來接收到的五個檔案中或者在接下來的三個小時內接收到的檔案中,無論首先滿足哪個條件。在一些實施例中,可以在權杖到期或用完時清除權杖並將其從ICC中移除。 The algorithms managed by the algorithm management 514 may include storage and management of an identity verification algorithm 516, a digital signature verification algorithm 518, an encryption and decryption algorithm 520, and a token algorithm 522. The identity verification algorithm 516 may be used to perform identity verification as discussed in the description of step 406 in FIG. 4. As described herein, the digital signature verification algorithm 518 can be used to perform digital signature verification. As described herein, the encryption and decryption algorithm 520 can be used to perform the requested encryption operation. For example, if the requested encryption operation is an encryption operation on a user file, the encryption and decryption algorithm 520 can be executed to retrieve the user's public key from the memory of the ICC and encrypt the user file. The token algorithm 522 can be used to manage tokens, which indicate the time limit or the number limit for performing the requested encryption operation without verifying the user's identity. In some embodiments, a token can be generated and temporarily stored in the memory of the ICC. The token can provide the following authorization: perform multiple encryption operations or perform encryption operations within a predetermined period of time without verifying the user's identity. For example, tokens can be generated to provide ICC users with the following authorization: add a digital signature to the next five files received or to files received within the next three hours, regardless of which one is satisfied first condition. In some embodiments, the token can be cleared and removed from the ICC when it expires or is used up.

在一些實施例中,金鑰管理設備500可以用作ICC的備份。即使ICC丟失或被破壞,也可以從金鑰管理設備500檢 索用於執行加密操作的密碼金鑰和演算法。 In some embodiments, the key management device 500 can be used as a backup of ICC. Even if the ICC is lost or destroyed, it can be checked from the key management device 500 Ask for the cryptographic key and algorithm used to perform the encryption operation.

在一些實施例中,金鑰管理設備500還可以執行輸入管理524。金鑰管理設備500可以可通訊地耦接到ICC以管理演算法輸入526、身分資訊輸入528、密碼金鑰輸入530、數位簽章產生532和身分驗證534。 In some embodiments, the key management device 500 can also perform input management 524. The key management device 500 can be communicably coupled to the ICC to manage the algorithm input 526, the identity information input 528, the password key input 530, the digital signature generation 532, and the identity verification 534.

圖6描繪了可以根據本文的實施例執行的方法600的示例。為了清楚呈現,下面的描述在本文中的其他圖式的上下文中總體上描述了方法600。然而,應當理解,方法600可以例如由適當的任何系統、環境、軟體和硬體,或者系統、環境、軟體和硬體的組合來執行。在一些實施例中,方法600的各個步驟可以平行、組合、迴圈或以任何適當的順序運行。在一些實施例中,方法600可以由根據本文的實施例描述的ICC執行。 Figure 6 depicts an example of a method 600 that can be performed according to embodiments herein. For clarity of presentation, the following description generally describes the method 600 in the context of other figures in this document. However, it should be understood that the method 600 can be executed by any suitable system, environment, software and hardware, or a combination of systems, environments, software and hardware, for example. In some embodiments, the various steps of method 600 may be executed in parallel, combined, looped, or in any suitable order. In some embodiments, the method 600 may be performed by the ICC described according to the embodiments herein.

在602,接收用以將身分資訊和用戶金鑰對儲存到ICC上的記憶體中的請求,該請求被數位地簽有數位簽章,該身分資訊唯一地標識用戶,並且用戶金鑰對被分配給用戶。在一些實施例中,透過預先儲存公有授權金鑰和私有授權金鑰來對ICC進行初始化。公有授權金鑰和私有授權金鑰是分配給ICC的主用戶的非對稱金鑰對。在一些實施例中,對ICC進行初始化還包括儲存可執行的身分認證碼以基於身分資訊認證用戶。在一些實施例中,對ICC進行初始化包括:儲存第一加密操作碼,該第一加密操作碼可被執行用以基於私有授權金鑰添加數位簽章;以及儲存第二加密操作碼,該第二加密操作碼可被執行用以基於用戶 金鑰對來執行檔案加密或檔案解密。 At 602, a request to store the identity information and the user key pair in the memory on the ICC is received. The request is digitally signed with a digital signature. The identity information uniquely identifies the user, and the user key pair is Assign to users. In some embodiments, the ICC is initialized by pre-storing the public authorization key and the private authorization key. The public authorization key and the private authorization key are an asymmetric key pair assigned to the master user of the ICC. In some embodiments, initializing the ICC further includes storing an executable identity authentication code to authenticate the user based on the identity information. In some embodiments, initializing the ICC includes: storing a first encryption operation code, the first encryption operation code can be executed to add a digital signature based on the private authorization key; and storing a second encryption operation code, the first encryption operation code Two encrypted opcodes can be executed to be based on the user Key pair to perform file encryption or file decryption.

在一些實施例中,用以儲存身分資訊和用戶金鑰對的請求是第一請求,身分資訊是第一身分資訊,數位簽章是第一數位簽章,並且電腦實施的方法還包括:接收第二身分資訊和用以將第二數位簽章添加到檔案的第二請求;基於第二身分資訊與第一身分資訊匹配來認證第二請求可信;並且基於第一加密操作碼和用戶金鑰對中的私密金鑰,將第二數位簽章添加到檔案中。在一些實施例中,用以儲存身分資訊和用戶金鑰對的請求是第一請求,身分資訊是第一身分資訊,並且方法600還包括:接收第二身分資訊和用於加密或解密檔案的第二請求;基於第二身分資訊與第一身分資訊匹配來認證第二請求可信;以及基於第二請求、第二加密操作碼以及用戶金鑰對中的公開金鑰或私密金鑰來執行加密或解密。在一些實施例中,身分資訊是與用戶相關聯的生物特徵資訊。 In some embodiments, the request for storing the identity information and the user key pair is the first request, the identity information is the first identity information, the digital signature is the first digital signature, and the computer-implemented method further includes: receiving The second identity information and the second request for adding the second digital signature to the file; based on the second identity information matching the first identity information to verify that the second request is authentic; and based on the first encryption operation code and user money The private key in the key pair adds the second digital signature to the file. In some embodiments, the request for storing the identity information and the user key pair is the first request, the identity information is the first identity information, and the method 600 further includes: receiving the second identity information and a file for encrypting or decrypting the file. The second request; verify that the second request is authentic based on the match between the second identity information and the first identity information; and execute based on the second request, the second encryption operation code, and the public key or the private key in the user key pair Encrypt or decrypt. In some embodiments, the identity information is biometric information associated with the user.

在604,基於預先儲存在記憶體中的公有授權金鑰來確定數位簽章是可信的。在一些實施例中,記憶體是可程式設計唯讀記憶體(PROM)、電可抹除PROM或快閃記憶體,並且其中,身分資訊和用戶金鑰對儲存在記憶體的單獨儲存單元中。 At 604, it is determined that the digital signature is authentic based on the public authorization key pre-stored in the memory. In some embodiments, the memory is programmable read-only memory (PROM), electrically erasable PROM, or flash memory, and wherein the identity information and user key pair are stored in a separate storage unit of the memory .

在606,對身分資訊和用戶金鑰對進行加密。在608,將身分資訊和用戶金鑰對儲存到記憶體中。 At 606, the identity information and the user key pair are encrypted. At 608, the identity information and the user key pair are stored in the memory.

圖7描繪了根據本文的實施例的裝置700的模組的示例。裝置700可以是ICC的實施例的示例。裝置700可以對 應於上述實施例,並且裝置700包括以下:請求接收模組702,用於接收用以將身分資訊和用戶金鑰對儲存到ICC上的記憶體中的請求,該請求被數位地簽有數位簽章,該身分資訊唯一地標識用戶,並且用戶金鑰對被分配給該用戶。數位簽章認證模組704,基於預先儲存在記憶體中的公有授權金鑰確定數位簽章是可信的。加密模組706,用於加密身分資訊和用戶金鑰對。儲存模組708,用於將身分資訊和用戶金鑰對儲存到記憶體。 FIG. 7 depicts an example of the modules of the apparatus 700 according to the embodiments herein. The apparatus 700 may be an example of an embodiment of ICC. The device 700 can In accordance with the above embodiment, the device 700 includes the following: a request receiving module 702 for receiving a request for storing identity information and a user key pair into the memory on the ICC, the request being digitally signed Signature, the identity information uniquely identifies the user, and the user key pair is assigned to the user. The digital signature authentication module 704 determines that the digital signature is credible based on the public authorization key stored in the memory in advance. The encryption module 706 is used to encrypt the identity information and the user key pair. The storage module 708 is used to store the identity information and the user key pair in the memory.

在可選實施例中,裝置700包括晶片初始化模組,用於透過預先儲存公有授權金鑰和對應於公有授權金鑰的私有授權金鑰來對ICC進行初始化。公有授權金鑰和私有授權金鑰是分配給ICC的主用戶的非對稱金鑰對。 In an alternative embodiment, the device 700 includes a chip initialization module for initializing the ICC by pre-storing a public authorization key and a private authorization key corresponding to the public authorization key. The public authorization key and the private authorization key are an asymmetric key pair assigned to the master user of the ICC.

在可選實施例中,記憶體是可程式設計唯讀記憶體(PROM)、電可抹除PROM或快閃記憶體,並且其中,身分資訊和非對稱金鑰對儲存在記憶體的單獨儲存單元中。在可選實施例中,身分資訊是生物特徵資訊。 In an alternative embodiment, the memory is programmable read-only memory (PROM), electrically erasable PROM, or flash memory, and wherein the identity information and the asymmetric key pair are stored in separate storage of the memory Unit. In an alternative embodiment, the identity information is biometric information.

在先前實施例中顯示的系統、裝置、模組或模組可以透過使用電腦晶片或實體來實現,或者可以透過使用具有特定功能的產品來實現。典型的實施例設備是電腦,電腦可以是個人電腦、膝上型電腦、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件收發設備、遊戲控制台、平板電腦、穿戴式設備或這些設備的任意組合。 The systems, devices, modules, or modules shown in the previous embodiments can be realized by using computer chips or entities, or can be realized by using products with specific functions. A typical embodiment device is a computer. The computer may be a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an e-mail receiving and sending device, a game console, Tablets, wearable devices, or any combination of these devices.

對於裝置中每個模組的功能和角色的實施例處理,可 以參考前一方法中對應步驟的實施例處理。為簡單起見,這裡省略了細節。 For the embodiment processing of the function and role of each module in the device, you can Take the embodiment with reference to the corresponding step in the previous method for processing. For simplicity, details are omitted here.

由於裝置實施例基本上對應於方法實施例,對於相關部分,可以參考方法實施例中的相關描述。先前描述的裝置實施例僅是示例。被描述為單獨部分的模組可以是或不是物理上分離的,並且顯示為模組的部分可以是或不是物理模組,可以位於一個位置,或者可以分佈在多個網路模組上。可以基於實際需求來選擇一些或所有模組,以實現本文方案的目標。本領域普通技術人員無需付出創造性勞動就能理解和實現本申請的實施例。 Since the device embodiment basically corresponds to the method embodiment, for related parts, reference may be made to the relevant description in the method embodiment. The previously described device embodiments are only examples. Modules described as separate parts may or may not be physically separated, and parts shown as modules may or may not be physical modules, may be located in one location, or may be distributed across multiple network modules. Some or all modules can be selected based on actual needs to achieve the goals of the solution in this article. A person of ordinary skill in the art can understand and implement the embodiments of the present application without creative work.

本文中描述的技術產生若干技術效果。例如,主題的實施例允許主用戶控制並向其他用戶授予使用ICC的許可權。可以透過使用主用戶的私密金鑰向授權用戶的身分和密碼金鑰資訊添加數位簽章來給出授權。如果數位簽章不能被預先儲存在ICC中的主用戶的公有授權金鑰認證通過,則ICC將拒絕身分和密碼金鑰資訊輸入。 The techniques described in this article produce several technical effects. For example, embodiments of the subject matter allow the master user to control and grant permission to use ICC to other users. Authorization can be given by adding a digital signature to the authorized user’s identity and password key information using the master user’s private key. If the digital signature cannot be authenticated by the public authorization key of the main user pre-stored in the ICC, the ICC will reject the input of the identity and password key information.

為了請求ICC執行加密操作,需要收集用戶的身分資訊,並且該收集的身分資訊被先前認證並儲存在ICC中的身分資訊驗證為可信。這樣,可以確保請求加密操作的用戶是授權用戶。 In order to request the ICC to perform an encryption operation, the user's identity information needs to be collected, and the collected identity information is verified as authentic by the identity information previously authenticated and stored in the ICC. In this way, it can be ensured that the user requesting the encryption operation is an authorized user.

此外,可以在儲存到ICC的記憶體之前加密身分資訊和密碼金鑰。該資訊僅在ICC中解密以執行對應的身分驗證和加密操作。加密操作在ICC內部執行,並且僅操作結果從ICC輸出。因此,用戶身分資訊和密碼金鑰是安全 的,即使ICC被駭客攻擊或進行逆向工程也不會被洩露。在一些實施例中,金鑰管理設備可用於以密文儲存身分資訊和密碼金鑰以向ICC提供備份並進一步增強資料安全性。 In addition, the identity information and password keys can be encrypted before being stored in the memory of the ICC. The information is only decrypted in the ICC to perform the corresponding identity verification and encryption operations. The encryption operation is performed inside the ICC, and only the operation result is output from the ICC. Therefore, user identity information and password keys are safe Yes, even if ICC is hacked or reverse engineered, it will not be leaked. In some embodiments, the key management device can be used to store the identity information and the password key in cipher text to provide backup to the ICC and further enhance data security.

計算設備可用於收集用戶身分資訊並發起對加密操作的請求。ICC可以透過各種通訊協定與計算設備無線地通訊,或者它可以整合或插入到計算設備中以便容易地用於安全的加密操作。 Computing devices can be used to collect user identity information and initiate requests for encryption operations. ICC can communicate wirelessly with computing devices through various communication protocols, or it can be integrated or plugged into computing devices so as to be easily used for secure encryption operations.

本文中描述的主題、動作以及操作的實施例可以在數位電子電路、有形體現的電腦軟體或韌體、電腦硬體中實現,包括本文中公開的結構及其結構等同物,或者它們中的一個或多個的組合。本文中描述的主題的實施例可以實現為一個或多個電腦程式,例如,一個或多個電腦程式指令模組,編碼在電腦程式載體上,用於由資料處理裝置執行或控制資料處理裝置的操作。載體可以是有形的非暫態電腦儲存媒體。例如,電腦程式載體可以包括一個或多個電腦可讀儲存媒體,其具有編碼或儲存在其上的指令。載體可以是有形的非暫態電腦可讀媒體,例如磁片、磁光碟或光碟、固態驅動器、隨機存取記憶體(RAM)、唯讀記憶體(ROM)或其他媒體類型。可選地或附加地,載體可以是人工產生的傳播信號,例如,機器產生的電、光或電磁信號,其被產生來編碼資訊用於傳輸到合適的接收器裝置以供資料處理裝置執行。電腦儲存媒體可以是或部分是機器可讀存放裝置、機器可讀儲存基板、隨機或串列存取記憶 體設備或它們中的一個或多個的組合。電腦儲存媒體不是傳播信號。 The subjects, actions, and operation embodiments described in this document can be implemented in digital electronic circuits, tangible computer software or firmware, computer hardware, including the structures disclosed herein and their structural equivalents, or one of them Or a combination of multiple. The embodiments of the subject described herein can be implemented as one or more computer programs, for example, one or more computer program instruction modules, encoded on a computer program carrier, used to execute or control the data processing device by the data processing device operating. The carrier may be a tangible non-transitory computer storage medium. For example, a computer program carrier may include one or more computer-readable storage media having instructions encoded or stored thereon. The carrier can be a tangible non-transitory computer-readable medium, such as a floppy disk, a magneto-optical disc or optical disc, a solid-state drive, a random access memory (RAM), a read-only memory (ROM), or other media types. Alternatively or additionally, the carrier may be an artificially generated propagated signal, for example, an electrical, optical or electromagnetic signal generated by a machine, which is generated to encode information for transmission to a suitable receiver device for execution by a data processing device. The computer storage medium may be or partly a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory Physical equipment or a combination of one or more of them. Computer storage media is not a transmission signal.

電腦程式也可以被稱為或描述為程式、軟體、軟體應用程式、app、模組、軟體模組、引擎、腳本或碼,可以以任何形式的程式設計語言編寫,包括編譯或演繹性語言、說明或程式性語言;它可以配置為任何形式,包括作為獨立程式,或者作為模組、元件、引擎、副程式或適合在計算環境中執行的其他單元,該環境可包括由通訊資料網路互聯地在一個或多個位置的一台或多台電腦。 Computer programs can also be called or described as programs, software, software applications, apps, modules, software modules, engines, scripts or codes, and can be written in any form of programming language, including compiled or deductive languages, Description or procedural language; it can be configured in any form, including as a stand-alone program, or as a module, component, engine, subprogram, or other unit suitable for execution in a computing environment, which may include communication data network interconnection One or more computers located in one or more locations.

電腦程式可以但非必須對應於檔案系統中的檔案。電腦程式可以儲存在:保存其他程式或資料的檔案的一部分中,例如,儲存在標記語言文件中的一個或多個腳本;專用於所討論的程式的單個檔案;或者多個協調檔案,例如,儲存一個或多個模組、副程式或碼部分的多個檔案。 Computer programs can but do not necessarily correspond to files in the file system. Computer programs can be stored in: part of a file that saves other programs or data, for example, one or more scripts stored in a markup language document; a single file dedicated to the program in question; or multiple coordinated files, for example, Store multiple files of one or more modules, subprograms or code parts.

舉例來說,用於執行電腦程式的處理器包括通用微處理器和專用微處理器,以及任何類型的數位電腦的任何一個或多個處理器。通常,處理器將從耦接到處理器的非暫態電腦可讀媒體接收用於執行的電腦程式的指令以及資料。 For example, processors used to execute computer programs include general-purpose microprocessors and special-purpose microprocessors, as well as any one or more processors of any type of digital computer. Generally, the processor will receive instructions and data of a computer program for execution from a non-transitory computer-readable medium coupled to the processor.

術語“資料處理裝置”包括用於處理資料的所有類型的裝置、設備和機器,包括例如可程式設計處理器、電腦或者多處理器或電腦。資料處理裝置可以包括專用邏輯電路,例如FPGA(現場可程式設計閘陣列)、ASIC(專用積體電路)或GPU(圖形處理單元)。除了硬體,該裝置還可以包 括為電腦程式創建執行環境的碼,例如,構成處理器韌體、協定疊、資料庫管理系統、作業系統或者它們中的一個或多個的組合的碼。 The term "data processing device" includes all types of devices, equipment, and machines for processing data, including, for example, programmable processors, computers, or multi-processors or computers. The data processing device may include a dedicated logic circuit, such as FPGA (Field Programmable Gate Array), ASIC (Dedicated Integrated Circuit), or GPU (Graphics Processing Unit). In addition to hardware, the device can also include Including the code that creates the execution environment for computer programs, for example, the code that constitutes the processor firmware, protocol stack, database management system, operating system, or a combination of one or more of them.

本文中描述的處理和邏輯流程可由一個或多個電腦或處理器執行一個或多個電腦程式進行,以進行透過對輸入資料進行運算並產生輸出的操作。處理和邏輯流程也可以由例如FPGA、ASIC、GPU等的專用邏輯電路或專用邏輯電路與一個或多個程式設計電腦的組合來執行。 The processing and logic flow described in this article can be performed by one or more computers or processors executing one or more computer programs to perform operations on input data and generate output. The processing and logic flow can also be executed by a dedicated logic circuit such as FPGA, ASIC, GPU, or a combination of a dedicated logic circuit and one or more programming computers.

適合於執行電腦程式的電腦可以基於通用和/或專用微處理器,或任何其他種類的中央處理單元。通常,中央處理單元將從唯讀記憶體和/或隨機存取記憶體接收指令和資料。電腦的元件可包括用於執行指令的中央處理單元以及用於儲存指令和資料的一個或多個記憶體設備。中央處理單元和記憶體可以補充有專用邏輯電路或整合在專用邏輯電路中。 Computers suitable for executing computer programs can be based on general-purpose and/or special-purpose microprocessors, or any other kind of central processing unit. Generally, the central processing unit will receive commands and data from read-only memory and/or random access memory. The components of a computer may include a central processing unit for executing instructions and one or more memory devices for storing instructions and data. The central processing unit and memory can be supplemented with dedicated logic circuits or integrated in dedicated logic circuits.

通常,電腦還將包括或可操作地耦接至一個或多個大型存放區設備,以從一個或多個大型存放區設備接收資料或將資料傳輸到一個或多個大型存放區設備。大型存放區設備可以是例如磁片、磁光碟或光碟、固態驅動器或任何其他類型的非暫態電腦可讀媒體。但是,電腦不需要具有這樣的設備。因此,電腦可以耦接到本地和/或遠端的例如一個或多個記憶體的一個或多個大型存放區設備。例如,電腦可以包括作為電腦的元件的一個或多個本機存放區器,或者電腦可以耦接到雲端網路中的一個或多個遠端 存放器。此外,電腦可以嵌入在另一個設備中,例如行動電話、個人數位助理(PDA)、行動音訊或視頻播放機、遊戲控制台、全球定位系統(GPS)接收器或例如通用序列匯流排(USB)快閃記憶體驅動器的可擕式存放裝置,僅舉幾例。 Generally, the computer will also include or be operatively coupled to one or more large storage area devices to receive data from one or more large storage area devices or transmit data to one or more large storage area devices. The mass storage area device can be, for example, a floppy disk, a magneto-optical disc or optical disc, a solid-state drive, or any other type of non-transitory computer-readable medium. However, the computer does not need to have such equipment. Therefore, the computer can be coupled to one or more large storage devices, such as one or more memories, locally and/or remotely. For example, a computer can include one or more local storage as a component of the computer, or the computer can be coupled to one or more remote locations in a cloud network Storage. In addition, the computer can be embedded in another device, such as a mobile phone, personal digital assistant (PDA), mobile audio or video player, game console, global positioning system (GPS) receiver or, for example, a universal serial bus (USB) Portable storage devices for flash drives, to name a few.

元件可以透過直接地或經由一個或多個中介軟體例如可交換地電或光地彼此連接而彼此“耦接”。如果其中一個元件整合到另一個元件中,元件還可以彼此“耦接”。例如,整合到處理器中的儲存元件(例如,L2快取記憶體元件)被“耦接到”處理器。 Components can be "coupled" to each other by directly or via one or more intermediary software, such as interchangeably electrically or optically connecting to each other. If one element is integrated into another element, the elements can also be "coupled" to each other. For example, storage elements integrated into the processor (eg, L2 cache memory elements) are "coupled" to the processor.

為了提供與用戶的交互,本文中描述的主題的實施例可以在電腦上實現或配置為與該電腦通訊,該計算機具有:顯示裝置,例如,LCD(液晶顯示器)監視器,用於向用戶顯示資訊;以及輸入裝置,用戶可以透過該輸入裝置向該電腦提供輸入,例如鍵盤和例如滑鼠、軌跡球或觸控板等的指標裝置。其他類型的設備也可用於提供與用戶的交互;例如,提供給用戶的回饋可以是任何形式的感官回饋,例如視覺回饋、聽覺回饋或觸覺回饋;並且可以接收來自用戶的任何形式的輸入,包括聲音、語音或觸覺輸入。此外,電腦可以透過向用戶使用的設備發送文件和從用戶使用的設備接收文件來與用戶交互;例如,透過向用戶設備上的web瀏覽器發送web頁面以回應從web瀏覽器收到的請求,或者透過與例如智慧型電話或電子平板電腦等的用戶設備上運行的應用程式(app)進行交互。此外,電腦 可以透過向個人設備(例如,運行訊息應用的智慧型手機)輪流發送文本訊息或其他形式的訊息並接收來自用戶的回應訊息來與用戶交互。 In order to provide interaction with the user, embodiments of the subject matter described herein may be implemented on a computer or configured to communicate with the computer, the computer having: a display device, for example, an LCD (liquid crystal display) monitor for displaying to the user Information; and an input device through which the user can provide input to the computer, such as a keyboard and a pointing device such as a mouse, trackball, or touchpad. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback, such as visual, auditory, or tactile feedback; and can receive any form of input from the user, including Voice, voice or tactile input. In addition, the computer can interact with the user by sending files to and receiving files from the device used by the user; for example, by sending a web page to the web browser on the user's device in response to a request received from the web browser, Or by interacting with an application (app) running on a user device such as a smart phone or an electronic tablet computer. In addition, the computer It is possible to interact with users by sending text messages or other forms of messages to personal devices (for example, smartphones running messaging applications) in turn and receiving response messages from the users.

本文使用與系統、裝置和電腦程式元件有關的術語“配置為”。對於被配置為執行特定操作或動作的一個或多個電腦的系統,意味著系統已經在其上安裝了在運行中促使該系統執行所述操作或動作的軟體、韌體、硬體或它們的組合。對於被配置為執行特定操作或動作的一個或多個電腦程式,意味著一個或多個程式包括當被資料處理裝置執行時促使該裝置執行所述操作或動作的指令。對於被配置為執行特定操作或動作的專用邏輯電路,意味著該電路具有執行所述操作或動作的電子邏輯。 This article uses the term "configured as" in relation to systems, devices, and computer program components. For a system of one or more computers configured to perform a specific operation or action, it means that the system has installed on it software, firmware, hardware, or their own software that prompts the system to perform the operation or action during operation. combination. For one or more computer programs configured to perform a specific operation or action, it means that the one or more programs include instructions that when executed by a data processing device cause the device to perform the operation or action. For a dedicated logic circuit configured to perform a specific operation or action, it means that the circuit has electronic logic to perform the operation or action.

雖然本文包含許多具體實施細節,但是這些不應被解釋為由申請專利範圍本身限定的對要求保護的範圍的限制,而是作為對特定實施例的具體特徵的描述。在本文多個單獨實施例的上下文中描述的多個特定特徵也可以在單個實施例中的組合實現。相反,在單個實施例的上下文中描述的各種特徵也可以單獨地或以任何合適的子組合在多個實施例中實現。此外,儘管上面的特徵可以描述為以某些組合起作用並且甚至最初如此要求保護,但是在一些情況下,可以從要求保護的組合中刪除來自該組合的一個或多個特徵,並且可以要求保護指向子組合或子組合的變體。 Although this document contains many specific implementation details, these should not be construed as limitations on the scope of protection defined by the scope of the patent application itself, but as descriptions of specific features of specific embodiments. Multiple specific features described in the context of multiple separate embodiments herein can also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable subcombination. In addition, although the above features can be described as functioning in certain combinations and even initially claimed as such, in some cases, one or more features from the combination may be deleted from the claimed combination, and protection may be claimed Points to a subcombination or variant of a subcombination.

類似地,雖然以特定順序在圖式中描繪了操作並且在 申請專利範圍中敘述了操作,但是這不應該被理解為:為了達到期望的結果,要求以所示的特定順序或依次執行這些操作,或者要求執行所有顯示的操作。在一些情況下,多工和平行處理可能是有利的。此外,上述實施例中的各種系統模組和元件的劃分不應被理解為所有實施例中都要求如此劃分,而應當理解,所描述的程式元件和系統通常可以一起整合在單個軟體產品或者打包成多個軟體產品。 Similarly, although operations are depicted in the diagram in a specific order and in The operations are described in the scope of the patent application, but this should not be understood as: in order to achieve the desired result, these operations are required to be performed in the specific order shown or sequentially, or all the operations shown are required to be performed. In some cases, multiplexing and parallel processing may be advantageous. In addition, the division of various system modules and components in the above embodiments should not be understood as requiring such division in all embodiments, but it should be understood that the program components and systems described can usually be integrated together in a single software product or packaged together. Into multiple software products.

已經描述了主題的特定實施例。其他實施例在以下申請專利範圍的範圍內。例如,申請專利範圍中記載的動作可以以不同的循序執行並且仍然實現期望的結果。作為一個示例,圖式中描繪的處理無需要求所示的特定順序或次序來實現期望的結果。在一些情況下,多工和平行處理可能是有利的。 Specific embodiments of the subject matter have been described. Other embodiments are within the scope of the following patent applications. For example, the actions described in the scope of the patent application can be performed in a different order and still achieve the desired result. As an example, the processes depicted in the figures need not require the specific order or sequence shown to achieve the desired result. In some cases, multiplexing and parallel processing may be advantageous.

Claims (10)

一種電腦實施的用於管理用戶金鑰對的方法,該方法包括:由區塊鏈網路內的計算設備的身分加密晶片(identity cryptographic chip,ICC)接收用以將身分資訊和用戶金鑰對儲存到該ICC上的記憶體中的請求,該請求被數位地簽有數位簽章,該身分資訊唯一地標識用戶,並且該用戶金鑰對被分配給該用戶;由該ICC基於預先儲存在該記憶體中的公有授權金鑰確定該數位簽章是可信的;由該ICC接收包含該身分資訊和該用戶金鑰對的加密的資料;由該ICC將該加密的資料儲存到該記憶體中;由該ICC產生權杖以向該用戶提供執行加密操作的臨時授權;由該ICC在該權杖授權的有限的時間期間執行該加密操作;以及由該ICC傳輸該加密操作的結果。 A computer-implemented method for managing user key pairs. The method includes: receiving an identity cryptographic chip (ICC) from a computing device in a blockchain network to combine the identity information with the user key pair The request stored in the memory on the ICC, the request is digitally signed with a digital signature, the identity information uniquely identifies the user, and the user key pair is assigned to the user; the ICC is based on the pre-stored The public authorization key in the memory confirms that the digital signature is authentic; the ICC receives the encrypted data containing the identity information and the user key pair; the ICC stores the encrypted data in the memory In the body; the token is generated by the ICC to provide the user with temporary authorization to perform the encryption operation; the encryption operation is performed by the ICC during the limited time authorized by the token; and the result of the encryption operation is transmitted by the ICC. 如請求項1之電腦實施的方法,還包括:透過預先儲存該公有授權金鑰和私有授權金鑰來對該ICC進行初始化,其中,該公有授權金鑰和該私有授權金鑰是分配給該ICC的主用戶的非對稱金鑰對。 For example, the computer-implemented method of claim 1, further comprising: initializing the ICC by pre-storing the public authorization key and the private authorization key, wherein the public authorization key and the private authorization key are allocated to the The asymmetric key pair of the primary user of ICC. 如請求項2之電腦實施的方法,其中,對 該ICC進行初始化還包括:儲存能夠被執行以基於該身分資訊認證該用戶的身分認證碼。 Such as the computer-implemented method of claim 2, where The initialization of the ICC also includes storing an identity authentication code that can be executed to authenticate the user based on the identity information. 如請求項2或3之電腦實施的方法,其中,對該ICC進行初始化還包括:儲存能夠被執行以基於該私有授權金鑰添加該數位簽章的第一加密操作碼;以及儲存能夠被執行以基於該用戶金鑰對來執行檔案加密或檔案解密的第二加密操作碼。 For example, the computer-implemented method of claim 2 or 3, wherein initializing the ICC further includes: storing a first encryption operation code that can be executed to add the digital signature based on the private authorization key; and storing that can be executed A second encryption operation code for performing file encryption or file decryption based on the user key pair. 如請求項4之電腦實施的方法,其中,用於儲存身分資訊和該用戶金鑰對的該請求是第一請求,該身分資訊是第一身分資訊,該數位簽章是第一數位簽章,並且該電腦實施的方法還包括:接收第二身分資訊和用以向檔案添加第二數位簽章的第二請求;基於該第二身分資訊與該第一身分資訊匹配認證該第二請求可信;以及基於該第一加密操作碼和該用戶金鑰對中的私密金鑰,將該第二數位簽章添加到該檔案。 For example, the computer-implemented method of claim 4, wherein the request for storing the identity information and the user key pair is the first request, the identity information is the first identity information, and the digital signature is the first digital signature , And the computer-implemented method further includes: receiving second identity information and a second request for adding a second digital signature to the file; verifying that the second request can be verified based on a match between the second identity information and the first identity information And based on the first encryption operation code and the private key in the user key pair, adding the second digital signature to the file. 如請求項4之電腦實施的方法,其中,用於儲存身分資訊和該用戶金鑰對的該請求是第一請求,該身分資訊是第一身分資訊,並且該電腦實施的方法還包括:接收第二身分資訊和用於加密或解密檔案的第二請 求;基於該第二身分資訊與該第一身分資訊匹配認證該第二請求可信;以及基於該第二請求、該第二加密操作碼和該用戶金鑰對中的公開金鑰或私密金鑰執行該加密或該解密。 For example, the computer-implemented method of claim 4, wherein the request for storing the identity information and the user key pair is the first request, the identity information is the first identity information, and the computer-implemented method further includes: receiving The second identity information and the second request used to encrypt or decrypt files Request; verify that the second request is authentic based on the second identity information matching the first identity information; and based on the second request, the second encryption operation code, and the public key or private key in the user key pair The key performs the encryption or the decryption. 如請求項1之電腦實施的方法,其中,該身分資訊是生物特徵資訊。 For example, the computer-implemented method of claim 1, wherein the identity information is biometric information. 如請求項1之電腦實施的方法,其中,該記憶體是可程式設計唯讀記憶體PROM、電可抹除PROM或快閃記憶體,並且其中,該身分資訊和該用戶金鑰對儲存在該記憶體的單獨儲存單元中。 For example, the computer-implemented method of claim 1, wherein the memory is programmable read-only memory PROM, electrically erasable PROM, or flash memory, and wherein the identity information and the user key pair are stored in In a separate storage unit of the memory. 一種用於管理用戶金鑰對的系統,包括:一個或多個處理器;以及一個或多個電腦可讀記憶體,該電腦可讀記憶體耦接到該一個或多個處理器並且其上儲存有指令,該指令能由該一個或多個處理器執行以執行如請求項1至8中任一項之方法。 A system for managing user key pairs, comprising: one or more processors; and one or more computer-readable memory, the computer-readable memory being coupled to and on the one or more processors An instruction is stored, and the instruction can be executed by the one or more processors to execute the method according to any one of claim items 1 to 8. 一種用於管理用戶金鑰對的裝置,該裝置包括:請求接收模組,接收用以將身分資訊和用戶金鑰對儲存到身分加密晶片(identity cryptographic chip,ICC)上的記憶體中的請求,該請求被數位地簽有數位簽章,該 身分資訊唯一地標識用戶,並且該用戶金鑰對被分配給該用戶;數位簽章認證模組,基於預先儲存在該記憶體中的公有授權金鑰確定該數位簽章是可信的;接收模組,用以接收包含該身分資訊和該用戶金鑰對的加密的資料;儲存模組,用以將該加密的資料儲存到該記憶體中;產生模組,用以產生權杖以向該用戶提供執行加密操作的臨時授權;執行模組,用以在該權杖授權的有限的時間期間執行該加密操作;以及傳送模組,用以傳輸該加密操作的結果。 A device for managing a user key pair, the device comprising: a request receiving module, which receives a request for storing identity information and a user key pair in a memory on an identity cryptographic chip (identity cryptographic chip, ICC) , The request is digitally signed with a digital signature, the The identity information uniquely identifies the user, and the user key pair is assigned to the user; the digital signature authentication module determines that the digital signature is authentic based on the public authorization key stored in the memory in advance; receive The module is used to receive the encrypted data including the identity information and the user key pair; the storage module is used to store the encrypted data in the memory; the generation module is used to generate the token to send The user provides a temporary authorization to perform an encryption operation; an execution module to perform the encryption operation during the limited time period authorized by the token; and a transmission module to transmit the result of the encryption operation.
TW108145295A 2019-03-29 2019-12-11 Computer-implemented method for managing user key pairs, system for managing user key pairs, and apparatus for managing user key pairs TWI724683B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
PCT/CN2019/080366 WO2019120321A2 (en) 2019-03-29 2019-03-29 Cryptographic key management based on identity information
WOPCT/CN2019/080366 2019-03-29

Publications (2)

Publication Number Publication Date
TW202036337A TW202036337A (en) 2020-10-01
TWI724683B true TWI724683B (en) 2021-04-11

Family

ID=66992479

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108145295A TWI724683B (en) 2019-03-29 2019-12-11 Computer-implemented method for managing user key pairs, system for managing user key pairs, and apparatus for managing user key pairs

Country Status (10)

Country Link
US (3) US11088831B2 (en)
EP (1) EP3610607B1 (en)
JP (1) JP6921222B2 (en)
KR (1) KR102381153B1 (en)
CN (2) CN114553439B (en)
AU (1) AU2019204723C1 (en)
CA (1) CA3058240C (en)
SG (1) SG11201908931TA (en)
TW (1) TWI724683B (en)
WO (1) WO2019120321A2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111711521B (en) * 2020-06-19 2023-05-05 广东小蛐科技有限公司 Block chain account private key resetting method and system
CN111970126A (en) * 2020-08-31 2020-11-20 北京书生网络技术有限公司 Key management method and device
KR20220055635A (en) 2020-10-27 2022-05-04 (주)네오와인 Secret key management device and method using DMA channel transmission
CN112508138B (en) * 2020-11-18 2024-03-26 北京融讯科创技术有限公司 Single board server management method, device, equipment and computer readable storage medium
CN112507302A (en) * 2020-12-10 2021-03-16 支付宝(杭州)信息技术有限公司 Calling party identity authentication method and device based on cryptographic module execution
CN112822021B (en) * 2020-12-30 2022-10-21 中国农业银行股份有限公司 Key management method and related device
CN112989370B (en) * 2021-02-09 2023-06-30 腾讯科技(深圳)有限公司 Key filling method, system, device, equipment and storage medium
CN113067704B (en) * 2021-03-29 2022-08-30 安徽慧可科技有限公司 Data right determining method, system and equipment based on block chain
CN113726509B (en) * 2021-08-30 2023-05-02 北京天融信网络安全技术有限公司 Key destroying method, cipher machine and terminal equipment
TWI823673B (en) * 2022-11-11 2023-11-21 國立雲林科技大學 A password encryption management system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101764694A (en) * 2008-12-22 2010-06-30 罗伯特.博世有限公司 Device, method and system for protecting data
TW201328280A (en) * 2011-12-29 2013-07-01 Chunghwa Telecom Co Ltd Instant communication identity authentication system and method
TW201901551A (en) * 2017-05-24 2019-01-01 大陸商中國銀聯股份有限公司 Method and device for configuring safety carrier

Family Cites Families (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19629856A1 (en) 1996-07-24 1998-01-29 Ibm Method and system for the secure transmission and storage of protectable information
JPH10247906A (en) 1997-03-03 1998-09-14 Toshiba Corp Device with processing function, information processing system, identifying method, identifying/ciphering method and identifying/deciphering method
JP3597704B2 (en) 1998-06-19 2004-12-08 株式会社日立製作所 IC card and recording medium
JP2002543668A (en) * 1999-04-22 2002-12-17 ベリディコム・インコーポレイテッド Highly Secure Biometric Authentication Using Public / Private Key Encryption Pairs
US8325994B2 (en) * 1999-04-30 2012-12-04 Davida George I System and method for authenticated and privacy preserving biometric identification systems
JP2001319164A (en) 2000-05-10 2001-11-16 Nec Saitama Ltd Rental system, rental method and recording medium having rental program recorded thereon
FR2819074B1 (en) 2000-12-29 2003-02-21 Dominique Bertrand TERMINAL FOR DISPLAY, RETURN, INPUT AND DATA PROCESSING, CONFIGURABLE BY ITS USERS
JP2002271320A (en) 2001-03-13 2002-09-20 Sony Corp Information processing equipment and method therefor and recording medium thereof
EP1417555A2 (en) * 2001-06-18 2004-05-12 Daon Holdings Limited An electronic data vault providing biometrically protected electronic signatures
JP4834263B2 (en) 2001-09-28 2011-12-14 シャープ株式会社 Card authentication system, information recording card, and card authentication method
US7146009B2 (en) 2002-02-05 2006-12-05 Surety, Llc Secure electronic messaging system requiring key retrieval for deriving decryption keys
JP4660053B2 (en) 2002-05-20 2011-03-30 ソニー株式会社 Human feature verification device
EP3547599A1 (en) * 2002-08-06 2019-10-02 Apple Inc. Methods for secure enrollment and backup of personal identity credentials into electronic devices
JP2004104539A (en) 2002-09-11 2004-04-02 Renesas Technology Corp Memory card
US20050027991A1 (en) 2003-06-23 2005-02-03 Difonzo Joseph System and method for digital rights management
CN100363855C (en) 2003-07-04 2008-01-23 诺基亚有限公司 Key storage administration
US20060149962A1 (en) 2003-07-11 2006-07-06 Ingrian Networks, Inc. Network attached encryption
US8842887B2 (en) 2004-06-14 2014-09-23 Rodney Beatson Method and system for combining a PIN and a biometric sample to provide template encryption and a trusted stand-alone computing device
JP4423478B2 (en) 2004-09-07 2010-03-03 株式会社国際電気通信基礎技術研究所 Vibration presentation device
JP2006079181A (en) 2004-09-07 2006-03-23 Sony Corp Organism collation device
US20060059372A1 (en) 2004-09-10 2006-03-16 International Business Machines Corporation Integrated circuit chip for encryption and decryption having a secure mechanism for programming on-chip hardware
JP4326443B2 (en) 2004-10-08 2009-09-09 フェリカネットワークス株式会社 Information processing apparatus, information processing method, and program
JP4516399B2 (en) 2004-10-08 2010-08-04 フェリカネットワークス株式会社 Information processing apparatus and method, and program
CN101375284B (en) 2004-10-25 2012-02-22 安全第一公司 Secure data parser method and system
JP2006221566A (en) 2005-02-14 2006-08-24 Dainippon Printing Co Ltd Caring service support system using network
GB2424557A (en) 2005-03-24 2006-09-27 Sony Uk Ltd FPGA with hardware decryptor for configuration programme which adds second key to itself before re-encrypting and overwriting itself in memory when run
US8972743B2 (en) 2005-05-16 2015-03-03 Hewlett-Packard Development Company, L.P. Computer security system and method
JP4936238B2 (en) 2005-06-13 2012-05-23 株式会社トプスシステムズ Security management device
JP2007018301A (en) 2005-07-08 2007-01-25 Matsushita Electric Ind Co Ltd Apparatus for processing use condition
US8615663B2 (en) 2006-04-17 2013-12-24 Broadcom Corporation System and method for secure remote biometric authentication
GB2438452B (en) * 2006-05-24 2010-12-15 Nokia Corp Portable telecommunications apparatus
CN101512959B (en) * 2006-09-20 2012-07-04 富士通株式会社 Information processing apparatus and information management method
JP4301275B2 (en) * 2006-09-28 2009-07-22 ソニー株式会社 Electronic device and information processing method
US7747024B2 (en) 2007-02-09 2010-06-29 Lenovo (Singapore) Pte. Ltd. System and method for generalized authentication
GB2452732A (en) 2007-09-12 2009-03-18 Seiko Epson Corp Smart-card chip with organic conductive surface layer for detecting invasive attack
CN201126581Y (en) 2007-11-12 2008-10-01 中国长城计算机深圳股份有限公司 Biological personal identification apparatus based on UEFI
CN101436247B (en) 2007-11-12 2012-04-11 中国长城计算机深圳股份有限公司 Biological personal identification method and system based on UEFI
US8473756B2 (en) 2008-01-07 2013-06-25 Security First Corp. Systems and methods for securing data using multi-factor or keyed dispersal
US8438385B2 (en) 2008-03-13 2013-05-07 Fujitsu Limited Method and apparatus for identity verification
WO2009139779A1 (en) 2008-05-16 2009-11-19 Hewlett-Packard Development Company, L.P. System and method for providing a system management command
EP2433246A4 (en) 2009-05-18 2013-07-03 Mikoh Corp Biometric identification method
ES2572159T3 (en) 2009-11-12 2016-05-30 Morpho Cards Gmbh A method of assigning a secret to a security token, a method of operation of a security token, a storage medium and a security token
WO2012122994A1 (en) 2011-03-11 2012-09-20 Kreft Heinz Off-line transfer of electronic tokens between peer-devices
US9037852B2 (en) 2011-09-02 2015-05-19 Ivsc Ip Llc System and method for independent control of for-hire vehicles
WO2013062528A1 (en) 2011-10-25 2013-05-02 Hewlett-Packard Development Company, L.P. Verification record for a replaceable supply
CN103138927B (en) 2011-12-01 2015-12-16 航天信息股份有限公司 A kind of for key controlling method in the encrypted memory device of finger print identifying
GB2497553B (en) 2011-12-13 2018-05-16 Irisguard Inc Improvements relating to iris cameras
EP2826203A4 (en) 2012-03-15 2015-12-23 Mikoh Corp A biometric authentication system
CN102594843A (en) * 2012-03-22 2012-07-18 中国农业银行股份有限公司 Identity authentication system and method
US9135496B2 (en) 2012-05-18 2015-09-15 Apple Inc. Efficient texture comparison
US9590959B2 (en) 2013-02-12 2017-03-07 Amazon Technologies, Inc. Data security service
US20140025581A1 (en) * 2012-07-19 2014-01-23 Bank Of America Corporation Mobile transactions using authorized tokens
US8832465B2 (en) 2012-09-25 2014-09-09 Apple Inc. Security enclave processor for a system on a chip
US8775757B2 (en) 2012-09-25 2014-07-08 Apple Inc. Trust zone support in system on a chip having security enclave processor
EP2720167A1 (en) 2012-10-11 2014-04-16 Nagravision S.A. Method and system for smart card chip personalization
US10635692B2 (en) 2012-10-30 2020-04-28 Ubiq Security, Inc. Systems and methods for tracking, reporting, submitting and completing information forms and reports
EP2728908B1 (en) 2012-11-02 2017-04-05 Morpho Cards GmbH Telecommunications chip card
US20140237256A1 (en) 2013-02-17 2014-08-21 Mourad Ben Ayed Method for securing data using a disposable private key
US10304044B2 (en) * 2013-06-05 2019-05-28 American Express Travel Related Services Company, Inc. Multi-factor mobile user authentication
JP6182371B2 (en) 2013-06-28 2017-08-16 ルネサスエレクトロニクス株式会社 System including semiconductor integrated circuit
US9646150B2 (en) 2013-10-01 2017-05-09 Kalman Csaba Toth Electronic identity and credentialing system
US10127378B2 (en) 2014-10-01 2018-11-13 Kalman Csaba Toth Systems and methods for registering and acquiring E-credentials using proof-of-existence and digital seals
CN104580107B (en) 2013-10-24 2018-02-06 华为技术有限公司 malicious attack detection method and controller
US9213818B2 (en) 2014-02-24 2015-12-15 Partnet, Inc. Anonymous authentication using backup biometric information
US10237065B2 (en) 2014-03-31 2019-03-19 Irdeto B.V. Cryptographic chip and related methods
CN105471575B (en) 2014-09-05 2020-11-03 创新先进技术有限公司 Information encryption and decryption method and device
CN104239815A (en) 2014-09-19 2014-12-24 西安凯虹电子科技有限公司 Electronic document encryption and decryption method and method based on iris identification
US9953151B2 (en) 2015-02-03 2018-04-24 Chon Hock LEOW System and method identifying a user to an associated device
KR20170129866A (en) 2015-03-20 2017-11-27 리베츠 코프. Automated demonstration of device integrity using block chains
US9875370B2 (en) 2015-03-26 2018-01-23 Microsoft Technology Licensing, Llc Database server and client for query processing on encrypted data
US10592673B2 (en) 2015-05-03 2020-03-17 Arm Limited System, device, and method of managing trustworthiness of electronic devices
CN106301767B (en) 2015-05-13 2020-01-03 中兴通讯股份有限公司 Encrypted call processing method, device, terminal and KMC
US10318154B2 (en) 2015-05-31 2019-06-11 Apple Inc. Dynamic group membership for devices
US20160359633A1 (en) * 2015-06-02 2016-12-08 Crater Dog Technologies, LLC System and method for publicly certifying data
US10079677B2 (en) 2015-06-05 2018-09-18 Apple Inc. Secure circuit for encryption key generation
US10079880B2 (en) 2015-06-07 2018-09-18 Apple Inc. Automatic identification of invalid participants in a secure synchronization system
WO2016201352A1 (en) 2015-06-10 2016-12-15 Arris Enterprises Llc Code signing system with machine to machine interaction
US9942035B2 (en) 2015-08-18 2018-04-10 Intel Corporation Platform migration of secure enclaves
CN106487511B (en) 2015-08-27 2020-02-04 阿里巴巴集团控股有限公司 Identity authentication method and device
US10536271B1 (en) 2016-01-10 2020-01-14 Apple Inc. Silicon key attestation
CN106027475B (en) * 2016-01-21 2019-06-28 李明 The transmission method and system of a kind of key acquisition method, ID card information
US11734678B2 (en) * 2016-01-25 2023-08-22 Apple Inc. Document importation into secure element
JP2017183930A (en) 2016-03-29 2017-10-05 日本電気株式会社 Server management system, server device, server management method, and program
CN105959287A (en) 2016-05-20 2016-09-21 中国银联股份有限公司 Biological feature based safety certification method and device
CN105975839B (en) 2016-06-12 2019-07-05 北京集创北方科技股份有限公司 A kind of biometric devices and method and biometric templates register method
US11593797B2 (en) 2016-06-12 2023-02-28 Apple Inc. Authentication using a secure circuit
US10268844B2 (en) 2016-08-08 2019-04-23 Data I/O Corporation Embedding foundational root of trust using security algorithms
US10116440B1 (en) 2016-08-09 2018-10-30 Amazon Technologies, Inc. Cryptographic key management for imported cryptographic keys
CN106790183A (en) 2016-12-30 2017-05-31 广州华多网络科技有限公司 Logging on authentication method of calibration, device
CN108345785B (en) 2017-01-25 2021-05-11 杨建纲 Built-in intelligent safety action device
KR101937216B1 (en) * 2017-02-01 2019-01-11 주식회사 데일리인텔리전스 Apparatus and method for managing certificates using a block chain as a certificate authority
CN108418677B (en) 2017-02-09 2021-01-15 杭州海康威视数字技术股份有限公司 Key backup and recovery method and device
CN108632021A (en) 2017-03-15 2018-10-09 阿里巴巴集团控股有限公司 A kind of key encryption method, device and system
CN108667608B (en) 2017-03-28 2021-07-27 阿里巴巴集团控股有限公司 Method, device and system for protecting data key
US10541818B2 (en) 2017-04-19 2020-01-21 International Business Machines Corporation Decentralized biometric signing of digital contracts
CN108881000A (en) 2017-05-08 2018-11-23 国民技术股份有限公司 Gateway, third-party platform, payment system and method
CN107241317B (en) 2017-05-24 2021-01-15 国民认证科技(北京)有限公司 Method for identifying identity by biological characteristics, user terminal equipment and identity authentication server
CN109150535A (en) 2017-06-19 2019-01-04 中国移动通信集团公司 A kind of identity identifying method, equipment, computer readable storage medium and device
WO2018236420A1 (en) 2017-06-20 2018-12-27 Google Llc Cloud hardware security modules for outsourcing cryptographic operations
US11922363B2 (en) * 2017-07-05 2024-03-05 United Parcel Service Of America, Inc. Counterparty physical proximity verification for digital asset transfers
US10438190B2 (en) 2017-07-18 2019-10-08 Square, Inc. Devices with on-board physically unclonable functions
US10263793B2 (en) 2017-07-18 2019-04-16 Square, Inc. Devices with modifiable physically unclonable functions
US10819528B2 (en) 2017-07-18 2020-10-27 Square, Inc. Device security with physically unclonable functions
CN109525392B (en) 2017-09-20 2021-11-26 上海方付通商务服务有限公司 eID film sticking card, mobile terminal equipment and eID authentication system
US10509940B2 (en) 2017-09-28 2019-12-17 Apple Inc. Electronic device including sequential operation of light source subsets while acquiring biometric image data and related methods
US10833877B2 (en) 2017-10-12 2020-11-10 Canon Kabushiki Kaisha Method of authenticating authentication-target apparatus by authentication apparatus, authentication apparatus, authentication- target apparatus, and image forming apparatus
CN108540457B (en) 2018-03-20 2021-09-17 深圳市文鼎创数据科技有限公司 Safety equipment and biological authentication control method and device thereof
US11700117B2 (en) 2018-03-27 2023-07-11 Workday, Inc. System for credential storage and verification
US11641278B2 (en) 2018-03-27 2023-05-02 Workday, Inc. Digital credential authentication
CN110677250B (en) 2018-07-02 2022-09-02 阿里巴巴集团控股有限公司 Key and certificate distribution method, identity information processing method, device and medium
CN108900296B (en) * 2018-07-04 2021-11-09 昆明我行科技有限公司 Secret key storage method based on biological feature identification

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101764694A (en) * 2008-12-22 2010-06-30 罗伯特.博世有限公司 Device, method and system for protecting data
TW201328280A (en) * 2011-12-29 2013-07-01 Chunghwa Telecom Co Ltd Instant communication identity authentication system and method
TW201901551A (en) * 2017-05-24 2019-01-01 大陸商中國銀聯股份有限公司 Method and device for configuring safety carrier

Also Published As

Publication number Publication date
TW202036337A (en) 2020-10-01
CN114553439B (en) 2023-06-30
US20200313875A1 (en) 2020-10-01
JP6921222B2 (en) 2021-08-18
US11258591B2 (en) 2022-02-22
KR102381153B1 (en) 2022-03-30
KR20200116009A (en) 2020-10-08
CN111034120A (en) 2020-04-17
AU2019204723C1 (en) 2021-10-28
US11088831B2 (en) 2021-08-10
US20200366472A1 (en) 2020-11-19
US20210314150A1 (en) 2021-10-07
SG11201908931TA (en) 2019-10-30
AU2019204723A1 (en) 2019-06-27
EP3610607A2 (en) 2020-02-19
CA3058240A1 (en) 2019-06-27
US11063749B2 (en) 2021-07-13
JP2020528675A (en) 2020-09-24
WO2019120321A3 (en) 2020-01-30
EP3610607A4 (en) 2020-10-07
CN114553439A (en) 2022-05-27
CN111034120B (en) 2022-03-11
CA3058240C (en) 2021-12-07
WO2019120321A2 (en) 2019-06-27
EP3610607B1 (en) 2021-08-25
AU2019204723B2 (en) 2021-05-06

Similar Documents

Publication Publication Date Title
TWI724683B (en) Computer-implemented method for managing user key pairs, system for managing user key pairs, and apparatus for managing user key pairs
TWI728587B (en) Computer-implemented methods, systems, apparatus for securely performing cryptographic operations
TWI724681B (en) Managing cryptographic keys based on identity information
TWI724684B (en) Method, system and device for performing cryptographic operations subject to identity verification