Skip to content

PacktPublishing/Foundations-of-Blockchain

Repository files navigation

Foundations of Blockchain

Foundations of Blockchain

This is the code repository for Foundations of Blockchain, published by Packt. It contains all the supporting project files necessary to work through the book from start to finish.

You can purchase the book from amazon.com or packt.com

About the book

Foundations of Blockchain helps you to understand the concepts of blockchain technology. This book introduces you to cryptocurrency and several blockchain platforms. It also gives an in-depth analysis of the potential and concerns of the technology so that blockchain can be adopted where its implementation actually adds value.

Contents

Chapters and their respective code directories of the book.

  1. Chapter 1: Introduction
  2. Chapter 2: A Bit of Cryptography
  3. Chapter 3: Cryptography in Blockchain
  4. Chapter 4: Networking in Blockchain
  5. Chapter 5: Cryptocurrency
  6. Chapter 6: Diving into Blockchain - Proof of Existence
  7. Chapter 7: Diving into Blockchain - Proof of Ownership
  8. Chapter 8: Blockchain Projects
  9. Chapter 9: Blockchain Optimizations and Enhancements
  10. Chapter 10: Blockchain Security
  11. Chapter 11: When Shouldn't We Use Blockchain?
  12. Chapter 12: Blockchain Use Cases

Instructions and navigation

All the scripts and applications in this repo are organized chapter wise, following the same order as that of the chapters in the book.

Software and hardware requirements

Software required OS required Hardware required
Docker Community Edition, Git, Node.js 8+, Python 3.6+ Computer with Windows, Linux or macOS 20 GB of disk space, 2 GB of RAM

NOTE:

  1. The mentioned hardware requirement is a general requirement. Some applications may need a different specification. You can find the detailed requirements here.
  2. All the above mentioned software requirements are general requirements for most of the chapters, and the installation guide can be found here. Chapter specific requirements can be found in the respective chapter directories.

Contributing

You are welcome to submit issues and enhancement requests and work on any of the existing issues. Follow this simple guide to contribute to the repository.

  1. Create or pick an existing issue to work on
  2. Fork the repo on GitHub
  3. Clone the forked project to your own machine
  4. Commit changes to your own branch
  5. Push your work back up to your forked repo
  6. Submit a Pull request from the forked repo to our repo so that we can review your changes

NOTE: Be sure to merge the latest from "upstream" before making a pull request!

Credits

  1. Chapter 3: hash_nonce_example.py and proof_of_work_example.py is inspired from Mastering Bitcoin - First Edition by Andreas M. Antonopoulos LLC which is licensed under Creative Commons Attribution-ShareAlike 4.0 International License

  2. Chapter 4: The application is inspired from the work: naivechain by Lauri Hartikka which is licensed under Apache License 2.0

  3. Chapter 5: The application is inspired from the work: naivecoin by Lauri Hartikka which is licensed under Apache License 2.0

  4. Chapter 6: The application is inspired from the work: proof-of-existence-on-blockchain by RecordsKeeper which is licensed under Apache License 2.0

  5. Chapter 10: The application is inspired from the work: replace-by-fee-tools by Peter Todd which is licensed under GPL-3.0

Download a free PDF

If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.

https://packt.link/free-ebook/9781789139396