Engineering Secure Two-Party Computation Protocols: