| CPC H04L 9/3247 (2013.01) [H04L 9/0825 (2013.01); H04L 9/3236 (2013.01)] | 20 Claims |

|
1. A method for aggregating data, the method being implemented by at least one processor, the method comprising:
receiving, by the at least one processor from a first user from among a plurality of users, a first public key and a first signature that is generated by the first user by using a first secret key that is associated with the first user;
verifying, by the at least one processor, the first signature;
transmitting, by the at least one processor to the first user, a set of public keys that are associated with other users included in the plurality of users;
receiving, by the at least one processor from the first user, a first set of encrypted messages;
verifying, by the at least one processor, that at least a predetermined minimum number of encrypted messages have been received from the plurality of users;
transmitting, by the at least one processor to the first user, at least one set of encrypted messages received from the other users included in the plurality of users;
receiving, by the at least one processor from the first user, a result of applying a predetermined hash function to a first iteration number and using a result thereof as a base of exponentiation for which a corresponding exponent is a combination of a first new dataset with a first random mask selected by the first user;
transmitting, by the at least one processor to the first user, a first current list of online users;
receiving, by the at least one processor from the first user, a second signature that is generated by using the first secret key with respect to the first current list of online users;
transmitting, by the at least one processor to the first user, a first set of signatures that are received from the other users included in the plurality of users;
receiving, by the at least one processor from the first user, a result of applying the predetermined hash function to the first iteration number; and
aggregating, by the at least one processor, the first new dataset with the first aggregated dataset in order to generate a second aggregated dataset.
|