How to update data
The use of secret sharing technology for IC cards securely updates data by fragmenting it and using authentication template information, addressing vulnerabilities in existing methods and improving security and efficiency.
Patent Information
- Application Number
- JP2021083167
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-05-17
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2041-05-17
AI Technical Summary
Existing data update methods for IC cards are vulnerable to data theft due to encryption risks and require time-consuming authentication processes, especially when multiple encryption keys are used.
Implementing secret sharing technology to divide data into fragments and use authentication template information, allowing secure data updates without encryption and simultaneous terminal authentication.
Enhances data security by preventing unauthorized access and reducing encryption risks, ensuring data confidentiality and efficient updates even if communication is compromised.
Smart Images

Figure 0007735684000001 
Figure 0007735684000002 
Figure 0007735684000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a method for updating data stored in an IC card. By law Regarding the update method of data with high security, By law Regarding. [Background technology]
[0002] One of the processes used in issuing IC cards at factories and in general use is updating the data stored on the IC card. The specific commands used to update data on IC cards are specified in the international standard ISO / IEC 7816-4. Data stored on IC cards is generally stored in plain text or cipher text on a file-by-file basis, and terminals that read / write data on IC cards update the data on the IC card using update commands that comply with this standard.
[0003] Figure 7 shows an example of a conventional method for updating data A in file 1 stored in an IC card. First, the terminal authenticates by using an authentication command that it is a legitimate device (e.g., a commercially available IC card terminal) authorized to access file 1. Next, if the authentication is successful, it sends data B along with an update command, and the IC card updates data A to data B. At this time, data B may be sent in an encrypted state to prevent eavesdropping on the communication channel. With this conventional method, if data is leaked from the IC card or IC card terminal, or during communication between them, the data B to be updated can be stolen relatively easily from the leaked data. Even if the data is encrypted, there is a possibility that it may be decrypted, which is not desirable from a security standpoint.
[0004] Regarding this data update, Patent Documents 1 and 2 propose a method for improving security over conventional methods by using multiple encryption keys when encrypting files (data).
[0005] Furthermore, in many cases, when reading or updating data stored on an IC card, authentication is required to verify that the device being used is a legitimate device. This is because, even if the data is encrypted, it is necessary to place restrictions on access to the file itself for security reasons.
[0006] Therefore, although the prior art such as that described in the above document improves security by using multiple encryption keys, it has problems such as the time and effort required for authentication for access and key management due to handling of multiple encryption keys. Furthermore, in the case of encryption technology in general, the risk is concentrated in the key, so if any one of the multiple keys is leaked or subjected to an attack such as eavesdropping, all of the keys must be updated, which is a hassle. [Prior art documents] [Patent documents]
[0007] [Patent Document 1] Japanese Patent Application Laid-Open No. 2008-109276 [Patent Document 2] Japanese Patent Publication No. 2019-080207 Summary of the Invention [Problem to be solved by the invention]
[0008] Therefore, the present invention provides a data update method that uses secret sharing technology to safely store stored data without encrypting it, and does not require authentication procedures when accessing files to update data. The law The task is to make a proposal. [Means for solving the problem]
[0009] In order to solve the above problem, one aspect of the present invention is to An update method for updating data stored in an IC card using a data update terminal, comprising: Early in the IC card issuance process WriteAmong the shared pieces a1, a2, and authentication template information of data A generated by sharing data A using secret sharing technology, The IC card storing the fragment a2 of data A and the authentication template information of data A; The terminal in which a fragment a1 of data A is stored; When updating data A using The terminal Data B, which is update data, is distributed using the same secret sharing technique to generate distribution pieces b1, b2, and authentication template information for data B, and the distribution pieces a1, b2, and authentication template information for data B are transmitted to the IC card; The IC card is Generate restored data A' from the transmitted shared fragment a1 and the stored shared fragment a2, Calculate the authentication template information of the restored data A' and compare it with the authentication template information of the stored data A, If both pieces of authentication template information are the same, the transmitted fragment a1 is determined to be authentic, and the terminal is authenticated as an authentic terminal. This is a data updating method in which data is updated by replacing the stored distributed piece a2 and authentication template information of data A with distributed piece b2 of data B and authentication template information of data B, respectively.
[0010] Another aspect of the present invention is An update method for updating data stored in an IC card using a data update terminal, comprising: Early in the IC card issuance process Write Among the shared pieces a1, a2, and authentication template information of data A generated by sharing data A using secret sharing technology, The IC card storing the fragment a2 of data A and the authentication template information of data A; The terminal in which a fragment a1 of data A is stored; When updating data A using The terminal Transmitting data B, which is update data, and fragment a1 to the IC card; The IC card is Generate restored data A' from the transmitted shared fragment a1 and the stored shared fragment a2, Calculate the authentication template information of the restored data A' and compare it with the authentication template information of the stored data A, If both pieces of authentication template information are the same, the transmitted fragment a1 is determined to be authentic, and the terminal is authenticated as an authentic terminal. Data B is distributed using the same secret sharing technique to generate shares b1 and b2, and authentication template information for data B is calculated. The stored distributed piece a2 and authentication template information of data A are replaced with distributed piece b2 of data B and authentication template information of data B, respectively, and data B is deleted to update the data. This is how data is updated.
[0011] In the above data update method, the authentication template information may be a hash value. [Effects of the Invention]
[0015] According to the present invention, when updating data stored in an IC card, access can be restricted safely without authentication using an authentication command, and since the data itself is divided using secret sharing, data confidentiality can be achieved against attacks such as unauthorized access. Furthermore, since data confidentiality through encryption is not a major component, risk is not concentrated on the encryption key, and an attacker must obtain all of the distributed data in order to successfully launch an attack, resulting in an update method that is highly resistant to attacks. [Brief explanation of the drawings]
[0016] [Figure 1] 1 is a schematic diagram of initial issuance of an IC card in the data update method of the present invention. [Figure 2] FIG. 1 is a schematic diagram of a first embodiment of a data updating method of the present invention. [Figure 3] 1 is a flowchart outlining a first embodiment of a data updating method of the present invention. [Figure 4] FIG. 10 is a schematic diagram of a second embodiment of the data updating method of the present invention. [Figure 5] FIG. 2 is a diagram showing a command format of an IC card. [Figure 6] 10 is a flowchart outlining a second embodiment of a data updating method of the present invention. [Figure 7] FIG. 1 is a schematic diagram of a conventional method for updating data in an IC card. DETAILED DESCRIPTION OF THE INVENTION
[0017] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments described below. Furthermore, in the embodiments shown below, technically preferable limitations are imposed for carrying out the invention, but these limitations are not essential requirements for the present invention.
[0018] First Embodiment A first embodiment of the data update method of the present invention will be described below with reference to the drawings. In the present invention, when transmitting update data, the data is not transmitted as data itself but as secret sharing data. The dispersed fragments are transmitted using technology.
[0019] In secret sharing technology, the original data is divided into multiple binary data (shared pieces), and each share becomes meaningless data that cannot be used to guess the original data by itself. This technology has the property that the original data can be restored by collecting all the shares (or more than a certain threshold number of shares). That is, · It is difficult to infer another dispersed piece a2 from dispersed piece a1. · It is difficult to infer the original binding data from each dispersed piece alone. These properties can be used to keep data secure.
[0020] The data update method of the present invention will be described in light of the IC card command format defined in the international standard ISO / IEC 7816-4. According to this standard, IC card commands consist of four types of command formats as shown in Figure 5. Normally, a data update command falls into Case 3 because "update data is sent in the Data section of the command format." The update command in the data update method of this embodiment follows the command format of Case 3.
[0021] (Initial issue) First, as shown in Figure 1, as a procedure carried out in advance during the issuance process (when writing) of an IC card (hereinafter simply referred to as card) at an issuing factory, etc., data A to be written initially is distributed using secret sharing technology, and distributed pieces a1 and a2 and a hash value (Hash(A)) are generated as authentication template information for data A. Then, on card 1, only distributed piece a2 of data A and the hash value Hash(A) of data A are stored in a file (not shown) in the memory area, and terminal (reader / writer) 2 that updates the card data holds distributed piece a1 of data A.
[0022] (Update method) FIG. 2 is a schematic diagram of an update method (1) according to a first embodiment of the present invention. The terminal 2 performing the update first performs secret sharing and hash value calculation on data B, which is data that updates data A that was written initially, in the same manner as in Figure 1, and generates shared fragments b1 and b2 and a hash value Hash(B) as authentication template information.
[0023] Next, if terminal 2 is legitimate, it holds the fragment a1 of data A before the update, and so when updating the data, it sets the data "fragment a1, fragment b2, Hash(B)" as the transmission data in the Data section of the command format of the update command, and sends the update command to card 1. Card 1 can restore (decode) the data from the received fragment a1 and fragment a2 stored in file 1, a file in the storage area, and call this data A'. Here, if fragment a1 is a legitimate fragment, then "A = A'", and therefore "Hash(A) = Hash(A')", and the legitimacy of fragment data a1 sent from the terminal can be verified.
[0024] If this verification is successful, it means that terminal 2 is holding legitimate fragment a1, and card 1 updates the data by replacing the pre-update data "fragment a2, Hash(A)" stored in file 1 with "fragment b2, Hash(B)" from the received transmission data. At the same time, it has been verified that terminal 2 is holding legitimate data, so the legitimacy of terminal 2 has also been authenticated.
[0025] FIG. 3 is a flow chart illustrating the above-described update method. On the terminal side, S001: Set the data of distributed piece a1, distributed piece b2, and Hash(B) in the update command. S002: Send the update command to the card. On the card side, S003: Update command received. S004: Recover data from the distributed pieces a1 and a2 to generate data A'. S005: Calculate the hash value of data A' → Hash(A') S006: Compare Hash(A) and Hash(A´). S007: If there is no match, an error signal is output. S008: Replace distributed piece a2, Hash(A) with distributed piece b2, Hash(B). S009: Send status word. On the terminal side, S010: Status word received. The processing of the error signal is well known, and a detailed description thereof will be omitted.
[0026] As described above, the card 1 does not store the actual data at the time of initial issuance or when updating the data, and the actual data itself is not transmitted during communication for updating, so even if data is leaked during communication, the actual data cannot be reconstructed from the shared fragments or hash value alone, and data can be updated safely. At the same time, it is also possible to authenticate whether the terminal updating the data is legitimate.
[0027] In this embodiment, an example is shown in which a hash value is used as the authentication template information for each data, but the authentication template information is not limited to a hash value, and can be, for example, data A encrypted using data A (for example, its lowest 16 bytes) as an encryption key, or biometric information obtained separately.
[0028] <Second embodiment> The above example shows a case where the terminal is capable of generating secret sharing fragments and calculating hash values as authentication template information. Below, as a second embodiment, a data update method (2) for when the terminal does not have such functions will be described.
[0029] The update command of the data update method (2) of this embodiment uses the command format of Case 4 of the command format in Figure 5, in order to generate fragments of data B, which is the update data, on the card side and respond with one fragment to the terminal.
[0030] (Update method) In data update method (2) shown in Figure 4, terminal 4 sets the data "shared piece a1, data B" as the transmission data in the Data section of the command format of the update command when updating data, and sends the update command to card 3. Card 3 receives the data "shared piece a1, data B" sent from terminal 4. Then, as in update method (1), it restores the data from the received shared piece a1 and the shared piece a2 stored in file 1, calculates the hash value Hash(A') as authentication template information, and compares it with Hash(A) stored in file 1.
[0031] As a result, if Hash(A) = Hash(A') and the validity of the shared piece data a1 sent from terminal 4 can be verified, shared pieces b1 and b2 are generated from the received data B and the hash value Hash(B) is calculated, and the data before the update, "shared piece a2, Hash(A)", is replaced with the generated "shared piece b2, Hash(B)", thereby updating the data. Shared piece b1 is also sent to terminal 4 as response data. Data B is then erased. This allows the data update to be achieved without data B itself being stored on card 3. At the same time, it is also verified that terminal 4 was holding legitimate data (shared piece a1), which means that the validity of terminal 4 has also been authenticated.
[0032] FIG. 6 is a flow chart illustrating the above-described update method. On the terminal side, S101: Set the data of distributed piece a1, distributed piece b2, and data B in the update command. S102: Send an update command to the card. On the card side, S103: An update command is received. S104: Reconstruct data from the distributed pieces a1 and a2 to generate data A'. S105: Calculate the hash value of data A' → Hash(A') S106: Hash(A) is compared with Hash(A'). S107: If there is no match, an error signal is output. S108: Generate distributed pieces b1 and b2 from update data B. S109: Calculate a hash value from update data B. → Hash(B) S110: Replace distributed piece a2, Hash(A) with distributed piece b2, Hash(B). S111: Send dispersion piece b1 and status word. On the terminal side, S112: Receive dispersion piece b1 and status word. The processing of the error signal is well known and is omitted from the diagram.
[0033] This technology employs secret sharing technology in the update commands used when updating data, making it difficult for the actual data to be stolen even if the transmitted data is leaked, and improves the security and convenience of the data update sequence. This technology will therefore be able to cope with changes to IC card specifications for data storage, reading, and writing that are more secure.
[0034] As explained above, in the update methods (1) and (2) of the present invention, the data held by the IC card before and after the data update is not the actual data (data A or data B), but the distributed fragment data and the hash value of the actual data (Hash(A) or Hash(B)), so there is no risk of important information being leaked from the card. Also, unlike conventional data updates, terminal authentication can be performed simultaneously when updating data. [Explanation of symbols]
[0035] 1, 3...IC card 2, 4... Terminal
Claims
1. An update method for updating data stored in an IC card using a data update terminal, comprising: Among the shared pieces a1, a2, and authentication template information for data A generated by sharing data A written initially in the IC card issuing process using secret sharing technology, the IC card storing the fragment a2 of data A and the authentication template information of data A; The terminal in which a fragment a1 of data A is stored; When updating data A by The terminal Data B, which is update data, is distributed using the same secret sharing technique to generate distribution pieces b1, b2, and authentication template information for data B, and the distribution pieces a1, b2, and authentication template information for data B are transmitted to the IC card. The IC card is Generate restored data A' from the transmitted shared piece a1 and the stored shared piece a2, Calculating authentication template information for the restored data A' and comparing it with the authentication template information for the stored data A; If both pieces of authentication template information are the same, the transmitted fragment a1 is determined to be authentic, and the terminal is authenticated as an authentic terminal. A data updating method in which data is updated by replacing the stored distributed piece a2 and authentication template information of data A with the distributed piece b2 of data B and authentication template information of data B, respectively.
2. An update method for updating data stored in an IC card using a data update terminal, comprising: Among the shared pieces a1, a2, and authentication template information for data A generated by sharing data A written initially in the IC card issuing process using secret sharing technology, the IC card storing the fragment a2 of data A and the authentication template information of data A; The terminal in which a fragment a1 of data A is stored; When updating data A by The terminal Transmitting data B, which is update data, and fragment a1 to the IC card; The IC card is Generate restored data A' from the transmitted shared piece a1 and the stored shared piece a2, Calculating authentication template information for the restored data A' and comparing it with the authentication template information for the stored data A; If both pieces of authentication template information are the same, the transmitted fragment a1 is determined to be authentic, and the terminal is authenticated as an authentic terminal. Data B is distributed using a similar secret sharing technique to generate shares b1 and b2, and authentication template information for data B is calculated. The stored distributed piece a2 and authentication template information of data A are replaced with distributed piece b2 of data B and authentication template information of data B, respectively, and data B is deleted to update the data. How to update the data.
3. 3. The data updating method according to claim 1, wherein the authentication template information is a hash value.
Citation Information
Patent Citations
Authentication system and method
JP2005151524A
Authentication system
JP2006236213A
Portable electronic device
JP2008109276A
Data distributing and preserving unit
JP2008287488A
Security method for information recording medium, information processing device, program and recording medium
JP2009087183A