Research Article

A Secure Truth Discovery for Data Aggregation in Mobile Crowd Sensing

Algorithm 2

Truth discovery process.
Input: n participants, m objects, sensing data for n participants base on m objects:
output: Estimation ground truths for m objects:
(1) Server S randomly initializes the estimated ground truth for each object and sends to n participants;
(2)Pi randomly produces a integer and calculates the public parameters Wi, while sharing Wi with the precursor and successor nodes;
(3)After a round of swapping, Pi computes secret random number Ri
(4)repeat
(5)  for i = 1, 2, …., n do
(6)   for j = 1, 2, …., m do
(7)    Pi calculates , then encrypting them forms ciphertext and sending E(Di) to CH;
(8)    CH fuses , which is transmitted by the Pi in the cluster based on the secure sum protocol, to obtain , and uploads it as ciphertext to S by using the secret key ki;
(9)    S decrypts and aggregates all the cluster data to obtain and sends them to Pi;
(10)    After receiving D sent by S, Pi update the Wi according to equation (9);
(11)    Pi calculates ciphertext with respectively and sends them to CH;
(12)    CH fuses and based on the secure sum protocol to obtain with , while uploading them as ciphertext to S by using the secret key ki;
(13)    S decrypts and aggregates all the cluster data to obtain with , and estimates the ground truths for m objects according to equation (12);
(14)   end for
(15)  end for
(16)until Convergence criterion is satisfied;
(17)return;