IP Library Granted Patent US 7,818,572
Granted Patent B2
US 7,818,572 · App. 10/902,683 · Granted Oct 19, 2010

Security system and method

Assignee: Dominic Kotab
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 7,818,572
App. No.
10/902,683
Granted
Oct 19, 2010
Kind
B2
Abstract

A first embodiment provides a process and system for simple, secure exchange of random numbers between two devices by combining a random number and a secret code (e.g., password) to generate a first challenge code, extracting the random number using the password at the second device, combining the first random number with a second random number, and returning the combination to the first device, which extracts the second random number from the second challenge code using its first random number. A CRC can be added to authenticate the sender. Another embodiment provides a system and method for generating a seedless pseudo-random number. The Yet another embodiment provides a system and method for generating data encryption coding with variable clocking.

Claims (73)

1. A method for exchanging random numbers, comprising:

generating a first random number;

generating a first challenge code using the first random number and a secret code, wherein generating the first challenge code uses an exclusive OR function;

transmitting the first challenge code from a first device to a second device, the first and second devices knowing the secret code;

extracting the first random number from the first challenge code at the second device using the secret code;

generating a second random number at the second device;

generating a second challenge code using the extracted first random number and the second random number, wherein generating the second challenge code uses an exclusive OR function;

transmitting the second challenge code from the second device to the first device; and

extracting the second random number from the second challenge code.

2. A method as recited in claim 1 , wherein at least one of the random numbers is seedless.

3. A method as recited in claim 1 , wherein the first random number is of higher quality than the second random number.

4. A method as recited in claim 3 , wherein first random number of higher quality protects the lower quality random number in the second challenge.

5. A method as recited in claim 3 , wherein the first device is a more complex device than the second device, wherein the first device generates the first random number of higher quality.

6. A method as recited in claim 1 , wherein the first device is a reader, the second device is a radio frequency (RF) tag.

7. A method as recited in claim 1 , further comprising transmitting a cyclic redundancy check from the first device to the second device.

8. A method as recited in claim 7 , wherein the cyclic redundancy check is used to verify the first random number.

9. A method as recited in claim 7 , wherein the cyclic redundancy check in the first challenge code is exclusively ORed against the secret code.

10. A method as recited in claim 1 , further comprising transmitting a cyclic redundancy check from the second device to the first device.

11. A method as recited in claim 10 , wherein the cyclic redundancy check is used to verify at least the second random number.

12. A method as recited in claim 10 , wherein the cyclic redundancy check in the second challenge code is exclusively ORed against the first random number.

13. A system for exchanging random numbers, comprising:

a circuit for generating a first random number;

a circuit for generating a first challenge code using the first random number and a secret code, wherein an exclusive OR function is used for generating the first challenge code;

a circuit for transmitting the first challenge code from a first device to a second device using a wireless link, the first and second devices knowing the secret code;

a circuit for extracting the first random number from the first challenge code at the second device using the secret code;

a circuit for generating a second random number at the second device;

a circuit for generating a second challenge code using the extracted first random number and the second random number, wherein an exclusive OR function is used for generating the second challenge code;

a circuit for transmitting the second challenge code from the second device to the first device; and

a circuit for extracting the second random number from the second challenge code.

14. A method for exchanging random numbers, comprising:

sharing a secret code between first and second devices in a secure environment;

generating a first random number;

generating a first challenge code by exclusive ORing (XORing) the first random number and the secret code;

transmitting the first challenge code from a first device to a second device in a non-secure environment, the first and second devices knowing the secret code;

extracting the first random number from the first challenge code at the second device using the secret code and inverse XORing;

generating a second random number at the second device, wherein the first random number is of higher quality than the second random number;

generating a second challenge code by XORing the extracted first random number and the second random number;

transmitting the second challenge code from the second device to the local device in a non-secure environment; and

extracting the second random number from the second challenge code at the first device by inverse XORing.

15. A method for authenticating a data source using a cyclical redundancy check on encrypted data, comprising:

receiving a challenge containing an encrypted random number from a remote device;

receiving a cyclical redundancy check purporting to correspond to the encrypted random number;

decrypting the random number;

checking the random number against the cyclical redundancy check;

establishing a communications link with the remote device if the random number matches the cyclical redundancy check;

not establishing a communications link with the remote device if the random number does not match the cyclical redundancy check.

16. A method as recited in claim 15 , wherein the cyclic redundancy check is part of the challenge.

17. A method as recited in claim 15 , wherein the cyclic redundancy check is exclusively ORed against a secret code.

18. A method as recited in claim 15 , wherein the cyclic redundancy check is combined with the random number and the combination is exclusively ORed against a secret code.

19. A method as recited in claim 15 , wherein the cyclic redundancy check is exclusively ORed against another random number.

20. A method as recited in claim 15 , wherein the cyclic redundancy check is combined with the random number and the combination is exclusively ORed against another random number.

21. A method as recited in claim 15 , wherein the method is performed by an RFID tag.

22. A method as recited in claim 15 , wherein the method is performed by an RFID reader.

23. A system as recited in claim 13 , wherein the first random number is of higher quality than the second random number.

24. A system as recited in claim 23 , wherein first random number of higher quality protects the lower quality random number in the second challenge.

25. A system as recited in claim 23 , wherein the first device is a more complex device than the second device, wherein the first device generates the first random number of higher quality.

26. A system as recited in claim 13 , wherein the first device is a reader, the second device is a radio frequency (RF) tag.

27. A system as recited in claim 13 , further comprising logic for transmitting a cyclic redundancy check from the first device to the second device.

28. A system as recited in claim 27 , wherein the cyclic redundancy check is used to verify the first random number.

29. A system as recited in claim 27 , wherein the cyclic redundancy check in the first challenge code is exclusively ORed against the secret code.

30. A system as recited in claim 13 , further comprising logic for transmitting a cyclic redundancy check from the second device to the first device.

31. A system as recited in claim 30 , wherein the cyclic redundancy check is used to verify at least the second random number.

32. A system as recited in claim 30 , wherein the cyclic redundancy check in the second challenge code is exclusively ORed against the first random number.

33. A method as recited in claim 14 , wherein the first random number is of higher quality than the second random number.

34. A method as recited in claim 33 , wherein first random number of higher quality protects the lower quality random number in the second challenge.

35. A method as recited in claim 33 , wherein the first device is a more complex device than the second device, wherein the first device generates the first random number of higher quality.

36. A method as recited in claim 14 , wherein the first device is a reader, the second device is a radio frequency (RF) tag.

37. A method as recited in claim 14 , further comprising logic for transmitting a cyclic redundancy check from the first device to the second device.

38. A method as recited in claim 37 , wherein the cyclic redundancy check is used to verify the first random number.

39. A method as recited in claim 37 , wherein the cyclic redundancy check in the first challenge code is exclusively ORed against the secret code.

40. A method as recited in claim 14 , further comprising logic for transmitting a cyclic redundancy check from the second device to the first device.

41. A method as recited in claim 40 , wherein the cyclic redundancy check is used to verify at least the second random number.

42. A method as recited in claim 40 , wherein the cyclic redundancy check in the second challenge code is exclusively ORed against the first random number.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2024
From: NETMOMENTUM LLC
To: NETMOMENTUM LLC
Reel/Frame 069327/0465 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2009
From: INTELLEFLEX CORPORATION
To: KOTAB, DOMINIC
Reel/Frame 022785/0327 →
SECURITY AGREEMENT Recorded May 15, 2008
From: INTELLEFLEX CORPORATION
To: VENTURE LENDING & LEASING V, INC., AS AGENT
Reel/Frame 020960/0279 →
SECURITY INTEREST Recorded May 9, 2008
From: INTELLEFLEX CORPORATION
To: VENTURE LENDING & LEASING IV, INC. AS AGENT
Reel/Frame 020955/0628 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2004
From: STEWART, ROGER GREEN; PALEY, DANIEL NOAH
To: INTELLEFLEX CORPORATION
Reel/Frame 015644/0813 →
Continuity (2)
Provisional Application 6052814800 · Dec 9, 2003
Related Publication 20050123133A1 · Jun 9, 2005