  As large amounts of data are circulated both from users to a cloud server and
between users, there is a critical need for privately aggregating the shared
data. This paper considers the problem of private weighted sum aggregation with
secret weights, where an aggregator wants to compute the weighted sum of the
local data of some agents. Depending on the privacy requirements posed on the
weights, there are different secure multi-party computation schemes exploiting
the information structure. First, when each agent has a local private value and
a local private weight, we review private sum aggregation schemes. Second, we
discuss how to extend the previous schemes for when the agents have a local
private value, but the aggregator holds the corresponding weights. Third, we
treat a more general case where the agents have their local private values, but
the weights are known neither by the agents nor by the aggregator; they are
generated by a system operator, who wants to keep them private. We give a
solution where aggregator obliviousness is achieved, even under collusion
between the participants, and we show how to obtain a more efficient
communication and computation strategy for multi-dimensional data, by batching
the data into fewer ciphertexts. Finally, we implement our schemes and discuss
the numerical results and efficiency improvements.
