System and device for data encryption and recovery
Granted 31 Dec 2013 · 2 office actions
Assignee: NVidia
Law firm: Law firm · Log in to unlock
Attorney: Attorney · Log in to unlock
Inventors: Jinsong Ji, Hao Tang, William Herz · Examiner: Yogesh Paliwal · AU 2435 · TC 2400
Life of the application
11 dated eventsAbstract
The present invention provides a flexible encryption device, comprising N encryption units connected in series for encrypting N-bit input data, each one of the N encryption units further comprising an exclusive-OR gate for receiving an input data; and a flip-flop connected coupled to the exclusive-OR gate. Furthermore, the present invention also provides the data transferring system that can be easily modified without the needs of manual intervention.
Description
5 parts›CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims Priority of Chinese patent application number 200810184073.5, filed Dec. 15, 2008, which is herein incorporated by reference.
›BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to data encryption and recovery; more specifically, the present invention relates to data encryption and recovery with multiple input signature register.
2. Background of the Invention
Data encryption is required in many situations, such as data transfer and data storage, to ensure the security of the information. Encryption can be very complicated; and, as a result, the encryption devices are getting larger, more time consuming and very inflexible. The encryption parameters may need to be changed to facilitate different conditions. And it is very difficult to modify such a complicated encryption device just to alter several parameters. Furthermore, having a complicated encryption device also means that the recovery device will also be large, slow and inflexible.
FIG. 1 illustrates a prior art data transfer system. The sender transfers programmed data to the receiver, which has a check device. The check device in the receiver confirms whether the programmed data is correct. If the programmed data is confirmed to be correct, the data will then be processed. If the programmed data is not correct, the receiver will halt. Although the programmed data cannot be read, Bus 1 can be uncovered and a simulate device is used to simulate the same data through another bus, Bus 2 . Therefore, the simulation action exposes the programmed data and risks data integrity.
It is required to have an encryption device that is easy to implement, flexible and reliable, and also a data transferring system that can be easily modified without the needs of manual intervention.
›SUMMARY OF THE INVENTION
An embodiment of the present invention provides an encryption device to solve the problem of the conventional designs and provides a flexible encryption device. The embodiment of the present invention provides an encryption device, comprising N encryption units connected in series for encrypting N-bit input data, each one of the N encryption units further comprising an exclusive-OR gate for receiving an input data; and a flip-flop connected coupled to the exclusive-OR gate.
To solve the problem of the prior technology, another embodiment of the present invention provides a recovery device, comprising N recovery units for recovering N-bit input data, each one of the N recovery units further comprising a flip-flop for receiving an input data; and an exclusive-OR gate coupled to the flip-flop.
To solve the problem of the prior technology, another embodiment of the present invention also provides an encryption system, comprising a configuration file comprising encryption information; and an encryption device selected by the configuration file, comprising N recovery units for recovering N-bit input data, each one of the N recovery units further comprising a flip-flop for receiving an input data; and an exclusive-OR gate coupled to the flip-flop.
To solve the problem of the prior technology, another embodiment of the present invention also provides a recovery system, comprising a configuration file comprising recovery information; and a recovery device, comprising N recovery units for recovering N-bit input data, each one of the N recovery units further comprising a flip-flop for receiving an input data; and an exclusive-OR gate coupled to the flip-flop.
›BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a prior art data transfer system.
FIG. 2 illustrates an encryption device according to an embodiment of the invention.
FIG. 3 illustrates a recovery device according to an embodiment of the invention.
FIG. 4 illustrates a data transfer system according to another embodiment of the invention.
FIG. 5 illustrates a data transfer system with multiple receivers according to another embodiment of the invention.
›DETAILED DESCRIPTION OF THE INVENTION
FIG. 2 illustrates an encryption device according to an embodiment of the present invention. The encryption device comprises four flip-flips FF 0 -FF 3 , wherein each one of the flip-flips is coupled to an exclusive- or gate. The encryption device receives input data D 0 -D 3 in parallel with the exclusive- or gates. Input data D 0 -D 3 are inputted into the encryption device simultaneously at every clock edge; and flip-flips FF 0 -FF 3 are updated also at every clock edge. When input data D 0 -D 3 are periodical, the output of flip-flops FF 0 -FF 3 is also a periodic pseudo-random series.
The example is shown in Table 1 below.
As shown in Table 1, the output series of the encryption device are seen as random series, therefore, they can be transferred or stored as encrypted data.
FIG. 2 illustrates the encryption device for 4-bit data for illustration purpose only. Persons skilled in the art should know that the encryption data size can be easily increased by modifying the encryption device. The present invention provides a flexible encryption structure that can be cascaded to facilitate different requirements. For example, two of the encryption device as shown in FIG. 2 can be cascaded to form an encryption device for 8-bit data.
Please refer to FIG. 3 , which illustrates a recovery device according to another embodiment of the present invention. The recovery device is constructed according to the encryption algorithm. And according to Table 1 above, Equations 1-4 shown below are obtained.
FF0 n =D 0 n-1 ⊕FF3 n-1 Equation 1
FF1 n =D 1 n-1 ⊕FF0 n-1 ⊕FF3 n-1 Equation 2
FF2 n =D 2 n-1 ⊕FF1 n-1 Equation 3
FF3 n =D 3 n-1 ⊕FF2 n-1 Equation 4
By rearranging Equations 1-4, Equations 5-8 are yielded.
D 0 n-1 =FF0 n ⊕FF3 n-1 Equation 5
D 1 n-1 =FF1 n ⊕FF0 n-1 ⊕FF3 n-1 Equation 6
D 2 n-1 =FF2 n ⊕FF1 n-1 Equation 7
D 3 n-1 =FF3 n ⊕FF2 n-1 Equation 8
Therefore, the recovery device in FIG. 3 is formed according to Equations 5-8. The recovery device comprises four flip-flips FF 0 n -FF 3 n , wherein each one of the flip-flips is coupled to an exclusive- or gate. The encryption device receives input data FF 0 n-1 -FF 3 n-1 in parallel with the exclusive- or gates. Input data FF 0 n-1 -FF 3 n-1 are inputted into the encryption device simultaneously at every clock edge; and flip-flips FF 0 n -FF 3 n are updated also at every clock edge. Table 2 illustrates the result of the recovery device by inputting the output series of Table 1.
As shown in Table 2, it is known that the input data series are recovered by the recovery device of FIG. 3 . FIG. 3 illustrates the recovery device for 4-bit data for illustration purpose only. Persons skilled in the art should know that the encryption data size can be easily increased by modifying the recovery device. The present invention provides a flexible recovery structure that can be cascaded to facilitate different requirements. For example, two of the recovery device as shown in FIG. 3 can be cascaded to form a recovery device for 8-bit data.
FIG. 4 shows a data transfer system according to another embodiment of the invention. The data transfer system solves the problem of prior art as described. The data transfer system comprises a sender and a receiver; wherein the sender comprises a configuration file and an encryption device; and the receiver comprises a recovery device and a configuration file. The configuration file in the sender is the same as the configuration file in the receiver; and the configuration file are stored with information, such as data size. On the basis of the information stored in the configuration file, an appropriate encryption device and a recovery device are selected. Therefore, the data transfer system of the present invention provides an automatic selection of the encryption device and a recovery device, which eliminates manual errors. Furthermore, the data being transferred is encrypted, so that even if the bus is uncovered, the data is safely protected by the encryption. Therefore, the data integrity is ensured. The configuration file also provides easy modification when the condition changes.
The transfer system illustrated in FIG. 4 is also modified according to another embodiment of the invention. Referring to FIG. 5 , which shows a transfer system with multiple receivers. The transfer system as illustrated comprises a sender and three receivers. The encryption device in the sender transfers different data to respective receiver at different time. The data is encrypted with respect to different configuration files and the encrypted data is decrypted with corresponding configuration file at the receiver. For example, a first set of data is encrypted according to the information in configuration file 1 , a second set of data is encrypted according to the information in configuration file 2 , and a third set of data is encrypted according to the information in configuration file 3 . The encrypted data is then transferred via the same bus to the receivers. Receiver 1 receives the encrypted data and decrypts it with configuration file 1 to obtain the first set of data. The encrypted second and third sets of data are also sent to receiver 1 ; however, configuration file 1 provides decryption of the first set of data. Therefore, the second and third sets of data are discarded by receiver 1 . Similarly, receiver 2 obtains the second set of data and discards irrelevant first and third sets of data. With the transfer system, the received information is also protected from being used by other receivers, which is essential for the mobile systems. Therefore, the transfer system as illustrated in FIG. 5 provides not only data transfer safety, but also prevents data from being read by other receivers when it is sent from the same sender.
Although the embodiments disclosed above are discussed in the scope of providing solutions in response to a need for encryption device, one of ordinary skill in the art can easily adopt the same circuitry for the providing of other type of purposes. Variations, modifications, and other implementations of what is described herein will occur to those of ordinary skill in the art without departing from the spirit and scope of the present invention as claimed. Accordingly, the present invention is to be defined not by the preceding illustrative description but instead by the spirit and scope of the following claims.
›Tables in the description — 2
| Input | Output | |||||||
| Timer | D0 | D1 | D2 | D3 | FF0 | FF1 | FF2 | FF3 |
| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
| 2 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
| 3 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
| 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
| 5 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
| 6 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 |
| 7 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
| 8 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 |
| 9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
| 10 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 11 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 |
| 12 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
| 13 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
| 14 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
| 15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 16 | . . . | . . . | . . . | . . . | 1 | 0 | 0 | 0 |
| 17 | . . . | . . . | . . . | . . . |
| Input | Output | |||||||
| Timer | D0 | D1 | D2 | D3 | FF0 | FF1 | FF2 | FF3 |
| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
| 2 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
| 3 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
| 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
| 5 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
| 6 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 |
| 7 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
| 8 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 |
| 9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
| 10 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 11 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 |
| 12 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
| 13 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
| 14 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
| 15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 16 | . . . | . . . | . . . | . . . | 1 | 0 | 0 | 0 |
| 17 | . . . | . . . | . . . | . . . |
Claims as granted
20 claimsLog in to read the claims of this application.
Log in to unlockClassifications
4 codes- G06F21/00
Claim changes
SoonSee which claims were amended, added or cancelled during examination, with every added and removed word marked.
The published claims of this application are not paired with the granted ones in what we hold.
File wrapper
See the full prosecution history — every USPTO and applicant action on this file, in order.
Log in to unlockDocuments
Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.
Log in to unlockChain of title
See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.
Log in to unlock