DETAILED ACTION
Remarks
Claims 1-18 have been examined and rejected. This Office Action is responsive to the continued examination request.
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 .
Claims 1-18 are presented for examination.
Response to Amendment
Applicant’s amendment filed on 09/18/2025 has been entered. Claims 1 and 10 are amended. Claims 1-18 are pending in the application.
Claim Rejections - 35 USC § 103
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.
Claims 1-7, 9-16 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Manamohan et al (US 20190332955 A1) hereafter Manamohan, further in view of Shacham et al (US 20020087884 A1) hereafter Shacham, and further in view of Gentry et al (US 20050246533 A1) hereafter Gentry.
With respect to claim 1, Manamohan teaches a method for federated learning using peer-to-peer networks (a method proposed to share local parameters within a blockchain network, such that the sharing makes local parameters available for download and upload through peer-to-peer network [par. 0050, 0071]), comprising:
electing, by a plurality of participant nodes in a peer-to-peer network, one of the participant nodes as a collaborator node using a consensus algorithm (a master node may be elected among the participant nodes by consensus algorithm based on the first node to enroll in the iteration [par. 0005]);
broadcasting, by each participant node, the to the collaborator nodes and to the participant nodes on the peer-to-peer network (each participant node may write a transaction and broadcast the transaction via the messaging interface and the blockchain API. A participant node may be elected as a collaborator node (or a leader node). Each participant node 10 may signal the other participant nodes (including the collaborator node) in the network that it is ready for sharing the local parameters [par. 0051]);
updating, by the collaborator node, an aggregated machine learning model with the (all the nodes whether they participated in the network may contribute to the updating of training parameters through the decentralized machine learning. The master node may update its state to indicate that the final training parameters are available [par. 0005, 0006, 0019, 0021, 0043, 0081]);
broadcasting, by the collaborator node, the plurality of update messages to the participant nodes on the peer-to-peer network (the master node may broadcast a message to the blockchain network that it is ready to share the training parameters. The master node (which is a particular node that has been selected) may broadcast an indication that it has completed generating the merged training parameters, such as by writing a blockchain transaction that indicates the state change (a message that indicates a change) [par. 0005, 0022, 0023]);
updating, by each of the participant nodes, the local machine learning model for the participant node with the update (decentralized machine learning may be dynamically scaled as the availability of participant nodes changes while providing updated training parameters through the decentralized machine learning to participant nodes as they become available [par. 0006, 0021, 0043]).
However, Manamohan does not disclose generating, by the collaborator node, a collaborator node public key and a collaborator node private key; broadcasting, by the collaborator node and to the plurality of participant nodes in a single communication, the collaborator node public key; generating, by each participant node, a participant node public key and a participant node private key, wherein each participant node generates a new participant node public key and a new participant node private key for each communication with the collaborator node; encrypting, by each participant node, a message comprising a parameter for a local machine learning model for the participant node and the participant node public key with the collaborator node public key; decrypting, by the collaborator node, each of the encrypted messages with the collaborator node private key, resulting in decrypted parameters; encrypting, by the collaborator node, a plurality of update messages each comprising an update from the aggregated machine learning model with each participant node’s participant node public key; decrypting, by each of the participant nodes, one of the plurality of update messages with the participant node private key for the participant node.
In the same field of endeavor, Shacham teaches generating, by the collaborator node, a collaborator node public key and a collaborator node private key (in the improvement of a secure connection, the server generates an RSA public/private key pair by generating two distinct n-bit primes p and q and computing N=pq, wherein N is any arbitrary number. The process is implemented around a complete binary tree where every node has two children. Each encrypted message is placed in the leaf node labeled with its corresponding value [par. 0021-0024, 0062, 0066]);
encrypting, by each participant node, a message comprising a parameter for a local machine learning model for the participant node and the participant node public key with the collaborator node public key (there are a certain number of encrypted messages where each one is encrypted with a key that is desirable to decrypt simultaneously to obtain a plain-text [par. 0060, 0061]);
decrypting, by the collaborator node, each of the encrypted messages with the collaborator node private key, resulting in decrypted parameters (a message is encrypted using an RSA public key, the message is then formatted to obtain an integer X in range {1 … N}. the cipher-text is then computed that is happening during the initial stage of the initial handshake between client and server. The cipher-text is then decrypted by using its private key [par. 0056, 0057, 0060, 0061]);
encrypting, by the collaborator node, a plurality of update messages each comprising an update from the aggregated machine learning model with each participant node’s participant node public key (the web browser connects to the web server and sends a client message. The message contains the server’s public key to inform the client of the RSA public key. The browser then picks a random 48-byte string, R, and encrypts it using the key [par. 0007]);
decrypting, by each of the participant nodes, one of the plurality of update messages with the participant node private key for the participant node (the decryption of the encrypted string R is the expensive part of the initial handshake, the RSA public key is made of 2 integers N and e, wherein e is called the encryption exponent such as e=65537. The RSA private key is an integer d. The web server then decrypts cipher-text C using its private key to reveal the plain-text message [par. 0008]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to have incorporated the concept of improving the efficiency of network security protections communication protocols using RSA encryption and decryption techniques as suggested by Shacham into the concept of building blockchain platform by using decentralized machine learning that is performed at master node and participant nodes as suggested by Manamohan because both of these systems addressing the process of selecting a specific node among the participant nodes to update the training parameters. Doing so would be desirable because the system of Manamohan would be more efficient by encrypting a message using a public key and decrypting the encrypted message using a private key, wherein the public/private key pair is generated by the RSA algorithm (Shacham, [par.0006-0009]).
However, the combination of Manamohan and Shacham does not particularly disclose broadcasting, by the collaborator node and to the plurality of participant nodes in a single communication, the collaborator node public key; and generating, by each participant node, a participant node public key and a participant node private key, wherein each participant node generates a new participant node public key and a new participant node private key for each communication with the collaborator node.
In the same field of endeavor, Gentry teaches broadcasting, by the collaborator node and to the plurality of participant nodes in a single communication, the collaborator node public key (the collaborator node is just one of the participant nodes selected to be a leader, or it is just a parent node. In this case, the collaborator may be a recipient’s node. A user of a public-key cryptography-based communication system communicates with another user by means of two different keys, a public key and a private key that form a public key/private key pair. A message sender communicates securely with a message recipient by encrypting a message using the recipient's public key. The user’s public key is freely available to other users. In another use case, the recipient decryption key associated with an ancestor node of the recipient leaf node forms a private key/public key pair with the encryption key associated with the ancestor node of the recipient leaf node. For example, binary tree (or B-tree) represents data structure that maintain an ordered set of data (nodes and leaves). The recipient’s public key is available to other users of the cryptosystem, including the sender [par. 0003-0005, 0032-0034, 0053, 0054, 0060]); and
generating, by each participant node, a participant node public key and a participant node private key, wherein each participant node generates a new participant node public key and a new participant node private key for each communication with the collaborator node (the method provides encoding and decoding a digital message between a sender and a recipient in a public-key encryption scheme including the sender, the recipient and an authorizer. The method includes the steps of generating a recipient public key/private key pair and a recipient encryption key. A recipient node is associated with an ancestor node that forms a private key/public key pair with the encryption key. The recipient’s public key is available to other users of the cryptosystem, including the sender [par. 0003-0005, 0018, 0032-0034, 0053, 0054, 0060-0063]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to have incorporated the concept of sending a digital message from a sender to a recipient in a public-key based cryptosystem comprising an authorizer as suggested by Gentry into the combination of Manamohan and Shacham because all of these systems addressing the process of using private/public keys to communicate between the collaborator node and other participant nodes. Doing so would be desirable because the combination of Manamohan and Shacham would be more efficient by using a public-key encryption scheme to generate a recipient public key/private key pair and a unique binary string associated with the recipient with a leaf node in a B-tree, such that the recipient node is associated with an ancestor node that forms a private key/public key pair (Gentry, [par. 0032-0034]).
With respect to claim 2, the combination of Manamohan, Shacham and Gentry teaches wherein the consensus algorithm is the Raft consensus algorithm (Manamohan, a blockchain network can refer to a network where nodes use a consensus mechanism to update a blockchain that is distributed across multiple parties [par. 0003, 0019]).
With respect to claim 3, the combination of Manamohan, Shacham and Gentry teaches wherein the parameter comprises information related to model exchange, local machine learning model weights, and/or the local machine learning model (Manamohan, a decentralized machine learning model is used in the process of updating training parameters to the nodes when they are available or join the network [par. 0003-0006]).
With respect to claim 4, the combination of Manamohan, Shacham and Gentry teaches wherein the parameter comprises clear data and/or synthetic data (Manamohan, the data of the parameter includes real-time traffic management in smart cities that is used in edge devices such as Internet of Things [par. 0019-0022]).
With respect to claim 5, the combination of Manamohan, Shacham and Gentry teaches wherein the collaborator node performs model aggregation using the decrypted parameters (Shacham, building a batch RSA algorithm into real-world systems requires an aggregation of requests, the solution to the problem is to create a batching server process that provides its clients with a decryption oracle. The presence of a batch-decryption server 520 includes a two-tier model: a batch server process that aggregates and performs RSA decryptions, and client processes that send decryption requests to the batch server [par. 0102-107]).
With respect to claim 6, the combination of Manamohan, Shacham and Gentry teaches wherein the collaborator node trains the aggregated machine learning model using the decrypted parameters (Shacham, the presence of a batch-decryption server 520 includes a two-tier model: a batch server process that aggregates and performs RSA decryptions, and client processes that send decryption requests to the batch server. The client processes implement the higher-level application protocol and interact with end-user agents [par. 0102-0107]).
With respect to claim 7, the combination of Manamohan, Shacham and Gentry teaches wherein the participant node is the collaborator node for a limited period (Manamohan, the participant nodes those are not the master node may periodically check the state of the master node whether the master node has completed generating parameters based on the local parameters shared by the participant nodes [par. 0054]).
With respect to claim 9, the combination of Manamohan, Shacham and Gentry teaches wherein the participant nodes elect a new collaborator node in response to the collaborator node being inactive (Manamohan, a master node may release its status as completing the merge for the current iteration. In the next iteration, a new master node will be selected among the participant nodes [par. 0023, 0024]).
With respect to claim 10, it is a system for federated learning claim that is corresponding to the method of claim 1. Therefore, it is rejected for the same reason as claimed in claim 1 above.
With respect to claim 11, it is a system for federated learning claim that is corresponding to the method of claim 2. Therefore, it is rejected for the same reason as claimed in claim 2 above.
With respect to claim 12, it is a system for federated learning claim that is corresponding to the method of claim 3. Therefore, it is rejected for the same reason as claimed in claim 3 above.
With respect to claim 13, it is a system for federated learning claim that is corresponding to the method of claim 4. Therefore, it is rejected for the same reason as claimed in claim 4 above.
With respect to claim 14, it is a system for federated learning claim that is corresponding to the method of claim 5. Therefore, it is rejected for the same reason as claimed in claim 5 above.
With respect to claim 15, it is a system for federated learning claim that is corresponding to the method of claim 6. Therefore, it is rejected for the same reason as claimed in claim 6 above.
With respect to claim 16, it is a system for federated learning claim that is corresponding to the method of claim 7. Therefore, it is rejected for the same reason as claimed in claim 7 above.
With respect to claim 18, it is a system for federated learning claim that is corresponding to the method of claim 9. Therefore, it is rejected for the same reason as claimed in claim 9 above.
Claims 8 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Manamohan et al (US 20190332955 A1) hereafter Manamohan, further in view of Shacham et al (US 20020087884 A1) hereafter Shacham, further in view of Gentry et al (US 20050246533 A1) hereafter Gentry, as claimed in claim 1 above, and further in view of Miao et al (US 20230042022 A1) hereafter Miao.
With respect to claim 8, the combination of Manamohan, Shacham and Gentry teaches all limitations as claimed in claim 1 above.
However, the combination of Manamohan, Shacham and Gentry does not explicitly disclose wherein the collaborator node broadcasts a heartbeat to the participant nodes.
In the same field of endeavor, Miao teaches wherein the collaborator node broadcasts a heartbeat to the participant nodes (a second slave node that remains in the current mesh network and the status of the mesh network is synchronized in the network by broadcasting the status through the second layer of network, such as network health status, mesh heartbeat, or master node information, etc. After synchronizing, it is determined whether a second node belongs to an invalid mesh network depending on whether there is the master node information [par. 0041]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to have incorporated the concept of broadcasts a heartbeat to the participant nodes as suggested by Miao into the combination of Manamohan, Shacham and Gentry because all of these systems addressing the process of broadcasting to the participant nodes by the master node based on the parameters. Doing so would be desirable because the combination of Manamohan, Shacham and Gentry would be more efficient by switching the channels until the channel switching is successful, if so, the slave node searches for the master node or a network containing the master node for networking (Miao, [par.0023]).
With respect to claim 17, it is a system for federated learning claim that is corresponding to the method of claim 8. Therefore, it is rejected for the same reason as claimed in claim 8 above.
Response to Arguments
The examiner respectfully acknowledges the applicant’s amendments to claims 1 and 10.
Applicant’s argument filed on 11/26/2025 regarding the rejections to claims 1-18 under 35 U.S.C. 103 have been fully considered and moot in view of the new ground of rejection (see rejection above).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Wall et al (US 20180316495 A1) disclosed an orthogonal access control system based on cryptographic operations provided by multi-hop proxy re-encryption (PRE) that strictly enforces only authorized access to data by groups of users, scalable to large numbers of users. Scalable delegation of decryption authority can be shared with a plurality of members of a group whether those members be users or devices, and members of a group can further create sub groups and delegate decryption authority to those members, whether users or devices. Members are granted access via generation of transform keys, and membership or access can be revoked merely be deleting the transform key—no elimination of the encrypted data, regardless of its storage location, is needed.
Wu et al (US 20210306308 A1) disclosed a mesh network system suitable for connection to a cloud server is provided. The system includes: a first node device, configured to store a first private key and encrypt to-be-verified data according to the first private key to generate first encrypted data; and a second node device, configured to receive the first encrypted data and send the first encrypted data to the cloud server. After sending the first encrypted data, the second node device obtains, from the cloud server, second encrypted data generated by encrypting a first key according to the first public key. The second node device sends the second encrypted data to the first node device. The first node device decrypts the second encrypted data according to the first private key to obtain the first key from the second encrypted data, and performs encrypted communication with the cloud server according to the first key.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Quoc Phung whose telephone number is (703) 756 1330. The examiner can normally be reached on Monday through Friday from 9am to 5pm PT.
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, Jennifer Welch can be reached on 571-272-7212. 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.
/Q.L.P./Examiner, Art Unit 2143
/JENNIFER N WELCH/Supervisory Patent Examiner, Art Unit 2143