  Computation outsourcing is an integral part of cloud computing. It enables
end-users to outsource their computational tasks to the cloud and utilize the
shared cloud resources in a pay-per-use manner. However, once the tasks are
outsourced, the end-users will lose control of their data, which may result in
severe security issues especially when the data is sensitive. To address this
problem, secure outsourcing mechanisms have been proposed to ensure security of
the end-users' outsourced data. In this paper, we investigate outsourcing of
general computational problems which constitute the mathematical basics for
problems emerged from various fields such as engineering and finance. To be
specific, we propose affine mapping based schemes for the problem
transformation and outsourcing so that the cloud is unable to learn any key
information from the transformed problem. Meanwhile, the overhead for the
transformation is limited to an acceptable level compared to the computational
savings introduced by the outsourcing itself. Furthermore, we develop
cost-aware schemes to balance the trade-offs between end-users' various
security demands and computational overhead. We also propose a verification
scheme to ensure that the end-users will always receive a valid solution from
the cloud. Our extensive complexity and security analysis show that our
proposed Cost-Aware Secure Outsourcing (CASO) scheme is both practical and
effective.
