I. Introduction
Secure distributed systems rely on trust. A security assumption defines the failures and attacks that can be tolerated and names conditions under which the system may operate. Implicitly, this determines the trust in certain components to be correct. In fault-tolerant replicated systems, trust has traditionally been expressed globally, through a symmetric assumption on the number or kind of faulty processes, which is shared by all processes. An example of this is the well-known threshold fault assumption: the system tolerates up to a finite and limited number of faulty processes in the system; no guarantees can be given beyond this about the correct execution of protocols. More generally, a symmetric trust assumption is defined through afail-prone system, which is a collection of subsets of processes, such that each of them contains all the processes that may at most fail together during a protocol execution.