Patent classifications
G06F2207/58
Instruction to provide true random numbers
An instruction configured to perform a plurality of functions is executed. Based on a function code associated with the instruction having a selected value, one or more inputs of the instruction are checked to determine which one or more functions of the plurality of functions are to be performed. Based on a first input of the one or more inputs having a first value, a function of providing raw entropy is performed, in which the providing of raw entropy includes storing a number of raw random numbers. Further, based on a second input of the one or more inputs having a second value, a function of providing conditioned entropy is provided, in which the providing of conditioned entropy includes storing a number of conditioned random numbers.
SYSTEMS AND METHODS FOR ANALYZING STABILITY USING METAL RESISTANCE VARIATIONS
This disclosure describes techniques for analyzing statistical quality of bitstrings produced by a physical unclonable function (PUF). The PUF leverages resistance variations in the power grid wires of an integrated circuit. Temperature and voltage stability of the bitstrings are analyzed. The disclosure also describes converting a voltage drop into a digital code, wherein the conversion is resilient to simple and differential side-channel attacks.
REPRODUCIBLE STOCHASTIC ROUNDING FOR OUT OF ORDER PROCESSORS
A method for generating a random number for use in a stochastic rounding operation is provided. The method includes executing an instruction that causes at least two operands to produce an intermediate result and incrementing a state of a random number generator. The method d further includes causing the random number generator to generate a random number in accordance with the state and producing a final result by utilizing the random number to determine a rounding of the intermediate result.
Method of printing an object having a surface of varying height
A printing system and method of printing an object having a surface of varying height, by a printer configured to print a number of pass images on top of each other in a number of passes, including: deriving from an object image a number of pass images to be printed on top of each other, including: establishing pass pixels of the pass images for which pass pixels a pass pixel height is defined, where a sum of the defined heights of a sequence of pass pixels that corresponds to a respective pixel of the object image equals the height of that pixel of the object image; and printing the pass images on top of each other. An amount of printed material that is printed per printed pass pixel is varied in accordance with the defined pass pixel heights. The pass pixels heights are selected, based on random data, from a respective set of at least two positive pass pixel heights.
Reproducible stochastic rounding for out of order processors
A method for generating a random number for use in a stochastic rounding operation is provided. The method includes executing an instruction that causes at least two operands to produce an intermediate result and incrementing a state of a random number generator. The method d further includes causing the random number generator to generate a random number in accordance with the state and producing a final result by utilizing the random number to determine a rounding of the intermediate result.
Hardware non-deterministic random byte generator
A random byte generator comprising a noise source configured to generate a noise signal, a digitizer with a resolution of no less than two bits and configured to digitize the noise signal from the noise source, and a processor configured to apply pre-defined rules for selecting bits captured by said digitizer and to generate random bit strings by combining the selected bits.
Computer implemented system and method and computer program product for testing a software component by simulating an interface to a computing component using randomized network packet information
A system, method, and computer program product for testing a software component by simulating an interface to a computing component using pseudo-randomized responses to service requests. For example, the method may include receiving a service request from a software component to be tested. Responsive to receiving the service request from the software component, the method accesses a data store of service requests and responses thereto. The method determines that a matching service request is stored in the accessed data, a matching service request being a service request that matches the service request received from the software component. The method identifies a plurality of associated responses that are stored in the accessed data store, each which is stored in association with the matching service request. The method pseudo-randomly selects one of the plurality of associated responses, and sends the pseudo-randomly selected associated response to the software component for processing.
Systems and methods for analyzing stability using metal resistance variations
This disclosure describes techniques for analyzing statistical quality of bitstrings produced by a physical unclonable function (PUF). The PUF leverages resistance variations in the power grid wires of an integrated circuit. Temperature and voltage stability of the bitstrings are analyzed. The disclosure also describes converting a voltage drop into a digital code, wherein the conversion is resilient to simple and differential side-channel attacks.
Extracting entropy from mobile devices to generate random numbers
Embodiments include method, systems and computer program products for extracting entropy from mobile devices to generate random numbers. In some embodiments, first vibration data may be received from a first device. Second vibration data may be received from a second device. A first piece of entropy data may be generated using the first vibration data and a second piece of entropy data may be generated using the second vibration data. The first piece of entropy data and the second piece of entropy data may be aggregated. The first piece of entropy data and the second piece of entropy data may be stored in an entropy pool.
Universal and automated monte carlo method code for uncertainty propagation in metrology databases
A method of providing transformed target points for integrating a component into an assembly includes collecting a set of component target points, collecting a set of assembly target points, identifying target points common to the set of component target points and the set of assembly target points; performing a specified number of Monte Carlo transformations of selected ones of the common target points to yield a set of transformed target points and vectors and an associated uncertainty value for each transformed target point and vector, and using certain ones of the transformed target points for integrating the component into the assembly based on the associated uncertainty value for each of the transformed target points.