Communication method, communication system, server, and communication apparatus

The communication method and system address the challenge of creating or updating electronic certificates without secret key transmission by using a shared random number seed to generate and verify keys, ensuring secure communication even with vulnerable cryptographic systems.

WO2025109804A1PCT designated stage expired Publication Date: 2025-05-30PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/026368
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-24
Filing Date
2024-07-23
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

Existing communication systems face challenges in creating or updating electronic certificates without transmitting secret keys, especially when vulnerabilities are discovered in cryptographic systems.

Method used

A communication method and system that generate a key including a secret key and a public key using a pre-stored random number seed, create an electronic certificate for the key, and transmit it to a communication device that shares the same random number seed, allowing the device to generate the same key and obtain the electronic certificate without transmitting the secret key.

Benefits of technology

Enables the creation or update of electronic certificates without transmitting secret keys, ensuring communication security even when vulnerabilities are discovered in cryptographic systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024026368_30052025_PF_FP_ABST
    Figure JP2024026368_30052025_PF_FP_ABST
Patent Text Reader

Abstract

This communication method comprises: generating a key (first key) including a secret key and a public key by using a random number seed stored in advance (S202); creating, by using the generated key, an electronic certificate for the key (S203); and transmitting the created electronic certificate to a communication apparatus (200) which stores, in advance, a random number seed same as the random number seed and generates a key (second key) same as the key by using the stored random number seed (S204).
Need to check novelty before this filing date? Find Prior Art

Description

COMMUNICATION METHOD, COMMUNICATION SYSTEM, SERVER, AND COMMUNICATION DEVICE

[0001] The present disclosure relates to a communication method, a communication system, a server, and a communication device.

[0002] Patent Document 1 discloses an information processing device or a signature generation device for realizing a public key authentication method or an electronic signature method using a multi-order, multivariate simultaneous equation for which no efficient means (trapdoor) for solving is known.

[0003] JP 2013-48350 A

[0004] The present disclosure provides a communication method and the like that allows for creating or updating a digital certificate without transmitting a private key.

[0005] In a communication method according to one aspect of the present disclosure, a key including a private key and a public key is generated using a pre-stored random number seed, an electronic certificate for the key is created using the generated key, and the created electronic certificate is transmitted to a communication device that has pre-stored a random number seed identical to the random number seed and generates a key identical to the key using the random number seed.

[0006] Also, a communication system according to one aspect of the present disclosure includes a server and a communication device that communicates with the server. The server includes a key generation unit, a certificate creation unit, and a communication unit. The key generation unit generates a key including a private key and a public key using a pre-stored random number seed. The certificate creation unit creates a digital certificate for the key using the key generated by the key generation unit. The communication unit transmits the digital certificate created by the certificate creation unit to the communication device. The communication device includes a communication unit and a key generation unit. The communication unit receives the digital certificate transmitted from the server. The key generation unit generates a key identical to the key using the same random number seed as the pre-stored random number seed.

[0007] Also, a server according to one aspect of the present disclosure includes a key generation unit, a certificate creation unit, and a communication unit. The key generation unit generates a key including a private key and a public key using a pre-stored random number seed. The certificate creation unit creates a digital certificate for the key using the key generated by the key generation unit. The communication unit transmits the digital certificate created by the certificate creation unit to a communication device that pre-stores a random number seed identical to the random number seed and generates a key identical to the key using the random number seed.

[0008] According to another aspect of the present disclosure, a communication device is provided for communicating with a server, the communication device including a key generation unit and a communication unit. The key generation unit generates a key identical to a key including a private key and a public key generated by the server using a random number seed identical to a random number seed stored in advance and used by the server. The communication unit receives a digital certificate for the key, which is generated by the server using the key and is transmitted from the server.

[0009] The present disclosure has the advantage that a digital certificate can be created or updated without transmitting a private key.

[0010] FIG. 1 is a block diagram showing an example of an overall configuration including a communication system according to an embodiment. FIG. 2 is a block diagram showing an example of a functional configuration of a server according to an embodiment. FIG. 3 is a diagram showing an example of a random number seed. FIG. 4 is a diagram showing an example of a private key. FIG. 5 is a diagram showing an example of an electronic certificate. FIG. 6 is a block diagram showing an example of a functional configuration of a communication device according to an embodiment. FIG. 7 is a sequence diagram showing a first operation example of a communication system according to an embodiment. FIG. 8 is a sequence diagram showing a second operation example of a communication system according to an embodiment. FIG. 9 is a sequence diagram showing an operation example of a communication system according to a first modified example of an embodiment. FIG. 10 is a block diagram showing an example of a functional configuration of a server according to a second modified example of an embodiment. FIG. 11 is a diagram showing an example of encryption method information. FIG. 12 is a sequence diagram showing an operation example of a communication system according to a second modified example of an embodiment. FIG. 13 is a diagram showing an example of a random number seed for each device ID. FIG. 14 is a sequence diagram showing an operation example of a communication system according to a third modified example of an embodiment. FIG. 15 is a sequence diagram showing an operation example of a communication system according to a fourth modified example of an embodiment. FIG. 16 is a sequence diagram showing an operation example of a communication system according to a fifth modified example of an embodiment. FIG. 17 is a diagram showing an example of the number of times a random number seed is used for each device ID. Fig. 18 is a schematic diagram of an operation of a communication system according to a sixth modified example of an embodiment. Fig. 19 is a sequence diagram showing an example of an operation of a communication system according to a sixth modified example of an embodiment. Fig. 20 is a diagram showing an example of the number of times random number seeds are used and an encryption method for each device ID. Fig. 21 is a diagram showing an example of the bit size of random numbers for each device ID.

[0011] (Knowledge forming the basis of the present disclosure) In recent years, with the advent of quantum computers, the development of quantum computers has been actively pursued. On the other hand, it is known that the large scale of quantum computers will theoretically compromise currently used cryptographic methods (hereinafter also referred to as "classical cryptographic methods"). In light of this situation, post-quantum cryptographic methods have been proposed, which are new cryptographic methods that can withstand the computational performance of large-scale quantum computers.

[0012] However, even post-quantum cryptography methods have not been fully evaluated for their security, and vulnerabilities may be discovered in them even after they are adopted in communications devices. If a vulnerability is discovered in the encryption method used by a communications device, the device must immediately switch to another encryption method to ensure the security of communications, and the digital certificates used must also be updated.

[0013] When a communication device requests a server to create or update a digital certificate, the communication device must send a Certificate Signing Request (CSR) to the server (certificate authority). A CSR is a message requesting the server to issue a digital certificate for a key pair (private key and public key) generated by the communication device. The message is digitally signed with the private key of the sender of the CSR and then sent to the server.

[0014] However, if a vulnerability is discovered in the encryption method being used, the security of communication is no longer guaranteed, and the private key cannot be sent to the server via the network.

[0015] Even if no vulnerabilities have been found in the encryption method used, if the private key is stored in a secure element in a communication device, the private key cannot be extracted from the communication device, which also poses the problem of not being able to transmit the private key to the server via the network.

[0016] In view of the above, the present disclosure aims to provide a communication method, etc., that can create or update an electronic certificate without transmitting a private key by creating the electronic certificate using a pre-stored random number seed.

[0017] More specifically, in a communication method according to a first aspect of the present disclosure, a key including a private key and a public key is generated using a pre-stored random number seed, an electronic certificate for the key is created using the generated key, and the created electronic certificate is transmitted to a communication device that has pre-stored a random number seed identical to the above-mentioned random number seed and generates a key identical to the above-mentioned key using the random number seed.

[0018] This method uses the same random number seed as the one used by the communication device to generate the same key as the key generated by the communication device, and creates a digital certificate for that key and sends it to the communication device, so the communication device can essentially obtain a digital certificate for the key generated by the communication device.This has the advantage that a digital certificate can be created or updated without transmitting the private key.

[0019] Also, for example, in the communication method according to the second aspect of the present disclosure, in the process of generating a key in the first aspect, the key is generated further based on an encryption method that can be used by the communication device.

[0020] This has the advantage that a key is generated based on the encryption method that the communication device can use, and thus an electronic certificate is created, making it possible to create or update an electronic certificate that corresponds to the encryption method that the communication device can use.

[0021] Also, for example, in the communication method according to the third aspect of the present disclosure, in the second aspect, the cryptography is a post-quantum cryptography method.

[0022] This has the advantage that the key is more difficult to decipher than when encrypted communication is performed using classical encryption methods, making it easier to ensure the confidentiality of data sent and received using the key.

[0023] Also, for example, in a communication method relating to the fourth aspect of the present disclosure, in the second or third aspect, it is determined whether the encryption method is secure or vulnerable, and in the process of generating a key, a key is generated if it is determined that the encryption method is secure.

[0024] This has the advantage that a key is generated, and thus a digital certificate is created, only if the cryptographic method is secure, so that a digital certificate does not need to be created for a cryptographic method in which a vulnerability has been discovered.

[0025] Also, for example, in a communication method relating to a fifth aspect of the present disclosure, in any one of the first to fourth aspects, an identifier of the communication device is further obtained, and in the process of generating a key, a random number seed corresponding to the obtained identifier is used to generate the key.

[0026] This has the advantage that a key is generated using a random number seed corresponding to the identifier of the communication device, and thus an electronic certificate is created, so that a unique electronic certificate can be created for each of multiple communication devices.

[0027] Also, for example, in a communication method relating to a sixth aspect of the present disclosure, in any one of the first to fifth aspects, it is determined whether or not an electronic certificate needs to be updated, and in the process of generating a key, a key is generated if it is determined that an electronic certificate needs to be updated.

[0028] This has the advantage that it determines whether an electronic certificate needs to be updated, generates a key if it needs to be updated, and ultimately creates an electronic certificate, eliminating the need for a communication device to request an update of the electronic certificate.

[0029] Also, for example, in a communication method relating to the seventh aspect of the present disclosure, in any one of the first to sixth aspects, the number of times a random number seed has been used in a communication device is obtained, and the number of times the random number seed has been used is matched with the number of times the random number seed has been used in the obtained communication device.

[0030] This method matches the number of times the random number seed is used with the number of times the random number seed is used in the communication device, so the random numbers generated using the random number seed and the random numbers generated in the communication device using the random number seed are the same. Therefore, this has the advantage that the generated key and the key generated in the communication device are always the same key, making it less likely that the created digital certificate will become invalid.

[0031] Also, for example, a communication system according to an eighth aspect of the present disclosure includes a server and a communication device that communicates with the server. The server includes a key generation unit, a certificate creation unit, and a communication unit. The key generation unit generates a key including a private key and a public key using a pre-stored random number seed. The certificate creation unit creates a digital certificate for the key using the key generated by the key generation unit. The communication unit transmits the digital certificate created by the certificate creation unit to the communication device. The communication device includes a communication unit and the key generation unit. The communication unit receives the digital certificate transmitted from the server. The key generation unit generates a key identical to the key using the same random number seed as the pre-stored random number seed.

[0032] This has the advantage that it is possible to achieve the same effect as the above-mentioned communication method.

[0033] Also, for example, a server according to a ninth aspect of the present disclosure includes a key generation unit, a certificate creation unit, and a communication unit. The key generation unit generates a key including a private key and a public key using a pre-stored random number seed. The certificate creation unit creates a digital certificate for the key generated by the key generation unit using the key. The communication unit transmits the digital certificate created by the certificate creation unit to a communication device that pre-stores the same random number seed as the random number seed and generates the same key as the key using the random number seed.

[0034] This has the advantage that it is possible to achieve the same effect as the above-mentioned communication method.

[0035] Furthermore, for example, a communication device according to a tenth aspect of the present disclosure is a communication device that communicates with a server, and includes a key generation unit and a communication unit. The key generation unit generates a key that is the same as a key including a private key and a public key generated by the server, using a random number seed that is the same as a random number seed used by the server and that is stored in advance. The communication unit receives a digital certificate for the key that is generated by the server using the key and is transmitted from the server.

[0036] This has the advantage that it is possible to achieve the same effect as the above-mentioned communication method.

[0037] Furthermore, these comprehensive or specific aspects may be realized in a system, an apparatus, a method, an integrated circuit, a computer program, or a non-transitory recording medium such as a computer-readable CD-ROM, or may be realized in any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium.

[0038] Hereinafter, embodiments will be described in detail with reference to the drawings. Note that the embodiments described below are all comprehensive or specific examples. The numerical values, shapes, materials, components, component placement and connection configurations, steps, or step order shown in the following embodiments are merely examples and are not intended to limit the present disclosure. Furthermore, among the components in the following embodiments, components not recited in independent claims will be described as optional components. Note that each figure is a schematic diagram and is not necessarily an exact illustration. Furthermore, in each figure, substantially identical components are assigned the same reference numerals, and duplicated descriptions may be omitted or simplified.

[0039] (Embodiment) [1. Overview] First, an overview of a communication method according to an embodiment will be described using Fig. 1. Fig. 1 is a block diagram showing an example of a functional configuration of an overall configuration including a communication system 10 according to an embodiment. As shown in Fig. 1, the communication system 10 includes a server 100 and a communication device 200. The communication device 200 is a device that performs encrypted communication with another communication device 300 via a network such as the Internet. Note that, although the communication system 10 includes one communication device 200 in the embodiment, it may include multiple communication devices 200.

[0040] The server 100 is a so-called certificate authority, and upon receiving a message (hereinafter also referred to as a "request message") from a communication device 200 requesting the creation or renewal of a digital certificate, the server 100 creates a digital certificate (signed certificate) in accordance with the received request message and transmits the created digital certificate to the communication device 200 that sent the request message. The server 100 also transmits a random number seed to the communication device 200. In the embodiment, the server 100 transmits a random number seed to one communication device 200, but if there are multiple communication devices 200, the server 100 may transmit different random number seeds to each of the multiple communication devices 200.

[0041] Here, the server 100 transmits a random number seed to the communication device 200, for example, before transmitting a new digital certificate to the communication device 200, or before transmitting a digital certificate that updates an existing digital certificate to the communication device 200. Therefore, the random number seed is assigned to the communication device 200 before acquiring a new digital certificate or an updated digital certificate. As a result, the same random number seed is stored in the server 100 and the communication device 200. In the example shown in FIG. 1, the random number seed "0x12345..." is stored in the server 100 and the communication device 200.

[0042] Here, for example, if a vulnerability is discovered in the algorithm (encryption method) being used and it becomes unusable, the communication device 200 sends a request message to the server 100. Upon receiving the request message, the server 100 generates a key pair (a private key and a public key) based on a random number seed stored in advance. The server 100 then creates a digital certificate digitally signed with the private key included in the generated key pair and sends the created digital certificate to the communication device 200.

[0043] On the other hand, the communication device 200 generates a key pair based on a random number seed stored in advance. This key pair is generated based on the same random number seed shared by the server 100 and the communication device 200, and is therefore identical to the key pair generated by the server 100. In other words, by acquiring the digital certificate transmitted from the server 100, the communication device 200 can acquire the digital certificate for the private key to be used in the future from the server 100 without transmitting the private key to the server 100. As described above, the communication system 10 (communication method) according to the embodiment has the advantage of being able to create or update a digital certificate without transmitting the private key.

[0044] [2. Configuration] Next, an overall configuration including a communication system 10 according to an embodiment will be described. As already mentioned, in the embodiment, the communication system 10 will be described as including a server 100 and one communication device 200. The communication device 200 is realized by an information terminal such as a personal computer, a smartphone, or a tablet terminal. Furthermore, the communication device 200 is configured to be able to communicate with the server 100 via a network such as the Internet.

[0045] 2 is a block diagram showing an example of the functional configuration of the server 100 according to the embodiment. The server 100 includes a processor and a memory, and realizes its functions by the processor executing a program stored in the memory. As shown in FIG. 2, the management server 100 includes a random number seed generation unit 101, a random number seed storage unit 102, a key generation unit 103, a certificate creation unit 104, and a communication unit 105.

[0046] The random number seed generation unit 101 generates a random number seed to be stored in advance in each of the server 100 and the communication device 200. Fig. 3 is a diagram showing an example of a random number seed. As shown in Fig. 3, the random number seed generation unit 101 generates, for example, a 16-bit random number seed. The random number seed generation unit 101 generates the random number seed by, for example, executing an appropriate generation algorithm.

[0047] The random number seed storage unit 102 stores the random number seed generated by the random number seed generation unit 101 .

[0048] When the key generation unit 103 receives a request message from the communication device 200, that is, when it receives a message from the communication device 200 requesting the creation or update of a digital certificate, the key generation unit 103 generates a key using the random number seed stored in the random number seed storage unit 102. In this embodiment, the key generated by the key generation unit 103 is a key pair including a private key and a public key. In other words, the key generation unit 103 generates a key including a private key and a public key using a random number seed stored in advance. Hereinafter, the key generated by the key generation unit 103 of the server 100 will also be referred to as a "first key."

[0049] Fig. 4 is a diagram showing an example of a private key. As shown in Fig. 4, the key generation unit 103 generates a private key having, for example, a bit string of 16 bits or more. The key generation unit 103 also generates a public key having, for example, a bit string of 16 bits or more. The key generation unit 103 generates a key (first key) by, for example, executing an appropriate encryption key generation algorithm. Note that, when the key generation unit 103 obtains information regarding the encryption method to be used from the communication device 200, it may generate a key (first key) corresponding to the encryption method.

[0050] The certificate creation unit 104 uses the key (first key) generated by the key generation unit 103 to create a digital certificate for the key. FIG. 5 is a diagram showing an example of a digital certificate. As shown in FIG. 5, the certificate creation unit 104 creates a digital certificate including, for example, an issuer, an encryption method to be used, a public key, and a signature. In the example shown in FIG. 5, the issuer is the server 100, the encryption method to be used is "Dilithium2," a post-quantum encryption method, the public key is a public key generated by the key generation unit 103, and the signature is a signature generated using the private key generated by the key generation unit 103. As shown in FIG. 5, the certificate creation unit 104 generates a signature having, for example, a bit string of 16 bits or more. The certificate creation unit 104 creates the digital certificate by, for example, executing an appropriate certificate creation algorithm.

[0051] The communication unit 105 receives a request message transmitted from the communication device 200. The communication unit 105 also transmits the random number seed generated by the random number seed generation unit 101 to the communication device 200 that transmitted the request message. The transmission of the random number seed to the communication device 200 is basically performed only when use of the communication device 200 is started. The communication unit 105 also transmits the digital certificate generated by the certificate generation unit 104 to the communication device 200 that transmitted the request message.

[0052] 6 is a block diagram showing an example of the functional configuration of a communication device 200 according to an embodiment. The communication device 200 includes a processor and a memory, and realizes its functions by the processor executing a program stored in the memory. As shown in FIG. 6, the communication device 200 includes a random number seed storage unit 201, a key generation unit 202, a key storage unit 203, a certificate update unit 204, a certificate storage unit 205, and a communication unit 206.

[0053] The random number seed storage unit 201 stores the random number seed received from the server 100 by the communication unit 206 .

[0054] When sending a request message to the server 100, i.e., when creating or updating a digital certificate, the key generation unit 202 generates a key using the random number seed stored in the random number seed storage unit 201. In this embodiment, the key generated by the key generation unit 202 is a key pair including a private key and a public key. The key generation unit 202 generates the key by, for example, executing an appropriate encryption key generation algorithm. Hereinafter, the key generated by the key generation unit 202 of the communication device 200 is also referred to as a "second key."

[0055] Here, the key generation unit 202 generates a key (second key) by using the same random number seed as that used in the server 100 and by executing the same encryption key generation algorithm as that used by the key generation unit 103 of the server 100. Therefore, the key (second key) generated by the key generation unit 202 is the same as the key (first key) generated by the key generation unit 103 of the server 100. In other words, the key generation unit 202 generates a key (second key) that is the same as the key (first key) including a private key and a public key generated by the server 100, using the same random number seed as that used in the server 100, which is stored in advance.

[0056] The key storage unit 203 stores the key (second key) generated by the key generation unit 202. For example, if the key storage unit 203 has not stored a key, it stores the key generated by the key generation unit 202 as a new key. Also, for example, if the key storage unit 203 has already stored a key, it updates the key by overwriting it with the key generated by the key generation unit 202 and stores the updated key.

[0057] When it becomes necessary to update the digital certificate, the certificate update unit 204 transmits a request message to the server 100. Here, the digital certificate needs to be updated when, for example, the digital certificate expires or when a vulnerability is discovered in the encryption method used.

[0058] The certificate storage unit 205 stores the digital certificate received by the communication unit 206. For example, if the certificate storage unit 205 does not store a digital certificate, it stores the digital certificate received by the communication unit 206 as a new digital certificate. Also, for example, if the certificate storage unit 205 has already stored a digital certificate, it updates and stores the digital certificate by overwriting it with the digital certificate received by the communication unit 206.

[0059] The communication unit 206 transmits a request message to the server 100. The communication unit 206 also receives a digital certificate transmitted from the server 100. In other words, the communication unit 206 receives a digital certificate for a key (first key) generated by the server 100 using the key, transmitted from the server 100.

[0060] 3. Operation An example of the operation of the communication system 10 according to the embodiment will now be described.

[0061] 7 is a sequence diagram showing a first operation example of the communication system 10 according to the embodiment. The first operation example is executed when the use of the communication device 200 is started, for example.

[0062] First, the server 100 generates a random number seed (S101). Then, the server 100 transmits the generated random number seed to the communication device 200 (S102). The server 100 also stores the generated random number seed in the random number seed storage unit 102 (S103).

[0063] When the communication device 200 receives the random number seed, it stores the received random number seed in the random number seed storage unit 201 (S104). Note that steps S103 and S104 may be executed in the reverse order or in parallel. In this way, the same random number seed is stored in each of the server 100 and the communication device 200.

[0064] 8 is a sequence diagram showing a second operation example of the communication system 10 according to the embodiment. The second operation example is executed, for example, when the communication device 200 has not yet requested the server 100 to issue a digital certificate. The second operation example is also executed when it becomes necessary to update the digital certificate, for example, when a vulnerability is discovered in the encryption method being used.

[0065] First, the communication device 200 transmits a request message to the server 100 (S201).

[0066] When the server 100 receives the request message, it generates a new key (first key) using the random number seed stored in the random number seed storage unit 102 (S202). Next, the server 100 uses the generated key to create a digital certificate for that key (S203). The server 100 then transmits the created digital certificate to the communication device 200 that sent the request message (S204). Steps S202 to S204 are all part of the process of the communication method according to the embodiment.

[0067] The communication device 200 generates a new key (second key) using the random number seed stored in the random number seed storage unit 201 (S205). As already described, the key (second key) generated in step S205 is generated based on the same random number seed shared by the server 100 and the communication device 200, and is therefore the same as the key (first key) generated by the server 100. In other words, the communication device 200 pre-stores the same random number seed as the random number seed used by the server 100, and uses the random number seed to generate the same key (second key) as the key (first key) generated by the server 100.

[0068] Then, when the communication device 200 receives the digital certificate, it stores the received digital certificate in the certificate storage unit 205 and stores the generated key (second key) in the key storage unit 203, thereby updating the digital certificate and key (S206). Note that when the communication device 200 receives a digital certificate for the first time, step S206 may be read as "storing the digital certificate and key."

[0069] [4. Advantages] Advantages of the communication system 10 (communication method) according to the embodiment will be described below. As described above, in the communication system 10 (communication method) according to the embodiment, the server 100 generates a key (first key) including a private key and a public key based on a random number seed stored in advance. The server 100 then creates a digital certificate for the generated key and transmits the created digital certificate to the communication device 200. Meanwhile, the communication device 200 generates a key (second key) based on a random number seed stored in advance. This key (second key) is generated based on the same random number seed shared by the server 100 and the communication device 200, and is therefore identical to the key (first key) generated by the server 100. Therefore, by obtaining the digital certificate transmitted from the server 100, the communication device 200 can obtain a digital certificate for the private key to be used in the future from the server 100 without transmitting the private key to the server 100.

[0070] As described above, in the communication system 10 (communication method) according to the embodiment, the same random number seed as that used by the communication device 200 is used to generate the same key as that generated by the communication device 200, and a digital certificate for the key is created and transmitted to the communication device 200, so that the communication device 200 can essentially obtain a digital certificate for the key generated by the communication device 200. Therefore, the communication system 10 (communication method) according to the embodiment has the advantage that a digital certificate can be created or updated without transmitting a private key.

[0071] Therefore, the communication system 10 (communication method) according to the embodiment has the advantage that it is possible to create or update an electronic certificate even when, for example, a vulnerability is discovered in the encryption method being used and the security of communication is not ensured, or when the private key is stored in a secure element in the communication device 200 and the private key cannot be extracted outside the communication device 200.

[0072] (Other Embodiments) Although the embodiments have been described above, the present disclosure is not limited to the above-described embodiments. Modifications of the embodiments are listed below. The modifications listed below may be combined as appropriate.

[0073] <First Modification> In the first modification, when the communication device 200 transmits a request message to the server 100, it also transmits information indicating an encryption method usable by the communication device 200. The key generation unit 103 of the server 100 then generates a key (first key) that can be used with the acquired encryption method. That is, in the communication system 10 (communication method) of the first modification, the process of generating a key (first key) generates a key further based on an encryption method usable by the communication device 200. This will be described in detail below.

[0074] 9 is a sequence diagram showing an example of the operation of the communication system 10 according to the first modification of the embodiment. First, the communication device 200 transmits a request message and information indicating available encryption methods to the server 100 (S207).

[0075] When the server 100 receives the request message and the information indicating the available encryption methods, it generates a new key (first key) using the random number seed stored in the random number seed storage unit 102 (S202). Here, the server 100 generates the new key (first key) further based on the acquired available encryption methods. The subsequent steps S203 to S206 are the same as those in the second operation example of the embodiment, and therefore their explanation will be omitted here. Note that in step S205, the communication device 200 generates a new key (second key) further based on the available encryption methods.

[0076] As described above, in the first variant, the server 100 generates a key (first key) based on the encryption method that can be used by the communication device 200, and thus creates an electronic certificate, which has the advantage that an electronic certificate can be created or updated according to the encryption method that can be used by the communication device 200.

[0077] In the first modification, the encryption method may be a post-quantum encryption method, which has the advantage that the key is more difficult to decipher than when encrypted communication is performed using classical encryption, making it easier to ensure the confidentiality of data transmitted and received using the key.

[0078] <Second Modification> Fig. 10 is a block diagram showing an example of the functional configuration of a server 100' according to a second modification of the embodiment. As shown in Fig. 10, the server 100' according to the second modification differs from the server 100 according to the embodiment in that it further includes a cryptography information storage unit 106.

[0079] The cryptography information storage unit 106 stores cryptography information. The cryptography information is information indicating the security of a cryptography. Fig. 11 is a diagram showing an example of cryptography information. In the example shown in Fig. 11, "Dilithium", a post-quantum cryptography method, is secure, while vulnerability has been discovered in "SIKE", another post-quantum cryptography method.

[0080] The second modification differs from the first modification in that the server 100′ determines whether the acquired encryption method is secure or vulnerable, and if it determines that the encryption method is secure, generates a key (first key), and ultimately creates a digital certificate. This will be described in detail below.

[0081] 12 is a sequence diagram showing an example of the operation of the communication system 10 according to the second modification of the embodiment. First, the communication device 200 transmits a request message and information indicating available encryption methods to the server 100′, as in the first modification (S207).

[0082] When the server 100' receives the request message and the information indicating the available cryptographic methods, it determines whether the acquired cryptographic method is secure by referring to the cryptographic method information stored in the cryptographic method information storage unit 106 (S208). If it determines that the cryptographic method is vulnerable (S208: No), the server 100' does not execute steps S202 to S204, and therefore does not create a digital certificate. In this case, the server 100' may send a message to the communication device 200 indicating that a digital certificate will not be created because the cryptographic method is vulnerable.

[0083] On the other hand, if the server 100' determines that the encryption method is secure (S208: Yes), it executes steps S202 to S206 and creates a digital certificate. The subsequent steps S202 to S206 are the same as those in the embodiment and the first modification, and therefore will not be described here.

[0084] As described above, in the second variant, if the encryption method is secure, the server 100' generates a key (first key), and thus creates an electronic certificate, which has the advantage that an electronic certificate does not need to be created for an encryption method in which a vulnerability has been discovered.

[0085] <Third Modification> In the third modification, when transmitting a request message to the server 100, the communications device 200 further transmits a device ID (Identifier) ​​that is an identifier of the communications device 200. Then, the key generation unit 103 of the server 100 generates a key (first key) using a random number seed corresponding to the acquired device ID. This will be specifically described below.

[0086] FIG. 13 is a diagram showing an example of random number seeds for each device ID. As shown in FIG. 13, multiple (here, two) random number seeds are stored in the random number seed storage unit 102 of the server 100. In the example shown in FIG. 13, when the acquired device ID is "ID001", the server 100 generates a key (first key) using a random number seed of "0x4EBFE...". When the acquired device ID is "ID002", the server 100 generates a key (first key) using a random number seed of "0x41DEC...".

[0087] 14 is a sequence diagram showing an example of the operation of the communication system 10 according to the third modification of the embodiment. First, the communication device 200 transmits a request message and a device ID to the server 100 (S209).

[0088] When the server 100 receives the request message and the device ID, it reads out the random number seed corresponding to the device ID from the random number seed storage unit 102 (S210). Then, the server 100 generates a new key (first key) using the read random number seed (S202). The subsequent steps S203 to S206 are the same as those in the second operation example of the embodiment, and therefore their explanation will be omitted here. Note that in step S205, the communications device 200 generates a new key (second key) using the same random number seed as the random number seed corresponding to the device ID read out by the server 100.

[0089] As described above, in the third variant, a key (first key) is generated using a random number seed corresponding to the identifier of the communication device 200, and thus an electronic certificate is created, which has the advantage that a unique electronic certificate can be created for each of multiple communication devices 200.

[0090] In the fourth modification, the server 100 determines whether or not the digital certificate needs to be updated. If the server 100 determines that the digital certificate needs to be updated, the key generation unit 103 generates a key (first key). This will be described in detail below.

[0091] The server 100 determines whether the digital certificate needs to be updated by, for example, referring to the expiration date of the digital certificate. Specifically, if the digital certificate has expired, the server 100 determines that the digital certificate needs to be updated.

[0092] The server 100 also determines whether the digital certificate needs to be updated by, for example, referring to the security of the encryption method used. Specifically, if a vulnerability is found in the encryption method used, the server 100 determines that the digital certificate needs to be updated.

[0093] For example, the server 100 may acquire one or more literature data describing cryptographic methods and perform appropriate natural language processing on the acquired one or more literature data to search for descriptions of the security of the cryptographic method. If the server 100 finds a description indicating that the cryptographic method has a vulnerability in the one or more literature data, it may determine that the digital certificate needs to be updated.

[0094] Furthermore, for example, the server 100 may determine whether or not the digital certificate needs to be updated by obtaining a determination result regarding the security of the encryption method being used, which is transmitted from a third party other than the communication system 10. The third party may be a device other than the communication system 10, or may be a human being. The server 100 may obtain the determination result by periodically inquiring about the determination result from the third party.

[0095] FIG. 15 is a sequence diagram illustrating an example of the operation of the communication system 10 according to the fourth modification of the embodiment. First, the server 100 extracts the device IDs of the communication devices 200 whose digital certificates require updating (S211). In step S211, the server 100 determines whether the digital certificates of each of the communication devices 200 require updating, and extracts the device IDs of the communication devices 200 whose digital certificates require updating. The server 100 then generates a new key (first key) using the random number seed (S202). In step S202, the server 100 reads the random number seed corresponding to the extracted device ID from the random number seed storage unit 102, and generates a new key (first key) using the read random number seed. The subsequent steps S203 to S206 are similar to those in the second operation example of the embodiment, and therefore will not be described here.

[0096] As described above, the fourth variant determines whether or not the electronic certificate needs to be updated, and if it does, generates a key, and ultimately creates an electronic certificate, which has the advantage that the communication device 200 does not need to request the server 100 to update the electronic certificate.

[0097] In the fourth modification, the server 100 determines whether the digital certificate needs to be updated, but the present invention is not limited to this. For example, the communication device 200 may determine whether the digital certificate needs to be updated. In this case, if the communication device 200 determines that the digital certificate needs to be updated, it may transmit a request message to the server 100.

[0098] <Fifth Modification> In the communications device 200 according to the fifth modification, the timing at which a key (second key) is generated using a random number seed stored in advance differs from that of the communications device 200 according to the embodiment. This will be specifically described below.

[0099] 16 is a sequence diagram showing an example of operation of the communication system 10 according to the fifth modification of the embodiment. As shown in FIG. 16, in the fifth modification, the communication device 200 generates a new key (second key) from a random number seed before transmitting a request message to the server 100 (S205). Note that the communication device 200 may generate the new key (second key) from the random number seed, for example, between transmitting the request message and receiving the digital certificate transmitted from the server 100.

[0100] The server 100 according to the sixth modification differs from the server 100 according to the embodiment in that it acquires the number of times the random number seed has been used in the communication device 200, and executes an adjustment process to make the number of times the random number seed has been used in the server 100 match the acquired number of times the random number seed has been used in the communication device 200. This will be described in detail below.

[0101] Basically, the number of times the random number seed is used in the server 100 matches the number of times the random number seed is used in the communication device 200. Therefore, the key (first key) generated in the server 100 using the random number seed and the key (second key) generated in the communication device 200 using the random number seed are the same because they are generated based on the same random number. Therefore, the digital certificate created for the key (first key) generated in the server 100 is essentially a digital certificate for the key (second key).

[0102] However, for some reason, the number of times the random number seed is used in the server 100 may not match the number of times the random number seed is used in the communication device 200. In this case, the random numbers generated using the random number seed in the server 100 differ from the random numbers generated using the random number seed in the communication device 200, and therefore the same key cannot be generated in each of the server 100 and the communication device 200. In this case, the digital certificate created for the key (first key) generated in the server 100 does not serve as a digital certificate for the key (second key), and the created digital certificate may become invalid.

[0103] Therefore, in the sixth modification, the above problem is solved by performing an adjustment process to match the number of times the random number seed is used in the server 100 with the number of times the random number seed is used in the communication device 200. Specifically, the server 100 acquires the device ID and the number of times the random number seed is used from, for example, the communication device 200, and stores them in a memory or the like. Fig. 17 is a diagram showing an example of the number of times the random number seed is used for each device ID.

[0104] Then, before generating a new key (first key) using the random number seed, the server 100 reads the number of times the random number seed has been used that corresponds to the device ID of the communication device 200 for which the electronic certificate is to be created, and performs an adjustment process to match the number of times the random number seed has been used with the number of times the random number seed has been used on the server 100.

[0105] Specifically, if the number of times the random number seed has been used by the server 100 is less than the number of times the random number seed has been used by the communication device 200, the server 100 generates random numbers using the random number seed so that the number of times the random number seed has been used by the server 100 is the same as the number of times the random number seed has been used by the communication device 200, and discards the generated random numbers. On the other hand, if the number of times the random number seed has been used by the server 100 is more than the number of times the random number seed has been used by the communication device 200, the server 100 transmits data indicating the difference in the number of times the random number seed has been used to the communication device 200, and instructs the communication device 200 to adjust the number of times the random number seed has been used. Then, in accordance with the instruction, the communication device 200 generates random numbers using the random number seed for the difference in the number of times the random number seed has been used, and discards the generated random numbers.

[0106] FIG. 18 is a schematic diagram of the operation of the communication system 10 according to the sixth modification of the embodiment. (a) of FIG. 18 shows the number of times the random number seed has been used by the server 100 and the communication device 200 before the adjustment process is performed, and (b) of FIG. 18 shows the number of times the random number seed has been used by the server 100 and the communication device 200 after the adjustment process is performed. In the example shown in (a) of FIG. 18, the number of times the random number seed has been used by the server 100 is five, while the number of times the random number seed has been used by the communication device 200 is three. Therefore, the server 100 transmits data indicating the difference in the number of times the random number seed has been used (here, two) to the communication device 200, instructing it to adjust the number of times the random number seed has been used. Then, in accordance with the instruction, the communication device 200 generates random numbers using the random number seed equal to the difference in the number of times the random number seed has been used and discards the generated random numbers. As a result, the number of times the random number seed has been used by the server 100 and the communication device 200 are both five, which is the same.

[0107] 19 is a sequence diagram showing an example of the operation of the communication system 10 according to the sixth modification of the embodiment. In the example shown in FIG. 19, it is assumed that the server 100 has already received a request message and a device ID from the communication device 200. First, the communication device 200 transmits data indicating the number of times the random number seed has been used to the server 100 (S301).

[0108] When the server 100 receives the data indicating the number of times the random number seed has been used, it determines whether or not the number of times the random number seed has been used by the server 100 is the same as the number of times the random number seed has been used by the communication device 200 (S302). If the number of times the random number seed has been used by the server 100 is the same as the number of times the random number seed has been used by the communication device 200 (S302: Yes), the server 100 does not execute steps S303 to S306 described below.

[0109] On the other hand, if the number of times the random number seed has been used in the server 100 differs from the number of times the random number seed has been used in the communication device 200 (S302: No), the server 100 determines whether the server 100 has used the random number seed next least (S303). If the server 100 has used the random number seed least (S303: Yes), the server 100 generates random numbers using the random number seed so that the number of times the random number seed has been used in the server 100 is the same as the number of times the random number seed has been used in the communication device 200, and discards the generated random numbers (S305).

[0110] On the other hand, if the communication device 200 has used the random number seed less frequently (S303: No), the server 100 sends data indicating the difference in the number of times the random number seed has been used to the communication device 200 and instructs the communication device 200 to adjust the number of times the random number seed has been used (S304).

[0111] When the communication device 200 receives the data, it generates random numbers using the random number seeds for the difference in the number of times of use in accordance with the instruction, and discards the generated random numbers (S306).

[0112] As described above, in the sixth modification, the number of times the random number seed is used in the server 100 is made to match the number of times the random number seed is used in the communication device 200, so the random number generated using the random number seed in the server 100 is the same as the random number generated using the random number seed in the communication device 200. Therefore, in the sixth modification, the same key can always be generated in each of the server 100 and the communication device 200, which has the advantage that the digital certificate created in the server 100 is less likely to become invalid.

[0113] When storing the number of times the random number seed is used for each device ID in a memory or the like, the server 100 may also store in a memory or the like the encryption method used by the communication device 200. Fig. 20 is a diagram showing an example of the number of times the random number seed is used for each device ID and the encryption method.

[0114] Furthermore, the server 100 may store in memory, for each device ID, the total bit size of the random numbers generated using the random number seed, instead of the number of times the random number seed has been used. Figure 21 is a diagram showing an example of the bit size of the random numbers for each device ID. In this case, the server 100 may perform an adjustment process so that the total bit size of the random numbers generated by the server 100 matches the total bit size of the random numbers generated by the communication device 200.

[0115] The server 100 may also perform the above adjustment process periodically, or may perform it every time a request message is received from the communication device 200 .

[0116] <Other Modifications> In the above embodiment, the communication device 200 stores the random number seed by acquiring the random number seed generated by the server 100 from the server 100, but this is not limited to this. For example, the communication device 200 may store the same random number seed as the random number seed used by the server 100 by acquiring the random number seed from an external storage medium such as a USB (Universal Serial Bus) or a device other than the server 100. Furthermore, for example, the communication device 200 may store the same random number seed as the random number seed used by the server 100 by having the random number seed written when the communication device 200 is manufactured at a factory or the like.

[0117] In the above-described embodiment, the processing performed by a specific processing unit may be performed by another processing unit. The order of multiple processing operations may be changed, or multiple processing operations may be performed in parallel.

[0118] In the above-described embodiments, each component may be realized by executing a software program suitable for that component, or by a program execution unit such as a CPU (Central Processing Unit) or a processor reading and executing a software program recorded on a recording medium such as a hard disk or semiconductor memory.

[0119] Furthermore, each component may be realized by hardware. For example, each component may be a circuit (or integrated circuit). These circuits may form a single circuit as a whole, or each may be a separate circuit. Furthermore, each of these circuits may be a general-purpose circuit or a dedicated circuit.

[0120] Furthermore, the general or specific aspects of the present disclosure may be realized as an apparatus, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, etc. Furthermore, the general or specific aspects of the present disclosure may be realized as any combination of an apparatus, a method, an integrated circuit, a computer program, and a recording medium.

[0121] For example, the present disclosure may be realized as a communication method executed by a computer, or as a program for causing a computer to execute the communication method. The present disclosure may also be realized as a computer-readable non-transitory recording medium having such a program recorded thereon.

[0122] In addition, this disclosure also includes forms obtained by applying various modifications to each embodiment that a person skilled in the art would think of, or forms realized by arbitrarily combining the components and functions of each embodiment within the scope that does not deviate from the intent of this disclosure.

[0123] The present disclosure is useful in creating or renewing digital certificates.

[0124] REFERENCE SIGNS LIST 10 Communication system 100, 100' Server 101 Random number seed generation unit 102 Random number seed storage unit 103 Key generation unit 104 Certificate creation unit 105 Communication unit 106 Cryptographic method information storage unit 200 Communication device 201 Random number seed storage unit 202 Key generation unit 203 Key storage unit 204 Certificate update unit 205 Certificate storage unit 206 Communication unit 300 Other communication device

Claims

1. A communications method comprising: generating a key including a private key and a public key using a pre-stored random number seed; creating an electronic certificate for the key using the generated key; and transmitting the created electronic certificate to a communications device that pre-stores the same random number seed as the random number seed and generates the same key as the key using the random number seed.

2. The communication method according to claim 1, wherein in the process of generating the key, the key is generated further based on an encryption method that can be used by the communication device.

3. The communication method according to claim 2, wherein the encryption method is a post-quantum encryption method.

4. The communication method according to claim 2, further comprising: judging whether the encryption method is secure or vulnerable; and generating the key by generating the key when the encryption method is judged to be secure.

5. The communication method according to any one of claims 1 to 4, further comprising: acquiring an identifier of the communication device; and, in the process of generating the key, generating the key using the random number seed corresponding to the acquired identifier.

6. A communication method according to any one of claims 1 to 4, further comprising determining whether or not the electronic certificate needs to be updated, and generating the key when it is determined that the electronic certificate needs to be updated, in the process of generating the key.

7. A communication method according to any one of claims 1 to 4, further comprising: acquiring the number of times the random number seed has been used in the communication device; and matching the number of times the random number seed has been used in the communication device with the acquired number of times the random number seed has been used.

8. A communication system comprising: a server; and a communication device communicating with the server, wherein the server comprises: a key generation unit that generates a key including a private key and a public key using a pre-stored random number seed; a certificate creation unit that creates an electronic certificate for the key using the key generated by the key generation unit; and a communication unit that transmits the electronic certificate created by the certificate creation unit to the communication device, and the communication device comprises: a communication unit that receives the electronic certificate transmitted from the server; and a key generation unit that generates a key identical to the key using the same random number seed as the pre-stored random number seed.

9. A server comprising: a key generation unit that generates keys including a private key and a public key using a pre-stored random number seed; a certificate creation unit that creates an electronic certificate for the key generated by the key generation unit using the key; and a communication unit that transmits the electronic certificate created by the certificate creation unit to a communication device that pre-stores the same random number seed as the random number seed and generates the same key as the key using the random number seed.

10. A communications device that communicates with a server, comprising: a key generation unit that generates a key including a private key and a public key generated by the server using the same random number seed that is stored in advance and that is used by the server; and a communications unit that receives an electronic certificate for the key that is generated by the server using the key and is sent from the server.

Citation Information

Patent Citations

  • Information processing device, signature generation device, information processing method, signature generation method, and program

    JP2013048350A

  • Data transaction privacy protection method and device based on block chain, and medium

    CN116915394A

  • Ic, data processing system, and computer program

    JP2004080174A

  • Communication system and method therefor

    JP2005006076A

  • Encryption method, cryptogram decoding method, encryptor, cryptogram decoder, transmission / reception system, and communication system

    JP2007116659A