[Mastering Ethereum](https://www.oreilly.com/library/view/mastering-ethereum/9781491971932/)

Mastering Ethereum

If you’re looking to get started with the Ethereum protocol – or are among the many open source developers, integrators, and system administrators already working with this platform – Mastering Ethereum is the definitive book on the topic. Ethereum represents the gateway to a worldwide, decentralized computing paradigm. This platform enables you to run decentralized applications (DApps) and smart contracts that have no central points of failure or control, integrate with a payment network, and operate on an open blockchain. With this practical guide, Andreas M. Antonopoulos and Gavin Wood provide everything you need to know about building smart contracts and DApps on Ethereum and other virtual-machine blockchains. ...

Andreas M. Antonopoulos, Dr. Gavin Wood
[The Byzantine Generals Problem](https://lamport.azurewebsites.net/pubs/byz.pdf)

The Byzantine Generals Problem

Reliable computer systems must handle malfunctioning components that give conflicting information to different parts of the system. This situation can be expressed abstractly in terms of a group of generals of the Byzantine army camped with their troops around an enemy city. Communicating only by messenger, the generals must agree upon a common battle plan. However, one or more of them may be traitors who will try to confuse the others. The problem is to find an algorithm to ensure that the loyal generals will reach agreement. It is shown that, using only oral messages, this problem is solvable if and only if more than two-thirds of the generals are loyal; so a single traitor can confound two loyal generals. With unforgeable written messages, the problem is solvable for any number of generals and possible traitors. Applications of the solutions to reliable computer systems are then discussed. ...

Leslie Lamport, Robert Shostak, Marshall Pease