IP Library Granted Patent US 9,081,635
Granted Patent B2
US 9,081,635 · App. 14/017,928 · Granted Jul 14, 2015

Provision to an application of a random number not generated by an operating system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,081,635
App. No.
14/017,928
Granted
Jul 14, 2015
Kind
B2
Abstract

A data processing system includes data storage that stores an operating system and an application that performs a security operation and a processor communicatively coupled with the data storage and a random number generator separate from the operating system. The processor executes the operating system and the application. The processor receives a random number from the random number generator and provides the received random number to the application for use in the security operation.

Claims (23)

1. A data processing system comprising a processor, a data storage that stores an operating system and an application that performs a security operation, and a first random number generator separate from the operating system; wherein the processor is configured to carry out the steps of:

receiving a first random number from the first random number generator;

receiving a second random number from a second random number generator, wherein the second random number generator is separate from the operating system; and

executing the application to perform the security operation according to the first random number of the first random number generator and the second random number of the second random number generator.

2. The data processing system of claim 1 , wherein the processor is further configured to carry out the steps of: selecting, based on a time-varying parameter, one of the first random number generator and the second random number generator to supply a third random number for use by the application.

3. The data processing system of claim 2 , wherein the time-varying parameter is jiffies of the processor.

4. The data processing system of claim 2 , wherein selecting, based on the time-varying parameter, one of the first random number generator and the second random number generator to supply the third random number for use by the application includes: utilizing different weights for each of the first random number generator and the second random number generator.

5. The data processing system of claim 1 , wherein the first random number generator is a hardware random number generator.

6. The data processing system of claim 1 , wherein the data processing system is an embedded system.

7. The data processing system of claim 1 , wherein the processor is further configured to carry out the steps of providing the first random number to the application; wherein the processor refrains from performing software whitening on the first random number prior to providing the first random number to the application.

8. A method comprising:

by first program instructions executed by a processor,

receiving a first random number from a first random number generator;

receiving a second random number from a second random number generator; and

executing an application included in an operating system to perform a security operation according to the first random number of the first random number generator and the second random number of the second random number generator; wherein both the first random number generator and the second random number generator are separate from the operating system.

9. The method of claims 8 further comprising:

selecting, based on a time-varying parameter, one of the first random number generator and the second random number generator to supply a third random number for use by the application.

10. The method of claim 9 , wherein the time-varying parameter is jiffies of the processor.

11. The method of claim 9 , wherein selecting, based on the time-varying parameter, one of the first random number generator and the second random number generator to supply the third random number for use by the application includes: utilizing different weights for each of the first random number generator and the second random number generator.

12. The method of claim 8 , wherein:

the first random number generator is a hardware random number generator.

13. The method of claim 8 , further comprising:

providing the first random number to the application; wherein the processor refrains from performing software whitening on the received random number prior to providing the first random number to the application.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2019
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 050300/0878 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNMENT DOCUMENT CONTAINING TYPO ERRORS PREVIOUSLY RECORDED AT REEL: 037101 FRAME: 0969. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Dec 28, 2015
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 037689/0190 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2015
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 037101/0969 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0353 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2013
From: TSENG, GISELE WEI-TZU; MA, ROBERT CHUNGWEN; HSU, TERESA YUN-TING; KUO, CHESTER KU CHANG
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 031136/0757 →