CN112306455A - Computer number generation method, generator and computer readable storage medium of electronic device - Google Patents

Computer number generation method, generator and computer readable storage medium of electronic device Download PDF

Info

Publication number
CN112306455A
CN112306455A CN202010225334.4A CN202010225334A CN112306455A CN 112306455 A CN112306455 A CN 112306455A CN 202010225334 A CN202010225334 A CN 202010225334A CN 112306455 A CN112306455 A CN 112306455A
Authority
CN
China
Prior art keywords
entropy
entropy source
data
queue
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010225334.4A
Other languages
Chinese (zh)
Other versions
CN112306455B (en
Inventor
李登峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhou Rongan Digital Technology Beijing Co ltd
Original Assignee
Shenzhou Rongan Technology Beijing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhou Rongan Technology Beijing Co ltd filed Critical Shenzhou Rongan Technology Beijing Co ltd
Priority to CN202010225334.4A priority Critical patent/CN112306455B/en
Publication of CN112306455A publication Critical patent/CN112306455A/en
Application granted granted Critical
Publication of CN112306455B publication Critical patent/CN112306455B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Abstract

The embodiment of the application provides a random number generation method and a random number generator, and relates to the technical field of computer application. The method comprises the following steps: collecting entropy source sample data from a plurality of entropy sources; processing the entropy source sample data, and storing the processing result into entropy source queues respectively corresponding to the entropy sources; extracting data from each entropy source queue and carrying out corresponding processing; and outputting the random number to the processed data according to a preset output mode. The method and the device solve the problems of unstable entropy source, large memory consumption and low security of the application end of the device.

Description

Computer number generation method, generator and computer readable storage medium of electronic device
Technical Field
The present application relates to the field of computer application technologies, and in particular, to a method for generating a machine number, a generator, and an electronic device computer-readable storage medium.
Background
Nowadays, with the rapid development of mobile internet, daily digital application devices such as mobile phones and computers become more and more important in life. In the process of using the devices, people not only browse web pages and search data, but also carry out daily activities such as shopping and transaction payment, and meanwhile, the device sides also store a large amount of user privacy information. Therefore, people have increasingly strong knowledge of the security of personal information.
User personal information is usually stored at the application device side by means of an encryption algorithm and the like, so many applications require a random number generator with high security, such as a password generator, games, folder encryption, a security protocol and the like.
At present, the design difficulty of the random number generator at the application equipment end is the instability of an entropy source, the difficulty in balancing safety and performance and the like. The mobile phone devices have great differentiation, and different mobile phone configurations, different systems and different permission grants bring difficulties to the design of the random number generator at the mobile phone end.
Disclosure of Invention
The application provides a method for generating a machine number, a generator and a computer-readable storage medium of an electronic device, which can solve the problems of unstable entropy source, large memory consumption and low security of an application end of the device.
In a first aspect, a method for random number generation is provided, the method including:
collecting entropy source sample data from a plurality of entropy sources;
processing the entropy source sample data, and storing the processing result into entropy source queues respectively corresponding to the entropy sources;
extracting data from each entropy source queue and carrying out corresponding processing;
and outputting the random number to the processed data according to a preset output mode.
In a second aspect, a random number generator is provided, where the processing module, the extracting module, and the output module included in the random number generator are used to implement operations corresponding to the random number generating method in the first aspect. The random number generator includes:
the processing module is used for collecting entropy source sample data from a plurality of entropy sources; processing the entropy source sample data, and storing the processing result into entropy source queues respectively corresponding to the entropy sources;
the extraction module is used for extracting data from each entropy source queue and carrying out corresponding processing;
and the output module is used for outputting the random number to the processed data according to a preset output mode.
In a third aspect, an electronic device is provided, which includes an entropy source processor, a mixture extractor, and an outputter, where the entropy source processor, the mixture extractor, and the outputter may implement the random number generation method shown in the first aspect of the present application.
In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored, which when executed, implements the random number generation method shown in the first aspect of the present application.
The beneficial effect that technical scheme that this application provided brought is:
in the scheme, data come from multiple types of entropy sources randomly, so that the sources of the entropy sources are enriched, and the problems of single operation environment and unstable entropy sources caused by single entropy source in the prior art are solved; meanwhile, the entropy source sample data is correspondingly processed, so that the corresponding storage amount of the entropy source data can be reduced, and the processed entropy source data is subsequently operated; instead of directly acquiring data from the entropy source without any processing and directly performing subsequent operations in the prior art, the method and the device can reduce memory consumption after processing the entropy source sample data. In addition, the sampling data, the processing data and the final random number output are all parts capable of running independently in the scheme, so that the method is suitable for a multi-thread or multi-core computing environment, and the running capability can be improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings used in the description of the embodiments of the present application will be briefly described below.
Fig. 1 is a schematic flowchart of a random number generation method according to an embodiment of the present disclosure;
fig. 2 is a schematic diagram illustrating a flow of extracting data in a random number generation method according to an embodiment of the present application;
fig. 3 is a schematic flowchart of a specific method for obtaining entropy source samples according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a random number generator according to an embodiment of the present application;
fig. 5 is a schematic flow chart of a data processing method according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are exemplary only for the purpose of explaining the present application and are not to be construed as limiting the present invention.
As used herein, the singular forms "a", "an", "the" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements may also be present. Further, "connected" or "coupled" as used herein may include wirelessly connected or wirelessly coupled. As used herein, the term "and/or" includes all or any element and all combinations of one or more of the associated listed items.
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
The terms referred to in this application will first be introduced and explained:
the hardware device data refers to sample data randomly selected by the hardware device but not limited to the following devices: for example, acceleration sensor sample data, gyroscope sample data, image sensor sample data, microphone sample data, WIFI intensity sample data, and so forth.
The system random event data refers to data derived from random selection of system events, but is not limited to the following data: system interrupt time data, disk access time data, etc.
The user behavior data refers to data generated by user behavior and randomly selected from but not limited to the following data: APP starting time, process number, click event time, PIN code input time and the like.
The main processing tool of the processing module is an open randomness extractor.
The main processing tool of the extraction module is a secure hash function, whose output length is set to N.
The main processing tool of the output module is a safe block encryption algorithm, and the key length and the block length are both set to be M.
The entropy source sample data refers to data obtained by sampling from an entropy source.
The entropy source block data refers to data obtained by processing entropy source samples.
The entropy source queue is that a queue container is arranged for each type of entropy source and is used for storing entropy source block data, and the entropy source block data which is firstly put into the entropy source queue is firstly called by the extraction module.
The entropy count indicates the amount of entropy contained in the entropy source block data.
The minimum entropy rate refers to the ratio of the minimum entropy value of an entropy source to the amount of bits required to represent the sample.
The design difficulty of the existing random number generator at the application device end is instability caused by the unity of entropy sources, and the problems of difficulty in balancing safety and performance and the like. The difference of the application devices also causes various difficulties in generating the random number, for example, different manufacturers of mobile phones make different brands of mobile phones have larger differences, and different mobile phone configurations, different systems and different permission grants all bring difficulties to the design of the random number generator at the mobile phone end.
The following description is given by way of specific examples:
in an embodiment of the application, the provided invention embodiment has the general steps that data collected from a multi-type entropy source is output after being processed by a processing module, an extraction module and an output module, the type of the entropy source is enriched in the process, and different processing methods are selected according to sample data of different entropy sources; meanwhile, the data storage capacity of the corresponding entropy source is reduced, and the problem of large memory consumption caused by low minimum entropy rate is solved; the specific steps are shown in figure 1,
step S11, collecting entropy source sample data from a plurality of entropy sources;
in particular, a wide variety of entropy sources may be collected from the application devices, such as entropy sources in cell phones including, but not limited to, hardware device data, system random event data, and user behavior data.
Step S12, processing the entropy source sample data, and storing the processing result into the entropy source queue corresponding to each entropy source, the specific mode of the step is as follows:
if the minimum entropy rate of the entropy source sample data is greater than or equal to the first preset value, executing step S13; otherwise, go to step S14; wherein the first predetermined value is a fraction of 0 to 1, e.g. the first predetermined value is
Figure BDA0002427452720000051
Step S13, storing the entropy source sample data as first entropy source sample data into an entropy source queue corresponding to an entropy source, and assigning the entropy value count of the first entropy source block data corresponding to the first entropy source sample data as the minimum entropy value of the entropy source;
step S14, if the minimum entropy rate of the entropy source sample data is smaller than a first preset value, processing according to a first preset processing mode; the method specifically comprises the following steps:
taking the entropy source sample data as second entropy source sample data;
processing the second entropy source sample data by adopting a BIW/Zuckerman randomness extractor to obtain second entropy source block data;
if the entropy value count of the second entropy source block data is equal to a second preset value, starting to process a new entropy source block data; the second predetermined value is K, K being 32; otherwise, executing step S15;
step S15, when the entropy count of the second entropy source block data is not equal to the second predetermined value, directly storing the second entropy source sample data in the entropy source queue, and waiting to be called by the extraction module, or continuing to process after more entropy source sample data exist;
step S16, extracting data from each entropy source queue and carrying out corresponding processing; the specific process of the step is as follows:
in the step, data are extracted from each entropy source queue through an extraction module and are correspondingly processed, the operation function used by the extraction module in the process is a safe hash function, a mixed queue and an accumulated entropy value queue are arranged at the input end of the extraction module, and an output buffer queue is arranged at the output end of the extraction module. As shown in fig. 2, a specific process of extracting data in a random number generation method is as follows:
step S21, after traversing each entropy source queue, the extraction module extracts corresponding data from each entropy source queue according to a first preset extraction mode, and stores the extracted data into a mixed queue;
the first preset extraction mode in this step is: when all entropy source queues are traversed in sequence, extracting a specified number of entropy source block data from all entropy source queues; the sum of the entropy values of a specified number of entropy source block data is not less than a third predetermined value, for example:
when the extraction module sequentially traverses and accesses each entropy source queue, the front w of the jth entropy source queue is accessed each timejPutting the data of the entropy source blocks into a mixed queue, and deleting corresponding entropy value counts; wherein wjFor specifying the number of entropy source block data;
wjso that the entropy source is queued up wjThe sum of the entropy values of the entropy source block data is greater than or equal to a third preset value
Figure BDA0002427452720000061
Is the smallest integer of (a). Wherein R is the sum of the total entropy values of all entropy source queues, and the specific algorithm is as follows:
let the total entropy of each entropy source queue be r1,r2,r3,.. then R ═ R1+r2+r3
Extracting a data segment meeting the requirement from the mixed queue according to a second preset extraction mode; the specific process comprises the steps of S22 and S23;
step S22, after completing one traversal access, pushing the value of the last position of the mixed queue into the cumulative entropy value queue;
the cumulative entropy queue is used for storing a position mark, the position mark is used for indicating a position where the entropy value of the entropy source block data accumulation in the mixed queue reaches a multiple of a fourth preset value N, the first value of the cumulative entropy queue stores the position where the entropy value of the entropy source block data accumulation in the mixed queue value is N, the second value stores the position where the entropy value of the entropy source block data accumulation in the mixed queue is 2N, and the like.
Step S23, the extraction module puts the data segment meeting the requirement into an output buffer queue;
the data segment is the data corresponding to the position indication from the top data in the mixed queue to the cumulative entropy value queue.
The extraction module uses a safe hash function to operate the section of data and then puts the section of data into an output cache queue. And finally, popping up the first value of the cumulative entropy value queue, and subtracting the first value from other values.
And step S17, outputting the random number through the output module according to the preset output mode by the data processed by the extraction module.
The output module has three kinds of preset output modes, mainly includes:
the first is a direct output mode, after receiving a random number calling request, an output module waits for an output queue to reach the random number of the request, and then directly takes out corresponding amount of data from an output buffer queue.
The second one is a pseudo-random number output mode, the output module takes out two M-long data segments from the output buffer queue, where the length of M may be 128 bits or 256 bits, and specifically, the M-long data segments may be set according to actual needs and respectively serve as a key and an initial vector of a secure block cipher function, and the block cipher function outputs a required number of random numbers in a counter mode.
The third mode is a mixed output mode, and the output process of the mode reserves 2M data at the bottom of an output buffer queue for an output module to be respectively used as a key and an initial vector of a block cipher function. The rest data in the buffer queue is directly output, the block cipher function is used for running and outputting in a counter mode, and the process is repeated after the block cipher function outputs a group of random numbers until the random number required by the request is reached.
Because the mobile phone becomes essential terminal equipment for people's life in real life at present, for convenience of understanding, the embodiment of the application uses the mobile phone as a specific example to introduce a mode of acquiring entropy source sample data by an acceleration sensor and a gyroscope in hardware equipment of the mobile phone. In an optional embodiment of the present application, a flowchart of a specific method for obtaining entropy source samples is shown in fig. 3, and specific application processing on various types of entropy source samples in a mobile phone is as follows:
step S31, collecting sample data;
for any entropy source, assuming that the entropy value of each entropy source sample data is delta, collecting 3iI is such that
Figure BDA0002427452720000081
The smallest positive integer, where K is a constant value, may be a positive integer of 23 or 64.
Step 32, converting each sample data into an integer of 32 bits according to a rule; in this step, an acceleration sensor and a gyroscope are taken as examples for introduction:
each axis of the acceleration sensor or gyroscope sample is converted into one K-32 bit integer data, and then each acceleration sensor or gyroscope sample can be converted into 3K-32 bit integers;
and for other hardware devices, each sample is directly converted into a K-32 bit integer.
Step S33, processing the converted sample data to obtain entropy source sample data; the method comprises the following specific steps:
and (4) forming a set by every three adjacent integers of the integer sequence obtained in the step (S32), multiplying the first two numbers in each set by adding a third number, and finally obtaining an integer by modulo P. P is prime and is greater than K ^32 bits, such as 2^32+2^3+ 1; let three numbers in the set be { a, b, c }, and the calculation process be (a × b + c) modp. Through the process, a new integer sequence with the number of one third of the original sequence is obtained;
and step S34, iterating and repeating the above process to finally obtain an integer, and putting the last 32 bits of the integer as entropy source sample data into a corresponding entropy source queue.
According to the technical scheme provided by the embodiment of the application, the entropy source sample data is correspondingly processed, so that the corresponding entropy source data storage capacity can be reduced, and the memory consumption is reduced.
As shown in fig. 4, the present application provides a random number generator, which includes a processing module 41, an extracting module 42 and an output module 43, wherein,
a processing module 41, configured to collect entropy source sample data from multiple entropy sources; processing the entropy source sample data, and storing the processing result into entropy source queues respectively corresponding to the entropy sources;
an extraction module 42, configured to extract data from each entropy source queue and perform corresponding processing;
and the output module 43 is configured to output the processed data as a random number according to a preset output mode.
In the random number generator provided by the embodiment of the application, data collected by the processing module 41 come from multiple types of entropy sources randomly, so that the entropy source sources are enriched, and the problems of single operation environment and unstable entropy source caused by single entropy source in the prior art are solved; meanwhile, the entropy source sample data is correspondingly processed, so that the corresponding storage amount of the entropy source data can be reduced, and the processed entropy source data is subsequently operated; instead of directly acquiring data from the entropy source without any processing and directly performing subsequent operations in the prior art, the method and the device can reduce memory consumption after processing the entropy source sample data. In addition, in the present embodiment, the processing module 41 for sampling data, the extracting module 42 for processing data, and the final output module 43 for outputting random numbers are all independently operable components, so that the method is suitable for a multi-thread or multi-core computing environment, and the operation capability can be improved.
Further, in the process of processing the entropy source sample data and storing the processing result into the entropy source queues respectively corresponding to the entropy sources, the processing module 41 is further configured to:
and if the minimum entropy rate of any entropy source sample data is not less than a first preset value, storing any entropy source sample data serving as first entropy source sample data into an entropy source queue corresponding to any entropy source, and assigning the entropy value count of the first entropy source block data corresponding to the first entropy source sample data to be the minimum entropy value of any entropy source.
Further, in the process of processing the entropy source sample data and storing the processing result into the entropy source queues respectively corresponding to the entropy sources, the processing module 41 is further configured to:
if the minimum entropy rate of any entropy source sample data is smaller than a first preset value, taking any entropy source sample data as second entropy source sample data, and processing the second entropy source sample data by adopting a BIW/Zuckerman randomness extractor to obtain second entropy source block data;
and when the entropy value count of the second entropy source block data is smaller than a second preset value, storing the second entropy source block data in any entropy source queue.
Further, as shown in fig. 5, during the process of extracting data from each entropy source queue and performing corresponding processing, the extracting module 42 further includes a mixing queue 51, an accumulated entropy value queue 52, and an output buffer queue 53, wherein,
after traversing each entropy source queue, the extraction module 42 extracts corresponding data from each entropy source queue according to a first preset extraction mode, and stores the extracted data into the mixed queue 51;
extracting a data segment meeting the requirement from the mixed queue 51 according to a second preset extraction mode;
further, the output buffer queue 53 outputs the random number to the data segment according to a preset output mode.
Further, in the process of extracting corresponding data from each entropy source queue according to the first preset extraction manner, the extraction module 42 is further configured to:
when all entropy source queues are traversed in sequence, extracting a specified number of entropy source block data from all entropy source queues; the sum of the entropy values of the prescribed number of entropy source block data is not less than a third predetermined value.
Further, in the process of extracting the data segment meeting the requirement from the hybrid queue 51 according to the second preset extraction manner, the extraction module 42 is further configured to:
extracting a data segment corresponding to the top data-to-position identifier in the mixed queue according to the position identifier in the cumulative entropy queue 52; and the position mark is used for indicating the position of a group of data in the mixing queue, wherein the accumulated entropy value of the entropy source block data reaches a fourth preset value.
In the random number generator provided by the application, the processing module 41 samples data, the processing module 42 processes data, and the final output module 43 outputs random numbers, which are independently operable parts, are suitable for a multi-thread or multi-core computing environment and have operability.
As shown in fig. 6, an embodiment of the present application provides an electronic device, including: an entropy source processor 61, an extraction module 62 and an output device 63; the entropy source processor 61 is connected with the extraction module 62, and the extraction module 62 is connected with the output device 63;
the entropy source processor 61 may be a hardware device data processor, a system random event data processor, a user behavior data processor, or any combination thereof, and may implement processing on the entropy source sample data.
The electronic device includes, but is not limited to, any terminal device such as a mobile phone, a tablet computer, a computer, and the like.
The embodiment of the present application provides a computer-readable storage medium, on which a computer program is stored, and when the computer program runs on a device such as a computer or a mobile phone, the computer or the mobile phone may be enabled to execute the corresponding content in the foregoing method embodiments. Compared with the prior art, the method for generating the random number has the advantages that the stability, the safety and the parallel effect are greatly improved.
In the embodiment provided by the application, data come from multiple types of entropy sources randomly, so that the entropy source sources are enriched, and the problems of single running environment and unstable entropy source caused by single entropy source in the prior art are solved; meanwhile, the entropy source sample data is correspondingly processed, so that the corresponding storage amount of the entropy source data can be reduced, and the processed entropy source data is subsequently operated; instead of directly acquiring data from the entropy source without any processing and directly performing subsequent operations in the prior art, the method and the device can reduce memory consumption after processing the entropy source sample data. In addition, the sampling data, the processing data and the final random number output are all parts capable of running independently in the scheme, so that the method is suitable for a multi-thread or multi-core computing environment, and the running capability can be improved.
It should be understood that, although the steps in the flowcharts of the figures are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and may be performed in other orders unless explicitly stated herein. Moreover, at least a portion of the steps in the flow chart of the figure may include multiple sub-steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, which are not necessarily performed in sequence, but may be performed alternately or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
The foregoing is only a partial embodiment of the present invention, and it should be noted that, for those skilled in the art, various modifications and decorations can be made without departing from the principle of the present invention, and these modifications and decorations should also be regarded as the protection scope of the present invention.

Claims (9)

1. A method of random number generation, the method comprising:
collecting entropy source sample data from a plurality of entropy sources;
processing the entropy source sample data, and storing the processing result into entropy source queues respectively corresponding to the entropy sources;
extracting data from each entropy source queue and carrying out corresponding processing;
and outputting random number to the processed data according to a preset output mode.
2. The method of claim 1, wherein the processing the entropy source sample data and storing the processing results in entropy source queues respectively corresponding to the entropy sources comprises:
and if the minimum entropy rate of any entropy source sample data is not less than a first preset value, storing the any entropy source sample data serving as first entropy source sample data into an entropy source queue corresponding to any entropy source, and assigning the entropy value count of the first entropy source block data corresponding to the first entropy source sample data to be the minimum entropy value of any entropy source.
3. The method of claim 1, wherein the processing the entropy source sample data and storing the processing results in entropy source queues respectively corresponding to the entropy sources comprises:
if the minimum entropy rate of any entropy source sample data is smaller than a first preset value, taking any entropy source sample data as second entropy source sample data, and processing the second entropy source sample data by adopting a BIW/Zuckerman randomness extractor to obtain second entropy source block data;
and when the entropy value count of the second entropy source block data is not equal to a second preset value, storing the second entropy source block data in any entropy source queue.
4. The method of claim 1, wherein said extracting data from said respective entropy source queues and processing accordingly comprises:
traversing each entropy source queue, extracting corresponding data from each entropy source queue according to a first preset extraction mode, and storing the extracted data into a mixed queue;
extracting a data segment meeting the requirement from the mixed queue according to a second preset extraction mode;
the outputting the processed data according to a preset output mode comprises:
and outputting the random number to the data segment according to a preset output mode.
5. The method as claimed in claim 4, wherein said extracting the corresponding data from each entropy source queue according to the first preset extraction manner comprises:
when all entropy source queues are traversed in sequence, extracting a specified number of entropy source block data from all entropy source queues; the sum of the entropy values of the prescribed number of entropy source block data is not less than a third predetermined value.
6. The method as claimed in claim 4, wherein said extracting the data segment meeting the requirement from the hybrid queue according to the second preset extraction manner comprises:
extracting a data segment corresponding to the top data-to-position identifier in the mixed queue; and the position mark is used for indicating the position of a group of data in the mixing queue, wherein the accumulated entropy value of the entropy source block data reaches a fourth preset value.
7. A random number generator, comprising:
the processing module is used for collecting entropy source sample data from a plurality of entropy sources; processing the entropy source sample data, and storing the processing result into entropy source queues respectively corresponding to the entropy sources;
the extraction module is used for extracting data from each entropy source queue and carrying out corresponding processing;
and the output module is used for outputting the random number to the processed data according to a preset output mode.
8. An electronic device comprising an entropy source processor, a mix extractor, and an outputter, wherein the entropy source processor, the mix extractor, and the outputter are capable of implementing the random number generation method of any one of claims 1-6.
9. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a computer program which, when executed, implements the random number generation method of any one of claims 1 to 6.
CN202010225334.4A 2020-03-26 2020-03-26 Random number generation method, generator, and computer readable storage medium for electronic device Active CN112306455B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010225334.4A CN112306455B (en) 2020-03-26 2020-03-26 Random number generation method, generator, and computer readable storage medium for electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010225334.4A CN112306455B (en) 2020-03-26 2020-03-26 Random number generation method, generator, and computer readable storage medium for electronic device

Publications (2)

Publication Number Publication Date
CN112306455A true CN112306455A (en) 2021-02-02
CN112306455B CN112306455B (en) 2024-02-06

Family

ID=74336747

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010225334.4A Active CN112306455B (en) 2020-03-26 2020-03-26 Random number generation method, generator, and computer readable storage medium for electronic device

Country Status (1)

Country Link
CN (1) CN112306455B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007096598A2 (en) * 2006-02-22 2007-08-30 Qinetiq Limited Apparatus and method for generating random numbers
US20080256151A1 (en) * 2007-03-23 2008-10-16 Microsoft Corporation Weighted entropy pool service
US20120179735A1 (en) * 2011-01-06 2012-07-12 Microsoft Corporation Scalable random number generation
US20130304781A1 (en) * 2012-05-08 2013-11-14 Caringo, Inc. Generation of seed value for pseudo random number generator
CN104298485A (en) * 2014-10-17 2015-01-21 飞天诚信科技股份有限公司 Method for generating random numbers satisfying security strength requirements
CN105027073A (en) * 2013-03-12 2015-11-04 高通股份有限公司 Interrupt driven hardware random number generator
CN105765600A (en) * 2013-12-23 2016-07-13 英特尔公司 Techniques and architecture for anonymizing user data
US20160342394A1 (en) * 2015-05-18 2016-11-24 Red Hat Israel, Ltd. Multi-factor entropy sourcing for random number generators
CN108491184A (en) * 2018-03-16 2018-09-04 数安时代科技股份有限公司 Entropy source acquisition method, computer equipment and the storage medium of randomizer
CN108874366A (en) * 2018-09-06 2018-11-23 西南大学 A kind of high-speed physical randomizer based on chaotic laser light entropy source
CN110462582A (en) * 2017-03-30 2019-11-15 硅存储技术股份有限公司 The system and method for generating random number based on Nonvolatile memory unit array

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007096598A2 (en) * 2006-02-22 2007-08-30 Qinetiq Limited Apparatus and method for generating random numbers
US20080256151A1 (en) * 2007-03-23 2008-10-16 Microsoft Corporation Weighted entropy pool service
US20120179735A1 (en) * 2011-01-06 2012-07-12 Microsoft Corporation Scalable random number generation
US20130304781A1 (en) * 2012-05-08 2013-11-14 Caringo, Inc. Generation of seed value for pseudo random number generator
CN105027073A (en) * 2013-03-12 2015-11-04 高通股份有限公司 Interrupt driven hardware random number generator
CN105765600A (en) * 2013-12-23 2016-07-13 英特尔公司 Techniques and architecture for anonymizing user data
CN104298485A (en) * 2014-10-17 2015-01-21 飞天诚信科技股份有限公司 Method for generating random numbers satisfying security strength requirements
US20160342394A1 (en) * 2015-05-18 2016-11-24 Red Hat Israel, Ltd. Multi-factor entropy sourcing for random number generators
CN110462582A (en) * 2017-03-30 2019-11-15 硅存储技术股份有限公司 The system and method for generating random number based on Nonvolatile memory unit array
CN108491184A (en) * 2018-03-16 2018-09-04 数安时代科技股份有限公司 Entropy source acquisition method, computer equipment and the storage medium of randomizer
CN108874366A (en) * 2018-09-06 2018-11-23 西南大学 A kind of high-speed physical randomizer based on chaotic laser light entropy source

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张强: "基于孪生光束的量子随机数发生器", 《中国优秀硕士学位论文全文数据库》, pages 005 - 24 *

Also Published As

Publication number Publication date
CN112306455B (en) 2024-02-06

Similar Documents

Publication Publication Date Title
CN107145791B (en) K-means clustering method and system with privacy protection function
JP6521403B2 (en) Efficient data compression and analysis as a service
EP3012754B1 (en) Searchable symmetric encryption processing system
CN103731258B (en) Generate the method and apparatus of key
WO2017166856A1 (en) Method, device and equipment for file encryption
CN109347620A (en) Sample alignment schemes, system and computer readable storage medium
Yeoh et al. A parallelizable chaos-based true random number generator based on mobile device cameras for the android platform
CN111191253B (en) Data encryption combination method
CN112069479B (en) Face data calling method and device based on block chain
CN112306455B (en) Random number generation method, generator, and computer readable storage medium for electronic device
CN104767622B (en) Encryption method and device
CN111368317A (en) Computer data encryption system and method
Cheptsov HPC in big data age: An evaluation report for java-based data-intensive applications implemented with Hadoop and OpenMPI
CN112468521B (en) Data processing method and device based on privacy protection and server
CN115563160A (en) Data processing method, data processing device, computer equipment and computer readable storage medium
CN110659490A (en) Malicious sample processing method and device, electronic equipment and storage medium
Razaque et al. Integration of CPU and GPU to accelerate RSA modular exponentiation operation
CN110958106B (en) Parallel hybrid chaotic system under precision limited mode
Abboud et al. SDA Plus: Improving the Performance of the System Determine Algorithm (SDA) of the Switching Between AES-128 and AES-256 (MOLAZ Method)
CN117077179B (en) Searchable encryption method, device, equipment and medium based on differential privacy ordering
CN113535664B (en) Database data synchronization method based on data page preloading
CN111783124B (en) Data processing method, device and server based on privacy protection
US11212672B2 (en) Wireless body area network, key generation method and key distribution method in the wireless body area network, and related device
CN116861455B (en) Event data processing method, system, electronic device and storage medium
CN117688594B (en) Method, device, equipment and storage medium for database encryption confusion

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20220113

Address after: Unit 515, floor 5, building 1, No. a 12, Zhongguancun South Street, Haidian District, Beijing 100086

Applicant after: Shenzhou Rongan digital technology (Beijing) Co.,Ltd.

Address before: Room 408, Huantai building, 12 Zhongguancun South Street, Haidian District, Beijing 100086

Applicant before: SHENZHOU RONGAN TECHNOLOGY (BEIJING) CO.,LTD.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant