Designing Secure Communication Protocols from Trust Specifications

In a very large distributed system, entities may trust and mistrust others with respect to communication security in arbitrarily complex ways. We formulate the problem of designing a secure communication protocol, given a network interconnection and a ternary relation which captures trust between the entities. We identify several important ways of synthesizing secure channels, and study the algorithmic problem of designing a secure communication protocol connecting the entities, given the connectivity of the network and the trust relationship between the nodes. We show that whether secure communication is possible can be decided easily in polynomial time. If we also require that channel synthesis proceed along unambiguous paths (in which case the protocol is defined on a spanning tree of the netowrk), we show that the design problem is NP-complete, and we give a linear-time algorithsibly grm for an interesting special case of the problem.