Gibt es irgendwo eine Dokumentation, um den C++-Code von Bitcoin Core (verfügbar auf Github) "von A bis Z" zu verstehen und ihn neu erstellen zu können?
Um Bitcoin Core zu verstehen, ist die beste Ressource wahrscheinlich der Quellcode selbst:
https://github.com/bitcoin/bitcoin
Um zu verstehen, was im Code vor sich geht, lesen Sie die Entwicklerdokumentation und das Princeton Bitcoin Book . Denken Sie daran, dass der Code schneller aktualisiert wird als die Dokumentation, daher sollte der Code Ihre Quelle der Wahrheit sein.
Einige interessante Startpunkte:
https://github.com/bitcoin/bitcoin/blob/master/src/script/interpreter.cpp – dies ist die Quelldatei, die den Code zum Interpretieren des Skripts enthält und daher die Gültigkeit der Transaktion prüft
https://en.bitcoin.it/wiki/Protocol_documentation – die Dokumente für das Netzwerkprotokoll, wie Nachrichtendefinitionen und Datenstrukturen
https://bitcoin.org/en/developer-reference#transactions – Transaktionsreferenz, die den Inhalt und Aufbau von Transaktionen beschreibt
Für Klarstellungen und Fragen empfehle ich sehr diese StackExchange-Site :)
Vor ein paar Jahren habe ich ein paar Artikel zur Analyse des Bitcoin-Kerncodes erstellt. Es ist hier: http://embedded-design-vic.blogspot.com/2017/07/bitcoin-core-tutorial-and-source-code.html
Jestin
Murch
Jestin