DETAILED ACTION
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
2. Claims 1-15 are pending. Claims 1, 11, 12 and 15 are independent.
3. Two IDS’es submitted on 10/31/2024 and 4/29/2025 have been entered.
Claim Rejections - 35 USC § 102
4. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
5. The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
6. Claim 1-15 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Farrugia (US Patent 10,868,672).
As regarding claim 1, Farrugia discloses A method comprising:
acquiring sensed data [abstract and col. 2 lines 37-41; obtaining biometric data];
obtaining public data shared with a Zero Knowledge Proof, ZKP, verifier device [col. 7 lines 26-41; obtaining, by the enrollment module 120 of the server system 102, the random salt 116];
applying a logic function to the sensed data to determine whether a statement concerning the sensed data is verified or not [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs], wherein the logic function is shared with the ZKP verifier device [col. 8 lines 36-48; the same key-pair generation logic being used];
generating a ZKP that the statement is true by applying a ZKP generation algorithm to the public data and private data using the logic function [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs to verify user], the private data including the sensed data [col. 2 lines 31-36; user biometric data];
deleting the sensed data once the ZKP has been generated [col. 16 lines 6-7 and col. 23 lines 44-50];
sending the ZKP to the ZKP verifier device [col. 16 lines 6-7 and col. 23 lines 44-50; sending the public keys to the server];
wherein deleting the sensed data is performed before sending the ZKP to the ZKP verifier device [col. 16 lines 6-7 and col. 23 lines 44-50].
As regarding claim 2, Farrugia further discloses The method of claim 1, wherein the public data comprises at least one parameter of the statement to be verified by the logic function [col. 15 lines 6-56; the proof based on recovery device 106 demonstrating its possession of at least K of N “correct” key pairs (i.e., key pairs corresponding to stored public keys {pk1, . . . pkN})].
As regarding claim 3, Farrugia further discloses The method of claim 1, wherein the statement comprises a mathematical combination of at least two conditions, wherein to determine whether the statement is verified the logic function is adapted to determine whether the mathematical combination is verified [col. 15 lines 6-56].
As regarding claim 4, Farrugia further discloses The method of claim 1, wherein to determine whether the statement is verified the logic function is adapted to determine whether a property of the sensed data is verified [col. 15 lines 6-56; determining property of the biometric data].
As regarding claim 5, Farrugia further discloses The method of claim 1, wherein to determine whether the statement is verified the logic function is adapted to determine whether an event has occurred in the sensed data [col. 14 line 51 thru col. 15 line 5; determining whether correct number of key pairs are generated based on the biometric data].
As regarding claim 6, Farrugia further discloses The method of claim 1, wherein to determine whether the statement is verified the logic function is adapted to determine whether the logic function was applied to the sensed data during a given time period, wherein the public data includes at least one parameter defining the given time period [col. 28 lines 49-56 and col. 29 lines 9-20; timestamp].
As regarding claim 7, Farrugia further discloses The method of claim 1, wherein the sensed data comprises at least one localization of a moving entity, wherein to determine whether the statement is verified the logic function is adapted to perform at least one of: determining based on the at least one localization whether the moving entity is in an allowed geographical area; or determining based on the at least one localization whether the moving entity is not in a forbidden geographical area [col. 24 lines 21-43].
As regarding claim 8, Farrugia further discloses The method of claim 1, wherein the sensed data comprises successive localizations of a moving entity, wherein to determine whether the statement is verified the logic function is adapted to perform at least one of: determining based on the successive localizations whether the moving entity is moving along an allowed geographical path; or determining based on the successive localizations whether the moving entity is not moving along a forbidden geographical path [col. 24 lines 21-43].
As regarding claim 9, Farrugia further discloses The method of claim 1, further comprising: receiving, from the verifier device, at least one trigger parameter that specifies when the ZKP has to be generated [col. 24 lines 41-44; recovery request time].
As regarding claim 10, Farrugia further discloses The method of claim 1, further comprising: receiving, from the verifier device, at least one configuration parameter of the statement to be verified; and configuring the logic function with the received at least one configuration parameter [col. 7 lines 26-41; obtaining, by the enrollment module 120 of the server system 102, the random salt 116].
As regarding claim 11, Farrugia discloses An apparatus comprising:
at least one processor [col. 35 lines 10-14]; and
at least one memory storing instructions that, when executed by the at least one processor [col. 35 lines 10-39], cause the apparatus at least to:
acquire sensed data [abstract and col. 2 lines 37-41; obtaining biometric data];
obtain public data shared with a Zero Knowledge Proof, ZKP, verifier device [col. 7 lines 26-41; obtaining, by the enrollment module 120 of the server system 102, the random salt 116];
apply a logic function to the sensed data to determine whether a statement concerning the sensed data is verified or not [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs], wherein the logic function is shared with the ZKP verifier device [col. 8 lines 36-48; the same key-pair generation logic being used];
generate a ZKP that the statement is true by applying a ZKP generation algorithm to the public data and private data using the logic function [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs to verify the user], the private data including the sensed data [col. 2 lines 31-36; user biometric data];
delete the sensed data once the ZKP has been generated [col. 16 lines 6-7 and col. 23 lines 44-50]; and
send the ZKP to the ZKP verifier device [col. 16 lines 6-7 and col. 23 lines 44-50; sending the public keys to the server];
wherein the processing circuitry are configured to delete the sensed data before sending the ZKP to the ZKP verifier device [col. 16 lines 6-7 and col. 23 lines 44-50].
As regarding claim 12, Farrugia discloses A method comprising:
obtaining public data shared with a Zero Knowledge Proof, ZKP, prover device [col. 7 lines 26-41; obtaining, by the enrollment module 120 of the server system 102, the random salt 116];
configuring the ZKP prover device with a logic function adapted to determine whether a statement concerning sensed data acquired by the ZKP prover device is verified or not [col. 8 lines 22-35; proving, by the recovery device 106, the same biometric data];
receiving, from the ZKP prover device, a ZKP that the statement is true [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs]; and
verifying the ZKP by applying a ZKP verification algorithm to the ZKP and the public data [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs to verify the user].
As regarding claim 13, Farrugia further discloses The method of claim 12, wherein configuring the ZKP prover device with a logic function further includes sending at least one configuration parameter of the statement to the ZKP prover device [col. 7 lines 26-41; obtaining, by the enrollment module 120 of the server system 102, the random salt 116].
As regarding claim 14, Farrugia further discloses The method of claim 12, wherein configuring the ZKP prover device with the logic function further includes selecting the logic function to be used by the prover device among a set of logic functions; and sending an identification of the logic function to the ZKP prover device [col. 8 lines 15-21; sending the same key-pair generation logic].
As regarding claim 15, Farrugia discloses An apparatus comprising:
at least one processor [col. 35 lines 10-14]; and
at least one memory storing instructions that, when executed by the at least one processor [col. 35 lines 10-39], cause the apparatus at least to:
obtain public data shared with a Zero Knowledge Proof, ZKP, prover device [col. 7 lines 26-41; obtaining, by the enrollment module 120 of the server system 102, the random salt 116];
configure the ZKP prover device with a logic function adapted to determine whether a statement concerning sensed data acquired by the ZKP prover device is verified or not [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs];
receive, from the ZKP prover device, a ZKP that the statement is true [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs]; and
verify the ZKP by applying a ZKP verification algorithm to the ZKP and the public data [abstract, col. 2 line 51 thru col. 3 line 3 and col. 4 line 45 thru col. 5 line 16; applying key-pair generation algorithm to random salt and user biometric data to generate N public/private key pairs to verify the user].
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to THONG P TRUONG whose telephone number is (571)270-7905. The examiner can normally be reached on M-F 8:30AM - 5:30PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, Applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jeffrey Pwu can be reached on 57127267986798. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/THONG TRUONG/
Examiner, Art Unit 2433
/JEFFREY C PWU/Supervisory Patent Examiner, Art Unit 2433