Arithmetic device, terminal device, network, arithmetic method, and program

By performing arithmetic operations and hashing on a common key, the method addresses the need for key size compatibility between 128-bit and 256-bit encryption systems, ensuring secure and efficient key compression.

WO2026053662A1PCT designated stage Publication Date: 2026-03-12KDDI CORP
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-08-05
Publication Date
2026-03-12

AI Technical Summary

Technical Problem

The introduction of 256-bit encryption in communication systems necessitates the compression of 128-bit keys to maintain compatibility with existing 128-bit encryption algorithms, requiring a method to generate a key with the same size as the encryption algorithm used.

Method used

A computing device performs different arithmetic operations on a bit string of a common key based on predetermined conditions and inputs it into a predetermined hash function to obtain a bit string with the same length as the input key, ensuring compatibility and security.

Benefits of technology

This method effectively compresses the bit length of a given key, generating a key equal to the size used in the encryption algorithm, enhancing security and reducing computational load on terminal devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025027746_12032026_PF_FP_ABST
    Figure JP2025027746_12032026_PF_FP_ABST
Patent Text Reader

Abstract

This arithmetic device causes a computer provided with at least a processor and a memory to execute: a processing step for, when the bit length of a common key allocated to be used for communication between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, performing arithmetic processes different from each other on the bit string of the common key on the basis of a predetermined condition to obtain a bit string different from the bit string of the common key; and a hashing step for inputting the bit string obtained in the processing step to a predetermined hash function agreed in advance between the terminal device and the network to obtain a bit string having the same bit length as the input key has.
Need to check novelty before this filing date? Find Prior Art

Description

Arithmetic device, terminal device, network, arithmetic method, and program

[0001] The present invention relates to a computing device, a terminal device, a network, a computing method, and a program. This application claims priority to Japanese Patent Application No. 2024-154830, filed on September 9, 2024, the contents of which are incorporated herein by reference.

[0002] Conventional 3GPP (registered trademark) specifications are formulated on the premise that a 128-bit key is assigned to a 128-bit cipher. For example, Non-Patent Document 1 defines specific specifications for such a technology.

[0003] 3GPP, "TS 33.501", v18.5.0

[0004] Discussions are currently underway to introduce 256-bit encryption. When 256-bit encryption is introduced, it is expected that 128-bit encryption and 256-bit encryption will coexist. In such cases, there is a demand for using a 256-bit key with 128-bit encryption. That is, there is a demand for compressing the bit length of a given key to generate a key with the same size as the key used in the encryption algorithm.

[0005] The present invention has been made in consideration of the above circumstances, and its purpose is to provide a computing device, a terminal device, a network, a computing method, and a program that are capable of compressing the bit length of a given key and generating a key equal to the key size used in a cryptographic algorithm.

[0006] (1) One aspect of the present invention is a computing device that causes a computer having at least a processor and a memory to execute the following steps: a processing step of performing different arithmetic operations on a bit string of the common key based on predetermined conditions to obtain a bit string different from the bit string of the common key when the bit length of the common key assigned for use in communication between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm; and a hashing step of inputting the bit string obtained by the processing step into a predetermined hash function agreed upon in advance between the terminal device and the network to obtain a bit string having the same bit length as the input key. (2) Another aspect of the present invention is the computing device of (1) above, wherein the hash functions are the same even if different arithmetic operations are performed in the processing step. (3) Another aspect of the present invention is the computing device of (1) or (2) above, wherein the processing step performs a shift operation on the bit string of the common key to obtain a bit string different from the bit string of the common key. (4) According to another aspect of the present invention, in the arithmetic device described in any one of (1) to (3) above, the processing step obtains a bit string different from the bit string of the common key by performing an operation using the bit string of the common key and fixed values ​​that differ from each other based on a predetermined condition. (5) According to another aspect of the present invention, in the arithmetic device described in any one of (1) to (4) above, the processing step obtains a bit string different from the bit string of the common key by concatenating the bit string of the common key and fixed values ​​that differ from each other based on a predetermined condition. (6) According to another aspect of the present invention, in the arithmetic device described in any one of (1) to (5) above, the hashing step inputs the bit string obtained in the processing step into the hash function to obtain a bit string having the same bit length as the input key as a hash value.(7) According to another aspect of the present invention, in the arithmetic device described in any one of (1) to (5) above, the hashing step obtains a first hash value by inputting high-order bits of the bit string obtained by the processing step into a first hash function agreed upon in advance between the terminal device and the network, and obtains a second hash value by inputting low-order bits of the bit string obtained by the processing step into a second hash function agreed upon in advance between the terminal device and the network, and obtains a bit string having the same bit length as the input key by performing a predetermined calculation based on the obtained first hash value and the second hash value. (8) According to another aspect of the present invention, in the arithmetic device described in any one of (1) to (7) above, the hashing step obtains a bit string having the same bit length as the input key by calculating an exclusive OR of the obtained first hash value and the second hash value. (9) Another aspect of the present invention is a computing device that causes a computer having at least a processor and a memory to execute the following steps: a hashing step of inputting a bit string of the common key, when the bit length of the common key assigned for communication between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, into a predetermined hash function agreed upon in advance between the terminal device and the network to obtain a bit string different from the bit string of the common key; and a processing step of performing different arithmetic operations on the bit string obtained by the hashing step based on predetermined conditions to obtain a bit string having the same bit length as the bit length of the input key. (10) Another aspect of the present invention is, in any of the computing devices described in (1) to (9) above, the different arithmetic operations based on predetermined conditions performed in the processing step are different arithmetic operations for each service provider. (11) Another aspect of the present invention is a terminal device that includes the computing device described in any of (1) to (10) above. (12) Another aspect of the present invention is a network that includes the computing device described in any of (1) to (10) above.(13) Also, according to one aspect of the present invention, in the network of (12) described above, the calculation device is provided in at least one of a next generation Node B (gNodeB or gNB) or an AMF (Access and Mobility Management Function). (14) Also, according to one aspect of the present invention, when the bit length of a common key assigned for use in communication between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, the calculation method includes: a processing step of performing different calculation processes on a bit string of the common key based on predetermined conditions to obtain a bit string different from the bit string of the common key; and a hashing step of inputting the bit string obtained by the processing step into a predetermined hash function agreed upon in advance between the terminal device and the network to obtain a bit string having the same bit length as the bit length of the input key. (15) Another aspect of the present invention is a program that causes a computer to execute a processing step of, when the bit length of a common key assigned for use in communication between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, obtaining a bit string different from the bit string of the common key by performing different arithmetic operations on the bit string of the common key based on predetermined conditions, and a hashing step of inputting the bit string obtained by the processing step into a predetermined hash function agreed upon in advance between the terminal device and the network, thereby obtaining a bit string having the same bit length as the bit length of the input key.

[0007] According to the present invention, it is possible to provide a computing device, a terminal device, a network, a computing method, and a program that are capable of compressing the bit length of a given key and generating a key equal to the key size used in a cryptographic algorithm.

[0008] FIG. 1 is a diagram showing a general architecture of a wireless system according to an embodiment. FIG. 2 is a block diagram showing a schematic representation of a wireless system according to the embodiment. FIG. 3 is a diagram for explaining processing when a 128-bit key is provided to a wireless system according to the embodiment, and processing when a 256-bit key is provided to the wireless system according to the embodiment. FIG. 4 is an image diagram for explaining an overview of a first calculation method according to the embodiment. FIG. 5 is a flowchart showing a series of steps of the first calculation method according to the embodiment. FIG. 6 is a flowchart showing a series of steps of a variation of the first calculation method according to the embodiment. FIG. 7 is an image diagram for explaining an overview of a variation of a second calculation method according to the embodiment. FIG. 8 is a block diagram showing an example of the internal configuration of a network or a terminal device according to the embodiment.

[0009] [Embodiments] Preferred embodiments of a computing device, a terminal device, a network, a computing method, and a program according to aspects of the present invention are described in detail below with reference to the accompanying drawings. Note that the aspects of the present invention are not limited to these embodiments and include various modifications or improvements. In other words, the components described below include those that would be easily conceivable to a person skilled in the art or that are substantially identical, and the components described below can be combined as appropriate. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the spirit of the present invention. Furthermore, in the drawings below, the scale and number of components may differ from the scale and number of the actual structures to make each configuration easier to understand.

[0010] In the following description, for convenience of explanation, terms and names defined in the 3GPP (registered trademark) LTE (3rd Generation Partnership Project Long Term Evolution) standard may be used. However, the present embodiment is not limited by such terms and names and may be applied to systems based on other standards.

[0011] 1 is a diagram showing a schematic architecture of a wireless system according to one embodiment. The wireless system 1 shown in the figure has, as its functional configuration, a control plane (C-Plane), which is a function for controlling communication, and a user plane (U-Plane), which is a function for realizing user communication. For the sake of simplicity, the figure shows the basic architecture used in a fifth-generation mobile communication system (5th Generation; 5G). However, the wireless system 1 to which this embodiment is applied is not limited to an example applied to 5G, and can be widely applied to other systems.

[0012] In the following description, configurations other than UE (User Equipment) may be referred to as a network. The network includes an access stratum and a non-access stratum. The access stratum includes at least a base station, and the non-access stratum includes at least an AMF (Access and Mobility Management Function). As shown in the figure, the UE and the AMF cooperate with each other via the N1 interface. In the following description, the base station and the AMF may be referred to as a higher-level concept and simply referred to as a network.

[0013] 2 is a block diagram that schematically illustrates a part of the configuration of a wireless system 1. The wireless system 1 has a network 30 and terminal devices 50. The diagram illustrates, as an example, one network and multiple terminal devices 50. Specifically, as an example of the multiple terminal devices 50, terminal device 50-1, terminal device 50-2, ..., and terminal device 50-m (m is a natural number greater than or equal to 1) are illustrated.

[0014] The network 30 communicates with the terminal device 50. The network 30 includes at least a base station. The base station may include functions of an O-RU (Radio Unit), an O-DU (Distributed Unit), and an O-CU (Central Unit), as defined in the specifications of an O-RAN (Open-RAN).

[0015] The base station may also be referred to as a next generation Node B (gNodeB or gNB), en-gNB, Next Generation-Radio Access Network (NG-RAN) node, eNB, low-power node, CU, DU, RU, gNB-DU, Remote Radio Head (RRH), Integrated Access and Backhaul / Backhauling (IAB) node, etc. The base station is not limited to one node, but may be composed of multiple nodes (for example, a combination of a lower node such as an RU or DU and an upper node such as a CU).

[0016] The terminal device 50 is used by a user. Specific examples of the terminal device 50 include a smartphone, a tablet terminal device, a wearable device, etc. The terminal device 50 may also be called a user device, a UE, or the like.

[0017] Here, the network 30 and the terminal device 50 each include a computing device 10. The computing device 10 includes at least a processor and a memory as hardware configurations. The computing device 10 may be configured such that its functions are realized by causing a computer to execute a program. The computing device 10 performs calculations to expand or compress the number of bits of a key used for encryption or decryption. The configurations of the computing devices 10 included in the network 30 and the terminal device 50 may be the same or different. However, it is assumed that at least a portion of the configurations of the computing devices 10 included in the network 30 and the terminal device 50 are the same.

[0018] The location where the arithmetic device 10 is provided in the network 30 is arbitrary. For example, the arithmetic device 10 may be provided in a gNodeB or an AMF. It can also be said that the arithmetic device 10 is provided in at least one of the gNodeB and the AMF in the network 30.

[0019] 3 is a diagram illustrating processing when a 128-bit key is assigned to the wireless system according to this embodiment and processing when a 256-bit key is assigned. Here, the wireless system 1 may be assigned a 128-bit key or a 256-bit key. Whether to perform encrypted communication using a 128-bit key or a 256-bit key is determined at the start of communication. Specifically, the network 30 and the terminal device 50 negotiate at the start of communication to determine the algorithm to be used. If the negotiation determines that 128 bits will be used and a 128-bit key is assigned, the network 30 and the terminal device 50 can perform encrypted communication with each other using the 128-bit key as is. However, if a 256-bit key is assigned, the 256-bit key must first be compressed to 128 bits and then the compressed 128-bit key must be used to perform encrypted communication with each other.

[0020] 3A shows an example in which a 128-bit key is provided. In this case, the network 30 and the terminal device 50 can perform encrypted communication with each other using the 128-bit key.

[0021] 3B shows an example in which a 256-bit key is provided. In this case, both the network 30 and the terminal device 50 need to compress the 256-bit key to 128 bits. The network 30 and the terminal device 50 use the key obtained as a result of the compression to perform encrypted communication with each other.

[0022] [Key Compression Method] A specific example of a key compression method will be described below. The key compression method described below is performed by the computing devices 10 provided in the network 30 and the terminal device 50, respectively. In other words, the key compression method described below is performed separately and independently in both the network 30 and the terminal device 50. In the above example, a 256-bit key is compressed to 128 bits, but the number of bits of the key targeted by the key compression method according to this embodiment is not limited to this example. In the following description, the number of bits of the key will be generalized.

[0023] Assume that a common key K1 has been generated between the terminal device 50 and the network 30 as a key to be used for encryption. The common key K1 can also be said to be a key assigned for use in communication between the terminal device 50 and the network 30. Also, assume that algorithm E has been selected as the encryption method to be used between the terminal device 50 and the network 30. The input key for algorithm E is referred to as input key K2. The input key K2 can also be said to be a key used in the predetermined algorithm E. The above-mentioned arithmetic device 10 generates the input key K2 by compressing the common key K1. The terminal device 50 and the network 30, which communicate information with each other, generate the same input key K2 by compressing the same common key K1.

[0024] [First Calculation Method] Fig. 4 is a conceptual diagram for explaining an overview of the first calculation method according to this embodiment. The overview of the first calculation method will be explained with reference to the same figure. The first calculation method has a processing step P11 and a hashing step P12.

[0025] First, the common key K1 is input to processing step P11. In processing step P11, if the bit length of the common key K1 (e.g., 256 bits) is longer than the bit length of the input key K2 (e.g., 128 bits) used in algorithm E, some kind of arithmetic processing is performed. In processing step P11, some kind of arithmetic processing is performed on the bit string of the common key K1, thereby obtaining a bit string that is at least different from the bit string of the common key K1.

[0026] Here, the arithmetic processing performed in processing step P11 is different from one another based on predetermined conditions. The different processing based on predetermined conditions may be, for example, processing that differs from one business operator to another, or processing that differs from one country, region, or organization to another. More specifically, the different arithmetic processing may be processing in which the calculations themselves are different from one another, or fixed values ​​used in the calculations may be different from one another. In the following explanation, as an example, a case will be described in which the arithmetic processing performed in processing step P11 is different from one business operator to another. A specific example of the arithmetic processing will be explained below.

[0027] (1) For example, a shift operation can be exemplified as an example of the arithmetic processing. More specifically, the shift operation may include a logical shift, an arithmetic shift, a cyclic shift, etc. In processing step P11, a bit string different from the bit string of the common key K1 is obtained by performing a shift operation on the bit string of the common key K1.

[0028] (2) Furthermore, as an example of the arithmetic processing, an arithmetic processing with a fixed value that differs for each business operator can be exemplified. More specifically, the arithmetic processing with a fixed value may include arithmetic operations, logical operations, etc. The fixed value used in the arithmetic processing may be assigned in advance to each business operator. In processing step P11, a bit string different from the bit string of the common key K1 can be obtained by performing an operation using the bit string of the common key K1 and the fixed value that differs for each business operator.

[0029] (3) Another example of the arithmetic processing is a process of concatenating a fixed value that differs for each operator. More specifically, the process of concatenating a fixed value that is assigned in advance to each operator, such as 4 bits or 8 bits, may be a process of concatenating a fixed value to the end or beginning of the bit string of the common key K1. In processing step P11, by concatenating the bit string of the common key K1 with a fixed value that differs for each operator, it is possible to obtain a bit string that is different from the bit string of the common key K1. Here, the number of bits increases due to the concatenation. However, it does not matter if the number of bits increases (or decreases) as a result of the calculation in processing step P11.

[0030] (4) As an example of the arithmetic processing, a combination of the above-mentioned processes (1) to (3) may be performed. The combination may be a combination of at least two of shift operations such as logical shift, arithmetic shift, and cyclic shift, arithmetic operations, and logical operations, and concatenation with a fixed value that varies depending on the operator.

[0031] Next, the bit string after processing in the processing step P11 (processed bit string) is input to a hashing step P12.

[0032] In the hashing step P12, the bit string obtained in the processing step P11 is input into a predetermined hash function to obtain a bit string having the same bit length as the bit length of the input key K2. Here, the hash function used in the hashing step P12 is a function agreed upon in advance between the terminal device 50 and the network 30. The hash function may be stored in a memory unit (not shown) that the terminal device 50 and the network 30 each have.

[0033] Here, it is preferable that the hash function used in the hashing step P12 be the same even if different calculation processes are performed in the processing steps. Specifically, it is preferable that the hash function be the same even if different businesses are involved. From the perspective of ensuring independence, it is preferable that a different input key K2 is generated for each business even from the same common key K1. The storage capacity of the hash function used in the hashing step P12 is larger than the storage capacity of the calculation method used in the processing step P11. Therefore, if a different hash function is prepared for each business, the terminal device 50 must store as many hash functions as the number of businesses, which places a burden on the terminal device 50 (in other words, a large storage area must be secured). According to this embodiment, by using a common hash function for each business and a different calculation method for each business, it is possible to reduce the load on the terminal device 50 while ensuring the independence of the input key K2 (further improving security).

[0034] In the first calculation method, the hashing step P12 inputs the bit string obtained in the processing step P11 into a hash function, and the resulting hash value is used as the input key K2. In other words, the hashing step P12 inputs the bit string obtained in the processing step P11 into the hash function, thereby obtaining a bit string having the same bit length as the input key K2 as the hash value.

[0035] 5 is a flowchart showing a series of steps in the first calculation method according to this embodiment. With reference to this figure, the series of steps in the calculation method described with reference to FIG. 4 will be described.

[0036] (Step S11) First, the calculation device 10 compares the bit lengths of the common key K1 and the input key K2. When the bit length of the common key K1 is |K1| and the bit length of the input key K2 is |K2|, if |K1|>|K2| (i.e., step S11; YES), the calculation device 10 proceeds to step S12 to generate the input key K2 from the common key K1, and continues the subsequent processing. If |K1|>|K2| is not true (i.e., step S11; NO), the calculation device 10 does not need to perform key compression processing, and therefore ends the processing.

[0037] (Step S12) Next, the calculation device 10 performs different calculation processes on the bit string of the common key K1 based on predetermined conditions. Specifically, the calculation device 10 performs different calculation processes on the bit string of the common key K1 for each business operator. This step is processing step P11 in FIG. 4.

[0038] (Step S13) Furthermore, the calculation device 10 obtains a hash value by inputting the bit string obtained in step S12 into a predetermined hash function. This step is the hashing step P12 in Fig. 4. The calculation device 10 can use the obtained hash value as the input key K2.

[0039] [Modification of the First Calculation Method] Next, a modification of the first calculation method will be described. In this modification of the first calculation method, the order of the processing step and the hashing step is reversed. That is, in this modification of the first calculation method, the hashing step is performed first, and then the processing step is performed.

[0040] 6 is an image diagram for explaining an overview of a modified example of the first calculation method according to this embodiment. The overview of the modified example of the first calculation method will be explained with reference to the same figure. It should be noted that in the explanation of the modified example of the first calculation method, explanation of matters that have already been explained may be omitted. The modified example of the first calculation method includes a hashing step P21 and a processing step P22.

[0041] The hashing step P21 is a modified example of the hashing step P12. The hashing step P21 is similar to the hashing step P12 in that an input value is input to a predetermined hash function to obtain a bit string having a predetermined bit length. The input to the hashing step P21 is the bit string of the common key K1, which differs from the hashing step P12, which inputs a processed bit string. In the hashing step P21, by inputting the bit string of the common key K1 to a predetermined hash function, it is also possible to obtain a bit string different from the bit string of the common key K1.

[0042] Processing step P22 is a modified example of processing step P11. The calculation itself performed in processing step P22 is the same as the calculation performed in processing step P11. Processing step P22 differs from processing step P11, which uses the bit string of common key K1 as input, in that processing step P22 uses a hashed bit string as input. In processing step P22, by performing calculation processing that differs for each business operator on the bit string obtained in hashing step P21, it is also possible to obtain a bit string having the same bit length as the bit length of input key K2.

[0043] Here, in the modified example of the first calculation method, the bit length of the input and output may differ due to processing step P22. For example, if a 128-bit output is desired and 4-bit bit strings are concatenated in processing step P22, the hash value output by hashing step P21 may be adjusted to 124 bits, or the bit length of the bit string finally output from processing step P22 may be adjusted to be the same as the bit length of input key K2.

[0044] Fig. 7 is a flowchart showing a series of steps in a modified example of the first calculation method according to this embodiment. With reference to Fig. 7, the series of steps in the calculation method described with reference to Fig. 6 will be described. Note that step S11 has already been described with reference to Fig. 5, so its description will be omitted.

[0045] (Step S21) First, the arithmetic device 10 obtains a hash value by inputting the bit string of the common key K1 into a predetermined hash function. This step is the hashing step P21 in FIG. 6.

[0046] (Step S22) Next, the calculation device 10 performs calculation processing that differs for each business operator on the bit string obtained in step S21. This step is processing step P22 in Fig. 6. The calculation device 10 can use the bit string obtained as a result of the calculation processing as input key K2.

[0047] Here, hash functions have the property that even a slight difference in input value results in a large difference in output value. When comparing the first calculation method with a variation of the first calculation method, the first calculation method performs processing before input to the hash function, so it can be said that the first calculation method is more capable of generating an input key K2 that is completely different for each business operator. Therefore, it can also be said that the first calculation method is more capable of generating an input key K2 with higher security.

[0048] The processing step according to this embodiment is not limited to the example of being performed either before or after the hashing step. The processing step may be performed both before and after the hashing step. In other words, the first calculation method and a modified example of the first calculation method may be used in combination.

[0049] [Second Calculation Method] Fig. 8 is an image diagram for explaining an overview of a modified example of the second calculation method according to this embodiment. An overview of the second calculation method will be explained with reference to the same figure. The second calculation method has a processing step P31 and a hashing step P33. The hashing step P33 differs from the hashing step P12 in that it uses multiple hash functions. The processing step P31 is the same as the processing step P11 explained with reference to Fig. 4, so its explanation will be omitted.

[0050] In the hashing step P33, first, an extraction step P32 is performed. The extraction step P32 is a process for extracting a high-order bit string and a low-order bit string from the bit string obtained as a result of the processing in the processing step P31. If the bit string obtained as a result of the processing in the processing step P31 is 256 bits, the high-order 128 bits and the low-order 128 bits are extracted in the extraction step P32.

[0051] The extracted upper bit string is input to a first hash function 331. The first hash function 331 outputs a first hash value. In the hashing step P33, the upper bits of the bit string obtained in the processing step P31 are input to the first hash function 331 to obtain a first hash value. Similarly, the extracted lower bit string is input to a second hash function 332. The second hash function 332 outputs a second hash value. In the hashing step P33, the lower bits of the bit string obtained in the processing step P31 are input to the second hash function 332 to obtain a second hash value. The first hash function 331 and the second hash function 332 are both functions agreed upon in advance between the terminal device 50 and the network 30. The hash functions may be stored in storage units (not shown) that the terminal device 50 and the network 30 each have.

[0052] Next, a predetermined calculation is performed based on the first hash value and the second hash value to obtain a bit string having the same bit length as the bit length of the input key K2. The predetermined calculation may be, for example, an exclusive OR as shown in the figure. However, this embodiment is not limited to this example, and a bit string having the same bit length as the bit length of the input key K2 may be obtained by another calculation based on the first hash value and the second hash value.

[0053] The calculation in the hashing step P33 can be expressed as the following equation (1).

[0054]

[0055] [Internal Configuration] FIG. 9 is a block diagram showing an example of the internal configuration of a network or terminal device according to this embodiment. At least some of the functions of the network 30 or terminal device 50 can be implemented using a computer. As shown in the figure, the computer includes a central processing unit (processor) 901, a RAM 902, an input / output port 903, input / output devices 904 and 905, and a bus 906. The computer itself can be implemented using existing technology. The central processing unit 901 executes instructions contained in a program read from the RAM 902 or the like. In accordance with each instruction, the central processing unit 901 writes data to the RAM 902, reads data from the RAM 902, and performs arithmetic and logical operations. The RAM 902 stores data and programs. Each element included in the RAM 902 has an address and can be accessed using the address. Note that RAM stands for "random access memory." The input / output port 903 is a port through which the central processing unit 901 exchanges data with external input / output devices, etc. The input / output devices 904 and 905 are input / output devices. The input / output devices 904 and 905 exchange data with the central processing unit 901 via the input / output port 903. The bus 906 is a common communication path used within the computer. For example, the central processing unit 901 reads and writes data from the RAM 902 via the bus 906. Also, for example, the central processing unit 901 accesses the input / output port via the bus 906. Furthermore, all or part of the functional units provided in the network 30 or the terminal device 50 may be realized using hardware such as an ASIC, a PLD, or an FPGA. Furthermore, all or part of the functional units may be realized by a combination of software and hardware.

[0056] [Summary of the Embodiment] According to the embodiment described above, the arithmetic device 10 causes a computer including at least a processor and a memory to execute a processing step and a hashing step. In the processing step, if the bit length of a common key K1 assigned for use in communication between the terminal device 50 and the network 30 is longer than the bit length of an input key K2 used in a predetermined algorithm E, different arithmetic operations are performed on the bit string of the common key K1 based on predetermined conditions to obtain a bit string different from the bit string of the common key K1. In the hashing step, the bit string obtained in the processing step is input to a predetermined hash function agreed upon in advance between the terminal device 50 and the network 30 to obtain a bit string having the same bit length as the input key K2. By employing such a configuration, it is possible to compress the bit length of a given key and generate a key equal to the key size used in the encryption algorithm.

[0057] Furthermore, the above-described embodiment makes it possible to contribute to Goal 9 of the United Nations-led Sustainable Development Goals (SDGs), which is to "build resilient infrastructure, promote sustainable industrialization, and foster innovation," by, for example, "compressing the bit length of a given key and generating a key equal to the key size used in the encryption algorithm."

[0058] Although an embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment, and design changes and the like are also included within the scope that does not deviate from the gist of the present invention.

[0059] Furthermore, a computer program for implementing the functions of each of the above-described devices may be recorded on a computer-readable recording medium, and the program may be read and executed by a computer system. The term "computer system" may also include hardware such as an OS and peripheral devices. The term "computer-readable recording medium" refers to a flexible disk, a magneto-optical disk, a ROM, a writable nonvolatile memory such as a flash memory, a portable medium such as a DVD (Digital Versatile Disc), or a storage device such as a hard disk built into a computer system.

[0060] Furthermore, the term "computer-readable recording medium" also includes a storage medium that stores a program for a certain period of time, such as a volatile memory (e.g., DRAM (Dynamic Random Access Memory)) within a computer system that serves as a server or client when the program is transmitted via a network such as the Internet or a communication line such as a telephone line. The program may also be transmitted from a computer system that stores the program in a storage device or the like to another computer system via a transmission medium or by transmission waves within the transmission medium. Here, the "transmission medium" that transmits the program refers to a medium that has the function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may also be a program that realizes part of the aforementioned functions. Furthermore, the program may be a so-called differential file (differential program) that can realize the aforementioned functions in combination with a program already recorded in the computer system.

[0061] According to the present invention, it is possible to compress the bit length of a given key and generate a key having the same size as the key used in the encryption algorithm.

[0062] 1...wireless system, 10...arithmetic device, 30...network, 50...terminal device, K1...common key, E...algorithm, K2...input key, P11, P22, P31...processing step, P12, P21, P33...hashing step, P32...extraction step, 331...first hash function, 332...second hash function

Claims

1. An arithmetic device that causes a computer having at least a processor and memory to execute the following steps: a processing step of, when the bit length of a common key assigned for use in communications between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, performing different arithmetic processing on the bit string of the common key based on predetermined conditions to obtain a bit string different from the bit string of the common key; and a hashing step of, when the bit string obtained by the processing step is input into a predetermined hash function agreed upon in advance between the terminal device and the network, to obtain a bit string having the same bit length as the bit length of the input key.

2. The computing device according to claim 1, wherein the hash functions are the same even when different computation processes are performed in the processing step.

3. The computing device according to claim 1, wherein the processing step obtains a bit string different from the bit string of the common key by performing a shift operation on the bit string of the common key.

4. The computing device according to claim 1, wherein the processing step obtains a bit string different from the bit string of the common key by performing an operation using the bit string of the common key and a fixed value that is different from each other based on a predetermined condition.

5. The computing device according to claim 1, wherein the processing step obtains a bit string different from the bit string of the common key by concatenating the bit string of the common key with fixed values ​​that are different from each other based on a predetermined condition.

6. The computing device according to claim 1, wherein the hashing step inputs the bit string obtained in the processing step into the hash function to obtain a bit string having the same bit length as the input key as a hash value.

7. The arithmetic device according to claim 1, wherein the hashing step: obtains a first hash value by inputting the most significant bits of the bit string obtained by the processing step into a first hash function agreed upon in advance between the terminal device and the network; obtains a second hash value by inputting the least significant bits of the bit string obtained by the processing step into a second hash function agreed upon in advance between the terminal device and the network; and obtains a bit string having the same bit length as the bit length of the input key by performing a predetermined calculation based on the obtained first hash value and the second hash value.

8. The computing device according to claim 7, wherein the hashing step obtains a bit string having the same bit length as the bit length of the input key by calculating an exclusive OR between the obtained first hash value and the second hash value.

9. A computing device that causes a computer having at least a processor and memory to execute the following steps: a hashing step of obtaining a bit string different from the bit string of the common key by inputting the bit string of the common key to a predetermined hash function agreed upon in advance between the terminal device and the network, when the bit length of the common key assigned for use in communications between the terminal device and the network is longer than the bit length of an input key used in a predetermined algorithm; and a processing step of obtaining a bit string having the same bit length as the bit length of the input key by performing different arithmetic processing on the bit string obtained by the hashing step based on predetermined conditions.

10. The computing device according to claim 1, wherein the different computation processes based on predetermined conditions performed by the processing step are computation processes that differ for each business operator.

11. A terminal device comprising a computing device according to any one of claims 1 to 10.

12. A network comprising a computing device according to any one of claims 1 to 10.

13. The network of claim 12, wherein the computing device is provided in at least one of a next generation Node B (gNodeB or gNB) or an Access and Mobility Management Function (AMF).

14. A calculation method comprising: a processing step of, when the bit length of a common key assigned for use in communications between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, obtaining a bit string different from the bit string of the common key by performing different calculation processes on the bit string of the common key based on predetermined conditions; and a hashing step of inputting the bit string obtained by the processing step into a predetermined hash function agreed upon in advance between the terminal device and the network, thereby obtaining a bit string having the same bit length as the bit length of the input key.

15. A program that causes a computer to execute the following steps: a processing step in which, when the bit length of a common key assigned for use in communications between a terminal device and a network is longer than the bit length of an input key used in a predetermined algorithm, a bit string different from the bit string of the common key is obtained by performing different arithmetic operations on the bit string of the common key based on predetermined conditions; and a hashing step in which the bit string obtained by the processing step is input into a predetermined hash function agreed upon in advance between the terminal device and the network to obtain a bit string having the same bit length as the bit length of the input key.

Citation Information

Patent Citations

  • Key generation device, key generation system, key generation method, and key generation program

    JP2024118646A

  • Systems, methods and computer program products for reducing effective key length of ciphers using one-way cryptographic functions and an initial key

    US6560337B1