1. A method comprising: (a) receiving, at a computing device, a selection of at least a predetermined number of servers in a cloud, said cloud comprising a cluster of devices associated with a network; (b) establishing, via the computing device, a connection with each selected server, said connection comprising a secure communication channel; (c) receiving, at each of the selected servers, client information comprising at least a description of a desired computation and a unique seed value for each selected server; (d) determining, via each of the selected servers, a Boolean circuit that corresponds to said desired computation, said determination comprising generating garbled values based on the unique seed value via a pseudo-random number generation algorithm, wherein said pseudo-random number generation algorithm generates a pseudorandom bit sequence comprising information corresponding to said Boolean circuit; (e) creating, via another server independent of the selected servers, a garbled circuit based on said determination of the Boolean circuit, said creation comprises facilitating communication between said selected servers using the pseudorandom bit sequence; (f) evaluating, via an evaluation server independent of the selected servers, said garbled circuit, said evaluation comprises generating, via the computing device and independent of the selected servers, garbled inputs that unlock said garbled circuit based on said unique seed values; and (g) determining, via the evaluation sever, garbled outputs that correspond to said garbled inputs.