With the wide deployment of cloud computing, outsourcing complicated computational tasks to cloud service providers has attracted much attention. An increasing number of clients with computationally constrained devices choose to outsource their heavy tasks to cloud servers to reduce the computational overhead in local. However, how to preserve the integrity of computational results becomes a challenge since commercial cloud servers are not trusted. Public verifiability is an effective mechanism to allow clients to verify the integrity of the results returned by the servers. Because the results are sensitive in many applications, it raises the problem of privacy leakage in the public verification process. In this paper, we propose an efficient verifiable computation scheme while keeping output privacy. The proposed scheme achieves blind verifiability such that the verifiers who have not the additional information (retrieve key) can verify the integrity of the result without learning the result. Furthermore, by combining with (k, n)-threshold sharing, our scheme allows the clients jointly learn the results.
KEYWORDSblind verifiability, cloud computing, KP-ABE, verifiable computation
INTRODUCTIONWith the rapid development of cloud technology, outsourced computation has been an important field. The technology provides not only the storage service but also the computing service, which can benefit the clients with limited resources a great deal. Meanwhile, the computationally constrained devices such as smartphones, laptops, and wearable equipments 1 have become popular. These scenarios contribute to the research of outsourced computation where the computationally weak clients (devices) outsource the expensive and complicated computation to the large and powerful servers. 2 In addition, outsourced computation is sometimes used to perform the complicated task in some cryptographic primitives 3-5 as well, which can make the primitives more efficient and practical. However, the servers are generally operated by the third-party outside the control domain of clients, and there may exist an incentive for servers to deceive clients into accepting an incorrect result. For instance, to save the computational resources, the cloud servers may not perform the advertised computation but instead return a computationally indistinguishable result to the client.In this case, the key problem is that the clients may not have enough computational resources to detect the incorrect result, which would bring trouble to clients in their subsequent works. For example, if the computational result is the statistics analysis for stock market, the incorrect result will cause the investment corporation property loss. Hence, clients need some efficient methodologies to guarantee that the returned result from servers is correct, which is a necessity in the outsourced computation paradigm.The design of verifiable outsourced computation has drawn widespread attentions. 2,6-9 In the verifiable computation scheme, the verifiability property allows the cl...