Distributed CONGEST Algorithms against Mobile Adversaries

05/23/2023
by   Orr Fischer, et al.
0

In their seminal PODC 1991 paper, Ostrovsky and Yung introduced the study of distributed computation in the presence of mobile adversaries which can dynamically appear throughout the network. Over the years, this setting has been studied mostly under the assumption that the communication graph is fully-connected. Resilient CONGEST algorithms for general graphs, on the other hand, are currently known only for the classical static setting, i.e., where the set of corrupted edges (or nodes) is fixed throughout the entire computation. We fill this gap by providing round-efficient simulations that translate given CONGEST algorithms into equivalent algorithms that are resilient against f-mobile edge adversaries. Our main results are: -Perfect-Security with Mobile Eavesdroppers: A translation of any r-round f-static-secure algorithm into an equivalent Θ(f)-mobile-secure algorithm with Θ(r) rounds. We also show that the f-static-secure algorithms of [Hitron, Parter and Yogev, DISC 2022 ITCS 2023] can be modified into f-mobile-secure algorithms with the same number of rounds. -Resilience with Mobile Byzantine Adversaries: An f-mobile-byzantine simulation which is based on a decomposition of the graph into low-diameter edge-disjoint spanning trees. This provides us with near-optimal CONGEST compilers for expander graphs. It also leads to near-optimal compilers in the congested-clique model against Θ(n)-mobile adversaries. For general (2f+1) edge-connected graphs with f-mobile adversary, we almost match the bounds known for the f-static setting, when provided a trusted pre-processing phase. Our results are based on a collection of tools from interactive coding [Gelles, Found. Trends Theor. Comput. Sci. 2017], linear sketches and low-congestion graph decomposition. The introduced toolkit might have further applications for resilient computation.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset