Skip to main content

Introduction to Reliable and Secure Distributed Programming

  • Textbook
  • © 2011
  • Latest edition


  • Introduces fundamental reliable and secure distributed programming abstractions, and offers algorithms to implement these abstractions
  • Incremental approach explores basic abstractions before moving to more sophisticated concepts
  • The book functions as a complete practical reference to the basics of reliable distributed programming applications
  • Includes a companion set of running examples implemented in Java
  • Includes supplementary material:

This is a preview of subscription content, log in via an institution to check access.

Access this book

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

eBook USD 49.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 99.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

About this book

In modern computing a program is usually distributed among several processes. The fundamental challenge when developing reliable and secure distributed programs is to support the cooperation of processes required to execute a common task, even when some of these processes fail. Failures may range from crashes to adversarial attacks by malicious processes.

Cachin, Guerraoui, and Rodrigues present an introductory description of fundamental distributed programming abstractions together with algorithms to implement them in distributed systems, where processes are subject to crashes and malicious attacks. The authors follow an incremental approach by first introducing basic abstractions in simple distributed environments, before moving to more sophisticated abstractions and more challenging environments. Each core chapter is devoted to one topic, covering reliable broadcast, shared memory, consensus, and extensions of consensus. For every topic, many exercises and their solutions enhance the understanding

This book represents the second edition of "Introduction to Reliable Distributed Programming". Its scope has been extended to include security against malicious actions by non-cooperating processes. This important domain has become widely known under the name "Byzantine fault-tolerance".

Similar content being viewed by others


Table of contents (7 chapters)

Authors and Affiliations

  • IBM Research Zürich, Rüschlikon, Switzerland

    Christian Cachin

  • de Lausanne (EPFL), Faculté Informatique et Communications, École Polytechnique Fédérale, Lausanne, Switzerland

    Rachid Guerraoui

  • Instituto Superior Técnico, INESC-ID, Lisboa, Portugal

    Luís Rodrigues

About the authors

Rachid Guerraoui is Professor in the School of Computer and Communication Sciences (LPD), at EPFL in Lausanne, Switzerland. Luís E. T. Rodrigues is Professor (Professor Catedrático) at the Departamento de Engenharia Informática, Instituto Superior Técnico (IST), at the Universidade Técnica de Lisboa in Portugal. Christian Cachin works at IBM Research in Zurich, Switzerland.

Bibliographic Information

  • Book Title: Introduction to Reliable and Secure Distributed Programming

  • Authors: Christian Cachin, Rachid Guerraoui, Luís Rodrigues

  • DOI:

  • Publisher: Springer Berlin, Heidelberg

  • eBook Packages: Computer Science, Computer Science (R0)

  • Copyright Information: Springer-Verlag Berlin Heidelberg 2011

  • Hardcover ISBN: 978-3-642-15259-7Published: 12 February 2011

  • Softcover ISBN: 978-3-642-42327-7Published: 14 October 2014

  • eBook ISBN: 978-3-642-15260-3Published: 11 February 2011

  • Edition Number: 2

  • Number of Pages: XIX, 367

  • Topics: Algorithm Analysis and Problem Complexity, Computer Communication Networks, Operating Systems

Publish with us