IP Library Granted Patent US 8,903,085
Granted Patent B2
US 8,903,085 · App. 13/723,660 · Granted Dec 2, 2014

Adding randomness internally to a wireless mobile communication device

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 8,903,085
App. No.
13/723,660
Granted
Dec 2, 2014
Kind
B2
Abstract

An electronic device is provided with an integral transducer used to update a random data pool without connection to an external source of new random data. In one embodiment, there is provided a method for providing random data on an electronic device, the method comprising: storing random data in a random data pool in a memory; sensing motion of the electronic device using a transducer integrally carried as part of the electronic device, wherein the transducer is configured to generate an output in response to sensed motion; generating new random data in accordance with the output of a transducer when sensed motion exceeds a threshold; and storing the new random data in the random data pool in the memory.

Claims (41)

1. An electronic device, comprising:

a processor;

a memory, connected to the processor, in which a random data pool is stored; and

a transducer connected to the processor and configured to sense motion of the electronic device and generate an output in response to sensed motion;

wherein the processor is configured to generate new random data in accordance with the output of the transducer when sensed motion exceeds a threshold, and to store the new random data in the random data pool in the memory.

2. The electronic device of claim 1 , wherein the threshold is a randomness threshold, wherein the processor is configured to determine whether the output of the transducer is randomly varying by an amount which exceeds the randomness threshold, and wherein the new random data is generated only when the output of the transducer is randomly varying by an amount which exceeds the randomness threshold.

3. The electronic device of claim 1 , wherein the processor is configured to determine whether the output of the transducer differs from a previous output of the transducer by an amount which exceeds the threshold, and wherein the new random data is generated only when the output of the transducer differs from a previous output of the transducer by an amount which exceeds the threshold.

4. The electronic device of claim 1 , wherein the output of the transducer varies in accordance with the motion of the electronic device.

5. The electronic device of claim 1 , wherein the processor is further configured to:

determine whether the random number pool is out of date;

sense motion of the electronic device when the random number pool is out of date; and

generate the new random data in response to the output of the transducer only when the sensed motion exceeds the threshold.

6. The electronic device of claim 5 , further comprising:

a display connected to the processor;

wherein the processor is further configured to:

display on the display, when the random number pool is out of date, a first prompt to update the random number pool on the display;

display on the display, in response to an election to update the random number pool, a second prompt for predetermined user action causing random physical movement of the electronic device for a duration; and

generate the new random data, in accordance with the output of the transducer, at regular intervals during the duration.

7. The electronic device of claim 5 , wherein the processor is further configured to determine at the regular intervals whether the random number pool is out of date.

8. The electronic device of claim 5 , wherein the processor is further configured to determine at start-up of the electronic device whether the random number pool is out of date.

9. The electronic device of claim 1 , wherein the transducer is one of an accelerometer, a gyroscopic sensor, a tilt sensor, a movement sensor, an optical sensor, an optical scanner, and a relative-position tracking sensor.

10. The electronic device of claim 1 , wherein the processor is further configured to generate an encryption key from a random number from the random number pool.

11. The electronic device of claim 1 , wherein the electronic device is a wireless communication device and the encryption key is used in data communication processes.

12. A method for providing random data on an electronic device, the method comprising:

storing random data in a random data pool in a memory of the electronic device;

sensing motion of the electronic device using a transducer of the electronic device, wherein the transducer is configured to generate an output in response to sensed motion;

generating new random data in accordance with the output of the transducer when sensed motion exceeds a threshold; and

storing the new random data in the random data pool in the memory.

13. The method of claim 12 , wherein the threshold is a randomness threshold, wherein the method further comprises determining whether the output of the transducer is randomly varying by an amount which exceeds the randomness threshold, and wherein generating new random data comprises generating the new random data only when the output of the transducer is randomly varying by an amount which exceeds the randomness threshold.

14. The method of claim 12 , further comprising determining whether the output of the transducer differs from a previous output of the transducer by an amount which exceeds the threshold, and wherein generating new random data comprises generating the new random data only when the output of the transducer differs from a previous output of the transducer by an amount which exceeds the threshold.

15. The method of claim 14 , further comprising:

displaying on a display of the electronic device, when the random number pool is out of date, a first prompt to update the random number pool;

displaying on the display of the electronic device, in response to an election to update the random number pool, a second prompt for predetermined user action causing random physical movement of the electronic device for a duration; and

generating the new random data in accordance with the output of the transducer at regular intervals during the duration.

16. The method of claim 12 , further comprising generating an encryption key from a random number from the random number pool.

17. The method of claim 16 , further comprising encrypting and decrypting data in data communication processes using the encryption key.

18. A method for providing random data on an electronic device, the method comprising:

storing random data in a random data pool in a memory of the electronic device;

sensing motion of the electronic device using a transducer of the electronic device, wherein the transducer is configured to generate an output in response to sensed motion;

continuously generating new random data in accordance with the output of a transducer when sensed motion exceeds a threshold; and

storing the new random data in the random data pool in the memory.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Mar 14, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 032453/0733 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2013
From: ORR, KEVIN H.; ROSE, SCOTT D.; LITTLE, HERBERT A.
To: RESEARCH IN MOTION LIMITED
Reel/Frame 030520/0167 →