Ethereum Yellow Paper
The Yellow Paper is a formal definition of the Ethereum protocol, originally by Gavin Wood, currently maintained by Nick Savers and with contributions from many people around the world.
It is a free culture work, licensed under Creative Commons Attribution Share-Alike (CC-BY-SA) Version 4.0.
Repository Currently Outdated
The Yellow Paper is out of date. It reflects the Ethereum specification up to the Gray Glacier network upgrade, activated on the Ethereum mainnet at block
15_050_000 (June 2022).
It does not contain changes introduced in Paris, or any post-merge upgrade.
An alternative Python Execution Layer specification is actively maintained and up to date.
If you would like to update the Yellow Paper to inlcude missing pre-merge network upgrades, you can apply for a grant here.
If you just want to read the paper, the latest version is generally available as a PDF at https://ethereum.github.io/yellowpaper/paper.pdf. If you find that the borders for links block too much text when viewing the PDF in the browser, you can instead download it and open and view it with a PDF viewer application such as Adobe Acrobat or Evince, where the borders are less likely to display over text.
However, if you want to edit the paper, then read on. The paper comes as a single
It is recommended to use an IDE such as Visual Studio Code with the LaTeX Workshop extension, to edit the tex file, and show the PDF.
Another option is to separately edit the
tex file and build as follows (you'll still need to clone the repo then open the yellowpaper folder):
git clone https://github.com/ethereum/yellowpaper.git cd yellowpaper ./build.sh
This will create a PDF version of the Yellow Paper. Following building, you can also use standard
pdflatex tools for compiling/preview, like http://latex.informatik.uni-halle.de/latex-online/latex.php.
Tips on editing
The previous protocol versions are listed in BRANCHES.md.