Altcoin-Development
我在哪裡可以學習如何使用新的交易方案創建自己的區塊鏈?
我正在嘗試使用自己的交易創建自己的區塊鏈,但沒有太多關於它如何工作的詳細資訊。基本上我想使用區塊鏈創建一個具有我自己結構的交易。有可能的?
你沒有找到很多關於區塊鏈的詳細資源的原因是因為它是一項新的創新並且沒有被廣泛理解。大多數資源分散在部落格和程式碼儲存庫中。下面列出了一些開發人員和程式指南。
最有價值和主要的資源是比特幣核心客戶端實現——也稱為Satoshi 參考客戶端。
可以從第一原理設計和建構區塊鏈客戶端。該設計將需要幾個組件,以下是基礎知識:
- P2P 網路- 管理連接和發送/接收消息和數據
- 消息傳遞協議- 消息和數據格式
- 數據庫- 儲存和檢索塊頭、塊、交易和以前的支出 (UTXO)
- 客戶端行為邏輯- 處理消息、協議規則、coinbase 規則等
- 共識邏輯——收集、處理和應用關於交易、區塊和展開鏈有效性的同行共識
- 硬幣生成程式碼 - 採礦和工作量證明(如果有)
- 通用家庭程式碼 - 記錄、錯誤處理、狀態維護等
乍一看,這似乎令人生畏,但這是一個值得且可以實現的項目。
請注意,該密碼術未列出。這是因為私有區塊鏈不需要秘密或混淆。但是,如果感興趣,可以實現比特幣的橢圓曲線庫和地址模式。
在從第一原理創建區塊鏈客戶端和協議之前,有必要對比特幣協議的工作原理進行一些研究。Andreas Antonopoulos掌握比特幣提供了很好的洞察力。其他感興趣的資源:
- <https://bitcoin.org/en/developer-documentation>
- 這個問題有有用的討論和一些學習資源的指針。
研究參考客戶端的行為方式,並閱讀參考客戶端程式碼,尤其是文件main.cpp - (連結到 Core v0.13,因為從 v0.14 開始,該文件的程式碼已被合理化為單獨的文件)
此外,還有幾個開源庫允許您執行準系統區塊鏈節點並交換協議消息。一些庫比其他庫更好:
- pychain - 基本的區塊鏈原型
- PyCoin - Python 比特幣複製
- Zen System - 加密所有具有通信、交易和 DAO 的區塊鏈。