1. A computing device configured to participate in a multi-party computation over a network, the computing device comprising: one or more processing devices configured via computer readable instructions to: designate a first input wire key to represent a first value for an input wire of a circuit; designate a second input wire key to represent a second value for the input wire of the circuit; designate a first output wire key to represent the first value for an output wire of the circuit and a second output wire key to represent the second value for the output wire of the circuit; determine a concealed input by mapping an input bit of an actual input that has the first value to the first input wire key; receive, over the network from a second computing device, a first public key and a second public key, the first public key corresponding to the first value and the second public key corresponding to the second value; encrypt the first input wire key with the first public key to provide a first ciphertext; encrypt the second input wire key with the second public key to provide a second ciphertext; provide the concealed input, the first ciphertext, and the second ciphertext over the network to a third computing device, the third computing device using the circuit to compute a computation output, the first input wire key allowing the third computing device to recover a computed output wire key representing an output bit of the computation output; receive the computation output over the network from the third computing device; and in an instance when the computed output wire key matches the first output wire key, determine that the output bit of the computation output has the first value.