Есть ли где-нибудь документация, чтобы понять код C++ Bitcoin Core (доступный на Github) «от а до я» и возможность воссоздать его?
Чтобы понять Bitcoin Core, лучшим ресурсом, вероятно, является сам исходный код:
https://github.com/bitcoin/биткойн
Чтобы понять, что происходит в коде, ознакомьтесь с документацией для разработчиков и Princeton Bitcoin Book . Имейте в виду, что код обновляется быстрее, чем документация, поэтому код должен быть вашим источником правды.
Несколько интересных мест для начала:
https://github.com/bitcoin/bitcoin/blob/master/src/script/interpreter.cpp — это исходный файл, который содержит код для интерпретации скрипта и, следовательно, проверяет валидность транзакции
https://en.bitcoin.it/wiki/Protocol_documentation — документы для сетевого протокола, такие как определения сообщений и структуры данных.
https://bitcoin.org/en/developer-reference#transactions — справочник по транзакциям, описывающий содержание и структуру транзакций.
Для любых уточнений и вопросов очень рекомендую этот самый сайт StackExchange :)
Пару лет назад я написал несколько статей по анализу кода ядра биткойна. Он находится здесь: http://embedded-design-vic.blogspot.com/2017/07/bitcoin-core-tutorial-and-source-code.html .
Джестин
Марч
Джестин