Multiparty computation (MPC) consists in several parties engaging in joint computation in such a way that each party's input and output remain private to that party. Whereas MPC protocols for specific computations have existed since the 1980s, only recently general-purpose compilers have been developed to allow MPC on arbitrary functions. Yet, using today's MPC compilers requires substantial programming effort and skill on the user's side, among other things because nearly all compilers translate the code of the computation into a Boolean or arithmetic circuit. In particular, the circuit representation requires unrolling loops and recursive calls, which forces programmers to (often manually) define loop bounds and hardly use recursion. We present an approach allowing MPC on an arbitrary computation expressed as ordinary code with all functionalities that does not need to be translated into a circuit. Our notion of input and output privacy is predicated on unlinkability. Our method leverages co-utile computation outsourcing using anonymous channels via decentralized reputation, makes a minimalistic use of cryptography and does not require participants to be honest-but-curious: it works as long as participants are rational (self-interested), which may include rationally malicious peers (who become attackers if this is advantageous to them). We present example applications, including e-voting. Our empirical work shows that reputation captures well the behavior of peers and ensures that parties with high reputation obtain correct results.
翻译:多党计算(MPC)由多个政党组成,它们共同计算的方式使每个政党的投入和产出都保持对该缔约方的私密性。尽管自1980年代以来就存在多党的具体计算协议,但只有最近才开发了通用的编制器,允许多党任意功能。然而,使用今天的多党计算器(MPC),用户方面需要大量的编程努力和技能,因为几乎所有的编纂者都将计算代码转换成布利安或算术回路。特别是,电路代表需要不滚动的回路和循环电话,迫使程序员(通常是手动)定义环框,并很少使用循环。我们提出了一个方法,允许多党任意计算,以普通代码的形式表达出所有不需要转换的功能。我们的投入和产出隐私概念取决于互不相连接性。我们的方法通过分散的声誉来利用匿名频道进行共同计算外包,对加密进行最起码的利用,并且不要求参与者诚实的重复电话:只要参与者(通常)定义环框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框框