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);