Summary
In this chapter, we introduced the various challenges facing blockchain technology. A major challenge, blockchain's limited scalability, was discussed, along with several methods available to achieve greater scalability. We approached these methods using different models, which divide the blockchain into planes, or layers, that can be improved in different ways.
We also discussed privacy, which is one of the major limiting factors toward adopting public blockchains for various enterprise use cases. Next, we explored smart contract security and various tools to improve it, such as model checking. Formal verification is a deep and extensive subject, but a brief introduction to various aspects was given, which should serve as solid ground for further research in this area. We also saw examples of formal verification to have an idea of what tools are available.
Finally, we discussed some other challenges to consider for the future of blockchain, including the issue...