Source: http://www.google.com/patents/US6487659?dq=6031454
Timestamp: 2014-10-21 21:53:14
Document Index: 346664283

Matched Legal Cases: ['art 202', 'art 202', 'art 208', 'art 202', 'art 202', 'art 102', 'art 102', 'art 102', 'art 102', 'art 202', 'art 208', 'art 202', 'art 202', 'art 202', 'art 102', 'art 202', 'art 202', 'art 202', 'art 202', 'art 202', 'art 202', 'art 3', 'art 202', 'art 202', 'art 208', 'art 202', 'art 202', 'art 202', 'art 202', 'art 202', 'art 208', 'art 201', 'art 202', 'art 208', 'art 202', 'art 202', 'art 102', 'art 202', 'art 208', 'art 202', 'art 202', 'art 208', 'art 201', 'art 202', 'art 207', 'art 208', 'art 207', 'art 208', 'art 207', 'art 208', 'art 207']

Patent US6487659 - Device and method for conditional authentication - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsIn carrying out various authentication with use of a proof support information, it is intended to impose a limitation on utilization and make high-speed processing possible. Proof data generation control information is provided to a proof data generation device from a proof data generation control information...http://www.google.com/patents/US6487659?utm_source=gb-gplus-sharePatent US6487659 - Device and method for conditional authenticationAdvanced Patent SearchPublication numberUS6487659 B1Publication typeGrantApplication numberUS 09/246,131Publication dateNov 26, 2002Filing dateFeb 8, 1999Priority dateFeb 12, 1998Fee statusPaidPublication number09246131, 246131, US 6487659 B1, US 6487659B1, US-B1-6487659, US6487659 B1, US6487659B1InventorsKenichiro Kigo, Kohji SuzukiOriginal AssigneeFuji Xerox Co., Ltd.Export CitationBiBTeX, EndNote, RefManPatent Citations (5), Referenced by (27), Classifications (24), Legal Events (4) External Links: USPTO, USPTO Assignment, EspacenetDevice and method for conditional authenticationUS 6487659 B1Abstract In carrying out various authentication with use of a proof support information, it is intended to impose a limitation on utilization and make high-speed processing possible. Proof data generation control information is provided to a proof data generation device from a proof data generation control information generating device or from a proof data verification device. At the time of authentication, authentication data is provided from the proof data verification device to the proof data generation device, in which a proof data generation unit generates proof data on the basis of the authentication data, user unique identifying information, proof data generation control information, and proof support information (access ticket). However, in the event utilization does not meet conditions included in the proof data generation control information, generation of the proof data is rejected. The proof data is sent to the proof data verification device and is verified thereby. As authentication characteristic information there is used a decryption key in an asymmetric cryptosysytem which utilizes a discrete logarithm problem on a finite group G.
SUMMARY OF THE INVENTION The present invention has been accomplished in view of the above-mentioned problems. According to what is intended by the present invention, at the time of authenticating whether or not a user has the authority to utilize service, what is corresponding to the conventional ticket is made electronic, and in determining whether or not the electronic information thus obtained is legitimate, it is possible to set flexible conditions such as the valid term and a limitation on the number of times of utilization, or a combination thereof, while ensuring safety; further, in the event the conditions should have been altered, authentication is not effected affirmatively.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an entire configuration of the present invention;
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS More concrete configurations will be described hereunder by way of embodiments of the invention. In each of the embodiments, the relation of the configuration of proof data verification device 100, that of proof data generation device 200 and authenticating operation to the drawings is as shown in Table 1 below.
Embodiment 1 (FIGS. 3, 4 and 8)
Y=XP (1�) Next, for identifying a user, user unique identifying information, e, which is different for each user, and proof data generation control information which defines the conditions for authenticating user's access right is assumed to be L. An access ticket, t, is generated in accordance with the following expression (1-2):
t=X−F(p, e, a, b, L) (1-2) X is designated an access ticket private key and Y is designated an access ticket public key.
F(x, y)=h(x|y) (1-3) F(x, y, z, w)=h(x|y|z|w) (1-4) where �x|y� represents a bit connection of x and y.
u=zP (1-5) In the following description, encrypted data K will be designated verification data and data R which a proof data generation device 200 generates for proof will be designated proof data. Further, data which the proof data generation device 200 receives from the proof data verification device 100 for the purpose of generating proof data, and data which the proof data verification device 100 uses for the verification of a decrypted value, will be designated authentication data.
C=M+zY (1-6) For making the data K corresponding to point M there may be adopted, for example, such a method as described on page 231 of �Cipher�Zero Knowledge Proof�Number Theory� (prepared under the supervision of Information Processing Society of Japan, edited by Okamoto and Ota), published by KYORITSU SHUPPAN CO. LTD.
u′=u (1-7) 3. The proof data generation part 202 checks to see whether utilization-term time in the proof data generation control information has passed the time indicated on the clock 209 in the proof data generation device 200. If the answer is affirmative, an error code is sent back to the proof data verification device 100.
S=tu′ (1-8) 5. Then, the proof data generation part 202 acquires the unique identifying information, e, of the user stored in the fourth memory part 208 (user unique identifying information memory part) and executes calculation of the following expression (1-9):
F(p, e, a, b, L) (1-9) 6. Then, using data generated by an exponent generation part, the proof data generation part 202 executes calculation of the following expression (1-10) to obtain S′:
S′=F(p, e, a, b, L)u′ (1-10) 7. Then, the proof data generation part 202 obtains S′ and S from the first and second computation units and executes calculation of the following expression (1-11) to obtain R:
R=S+S′ (1-11) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
M′=C−R (1-12) 10. The verification computation unit 108 calculates data K′ corresponding to point M′. For making point M′ correspond to data K′ it is possible to use, for example, the method described on page 231 of the foregoing �Cipher�Zero Knowledge Proof�Number Theory� (prepared under the supervision of Information Processing Society of Japan, edited by Okamoto and Ota), published by KYORITSU SHUPPAN CO. LTD.
[1]Configuration Example of Direct Comparison Between Verification Data and the Result of Decryption In a configuration example shown in FIG. 14, the verification part 102 (verification computation unit 108) stores verification data K in advance. A comparison portion in the verification part 102 makes direct comparison between the verification data K and data K′ obtained by decrypting authentication data and executes the normal processing only when there exists the relationship of K′=K while, if such a relationship does not exist, the comparison portion executes error processing such as stop of processing.
[2]Configuration Example Using a One-way Function In a configuration example shown in FIG. 15, in order to remedy the above-mentioned drawback, data h(K) obtained by applying the foregoing one-way hash function, h, to K, instead of the verification data K itself, is used as the verification data stored in the verification part 102. In view of the properties of the one-way hash function, it is very difficult to calculate the value of x which satisfies y=h(x) from the data, y, stored in the proof data memory unit 110.
[3]Configuration Example Wherein a Decrypted Value is a Decryption Key for Decrypting Specific Data In a configuration example shown in FIG. 16, data stored for verification is encrypted data, and data K′ obtained by decrypting authentication data is a key for decrypting the encrypted data.
[4]Configuration Example for Confirming That a Decrypted Value Satisfies Specific Redundancy In a configuration example shown in FIG. 17, the proof data verification device 100 has a redundancy verification part, and the verification part 102 sends the value of data K′ obtained by decrypting authentication data to the redundancy verification part. Only when the redundancy verification part has confirmed that the data satisfies specific redundancy, the execution of program is permitted.
[5]Configuration Example of Encrypting a Program Code Itself In a configuration example shown in FIG. 18, part or all of a program code held by the proof data authentication device 100 is encrypted and the thus-encrypted data is held as authentication data in the proof data memory unit 106. That is, data K′ obtained by decrypting authentication data serves as part or all of the program code.
[6]Configuration Example Wherein a Decrypted Value is a Program Decryption Key In a configuration example shown in FIG. 19, the proof data verification device 100 holds data obtained by encrypting part or all of a program code, and data K′ obtained by decrypting authentication data serves as a decryption key necessary for decrypting the encrypted program code. According to this configuration, it becomes possible to keep data K′ in a certain size irrespective of the size of the code to be encrypted, thus permitting reduction of overhead in communication.
Embodiment 2 (FIGS. 3, 5 and 9)
S=tu (2-1) 5. Then, the proof data generation part 202 acquires the unique identifying information, e, of the user stored in the fourth memory part 208 (the user unique identifying information memory unit 201 in FIG. 1) and executes calculation of the following expression (2�):
F(p, e, a, b, L) (2�) 6. Then, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (2-3) to obtain S′:
S′=F(p, e, a, b, L)u (2-3) 7. Then, the proof data generation device 202 acquires S′ and S from the first and second computation units and executes calculation of the following expression 2-4 to obtain R:
R=C−S−S′ (2-4) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
Embodiment 3 (FIGS. 3, 7 and 10)
u′=ru (3-1) By such a configuration wherein the authentication data is randomized and is then derandomized at the time of verifying the proof data which the proof data generation device 200 sends back to the proof data verification device, it is possible to prevent what is called replay attack. This is also true in the embodiments which follow.
F(p, e, a, b, L) (3-3) 6. Next, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (3-4) to obtain S′:
S′=F(p, e, a, b, L)u′ (3-4) 7. Then, the proof data generation part 202 acquires S′ and S from the first and second computation units and executes calculation of the following expression (3-5) to obtain R:
R=S+S′ (3-5) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
v=(r −1 mod q)R (3-6) Then, using the value of v thus obtained and C stored in the authentication data memory unit 106, the derandomizing unit 114 executes calculation of the following expression (3-7):
M′=C−v (3-7) 10. The verification computation unit 108 (verification part 102) calculates data K′ corresponding to point M′. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification if effected correctly.
Embodiment 4 (FIG. 3, 6 and 11)
u′=ru (4-1) The authentication data C′ is generated in the following manner. The randomizing unit 112 acquires the data C stored in the authentication data memory unit 106 and executes calculation of the following expression (4-2):
C′=rC (4-2) 3. The proof data generation part 202 checks to see whether the utilization-term time in the proof data generation control information has passed the time indicated by the clock 209 in the proof data generation device 200. If the answer is affirmative, an error code is sent back to the proof data verification device 100.
S=tu′ (4-3) 5. Then, the proof data generation part 202 acquires the user unique identifying information, e, stored in the fourth memory unit 208 (user unique identifying information memory unit 201) and execute calculation of the following expression (4-4):
F(p, e, a, b, L) (4-4) 6. Next, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (4-5) to obtain S′:
S′=F(p, e, a, b, L)u′ (4-5) 7. Then, the proof data generation part 202 obtains S′ and S from the first and second computation units and executes calculation of the following expression (4-6) to obtain R:
R=C′−S−S′ (4-6) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
M′=(r −1 mod q)R (4-7) 10. The verification unit calculates data K′ corresponding to point M′. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 5 (FIGS. 3, 7 and 12)
u′=u+rP (5-1) 3. The proof data generation unit 202 checks to see whether the utilization-term time has passed the time indicated by the clock 209 in the proof data generation device 200. If the answer is affirmative, an error code is sent back to the proof data verification device 100.
F(p, e, a, b, L) (5-3) 6. Next, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (5-4) to obtain S′:
S′=F(p, e, a, b, L)u′ (5-4) 7. Then, the proof data generation part 202 obtains S′ and S from the first and second computation units and executes calculation of the following expression (5�5) to obtain R:
R=S+S′ (5�5) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
v=R−rY (5-6) Next, the derandomizing unit 114 fetches C from the authentication data memory unit 106 and executes calculation of the following expression (5-7) using the above value of v:
M′=C−v (5-7) 10. The verification computation unit 108 (verification part 3) calculates data K′ corresponding to point M′. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 6 (FIGS. 3, 6 and 13)
u′=u+ra (6-1) 3. The proof data generation part 202 checks to see whether the utilization-term time in the proof data generation control information has passed the time indicated by the clock 209 in the proof data generation device 200. If the answer is affirmative, an error code is sent back to the proof data verification device 100.
S=tu′ (6-2) 5. Then, the proof data generation part 202 acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory unit 201) and executes calculation of the following expression (6-3):
F(p, e, a, b, L) (6-3) 6. Next, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (6-4) to obtain S′:
S′=F(p, e, a, b, L)u′ (6-4) 7. Then, the proof data generation part 202 acquires S′ and S from the first and second computation units and executes calculation of the following expression (6-5) to obtain R.
M′=R+rY (6�6) 10. The verification part calculates data K′ corresponding to point M′. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 7 (FIGS. 3, 4 and 20)
C(c x′ , c y)=zY (7-1) Further, there is calculated an exclusive OR of the proof data K and the value, cx, of x coordinates of point C, and the value thus obtained is assumed to be authentication data, c.
c=K[+]c x (7-2) where [+] stands for an exclusive OR.
S=tu′ (7-3) 5. The proof data generation part 202 then acquires the user unique identifying information, e, stored in the user unique identifying information memory part and executes calculation of the following expression (7-4):
F(p, e, a, b, L) (7-4) 6. Subsequently, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (7-5) to obtain S′:
S′=F(p, e, a, b, L)u′ (7-5) 7. Next, the proof data generation part 202 acquires R′ and S from the first and second computation units and executes calculation of the following expression (7-6) to obtain R:
R=S+S′ (7-6) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
K′=v x [+]c(The coordinates of point R are assumed to be (v x′ , v y).) (7-7) 10. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 8 (FIGS. 3, 5 and 21)
S=tu′ (8-1) 5. The exponent generation part in the proof data generation device 200 acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory part 201) and executes calculation of the following expression (8-2):
F(p, e, a, b) (8-2) 6. Using data generated by the exponent generation part, the second computation unit in the proof data generation device 200 executes calculation of the following expression (8-3) to obtain S′:
S′=F(p, e, a, b)u′ (8-3) 7. The proof data generation part in the proof data generation device 200 acquires S′ and S from the first and second computation units and executes calculation of the following expression (8-4) to obtain M:
R=v x [+]C′ (The coordinates of point L are assumed to be (v x , v y).) (8-5) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
Embodiment 9 (FIGS. 3, 7 and 22)
u′=ru (9-1) The proof data verification device 100 stores the authentication data, u′, thus generated, as well as parameters p, a and b which are stored in the access ticket public key memory unit 104 and which define the elliptic curve E, into the first memory unit 205 in the proof data generation device 200.
S=tu′ (9-2) 5. The proof data generation part 202 then acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory unit 201) and executes calculation of the following expression (9-3):
F(p, e, a, b, L) (9-3) 6. Then, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (9-4) to obtain S′:
S′=F(p, e, a, b, L)u′ (9-4) 7. Further, the proof data generation part 202 acquires S′ and S from the first and second computation units and executes calculation of the following expression (9-5) to obtain R:
R=S+S′ (9-5) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
v=(r −1 mod q)R (9-6) 10. The verification computation unit 108 (verification part 102) in the proof data verification device 100 fetches authentication data, c, from the authentication data memory unit 106 and calculates an exclusive OR, K′, of the data, c, and x coordinates, vx, of v.
K′=v x [+]c (The coordinates of point v are assumed to be (v x , v y).) (9-7) 11. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 10 (FIGS. 3, 7 and 23)
u′=u+rP (10-1) The proof data verification device 100 stores the authentication data u′ thus generated, as well as parameters p, a and b which are stored in the access ticket public key memory unit 104 and which define the elliptic curve E, into the first memory unit 205 in the proof data generation device 200.
S=tu′ (10-2) 5. The proof data generation part 202 then acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory unit 201) and executes calculation of the following expression (10-3):
F(p, e, a, b, L) (10-3) 6. Next, using data generated by the exponent generation part, the proof data generation part 202 executes calculation of the following expression (10-4) to obtain S′:
S′=F(p, e, a, b, L)u′ (10-4) 7. Then, the proof data generation part 202 acquires S′ and S from the first and second computation units and executes calculation of the following expression (10-5) to obtain R:
R=S+S′ (10-5) 8. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
v=R�rY (10-6) 10. The proof data verification device 100 fetches authentication data, c, from the proof data memory unit 106 and calculates an exclusive OR, K′, of the data c and x coordinates, vx, of v.
K′=v x [+]c (The coordinates of point R are assumed to be (v x , v y).) (10-7) 11. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 11 (FIGS. 24 and 25)
Embodiment 12 (FIGS. 26 and 27)
Embodiment 13 (FIGS. 28 and 29)
Embodiment 14 (FIGS. 30 and 31)
Embodiment 15 (FIGS. 32 and 33)
Embodiment 16 (FIGS. 34 and 35)
Embodiment 17 (FIGS. 3, 4 and 36)
Y=ax mod p (17-1) where a stands for a generator of a multiplicative group of a finite field with the order, p, satisfying the following expressions (17-2) and (17-3):
a≠0 (17-2) min {x>0|a x=1 mod p}=p−1 (17-3) Next, for identifying each user, there is determined a user unique identifying information, e, which takes a different number for each user, and proof data generation control information which defines conditions for authenticating user's access right is assumed to be L. Access ticket, t, is generated in accordance with the following expression (17-4):
t=X−F(p, e, L) where X stands for an access ticket private key and Y stands for an access ticket public key.
u=a z mod p (17-5) When appropriate data K is used as verification data, C is the product of a number obtained by exponentiating the access ticket public key Y under the modulo, p, and with the foregoing random number, z, as exponent and the verification data K, satisfying the following expression (17-6):
C=Yz K mod p (17-6) If the proof data verification device 100 is configured so as to hold only C that is the result of encryption of the verification data K, without holding the verification data K, it is possible to prevent leakage of the verification data from the proof data verification device 100.
u′=u (17-7) 3. The first computation unit in the proof data generation device 200 acquires the access ticket, t, stored in the access ticket memory unit and executes calculation of the following expression (17-8) under the modulo, p, stored in the received data memory unit 107 to obtain S:
S=u t mod p (17-8) 4. The exponent generation part in the proof data generation device 200 acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory part 201) and executes calculation of the following expression (17-9):
F(e, p, L) (17-9) 5. Using data generated by the exponent generation part, the second computation unit in the proof data generation device 200 executes calculation of the following expression (17-10) to obtain S′:
S′=u F(e,p,L) mod p (17-10) 6. The proof data generation part 202 in the proof data generation device 200 obtains S′ and S from the first and second computation units and executes calculation of the following expression (17-11) to obtain R:
R=S�S′mod p (17-11) 7. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
K′=C�R −1 mod p (17-12) 9. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ obtained by calculation and the verification data K coincide with each other and verification is effected correctly.
Embodiment 18 (FIGS. 3, 7 and 37)
u′=u r mod p (18-1) 3. The first computation unit in the proof data generation device 200 acquires the access ticket, t, stored in the third memory part 207 (access ticket memory unit 203) and executes calculation of the following expression (18-2) under the modulo, P, stored in the received data memory unit 107 to obtain S:
S=u′ t mod p (18-2) 4. The exponent generation part in the proof data generation device 200 acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory unit 201) and executes calculation of the following expression (18-3):
F(p, e, L) (18-3) 5. Using the data generated by the exponent generation part, the second computation unit in the proof data generation device 200 executes calculation of the following expression (18-4) to obtain S′:
R=S′S mod p (18-5) 7. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
v=R r −1 mod(p−1) mod p (18-6) Then, using v thus obtained and C stored in the authentication data memory unit 106, there is performed calculation of the following expression (18-7):
K′=C�v −1 mod p (18-7) 9. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ thus obtained and the verification data K coincide with each other and verification is effected correctly.
Embodiment 19 (FIGS. 3, 6 and 38)
u′=u r mod p (19-1) Authentication data C′ is generated in the following manner. The randomizing unit acquires data C from the authentication data memory unit and executes calculation of the following expression (19-2):
C′=C r mod p (19-2) 3. The first computation unit in the proof data generation device 200 acquires the access ticket, t, stored in the third memory part 207 (access ticket memory unit 203) and executes calculation of the following expression (19-3) under the modulo, p, stored in the received data memory unit 107 to obtain S:
S=u′ t mod p (19-3) 4. The exponent generation part in the proof data generation device 200 acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory unit 201) and executes calculation of the following expression (19-4):
F(p, e, L) (19-4) 5. Using the data thus generated by the exponent generation part, the second computation unit in the proof data generation device 200 executes calculation of the following expression (19-5) to obtain S′:
S′=u′ F(p,e,L) mod p (19-5) 6. The proof data generation part in the proof data generation device 200 acquires S′ and S from the first and second computation units and executes calculation of the following expression (19-6) to obtain R:
R=C′(S′ S)−1 mod p (19-6) 7. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
K′=R r −1 mod(p−1) mod p (19-7) 9. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ thus obtained and the proof data K coincide with each other and verification is effected correctly.
Embodiment 20 (FIGS. 3, 7 and 39)
u′=u�a r mod p (20-1) 3. The first computation unit in the proof data generation device 200 acquires the access ticket, t, stored in the third memory part 207 (access ticket memory unit 203) and executes calculation of the following expression (20-2) under the modulo, p, stored in the received data memory unit 107 to obtain S:
S=u′ t mod p (20-2) 4. The exponent generation part in the proof data generation device 200 acquires the user unique identifying information, e, stored in the fourth memory part 208 (user unique identifying information memory unit 201) and executes calculation of the following expression (20-3):
F(p, e, L) (20-3) 5. Using data generated by the exponent generation part, the second computation unit in the proof data generation device 200 executes calculation of the following expression (20-4) to obtain S′:
S′=u′ F(p,e,L) mod p (20-4) 6. The proof data generation part in the proof data generation device 200 acquires S′ and S from the first and second computation units and executes calculation of the following expression (20-5) to obtain R:
R=S′S mod p (20-5) 7. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
v=Y −r �R mod p (20-6) Next, the derandomizing unit 114 fetches C from the authentication data memory unit 106 and executes calculation of the following expression (20-7):
K′=C�v −1 mod p (20-7) 9. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ thus obtained and the verification data K coincide with each other and verification is effected correctly.
Embodiment 21 (FIGS. 3, 6 and 40)
u′=u�a r mod p (21-1) 3. The first computation unit in the proof data generation device 200 acquires the access ticket, t, stored in the third memory part 207 (access ticket memory unit 203) and executes calculation of the following expression (21-2) under the modulo, p, stored in the received data memory unit 107 to obtain S:
F(p, e, L) (21-3) 5. Using data generated by the exponent generation part, the second computation unit in the proof data generation device 200 executes calculation of the following expression (21-4) to obtain S′:
S′=u′ F(p,e,L) mod p (21-4) 6. The proof data generation part in the proof data generation device 200 acquires S′ and S from the first and second computation units and executes calculation of the following expression (21-5) to obtain R:
R=C′ (S′ S)−1 mod p (21-5) 7. The proof data generation device 200 sends R back to the received data memory unit 107 in the proof data verification device 100.
K′=Y r �R mod p (21-6) 9. Only when the combination of access ticket, t, with user unique identifying information, e, used in the proof data generation device 200 is correct, the data K′ thus obtained and the verification data K coincide with each other and verification is effected correctly.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS6073234 *Apr 27, 1998Jun 6, 2000Fuji Xerox Co., Ltd.Device for authenticating user's access rights to resources and methodUS6161183 *Oct 14, 1997Dec 12, 2000Fuji Xerox Co., Ltd.Data verifying method apparatus for creating data to be verified and data verifying apparatusJPH0622032B2 Title not availableJPH07131452A Title not availableJPS62171071A Title not available* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS6871230 *Jun 29, 2000Mar 22, 2005Nec CorporationSystem and method for personal identificationUS7089306 *Apr 18, 2002Aug 8, 2006Bdna CorporationApparatus and method to automatically collect data regarding assets of a business entityUS7350231Jun 6, 2001Mar 25, 2008Yahoo ! Inc.System and method for controlling access to digital content, including streaming mediaUS7356838Oct 22, 2003Apr 8, 2008Yahoo! Inc.System and method for controlling access to digital content, including streaming mediaUS7480798 *Jun 5, 2003Jan 20, 2009International Business Machines CorporationSystem and method for representing multiple security groups as a single data objectUS7558759Nov 19, 2002Jul 7, 2009Contentguard Holdings, Inc.Systems and methods for creating, manipulating and processing rights and contract expressions using tokenized templatesUS7685642Jun 26, 2003Mar 23, 2010Contentguard Holdings, Inc.System and method for controlling rights expressions by stakeholders of an itemUS7690044 *Jul 12, 2005Mar 30, 2010Fuji Xerox Co., Ltd.Medium storing program selecting electronic ticket, electronic ticket processing apparatus and electronic ticket selection methodUS7720767Oct 24, 2005May 18, 2010Contentguard Holdings, Inc.Method and system to support dynamic rights and resources sharingUS7757277Dec 17, 2008Jul 13, 2010International Business Machines CorporationSystem and method for representing multiple security groups as a single data objectUS7805371Mar 10, 2004Sep 28, 2010Contentguard Holdings, Inc.Rights expression profile system and methodUS7840488Nov 14, 2003Nov 23, 2010Contentguard Holdings, Inc.System and method for granting access to an item or permission to use an item based on configurable conditionsUS7958370 *Sep 29, 2006Jun 7, 2011Hitachi Global Storage Technologies, Netherlands, B.V.System and device for managing control dataUS7970709Mar 31, 2003Jun 28, 2011Contentguard Holdings, Inc.Method and apparatus for client customization by executing software parts on plural serversUS7974923Nov 18, 2002Jul 5, 2011Contentguard Holdings, Inc.Extensible rights expression processing systemUS8099771May 19, 2011Jan 17, 2012Dai Nippon Printing Co., Ltd.Method for issuing IC card storing encryption key informationUS8108687 *Dec 11, 2002Jan 31, 2012Valve CorporationMethod and system for granting access to system and contentUS8244579Mar 27, 2006Aug 14, 2012Contentguard Holdings, Inc.Method and apparatus for distributing enforceable property rightsUS8392723Sep 12, 2008Mar 5, 2013Fuji Xerox Co., Ltd.Information processing apparatus and computer readable medium for preventing unauthorized operation of a programUS8423797 *Aug 27, 2002Apr 16, 2013Giesecke & Devrient GmbhInitialization of a chip cardUS8464067May 11, 2009Jun 11, 2013Nec Europe Ltd.Method for enabling limitation of service accessUS8539038Feb 17, 2011Sep 17, 2013Valve CorporationMethod and system for preloading resourcesUS8543511Apr 29, 2003Sep 24, 2013Contentguard Holdings, Inc.System and method for specifying and processing legality expressionsUS8660961Nov 18, 2004Feb 25, 2014Contentguard Holdings, Inc.Method, system, and device for license-centric content consumptionUS8661557Dec 21, 2011Feb 25, 2014Valve CorporationMethod and system for granting access to system and contentUS8768850May 12, 2011Jul 1, 2014Contentguard Holdings, Inc.Method, system, and device for license-centric content consumptionWO2010028705A1 *May 11, 2009Mar 18, 2010Nec Europe Ltd.Method for enabling limitation of service access* Cited by examinerClassifications U.S. Classification713/168International ClassificationG06Q20/40, G06Q20/42, G06Q50/00, G06F21/62, G06F21/64, G06F21/12, G06F21/14, G06Q20/00, H04L9/32, G09C1/00, G06F12/14Cooperative ClassificationH04L9/3066, H04L9/3013, H04L9/3271, H04L9/3231, H04L9/3213, H04L2209/60, H04L2209/04European ClassificationH04L9/30B2, H04L9/30M, H04L9/32D2, H04L9/32J4, H04L9/32RLegal EventsDateCodeEventDescriptionJul 3, 2014REMIMaintenance fee reminder mailedMay 3, 2010FPAYFee paymentYear of fee payment: 8Apr 28, 2006FPAYFee paymentYear of fee payment: 4Feb 8, 1999ASAssignmentOwner name: FUJI XEROX CO., LTD., JAPANFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KIGO, KENICHIRO;SUZUKI, KOHJI;REEL/FRAME:009774/0112Effective date: 19990201RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google