Data access control system and method thereof
Granted 8 Jun 2004 · 1 office action
Current assignee: Royal Bank of Canada · originally Industrial Technology Research Institute
Law firm: Law firm · Log in to unlock
Attorney: Attorney · Log in to unlock
Inventors: Yen-Sha Chen, Min-Jea Gau, Jen-Chieh Cheng, Wen-Hsin Yang +1 · Examiner: Emmanuel L. Moise · AU 2136 · TC 2100
Life of the application
10 dated eventsAbstract
A data access control system and a method thereof is disclosed. First, the master key is divided into n subkeys to be kept by n holders, by way of secret sharing. The master key reconstruction procedure utilizes the shared secret with the subkey holders to obtain m subkeys (1<m<n) and then reconstructs the master key, using the (m,n)-threshold scheme. The system then uses the master key to access the data. Thus, m subkeys are required to reconstruct the master key in order to amend or read the data in the system.
Description
5 parts›This application incorporates by reference Taiwanese application Serial…
This application incorporates by reference Taiwanese application Serial No. 88108252, Filed 1999 May 20.
›BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention relates in general to a data access control system and a method thereof, and more particularly to a system and method, using secret sharing and dynamic password, in order to increase the security of data access while data log-in is performed.
2. Description of the Related Art
Due to the rapid developing of computer system and the technique of storage media, the data of a variety of systems, such as on-line transaction, mail delivery, database and electrically stored information communications are accessed electrically. The popularity of digital access brings convenience to the users, however, also causes some side effects. Counterfeit and manipulation become even harder to detect and trace while the data is electrically stored. Taking the bank transaction system as an example, the credit card paying system is stored with card numbers of cardholders, details of each transaction and personal references. The privacy of cardholders could not be well protected if the bank is lack of secure control system. Therefore, it is highly demanded to encrypt important information so that administrators are able to control the information better and the related staff can be kept away from the temptation of counterfeit.
As mentioned above, data have to be encrypted to insure the security. However, freely accessing all the encrypted data by a single data administrator would be insecure. Moreover, we have to ensure that the data should not be accessed by the previous data administrator and as less as possible of the encrypted data needed to be amended. This kind of problem is frequently met. Taking a server of electrical transaction as an example, its database contains the personal references of cardholders.
For a control procedure for data management system of a bank, the data is not allowed to be handled, read or erase by a single staff, particularly, when the data includes any of the following features.
(1) The recorded data represents the status of the procedure.
(2) The system contains data not desired to be read.
Referring to FIG. 1, which shows a block diagram of a conventional data access control system. As a system user 11 is accessing the data on-line or locally, via the internet 13 , the inputted data will be sent to the data access control system 15 as cipher text or directly. In the data access control system 15 , the data is encrypted, if desired, by servers or the storage processing unit 151 . The data is then sent to and stored in the data storage unit 153 . The data access of the system is controlled by a key K of a storage processing unit 151 to prevent the data being read by unauthorized persons. Since the key K is usually controlled a single data administrator, the following problems may occur:
(1) data administrators could interrupt the normal procedure to counterfeit and manipulate the data in the data storage unit;
(2) the selection of a key holder is hard since the key is completely controlled by the key holder;
(3) all the cipher text has to be changed because of the transference or resign of the key holder, which is time-consuming.
A system of secret sharing is disclosed in U.S. Pat. No. 5,764,767 by Beimel et al. Referring to FIG. 2A, Secret S, such as a code of a safe, is divided n Secret Shares s i (i=1˜n) by a dealer 21 , using a method provided by Shamir and Blakley. The n Secret Shares s i of the Secret S along with n Key K i are delivered to n Participants P i , respectively. Referring to FIG. 2B, the Key K i is composed of n−1 Key Constituents k i j (j=1˜n, i≠j). The Key Constituents k i j is for each Participant P i to communicate with other Participants P j (jε[1,n], j≠i). Referring to FIG. 2C, the Secret S reconstructing procedure includes the following steps. First, m (1<m<n) Participants P j ′(jε[1,m]) are selected from n Participants P i , and at least one Participant P k ′(kε[1,n]) is denoted from m Participants P j ′ as a Recipient to execute. Then, the Recipient P k ′ receives and decrypts the encrypted Secret Shares s j ′ from the other m−1 Participants P J ′(j≠k), and utilizes the m−1 Secret Shares s j ′ and his own Secret Share s k ′(m Secret Share s i in total) to reconstruct the Secret S. In addition, the Recipient P k ′ receives m−1 Secret Share s j ′ and completes decrypting by using his own n−1 Key Constituent k i j .
According to the above-mentioned secret reconstruction system, secret data has to be divided into a number of secret shares to be shared by the respective participants. To reconstruct the secret data, each participant needs to obtain the authority of all the other participants. For example, each K i includes n−1Key Constituent k j i to communicate with other Participants P i . As a result, if any one of the Participants is changed, the process of secret reconstruction becomes redundant. In addition, little error of any one participant may cause unrecoverable mistake, since the system proposed by Beimel et al. is not designed particularly for the managing member to obtain the secret data. Moreover, since the recipient utilizes the key constituent to obtain the encrypted secret shares from other participants and the encryption method does not change along with each load in, it is easy to be recognized while the procedure is repeated and the system is restarted.
›SUMMARY OF THE INVENTION
It is therefore an object of the invention to provide a system and method for the control of data access. A key is first divided into a number of subkeys for different key holders. The accessing right of the data administrator is therefore distributed and the above-mentioned problems of the conventional system and method are overcome. By packaging the subkey to form a dynamic code while data log-in is performed, the system security is then increased.
It is another object of the invention to provide a method for data access control, wherein a master key is used to access data. The method includes the following steps. The master key is first divided into n subkeys and the subkeys are kept separately, wherein a (m,n)-threshold scheme is used, and m is a natural number larger than 1 but smaller than n. A master key is then used for the reconstruction procedure to obtain m subkeys in order to reconstruct the master key. Next, the master key is used to encrypt and decrypt said data while said data is desired to be accessed.
It is therefore a further object of the invention to provide a method for secure data access control, wherein a master key is used to access data. The method includes the following steps. First, the master key is divided into a number of subkeys that are kept separately. Next, a master key reconstruction procedure and dynamic data log-in are utilized to obtain a number of subkeys in order to reconstruct the master key. Then, the master key is used to encrypt and decrypt said data while said data is desired to be accessed.
It is therefore another object of the invention of the invention to provide a data access control system for accessing data. The system includes the following elements: a data storage unit for saving the data; a master key for encrypting and decrypting the data; a subkey control module for dividing the master key into n subkeys, using a (m,n)-threshold scheme, wherein m is a natural number larger than 1 but smaller than n; a master key reconstruction module which receives m subkeys to reconstruct the master key; and a data control module ,which uses the master key reconstructed by the master key reconstruction module to control accessing the data form the data storage unit.
Thus, anyone, including the data administrator, has to obtain m subkeys to reconstruct the master key in order to amend and read the data. Hence, the data are effectively protected. Even if any subkey holder is transferred or resigned, simply by changing one subkey, the master key can be reconstructed. Therefore, the influence of changing the code to the original encrypted data is highly reduced.
Moreover, while the system is accessing the data, the master key reconstruction program also can use the shared secret with the subkey holder to obtain m subkeys (1<m<n), by applying the function of dynamic data log-in.
›BRIEF DESCRIPTION OF THE DRAWINGS
Other objects, features, and advantages of the invention will become apparent from the following detailed description of the preferred but non-limiting embodiments. The description is made with reference to the accompanying drawings in which:
FIG. 1 (Prior Art) is a block diagram showing a conventional data access control system;
FIGS. 2 A˜ 2 C (Prior Art) are schematic illustrations showing a conventional system of secret sharing and the reconstruction thereof.
FIG. 3 is a block diagram illustrating the dynamic data log-in function according to a preferred embodiment of the invention; and
FIG. 4 is a block diagram illustrating the data access control system according to a preferred embodiment of the invention.
›DESCRIPTION OF THE PREFERRED EMBODIMENT
It is supposed that a master key is used for controlling data access in a data managing system. In accordance with a method of secret sharing, the master key is divided into a number of subkeys for different subkey holders. At least two subkeys are required for the system to reconstruct the master key and accomplish the decrypting step. The number of subkey n is determined by the system.
Different arbitrary numbers c i , i=1, . . . , n are given to each subkey holders respectively, wherein i=1, . . . , n, c i ε[1, . . . , p−1]. According to the (m,n)-threshold scheme proposed by Shamir and Blakley, a polynomial f(x) with (m−1) orders is obtained, wherein 1<m<n, f(x) distributes in finite field GF(p), and p is a prime. The system hides the master key in the constant f( 0 ). Thus, n subkeys f(c i ) can be obtained, wherein i=1, . . . , n. The (m−1) order polynomial f(x) can be represented as what is followed. f ( x ) = ∑ i = 0 m - 1 b i x i mod p
wherein mod is a congruence operator, p is also a congruence divisor, and, b 0 , b i ≠ 0 , b i ε[1, . . . , p−1].
The system distributes n subkeys f(c i ) to n different subkey holders, respectively. To obtain the master keys, at least f(c i ) and c i of m subkey holders are required. c i can be kept by the i th subkey holder or saved in the system directly. Then, f(x) can be obtained by applying LaGrange Interpolation Theorem and therefore the master key f( 0 ) can be produced. As shown in equation (1), the value of m is the threshold value of the (m,n)-threshold scheme, which can be predetermined by the system. f ( x ) = ∑ i ∈ ( 1 , n ) f ( c i ) ∏ j ≠ i ( x - c j ) ∏ j ≠ i ( c i - c j ) Equation ( 1 )
Moreover, a number of operations such as reusing the system are required for the above-mentioned data storage system. Thus, the function of dynamic data log-in of the system can further improve the security of the data in the system.
Referring to FIG. 3, the t th code, a polynomial based on g(x) and k t , [g(x)] k t is sent from the master key reconstruction module 31 (or so-called master key reconstruction procedure). The polynomial g(x) is the element of GF(p), and also a pre-shared secret of the subkey holder 33 and the master key reconstruction module 31 . The number k t is a random number, generated by the master key reconstruction module 31 when the data storage system is requested to be accessed, for example, changing along with the number of data log-in t, which enhances the security of the system. Next, the subkey holder i 33 makes use of the initializing module 331 (or a initializing procedure), such as a smart card, to package the subkey i, f(c i ) (called an initial subkey), into a polynomial H(x,i,t) (called a packaged subkey) with an order larger than m, as shown in Equation (2) and Equation (3), wherein the packaged subkey is based on a sum of a first polynomial and a second polynomial; the first polynomial is based on the respective initial subkey f(c i ) kept by the subkey holder and the second polynomial is based on the code [g(x)] k t , the random number k t , and a shared secret d.
H ( x,i,t )=[ f ( x,i )] p t +[g ( x )] k t (t+d) , Equation (2)
wherein f ( x , i ) = f ( c i ) × ∏ j ≠ i ( x - c j ) ∏ j ≠ i ( c i - c j ) Equation ( 3 )
The polynomial H(x,i,t), or the packaged subkey, is then sent back to the master key reconstruction module 31 . The number d is yielded, given [g(x)] k t (t+d) , as a discrete logarithm problem, so d is a large enough number. In addition, d is a shared secret between the subkey holder 33 and the master key reconstruction module 31 . Moreover, the counting of the initializing module 331 and the master key reconstruction module 31 is synchronous. That is to say, the recorded t values of the two are the same. By applying Equation (4), given the code [g(x)] k t and the order t, the function f(x)=Σ iε[l,n] f(x,i) is obtained by deleting the g(x) part. Then, the master key f( 0 ) is also obtained. The Equation (4) satisfies the features of Finite Field.
Σ H ( x,i,t )=Σ[ f ( x,i )] p t +[g ( x )] k t (t+d) =[Σf ( x,i )] p t +m[g ( x )] k t (t+d) Equation(4)
Referring to FIG. 4, as the system is initialized, the master key reconstruction module 451 (or program) receives m packaged subkeys from the m subkey holders 453 via the initializing module 4531 (or program), using the above-mentioned dynamic data log-in. f(x) is then obtained by applying Equation (1). Next, the master key K, which is the value of f( 0 ), is obtained and output to the data control module 455 (or program). After receiving the master key K, the data control module 455 is able to control the access of the encrypted data in the data storage unit 457 . Moreover, the master key K is reconstructed only when the system is reused. While a system user 41 is accessing the data, the inputted data is transferred, encrypted or directly, to the data access control system 45 via internet 43 .
Thus, the invention includes the following characters:
(1) To obtain the master key requires the agreements of a number of subkey holders. Therefore, the possibility of counterfeiting and manipulating the data in the system by the managing member is prevented. The system therefore has the advantage of easy control and administration and high security.
(2) While the subkey holder is resigned or transferred, only the subkey but not the master key has to be changed. Therefore, the influence of changing the code is significantly reduced.
(3) Obtaining the subkey by dynamic data log-in can prevent the code from being recognized even the system is applied frequently, which further enhances the security of the system.
While the invention has been described by way of example and in terms of the preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiment. To the contrary, it is intended to cover various modifications and similar arrangements and procedures, and the scope of the appended claims therefore should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements and procedures.
Claims as granted
23 claimsLog in to read the claims of this application.
Log in to unlockClassifications
6 codes- H04L9/08
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