Random number generation method, node and network system

By configuring a true random number generator in the first node of the network system and generating and sending random numbers, the problem that nodes without the random number generator cannot encrypt data is solved, and data security and randomness of random numbers are improved.

CN114201143BActive Publication Date: 2025-03-04BEIJING BOE TECH DEV CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111488291.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-07
Publication Date
2025-03-04
Estimated Expiration
2041-12-07

AI Technical Summary

Technical Problem

Nodes that do not integrate random number generators in existing network systems cannot encrypt data through random numbers, making node data less secure.

Method used

A true random number generator is configured in the first node of the network system. By receiving the entropy source service request sent by the target second node, a temporary control word set is generated, and input it to the true random number generator, output the random number and then send it to the target second node.

Benefits of technology

The data security of nodes without random number generator is improved, and the randomness of random numbers is enhanced, making it more difficult for other nodes to crack the random numbers of the node.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114201143B_ABST
    Figure CN114201143B_ABST
Patent Text Reader

Abstract

The present invention provides a random number generation method, node and network system, and relates to the field of data processing technology. Among them, the method includes: a first node receives a target service request sent by a target second node; when the target service request is an entropy source service request, a temporary control word set corresponding to the target service request is generated according to the control word configuration corresponding to the target second node; the temporary control word set is input into a true random number generator, and a random number is output; the random number is sent to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set, and the random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data processing, and in particular to a random number generation method, a node and a network system. Background Art

[0002] Random numbers are the basis of data encryption and the key to secure communication of devices. The randomness of random numbers can greatly increase the difficulty of cracking encrypted data. Therefore, devices with integrated random number generators have higher data security.

[0003] With the development of Moore's Law, devices are becoming smaller and more heterogeneous, network topology is becoming extremely complex, and the types of nodes connected to the network are also becoming different. Some nodes may only have one or more of the functions of sensing, processing, transmission, and communication. In order to meet the cost and energy issues of the equipment, some nodes will not be configured with all the necessary functional cores. Therefore, for some cost- and energy-sensitive nodes in the network, random number generators may not be integrated. As a result, the data security of such nodes cannot be guaranteed. Summary of the invention

[0004] The present invention provides a random number generation method, a node and a network system to solve the problem that nodes in the existing network system that are not integrated with a random number generator cannot encrypt data through random numbers, resulting in low node data security.

[0005] In order to solve the above problem, the present invention discloses a random number generation method, which is applied to a first node in a network system, wherein the network system also includes at least one second node, the first node is configured with a true random number generator, and each of the second nodes is connected to the first node, and the method includes:

[0006] receiving a target service request sent by a target second node; the target second node is any second node among the at least one second node;

[0007] When it is determined that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node;

[0008] Input the temporary control word set into the true random number generator, and output a random number;

[0009] The random number is sent to the target second node.

[0010] Optionally, the temporary control word set includes a plurality of first temporary control words and a second temporary control word;

[0011] The step of inputting the temporary control word set into the true random number generator and outputting a random number comprises:

[0012] generating a first sub-signal corresponding one-to-one to the first temporary control word;

[0013] Mixing each of the first sub-signals to obtain a first signal;

[0014] generating a second signal corresponding to the second temporary control word;

[0015] Using the second signal as a sampling clock signal, sampling the first signal to obtain an initial random number;

[0016] The initial random number is post-processed to obtain a random number.

[0017] Optionally, when determining that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node includes:

[0018] When it is determined that the target service request is an entropy source service request, the target service request is mapped to a corresponding temporary control word set through a control word set mapping item corresponding to the target second node.

[0019] Optionally, when determining that the target service request is an entropy source service request, before generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node, the method further includes:

[0020] Performing data type verification on the target service request;

[0021] When the data type of the target service request is the data type of the entropy source service request, it is determined that the target service request is the entropy source service request.

[0022] Optionally, before sending the random number to the target second node, the method further includes:

[0023] Processing the random number according to the required format corresponding to the target second node;

[0024] The sending the random number to the target second node comprises:

[0025] A random number that meets the required format corresponding to the target second node is sent to the target second node.

[0026] In order to solve the above problem, the present invention further discloses a random number generation method, which is applied to a second node in a network system, wherein the network system includes a first node and at least one second node, wherein a true random number generator is configured in the first node, and each second node is connected to the first node, wherein the method includes:

[0027] Generate a target service request based on hardware noise of a target second node; the target second node is any second node among the at least one second node;

[0028] Sending the target service request to the first node, so that when the first node determines that the received target service request is an entropy source service request, the first node generates a temporary control word set corresponding to the target second node according to the target service request, inputs the temporary control word set to the true random number generator, outputs a random number, and then sends the random number to the target second node;

[0029] Receive the random number sent by the first node.

[0030] In order to solve the above problem, the present invention further discloses a random number generation method, which is applied to a network system, wherein the network system includes a first node and at least one second node, wherein a true random number generator is configured in the first node, and each second node is connected to the first node, and the method includes:

[0031] The target second node generates a target service request based on the hardware noise of the target second node; the target second node is any second node among the at least one second node;

[0032] The target second node sends the target service request to the first node;

[0033] When the first node determines that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node;

[0034] The first node inputs the temporary control word set into the true random number generator, and outputs a random number;

[0035] The first node sends the random number to the target second node;

[0036] The target second node receives the random number.

[0037] In order to solve the above problem, the present invention further discloses a first node, belonging to a network system, wherein the network system further comprises at least one second node, wherein the first node is configured with a true random number generator, and each of the second nodes is connected to the first node, and the first node comprises:

[0038] A request receiving module, configured to receive a target service request sent by a target second node; the target second node is any second node among the at least one second node;

[0039] A control word generation module, configured to generate a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node;

[0040] A random number generation module, used for inputting the temporary control word set into the true random number generator and outputting a random number;

[0041] A random number sending module is used to send the random number to the target second node.

[0042] In order to solve the above problem, the present invention further discloses a second node, belonging to a network system, the network system comprising a first node and at least one second node, the first node being configured with a true random number generator, each second node being connected to the first node, the target second node being any one of the at least one second node, and the target second node comprising:

[0043] A request generating module, configured to generate a target service request based on the hardware noise of the target second node;

[0044] a request sending module, configured to send the target service request to the first node, so that when the first node determines that the received target service request is an entropy source service request, it generates a temporary control word set corresponding to the target second node according to the target service request, inputs the temporary control word set to the true random number generator, outputs a random number, and then sends the random number to the target second node;

[0045] A random number receiving module is used to receive the random number sent by the first node.

[0046] In order to solve the above problem, the present invention further discloses a network system, comprising a first node and at least one second node, wherein the first node is configured with a true random number generator, and each of the second nodes is connected to the first node;

[0047] A target second node, configured to generate a target service request based on hardware noise of the target second node; the target second node is any second node among the at least one second node;

[0048] The target second node is further configured to send the target service request to the first node;

[0049] The first node is configured to generate a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request;

[0050] The first node is further configured to input the temporary control word set into the true random number generator and output a random number;

[0051] The first node is further configured to send the random number to the target second node.

[0052] In order to solve the above problem, the present invention further discloses a first node, comprising a true random number generator, a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein when the computer program is executed by the processor, the following steps implemented by the first node in the above random number generation method are implemented:

[0053] receiving a target service request sent by a target second node; the target second node is any second node among the at least one second node;

[0054] When it is determined that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node;

[0055] Sending the random number to the target second node;

[0056] The true random number generator is configured to receive the temporary control word set as input and output a random number.

[0057] Optionally, the true random number generator includes a mixing circuit, a sampling circuit, a D flip-flop and a post-processing circuit, the output end of the mixing circuit is connected to the first input end of the D flip-flop, the output end of the sampling circuit is connected to the second input end of the D flip-flop, and the output end of the D flip-flop is connected to the input end of the post-processing circuit.

[0058] Optionally, the mixing circuit includes a plurality of frequency-adjustable first clock generators and a logic gate mixer, the output end of each of the first clock generators is connected to the logic gate mixer, and the sampling circuit includes a frequency-adjustable second clock generator;

[0059] The temporary control word set includes a first temporary control word corresponding to the first clock generator in a one-to-one manner, and a second temporary control word corresponding to the second clock generator.

[0060] Optionally, the first clock generator is configured to receive the corresponding first temporary control word as input and output the corresponding first sub-signal;

[0061] The logic gate mixer is configured to mix each of the first sub-signals and output a first signal;

[0062] The second clock generator is configured to receive the second temporary control word as input and output a corresponding second signal;

[0063] The D flip-flop is configured to receive the first signal and the second signal as inputs, use the second signal as a sampling clock signal, sample the first signal, and obtain an initial random number;

[0064] The post-processing circuit is configured to perform post-processing on the initial random number to obtain a random number and output it.

[0065] In order to solve the above problem, the present invention also discloses a second node, including a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein when the computer program is executed by the processor, the steps implemented by the target second node in the random number generation method as described above are implemented.

[0066] Compared with the prior art, the present invention has the following advantages:

[0067] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node. BRIEF DESCRIPTION OF THE DRAWINGS

[0068] Figure 1 A flowchart of a random number generation method according to an embodiment of the present invention is shown;

[0069] Figure 2 A schematic diagram showing the architecture of a network system according to an embodiment of the present invention is shown;

[0070] Figure 3 A schematic diagram showing a first node providing entropy source service to each second node according to an embodiment of the present invention is shown;

[0071] Figure 4 A flowchart showing another method for generating random numbers according to an embodiment of the present invention is shown;

[0072] Figure 5 A flowchart showing another method for generating random numbers according to an embodiment of the present invention is shown;

[0073] Figure 6 A structural block diagram of a first node according to an embodiment of the present invention is shown;

[0074] Figure 7 A structural block diagram of a second node according to an embodiment of the present invention is shown;

[0075] Figure 8 A schematic diagram of the architecture of a true random number generator according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0076] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0077] Reference Figure 1 , shows a flow chart of the steps of a random number generation method according to an embodiment of the present invention, the method is applied to a network system, referring to Figure 2 The network system 1000 includes a first node 100 and at least one second node 200 . The first node 100 is configured with a true random number generator 110 , and each second node 200 is a node not configured with a random number generator. Each second node 200 is connected to the first node 100 .

[0078] In some optional embodiments, the network system 1000 may belong to an Internet of Things system, that is, the network system 1000 may be a subsystem in the Internet of Things system, used to implement a part of the process in the Internet of Things business.

[0079] In some optional embodiments, the first node 100 may be a node in the network system 1000 that is not sensitive to cost and energy, such as a relay device, a routing device, etc. The second node 200 is a node in the network system 1000 that is sensitive to cost and energy.

[0080] It can be understood that the above network systems and nodes are merely some optional examples, and the present invention is not intended to be limited thereto.

[0081] Among them, the true random number generator 110 in the first node 100 can generate random numbers based on the physical entropy source of the node, which is the hardware noise of the node, such as some thermal noise, signal noise, light noise, etc. The randomness of hardware noise is extremely strong and cannot be reproduced. Compared with the pseudo-random number generator based on software-generated entropy source, the true random number generator is more random and more difficult to crack through machine learning.

[0082] In some optional embodiments, the true random number generator 110 may specifically be a frequency mixing true random number generator (FM-TRNG).

[0083] Figure 3 A schematic diagram showing a first node providing entropy source services to each second node according to an embodiment of the present invention is shown, combined with Figure 1 and Figure 3 , the steps of the method are introduced, and the method comprises the following steps:

[0084] Step 101: A target second node generates a target service request based on hardware noise of the target second node; the target second node is any second node among the at least one second node.

[0085] In an embodiment of the present invention, for a target second node, that is, any second node that is not configured with a random number generator, its own hardware noise can be converted into a set of binary strings and packaged into a data format that can be received by the first node to obtain a target service request. The target service request is generated based on the hardware noise, so the target service request is an entropy source service request, which is used to request a random number.

[0086] Step 102: The target second node sends a target service request to the first node.

[0087] Then, the target second node may send the target service request to the first node to request the first node to generate and return a random number for it.

[0088] Step 103: When the first node determines that the target service request is an entropy source service request, the first node generates a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node.

[0089] When the first node receives the target service request and determines that the target service request is an entropy source service request, the target service request may be processed according to the processing method corresponding to the entropy source service request.

[0090] In the embodiment of the present invention, the first node has a larger control word configuration space and thus has strong reconfigurability, so that different second nodes can correspond to different control word configurations, thereby enhancing the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, and accordingly, the randomness of the random numbers is enhanced.

[0091] Take the first node 1 corresponding to user 1 and the second node 2 corresponding to user 2 as an example. If the random number generator used is a random number generator with a fixed control word configuration, the random numbers obtained by user 1 and user 2 are generated under the same control word configuration. Then, user 1 can continuously send entropy source service requests and perform machine learning attacks on the returned random numbers. Through the model trained by user 1, a random number consistent with user 2 can be obtained, that is, for user 2, there is a risk that user 1 predicts its random number. In the embodiment of the present invention, different users correspond to different control word configurations, and the control word is only temporary. Individual users can only use their own historical data through machine learning training models, that is, they can only predict the random numbers they can receive at most, and there is no potential risk of predicting random numbers for other users. In this way, the first node can expand more second nodes, and the data security of each second node can be guaranteed, which enhances the interconnection of the network system.

[0092] In an embodiment of the present invention, the first node can provide customized entropy source services for different second nodes based on different entropy source configurations. Therefore, the method is scalable, reconfigurable, highly interconnected, and resistant to machine learning attacks.

[0093] Step 104: The first node inputs the temporary control word set into a true random number generator, which outputs a random number.

[0094] After the first node determines the temporary control word set corresponding to the current entropy source service request of the target second node, it can use it as an input parameter of the true random number generator and input it into the true random number generator. The true random number generator can then generate and output a random number based on the temporary control word set.

[0095] Step 105: The first node sends the random number to the target second node.

[0096] Afterwards, the first node can return the generated random number to the target second node to complete the entropy source service.

[0097] Step 106: The target second node receives the random number.

[0098] After receiving the random number returned by the first node, the target second node can perform operations such as encrypting data according to the random number.

[0099] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.

[0100] The steps executed by the first node and the target second node will be described in detail below.

[0101] Reference Figure 4 , shows a flowchart of another random number generation method according to an embodiment of the present invention, the method is applied to a first node in a network system, the network system also includes at least one second node, the first node is configured with a true random number generator, each second node is connected to the first node, the method includes the following steps:

[0102] Step 401: receiving a target service request sent by a target second node; the target second node is any second node among at least one second node.

[0103] Step 402: When it is determined that the target service request is an entropy source service request, a temporary control word set corresponding to the target service request is generated according to the control word configuration corresponding to the target second node; when the target service request is an entropy source service request, the target service request is generated based on the hardware noise of the target second node.

[0104] Optionally, before step 402, the first node may further perform the following steps:

[0105] Verify the data type of the target service request;

[0106] When the data type of the target service request is the data type of the entropy source service request, it is determined that the target service request is the entropy source service request.

[0107] In practical applications, the first node, as a node that is insensitive to cost and energy, can perform more functions. Therefore, the first node will receive more service requests, and the first node needs to perform different operations for different service requests. Therefore, when the first node receives a service request, it first needs to verify what type of service request the service request is, and then determine what kind of operation should be performed on it. When the first node verifies that the data type of the target service request sent by the target second node is the data type of the entropy source service request, it can be determined that the target service request is an entropy source service request, and then it can be determined that the subsequent steps 303-304 need to be performed for the target service request.

[0108] Alternatively, step 402 may be implemented in the following manners, including:

[0109] When it is determined that the target service request is an entropy source service request, the target service request is mapped to a corresponding temporary control word set through a control word set mapping item corresponding to the target second node.

[0110] In an optional implementation, a mapping table may be configured in the first node, the mapping table including a plurality of control word set mapping items, each control word set mapping item including a specific entropy source service request content (i.e., the binary string above) and a specific temporary control word set corresponding thereto. Each control word set mapping item corresponds to a corresponding second node, that is, each second node connected to the first node corresponds to a part of the control word set mapping items in the mapping table.

[0111] Accordingly, the first node may first determine the control word set mapping items corresponding to the target second node, and then determine the control word set mapping item corresponding to the target service request among these control word set mapping items, and then obtain a temporary control word set corresponding to the target service request through the control word set mapping item.

[0112] In another optional implementation, a mapping table may be configured in the first node for each connected second node, that is, the number of mapping tables is the same as the number of second nodes, and each mapping table only includes mapping items of control word sets corresponding to the second nodes.

[0113] Accordingly, the first node may first determine the mapping table corresponding to the target second node, then search the mapping table for the control word set mapping item corresponding to the target service request, and then obtain a temporary control word set corresponding to the target service request through the control word set mapping item.

[0114] Step 403: Input the temporary control word set to a true random number generator, and output a random number.

[0115] In some optional implementations, the true random number generator (such as a mixing true random number generator) can specifically generate random numbers by waveform mixing. Accordingly, this step can be specifically implemented in the following manner:

[0116] The temporary control word set includes a plurality of first temporary control words and a second temporary control word;

[0117] S1: Generate a first sub-signal corresponding to the first temporary control word one by one;

[0118] S2: Mix the first sub-signals to obtain a first signal;

[0119] S3: Generate a second signal corresponding to the second temporary control word;

[0120] S4: using the second signal as a sampling clock signal to sample the first signal to obtain an initial random number;

[0121] S5: Post-process the initial random number to obtain a random number.

[0122] The true random number generator may include a plurality of frequency-adjustable clock generators, and the frequency-adjustable clock generators may output clock signals of different frequencies according to different control words (also called frequency control words or period control words). The true random number generator may generate a first sub-signal corresponding to the first temporary control word one by one through the clock generators corresponding to the number of the first temporary control words, and may generate a second signal corresponding to the second temporary control word through the clock generator corresponding to the second temporary control word.

[0123] After the first sub-signals are mixed, a first signal can be obtained. In some embodiments, the mixing operation can be implemented based on an XOR tree.

[0124] Then, the true random number generator samples the first signal using the second signal as a sampling clock signal, thereby obtaining a sampled signal. For the sampled signal, a high level of a preset duration can be recorded as a 1, and a low level of a preset duration can be recorded as a 0, thereby obtaining an initial random number in binary form.

[0125] Afterwards, the true random number generator can post-process the initial random number to output the random number required by the target second node. After post-processing, the random number can meet the requirements of uniformity, independence, high entropy per bit, etc.

[0126] Step 404: Send the random number to the target second node.

[0127] In some optional embodiments, after outputting the random number and before sending the random number, the method may further include the following steps:

[0128] Process the random number according to the required format corresponding to the target second node;

[0129] Accordingly, step 404 may specifically include:

[0130] A random number that meets the required format corresponding to the target second node is sent to the target second node.

[0131] In actual applications, different second nodes may have different receiving format requirements for random numbers. Therefore, after the first node generates the random number required by the target second node, it can first convert the random number into the required format corresponding to the target second node so that the target second node can normally receive and parse the random number.

[0132] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.

[0133] Reference Figure 5 , shows a flowchart of steps of another random number generation method according to an embodiment of the present invention, the method is applied to a second node in a network system, the network system includes a first node and at least one second node, the first node is configured with a true random number generator, each second node is connected to the first node, the method includes the following steps:

[0134] Step 501: Generate a target service request based on hardware noise of a target second node; the target second node is any second node among at least one second node.

[0135] Step 502: Send a target service request to the first node, so that when the first node determines that the received target service request is an entropy source service request, it generates a temporary control word set corresponding to the target second node according to the target service request, inputs the temporary control word set to a true random number generator, outputs a random number, and then sends the random number to the target second node.

[0136] Step 503: Receive a random number sent by the first node.

[0137] The above process can refer to the relevant content above, which will not be repeated here.

[0138] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.

[0139] Reference Figure 6 , shows a structural block diagram of a first node in an embodiment of the present invention, the first node belongs to a network system, the network system also includes at least one second node, the first node is configured with a true random number generator, each of the second nodes is connected to the first node, and the first node 600 includes:

[0140] The request receiving module 601 is used to receive a target service request sent by a target second node; the target second node is any second node among the at least one second node;

[0141] A control word generation module 602 is used to generate a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node;

[0142] A random number generation module 603, used to input the temporary control word set into the true random number generator and output a random number;

[0143] The random number sending module 604 is used to send the random number to the target second node.

[0144] Optionally, the temporary control word set includes a plurality of first temporary control words and a second temporary control word;

[0145] The random number generation module is specifically used for:

[0146] generating a first sub-signal corresponding one-to-one to the first temporary control word;

[0147] Mixing each of the first sub-signals to obtain a first signal;

[0148] generating a second signal corresponding to the second temporary control word;

[0149] Using the second signal as a sampling clock signal, sampling the first signal to obtain an initial random number;

[0150] The initial random number is post-processed to obtain a random number.

[0151] Optionally, the control word generation module is specifically used to:

[0152] When it is determined that the target service request is an entropy source service request, the target service request is mapped to a corresponding temporary control word set through a control word set mapping item corresponding to the target second node.

[0153] Optionally, the first node further includes a verification module, configured to:

[0154] Performing data type verification on the target service request;

[0155] When the data type of the target service request is the data type of the entropy source service request, it is determined that the target service request is the entropy source service request.

[0156] Optionally, the first node further includes a format processing module, configured to:

[0157] Processing the random number according to the required format corresponding to the target second node;

[0158] The sending the random number to the target second node comprises:

[0159] A random number that meets the required format corresponding to the target second node is sent to the target second node.

[0160] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.

[0161] Reference Figure 7 , shows a structural block diagram of a second node in an embodiment of the present invention, the second node belongs to a network system, the network system includes a first node and at least one second node, the first node is configured with a true random number generator, each second node is connected to the first node, the target second node is any second node in the at least one second node, and the target second node 700 includes:

[0162] A request generating module 701, configured to generate a target service request based on the hardware noise of the target second node;

[0163] A request sending module 702 is used to send the target service request to the first node, so that when the first node determines that the received target service request is an entropy source service request, it generates a temporary control word set corresponding to the target second node according to the target service request, inputs the temporary control word set to the true random number generator, outputs a random number, and then sends the random number to the target second node;

[0164] The random number receiving module 703 is used to receive the random number sent by the first node.

[0165] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.

[0166] The embodiment of the present invention also discloses a network system 1000, referring to Figure 2 , comprising a first node 100 and at least one second node 200, wherein the first node 100 is configured with a true random number generator 110, and each of the second nodes 200 is connected to the first node 100;

[0167] A target second node, configured to generate a target service request based on hardware noise of the target second node; the target second node is any second node among the at least one second node;

[0168] The target second node is further configured to send the target service request to the first node;

[0169] The first node is configured to generate a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request;

[0170] The first node is further configured to input the temporary control word set into the true random number generator and output a random number;

[0171] The first node is further configured to send the random number to the target second node.

[0172] Optionally, the temporary control word set includes a plurality of first temporary control words and a second temporary control word;

[0173] The first node is specifically configured as follows:

[0174] generating a first sub-signal corresponding one-to-one to the first temporary control word;

[0175] Mixing each of the first sub-signals to obtain a first signal;

[0176] generating a second signal corresponding to the second temporary control word;

[0177] Using the second signal as a sampling clock signal, sampling the first signal to obtain an initial random number;

[0178] The initial random number is post-processed to obtain a random number.

[0179] Optionally, the first node is specifically configured as follows:

[0180] When it is determined that the target service request is an entropy source service request, the target service request is mapped to a corresponding temporary control word set through a control word set mapping item corresponding to the target second node.

[0181] Optionally, the first node is further configured as:

[0182] Performing data type verification on the target service request;

[0183] When the data type of the target service request is the data type of the entropy source service request, it is determined that the target service request is the entropy source service request.

[0184] Optionally, the first node is further configured as:

[0185] Processing the random number according to the required format corresponding to the target second node;

[0186] The sending the random number to the target second node comprises:

[0187] A random number that meets the required format corresponding to the target second node is sent to the target second node.

[0188] In an embodiment of the present invention, after the first node receives the target service request sent by the target second node, when it is determined that the target service request is an entropy source service request generated based on the hardware noise of the target second node, a temporary control word set corresponding to the target service request can be generated according to the control word configuration corresponding to the target second node, and then the temporary control word set can be input into a true random number generator, and a random number is output and returned to the target second node. In an embodiment of the present invention, different second nodes correspond to different control word configurations, which can enhance the randomness of the control word set. The random numbers obtained by different second nodes can be generated under different control word configurations, which enhances the randomness of the random numbers. For any second node, it is more difficult for other second nodes to crack the random number of the second node, thereby improving the data security of the second node.

[0189] As for the above-mentioned embodiments of the first node, the second node and the network system, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts may refer to the partial description of the method embodiments.

[0190] The embodiment of the present invention further discloses a first node, comprising a true random number generator, a processor, a memory, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, the following steps of the random number generation method implemented by the first node in the above embodiments are implemented:

[0191] receiving a target service request sent by a target second node; the target second node is any second node among the at least one second node;

[0192] When it is determined that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node;

[0193] Sending the random number to the target second node;

[0194] The true random number generator is configured to receive the temporary control word set as input and output a random number.

[0195] Optionally, refer to Figure 8 , shows a true random number generator 110 according to an embodiment of the present invention, specifically a frequency mixing true random number generator (FM-TRNG) that can generate random numbers by waveform mixing. The true random number generator 110 includes a mixing circuit 111, a sampling circuit 112, a D flip-flop 113 and a post-processing circuit 114. The output end of the mixing circuit 111 is connected to the first input end of the D flip-flop 113, the output end of the sampling circuit 112 is connected to the second input end of the D flip-flop 113, and the output end of the D flip-flop 113 is connected to the input end of the post-processing circuit 114.

[0196] Further, the mixing circuit 111 includes a plurality of frequency-adjustable first clock generators 1111 and a logic gate mixer 1112, the output end of each first clock generator 1111 is connected to the logic gate mixer 1112, and the sampling circuit 112 includes a frequency-adjustable second clock generator 1121;

[0197] Accordingly, the temporary control word set includes a first temporary control word ( Figure 8 F1-F n), and a second temporary control word corresponding to the second clock generator 1112 ( Figure 8 F c ). The temporary control word set is F1-F n and F c A vector constructed in a predetermined order.

[0198] By reference Figure 8 Taking the FM-TRNG shown in the figure as an example, the first clock generator 1111 and the second clock generator 1112 can both be TAF-DPS (Time-Average-Frequency Direct Period Synthesis) clock generators. The TAF-DPS clock generator can use two or more pulses to synthesize the target clock period, thereby achieving the generation of any frequency and fast frequency switching.

[0199] The TAF-DPS clock generator includes a TAF-DPS frequency synthesizer, which can generate a first cycle and a second cycle according to a basic time unit Δ and a frequency control word F, and the first cycle and the second cycle are interleaved to synthesize a clock signal of a desired frequency. The TAF-DPS clock generator has an output terminal for outputting the synthesized clock signal.

[0200] The TAF-DPS clock generator also includes K output terminals, which can output K pulse signals with uniform phase intervals, where K is a positive integer greater than 1. Among the K pulse signals, the phase difference between any two adjacent pulse signals is the basic time unit Δ. In practical applications, the basic time unit Δ is usually designed according to the needs of the TAF-DPS circuit.

[0201] The frequency control word F = I + r, where I is the integer part, r is the decimal part, 0≤r<1, and the frequency accuracy of the TAF-DPS clock generator is related to the number of storage bits allocated to r. In practical applications, the frequency control word F is usually set according to the frequency requirements of the clock signal.

[0202] According to the basic time unit Δ and the frequency control word F, the TAF-DPS frequency synthesizer can generate two types of cycles. The first cycle T A =I*Δ, the second period T B =(I+1)*Δ. The clock signal output by the TAF-DPS frequency synthesizer has a period of T A and T B The clock pulse train synthesized in an interleaved manner, the average period of the clock pulse train is T TAF =(1-r)*T A +r*T B Among them, TTAF Controlled by the value of r. TAF The reciprocal of is the frequency of the clock signal to be output.

[0203] In addition, since the individual pulse signals are directly constructed, the frequency of the clock signal output by the TAF-DPS clock generator can be changed instantly, making the TAF-DPS clock generator have the characteristics of rapid frequency switching. The ability to generate any frequency and the ability to quickly switch frequencies are also the main reasons why the TAF-DPS clock generator is superior to conventional frequency sources.

[0204] Further, the first clock generator 1111 is configured to receive the corresponding first temporary control word as input and output the corresponding first sub-signal, wherein the frequency of each first sub-signal is related to the size of the corresponding first temporary control word.

[0205] The logic gate mixer 1112 is configured to mix each first sub-signal and output a first signal. The logic gate mixer 1112 may be configured with an XOR tree processing function, and each first sub-signal may be mixed by the XOR tree processing function.

[0206] The second clock generator 1121 is configured to receive the second temporary control word as input and output a corresponding second signal, wherein the frequency of the second signal is related to the size of the corresponding second temporary control word.

[0207] The D flip-flop 113 is configured to receive the first signal and the second signal as inputs, use the second signal as a sampling clock signal, sample the first signal, and obtain an initial random number.

[0208] The post-processing circuit 114 is configured to perform post-processing on the initial random number, obtain a random number and output it.

[0209] Configuration space size S of FM-TRNG config for:

[0210] S config =(2 a ) b

[0211] Wherein, a is the length of the control word F corresponding to the TAF-DPS circuit in the mixer circuit 111 (including the length of the integer part and the length of the decimal part), and b is the number of TAF-DPS circuits included in the mixer circuit 111.

[0212] Taking the mixing circuit 111 including 10 TAF-DPS circuits and the sampling circuit 112 including 1 TAF-DPS circuit as an example, the control word F length of each TAF-DPS circuit can be designed to be 24 (8-bit integer, 16-bit decimal). Different F configurations will change the state space of the random number generated by the true random number generator 110. Therefore, the configuration space size of the FM-TRNG including 11 TAF-DPS circuits is:

[0213] S config =(2 24 ) 11 =2 264 ≈2.96×10 79

[0214] This is a very large configuration space, and it is difficult to implement a brute-force attack on current computers.

[0215] An embodiment of the present invention also discloses a second node, including a processor, a memory, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, the steps of the random number generation method implemented by the target second node in the above embodiments are implemented.

[0216] For the above-mentioned method embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should know that the present invention is not limited by the order of the actions described, because according to the present invention, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.

[0217] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0218] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0219] The above is a detailed introduction to a random number generation method, node and network system provided by the present invention. Specific examples are used in this article to illustrate the principle and implementation mode of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. At the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation mode and application scope. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A random number generation method, characterized in that: Applied to a first node in a network system, the network system further comprising at least one second node, the first node being configured with a true random number generator, each of the second nodes being connected to the first node, the method comprising: receiving a target service request sent by a target second node; the target second node is any second node among the at least one second node; When it is determined that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node; Input the temporary control word set into the true random number generator, and output a random number; The random number is sent to the target second node.

2. The method according to claim 1, characterized in that The temporary control word set includes a plurality of first temporary control words and a second temporary control word; The step of inputting the temporary control word set into the true random number generator and outputting a random number comprises: generating a first sub-signal corresponding one-to-one to the first temporary control word; Mixing each of the first sub-signals to obtain a first signal; generating a second signal corresponding to the second temporary control word; Using the second signal as a sampling clock signal, sampling the first signal to obtain an initial random number; The initial random number is post-processed to obtain a random number.

3. The method according to claim 1, characterized in that The step of generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request includes: When it is determined that the target service request is an entropy source service request, the target service request is mapped to a corresponding temporary control word set through a control word set mapping item corresponding to the target second node.

4. The method according to claim 1, characterized in that: The step of generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request further includes: Performing data type verification on the target service request; When the data type of the target service request is the data type of the entropy source service request, it is determined that the target service request is the entropy source service request.

5. The method according to claim 1, characterized in that Before sending the random number to the target second node, the method further includes: Processing the random number according to the required format corresponding to the target second node; The sending the random number to the target second node comprises: A random number that meets the required format corresponding to the target second node is sent to the target second node.

6. A random number generation method, characterized in that: Applied to a second node in a network system, the network system includes a first node and at least one of the second nodes, the first node is configured with a true random number generator, and each of the second nodes is connected to the first node, the method includes: Generate a target service request based on hardware noise of a target second node; the target second node is any second node among the at least one second node; Sending the target service request to the first node, so that when the first node determines that the received target service request is an entropy source service request, the first node generates a temporary control word set corresponding to the target second node according to the target service request, inputs the temporary control word set to the true random number generator, outputs a random number, and then sends the random number to the target second node; Receive the random number sent by the first node.

7. A random number generation method, characterized in that: Applied to a network system, the network system includes a first node and at least one second node, the first node is configured with a true random number generator, and each of the second nodes is connected to the first node, the method includes: The target second node generates a target service request based on the hardware noise of the target second node; the target second node is any second node among the at least one second node; The target second node sends the target service request to the first node; When the first node determines that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node; The first node inputs the temporary control word set into the true random number generator, and outputs a random number; The first node sends the random number to the target second node; The target second node receives the random number.

8. A first node, characterized in that: The invention belongs to a network system, wherein the network system further comprises at least one second node, wherein the first node is configured with a true random number generator, each of the second nodes is connected to the first node, and the first node comprises: A request receiving module, configured to receive a target service request sent by a target second node; the target second node is any second node among the at least one second node; A control word generation module, configured to generate a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request; when the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node; A random number generation module, used for inputting the temporary control word set into the true random number generator and outputting a random number; A random number sending module is used to send the random number to the target second node.

9. A second node, characterized in that: The invention belongs to a network system, the network system includes a first node and at least one second node, the first node is configured with a true random number generator, each second node is connected to the first node, the target second node is any second node of the at least one second node, and the target second node includes: A request generating module, configured to generate a target service request based on the hardware noise of the target second node; a request sending module, configured to send the target service request to the first node, so that when the first node determines that the received target service request is an entropy source service request, it generates a temporary control word set corresponding to the target second node according to the target service request, inputs the temporary control word set to the true random number generator, outputs a random number, and then sends the random number to the target second node; A random number receiving module is used to receive the random number sent by the first node.

10. A network system, characterized in that: It includes a first node and at least one second node, wherein the first node is configured with a true random number generator, and each of the second nodes is connected to the first node; a target second node, configured to generate a target service request based on hardware noise of the target second node; The target second node is any second node among the at least one second node; The target second node is further configured to send the target service request to the first node; The first node is configured to generate a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node when determining that the target service request is an entropy source service request; The first node is further configured to input the temporary control word set into the true random number generator and output a random number; The first node is further configured to send the random number to the target second node.

11. A first node, characterized in that: The invention comprises a true random number generator, a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein when the computer program is executed by the processor, the following steps of the random number generation method according to any one of claims 1 to 5 are implemented: receiving a target service request sent by a target second node; the target second node is any second node among the at least one second node; When determining that the target service request is an entropy source service request, generating a temporary control word set corresponding to the target service request according to the control word configuration corresponding to the target second node; When the target service request is the entropy source service request, the target service request is generated based on the hardware noise of the target second node; Sending the random number to the target second node; The true random number generator is configured to receive the temporary control word set as input and output a random number.

12. The first node according to claim 11, characterized in that: The true random number generator includes a mixing circuit, a sampling circuit, a D flip-flop and a post-processing circuit, wherein the output end of the mixing circuit is connected to the first input end of the D flip-flop, the output end of the sampling circuit is connected to the second input end of the D flip-flop, and the output end of the D flip-flop is connected to the input end of the post-processing circuit.

13. The first node according to claim 12, characterized in that: The mixing circuit includes a plurality of frequency-adjustable first clock generators and a logic gate mixer, the output end of each of the first clock generators is connected to the logic gate mixer, and the sampling circuit includes a frequency-adjustable second clock generator; The temporary control word set includes a first temporary control word corresponding to the first clock generator in a one-to-one manner, and a second temporary control word corresponding to the second clock generator.

14. The first node according to claim 13, characterized in that: The first clock generator is configured to receive the corresponding first temporary control word as input and output a corresponding first sub-signal; The logic gate mixer is configured to mix each of the first sub-signals and output a first signal; The second clock generator is configured to receive the second temporary control word as input and output a corresponding second signal; The D flip-flop is configured to receive the first signal and the second signal as inputs, use the second signal as a sampling clock signal, sample the first signal, and obtain an initial random number; The post-processing circuit is configured to perform post-processing on the initial random number to obtain a random number and output it.

15. A second node, characterized in that: The method comprises a processor, a memory and a computer program stored in the memory and executable on the processor, wherein the computer program implements the steps of the random number generation method as claimed in claim 6 when executed by the processor.

Citation Information

Patent Citations

  • Phase noise based integratable true random number generation method and device

    CN105138307A

  • True random number generator based on completely-connected networks

    CN106293615A