btcd は、Go (golang) で書かれた代替フルノード ビットコイン実装です。
このプロジェクトは現在鋭意開発中であり、ベータ版の状態です。 非常に安定しており、2013 年 10 月から本番環境で使用されています。
ビットコイン コアとしてブロックを受け入れるための正確なルール (コンセンサス バグを含む) を使用して、ブロック チェーンを適切にダウンロード、検証、提供します。 私たちは、btcd がブロックチェーンへのフォークを引き起こさないように細心の注意を払ってきました。 これには、すべての「公式」ブロック受け入れテスト (およびいくつかの追加テスト) が含まれる完全なブロック検証テスト フレームワークが含まれており、プル リクエストごとに実行され、コンセンサスに適切に従っていることを確認します。 また、Bitcoin Core コード内のすべての JSON テスト データを渡します。
また、新たにマイニングされたブロックを適切に中継し、トランザクション プールを維持し、まだブロックに組み込まれていない個々のトランザクションを中継します。 これにより、プールに許可されたすべての個々のトランザクションがブロック チェーンで要求されるルールに従っていることが保証され、マイナー要件 (「標準」トランザクション) に基づいてトランザクションをフィルターするより厳密なチェックも含まれます。
btcd と Bitcoin Core の主な違いの 1 つは、btcd にはウォレット機能が含まれていないことです。これは非常に意図的な設計上の決定でした。 詳細については、こちらのブログエントリを参照してください。 これは、実際には btcd を使用して直接支払いを行ったり受け取ったりすることはできないことを意味します。 その機能は、btcwallet および Paymetheus (Windows のみ) プロジェクトによって提供されており、どちらも現在開発中です。
1.17 以降を使用してください。
https://github.com/btcsuite/btcd/releases
ここのインストール手順に従って Go をインストールします: http://golang.org/doc/install
Go が正しくインストールされており、サポートされているバージョンであることを確認します。
$ go バージョン $ go env GOROOT GOPATH
注: 上記のGOROOT
とGOPATH
同じパスであってはなりません。 書き込み権限の問題を避けるために、 GOPATH
~/goprojects
などのホーム ディレクトリ内のディレクトリに設定することをお勧めします。 この時点で$GOPATH/bin
PATH
に追加することもお勧めします。
次のコマンドを実行して btcd とすべての依存関係を取得し、インストールします。
$ cd $GOPATH/src/github.com/btcsuite/btcd $ GO111MODULE=on go install -v 。 ./cmd/...
btcd (およびユーティリティ) が$GOPATH/bin
にインストールされます。 Go のインストール時に bin ディレクトリをシステム パスにまだ追加していない場合は、ここで追加することをお勧めします。
次のコマンドを実行して、btcd、すべての依存関係を更新し、インストールします。
$ cd $GOPATH/src/github.com/btcsuite/btcd $ git プル $ GO111MODULE=on go install -v 。 ./cmd/...
btcd には、実行方法を調整するために使用できるいくつかの構成オプションがありますが、導入セクションで説明した基本操作はすべて、構成を行わなくても機能します。
$ ./btcd
irc.libera.チャット
チャンネル #btcd
ウェブチャット
このプロジェクトには、統合された github 問題トラッカーが使用されます。
ドキュメントは進行中です。 これは docs フォルダーにあります。
再現可能なビルド システムを使用して公開されたリリースの整合性を検証する方法については、すべてのリリースの現在のビルド/検証プロセスに関するドキュメントを参照してください。
btcd は、コピーフリー ISC ライセンスに基づいてライセンスされています。