DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
Applicant’s Remarks, filed April 22nd, 2026, has been fully considered and entered. Accordingly, claims 1, 3-4, 6-10, 12-13, 15-17, and 19-20 are pending in the case. Claims 1, 10, 12, and 17 were amended. Claims 2, 5, 11, 14, and 18 were cancelled. Claims 1, 10, and 17 are the independent claims.
Claim Rejections - 35 USC § 103
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 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.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1, 3-4, 6-10, 12-13, 15-17, and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Brannon et al. (US 2021/0200902 A1) in view of Sung et al. (US 2019/0311057 A1).
Regarding claim 1, Brannon teaches a data verification method, comprising:
in response to a verification request, obtaining a plurality of pieces of data corresponding to the verification request; generating temporary verification information of each piece of the data based on the plurality of pieces of data; and when temporary verification information of the plurality of pieces of data is consistent with verification information of the plurality of pieces of data, applying a target algorithm based on the verification information of the plurality of pieces of data, to determine first verification information indicating global verification information of the plurality of pieces of data, wherein an output result of the target algorithm is not affected by a sequence of computing input data (see Brannon, Paragraphs [0486], [0613], [0751]-[0752], “to appropriately process a request such as a DSAR, the system may collect personal data from a data subject. This personal data may include sensitive information such as a social security number, full name, address, email address, phone number, credit card number, etc. The system may then, as part of fulfilling such a request, verify the data subject using one or more pieces of the collected data. … after collecting personal data associated with a particular data subject and then using that personal data to verify the data subject, the system may apply a cryptographic hash function (e.g., a one-way hash) to each piece of the personal data, to one or more particular portions (e.g., sensitive portions) of the personal data, and/or to the personal data as a whole (e.g., the one or more pieces of personal data concatenated and then hashed), and store the resulting hashed value(s) as a record of the verification (e.g., in a data model, data map, and/or using one or more other data structures that may be associated with the data subject, processing activity, system, process, etc.).” [The request is verified by collecting personal data (i.e., temporary verification information). The system may apply a cryptographic hash function (i.e., applying a target algorithm based on the verification information of the plurality of pieces of data) to determine hash values (i.e., first verification information indicating global verification information of the plurality of pieces of data).]);
However, Joshi does not explicitly teach:
wherein an output result of the target algorithm is not affected by a sequence of computing input data;
Sung teaches:
wherein an output result of the target algorithm is not affected by a sequence of computing input data (see Sung, Paragraph [0370], “calculating an order-independent, multi-row calculation of a hash value for a data set.” [An order-independent, multi-row hash calculation (i.e., wherein an output result of the target algorithm is not affected by a sequence of computing input data) may be performed.]);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have combined Brannon (teaching a data processing method for automatically protecting sensitive data with privacy management systems) in view of Sung (teaching order-independent multi-record hash generation and data filtering), and arrived at a method that calculates an order-independent ouput. One of ordinary skill in the art would have been motivated to make such a combination for the purposes of optimizing the performance of a database system (see Sung, Paragraph [0002]). In addition, both the references (Brannon and Sung) teach features that are directed to analogous art and they are directed to the same field of endeavor, such as data processing systems. The close relation between both the references highly suggests an expectation of success.
The combination of Brannon, and Sung further teaches:
determining a target verification set based on a first verification set and a second verification set, wherein the first verification set comprises verification information of data corresponding to a historical insertion operation, and the second verification set comprises verification information of data corresponding to a historical deletion operation; applying the target algorithm based on the target verification set, to determine second verification information indicating global verification information of the target verification set, wherein a difference set between the first verification set and the second verification set is the target verification set (see Sung, Paragraph [0202], “Each transaction, such as a transaction that writes, updates, or deletes a record of a database table, can be associated with a commit timestamp, such as a commit log sequence number. The state of a database is also typically associated with a snapshot that includes a commit timestamp. When a transaction is to be replayed, its commit timestamp can be compared with the commit timestamp of the second database system. If the transaction commit timestamp is lower than or equal to the snapshot commit timestamp of the second database system, the transaction can be selected to not be replayed. If the transaction commit timestamp is larger than the snapshot commit timestamp of the second database system, the transaction can be replayed, as it is not yet represented in the second database system.” Paragraph [0232], “Using field 2030, a user can select one or more types of statements to be captured. For example, statements can include data manipulation statements (e.g., DELETE, INSERT, REPLACE, SELECT, UPDATE),” Paragraph [0369], “an order-independent, multi-row hash result may be calculated for data sets that contain non-deterministic data. Such a result allows for comparison by the hash value between two large data sets that may have minor, or non-deterministic, differences but no substantive differences.” [An order-independent, multi row hash result may be calculated (i.e., applying the target algorithm based on the target verification set) for the data sets, which may be based on a difference set between historical insert and deletion operations]);
and outputting a verification result based on the first verification information and the second verification information (see Brannon, Paragraphs [0753]-[0754], [0759], “to determine whether the system has properly verified a data subject, the system may generate and store a hash value for one or more pieces of personal data (e.g., social security number, credit card number, etc.) initially received from the data subject. At a later time, the system may receive a request to confirm that the data subject was properly verified. This request may include (or the system may subsequently receive) a hash value associated with a piece of personal data associated with the subject. The system may compare the received hash value to the stored has value corresponding to the same piece of personal data. If the hash values match, the system can confirm that they were both generated based on an identical piece of personal data, therefore confirming that the system properly verified the data subject using that piece of personal data.” [A confirmation may be output based on the comparison of the stored hash values, and hash value of the request, thus, a verification result may be output based on the first verification information and the second verification information.]).
Regarding claim 3, Brannon in view of Sung teaches all the limitations of claim 1. Brannon further teaches:
adding a plurality of pieces of verification information to obtain a sum of a length n, and performing a modulo operation on 2n based on the sum; or performing an XOR operation on each pair of pieces of verification information in the plurality of pieces of verification information; or multiplying the plurality of pieces of verification information to obtain a product of a length n, and performing a modulo operation on 2n based on the product; or sorting and concatenating the plurality of pieces of verification information into concatenated verification information, and hashing the concatenated verification information; or hashing the plurality of pieces of data in a sequence of storing the plurality of pieces of verification information in a self-balancing binary search tree, wherein the plurality of pieces of verification information is the verification information of the plurality of pieces of data corresponding to the verification request, or a plurality of pieces of verification information in the target verification set, and n is a positive integer (see Brannon, Paragraph [0752], “after collecting personal data associated with a particular data subject and then using that personal data to verify the data subject, the system may apply a cryptographic hash function (e.g., a one-way hash) to each piece of the personal data, to one or more particular portions (e.g., sensitive portions) of the personal data, and/or to the personal data as a whole (e.g., the one or more pieces of personal data concatenated and then hashed), and store the resulting hashed value(s) as a record of the verification (e.g., in a data model, data map, and/or using one or more other data structures that may be associated with the data subject, processing activity, system, process, etc.).” [The one or more pieces of personal data may be concatenated and then hashed (i.e., sorting and concatenating the plurality of pieces of verification information into concatenated verification information and hashing the concatenated verification information).]).
Regarding claim 4, Brannon in view of Sung teaches all the limitations of claim 1. Sung further teaches:
wherein, when temporary verification information of any piece of the data is inconsistent with verification information of the data, the verification result is that verification fails (see Brannon, Paragraphs [0486], [0759], “(2) if the DSAR was not submitted by the particular data subject, deny the request” [The system may deny the request if the DSAR request was not submitted by the particular data subject (i.e., the verification result is that verification fails).]).
Regarding claim 6, Brannon in view of Sung teaches all the limitations of claim 1. Brannon further teaches:
when the first verification information is consistent with the second verification information, the verification result is that verification succeeds; or when the first verification information is inconsistent with the second verification information, the verification result is that verification fails (see Brannon, Paragraphs [0753]-[0754], [0759], “The system may, at Step 6570, compare the received encrypted value to the encrypted value stored by the system for that particular piece of data to determine whether they match. The system may then respond with a confirmation or denial that the encrypted values match (thereby confirming or denying that verification was performed properly using that particular piece of data). For example, the system may compare the hash value received for the social security number of the particular data subject to the hash value stored for the social security number of the particular data subject (generated during the early interaction, such as at Step 6510-6540). The system may then determine that, if the hash values match, the same social security number was used to generate them both, thereby confirming that the system initially used the same social security number in the earlier interaction with the data subject. If the hash values do not match, then the system did not use the same social security number in the earlier interaction with the data subject, and the initial verification or the current interaction may not be with the same data subject.” [The system may determine that the hash values match or not (i.e., the verification result is that verification succeeds or fails).]).
Regarding claim 7, Brannon in view of Sung teaches all the limitations of claim 1. Brannon, and Sung further teaches:
in response to a data insertion request, obtaining verification information of first data based on the first data in the data insertion request; storing the verification information of the first data in the first verification set, wherein the first verification set stores verification information of data corresponding to a request type that is a data insertion request; and storing the first data and the verification information of the first data (see Brannon, Paragraphs [0719], [0756], “the system may communicate and/or connect with one or more back end systems to fulfill a DSAR submitted by or on behalf of a particular data subject. For example, the data subject may have submitted a DSAR to delete, access, and/or modify one or more pieces of personal data associated with the data subject. … At Step 6540, the system may store the encrypted versions of the one or more pieces of personal data (e.g., the hash values corresponding to each of the one or more pieces of data). The system may also store an indication of the type of personal data to which each piece of data corresponds; one or more processes, systems, and/or processing activities with which the acquisition of each piece of data is associated; and/or a particular data subject with which each piece of data is associated. The system may also, or instead, store any other data associated with each such piece of data. In particular embodiments, the system may use a data map to store and associate one or more encrypted values for each piece of data and any associated information.” Also, see Sung, Paragraphs [0202], [0232], [The system may update the stored information when requesting to modify the data.]).
Regarding claim 8, Brannon in view of Sung teaches all the limitations of claim 1. Brannon, and Sung further teaches:
in response to a data deletion request, obtaining verification information of second data based on the second data in the data deletion request; storing the verification information of the second data in the second verification set, wherein the second verification set stores verification information of data corresponding to a data deletion request; and deleting the second data and the verification information of the second data (see Brannon, Paragraph [0757], “At Step 6550, the system may delete the unencrypted piece of data (e.g., the personal data as received from the data subject). In particular embodiments, the system may accomplish this by overwriting the original unencrypted piece of data with the encrypted data (e.g., its corresponding hash value). Alternatively, or in addition, the system may store the encrypted data separately and then delete the original unencrypted piece of data.” Also, see Sung, Paragraphs [0202], [0232], [The system may update the stored information when requesting to delete the data.]).
Regarding claim 9, Brannon in view of Sung teaches all the limitations of claim 1. Brannon further teaches:
obtaining a data update request; obtaining third verification information of third data based on the third data in the data update request; storing the third verification information of the third data in the second verification set, wherein the second verification set stores verification information of data corresponding to a data deletion request; and deleting the third data and the third verification information; and obtaining fourth verification information of fourth data based on the fourth data in the data update request; storing the fourth verification information of the fourth data in the first verification set, wherein the first verification set stores verification information of data corresponding to a request type that is a data insertion request; and storing the fourth data and the fourth verification information (see Brannon, Paragraph [0760], “The system may perform this data verification process with any one or more pieces of data associated with a data subject and may be performed for multiple pieces of such data, to ensure that data provided in one or more subsequent interactions matches data provided in an initial interaction without requiring any storage of the actual data, which may be sensitive information.” [This process may be repeated for additional requests.]).
Regarding claims 10, 12-13, 15-17, and 19-20, Brannon in view of Sung teaches all of the limitations of claims 1, 3-4, and 6-9 in method form rather than in computing device and non-transitory computer-readable form. Brannon also discloses a computing device [0456] and non-transitory computer-readable medium [0456]. Therefore, the supporting rationale of the rejection to claim 1, 3-4, and 6-9 applies equally as well to those elements of claims 10, 12-13, 15-17, and 19-20.
Response to Arguments
Applicant’s Arguments, filed April 22nd, 2026, have been fully considered, but are not persuasive.
Applicant argues on pages 9-10 of Applicant's Remarks that the cited references do not teach or suggest “obtaining a plurality of pieces of data corresponding to the verification request; generating temporary verification information of each piece of the data based on the plurality of pieces of data; and when temporary verification information of the plurality of pieces of data is consistent with verification information of the plurality of pieces of data, applying a target algorithm based on the verification information of the plurality of pieces of data, to determine first verification information indicating global verification information of the plurality of pieces of data.” The Examiner respectfully disagrees.
Brannon discloses in paragraphs [0751]-[0752], “to appropriately process a request such as a DSAR, the system may collect personal data from a data subject. This personal data may include sensitive information such as a social security number, full name, address, email address, phone number, credit card number, etc. The system may then, as part of fulfilling such a request, verify the data subject using one or more pieces of the collected data. Once this verification is complete, the system may need to maintain a record of the verification. … after collecting personal data associated with a particular data subject and then using that personal data to verify the data subject, the system may apply a cryptographic hash function (e.g., a one-way hash) to each piece of the personal data, to one or more particular portions (e.g., sensitive portions) of the personal data, and/or to the personal data as a whole (e.g., the one or more pieces of personal data concatenated and then hashed), and store the resulting hashed value(s) as a record of the verification (e.g., in a data model, data map, and/or using one or more other data structures that may be associated with the data subject, processing activity, system, process, etc.). ” As shown, a request is verified by collecting personal information of the data subject and then applying a cryptographic hash function on the verified data. Therefore, it is believed that the cited reference, Brannon, teaches generating temporary verification, which is the personal information that is collected to be verified, and teaches applying a target algorithm based on the verification information, which is applying a cryptographic hash function on the verified personal data
Applicant argues on pages 10-11 of Applicant's Remarks that the cited references do not teach or suggest “determining a target verification set based on a first verification set and a second verification set, wherein the first verification set comprises verification information of data corresponding to a historical insertion operation, and the second verification set comprises verification information of data corresponding to a historical deletion operation; applying the target algorithm based on the target verification set, to determine second verification information indicating global verification information of the target verification set, wherein a difference set between the first verification set and the second verification set is the target verification set.”
Applicant’s Arguments, filed April 22nd, 2026, have been fully considered, but are moot in light of the new grounds of rejection.
For the above reasons, it is believed that the rejections should be sustained.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
1.) Goldstein et al. (US 2022/0269660 A1), which discloses a method for a blockchain audit-proof logging process.
2.) Sanghavi et al. (US 2020/0344236 A1), which discloses a method for verifying users.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HUSAM TURKI SAMARA whose telephone number is (571)272-6803. The examiner can normally be reached on Monday - Thursday, Alternate Fridays.
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, Apu Mofiz can be reached on (571)-272-4080. 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.
/HUSAM TURKI SAMARA/Examiner, Art Unit 2161
/APU M MOFIZ/Supervisory Patent Examiner, Art Unit 2161