オープンソースプロジェクト
nervosnetwork/ckb avatar
nervosnetwork/ckb

Nervos CKBのレイヤー1設計とノード運用で確認する境界

プロジェクト概要:Nervos CKB はパブリックなパーミッションレス ブロックチェーンであり、Nervos ネットワークのレイヤー 1 です。

スター 1,219フォーク 265RustMIT

ひと目でわかる

これは何?
公開パーミッションレスチェーンCKBについて、コンセンサス、CKB-VM、ネットワーク、ブランチ、Sentry設定を整理します。
誰に向いている?
Nervos CKBは、公開パーミッションレスのレイヤー1を運用し、検証をチェーン側、計算をレイヤー2以降へ分ける設計を検討する人向けのRust実装です。mainnetのMiranaとtestnetのPudgeでは、対応するリリースと初期化コマンドを分けてください。
商用利用できる?
できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。直近 1 日以内に新しいコミットがあります。
何の言語で書かれている?
主に Rust です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

CKBが担うレイヤー1の位置

nervosnetwork/ckbは、Nervos Networkのレイヤー1であるCommon Knowledge BaseのRust実装です。READMEはCKBを公開かつパーミッションレスなブロックチェーンと説明しています。Nervos Networkは、拡張可能で相互運用できるブロックチェーンプロトコル群を定義し、分散型経済を作る一部としてCKBを位置付けています。

素材時点のGitHub情報ではstarsは1,219、forksは265、open issuesは78で、既定ブランチはdevelopです。公開リポジトリの数字は活動をみる材料ですが、ノード数、処理性能、ネットワークの安全性を測った結果ではありません。チェーンの経済設計や相互運用性の細部はREADMEでは完結せず、RFCへのリンクを読む必要があります。

PoWと改良Nakamotoコンセンサス

CKBはProof of Workを使い、READMEが改良Nakamotoコンセンサスと呼ぶ方式を採用しています。プロジェクトの説明では、平均的なハードウェアとネットワーク帯域で性能を得ながら、レイヤー1の分散化と安全性を損なわないことを目指しています。マイニングアルゴリズムはEaglesongで、仕様はNervos RFCにリンクされています。

READMEは改良点の定義、ブロック時間、ブロックサイズ、ハッシュレート、スループットの数値を載せていません。したがって、コンセンサスの説明から性能を推定することはできません。ノードを試す際は、使用するネットワーク、同期時間、ディスク増加、帯域、再起動後の復帰を別々に記録してください。

CKB-VMと検証に寄せた計算

CKBのスクリプトはCKB-VMで動作します。READMEはCKB-VMをRISC-V ISAと完全互換の仮想マシンと説明し、RISC-Vへコンパイルできる言語でスクリプトを記述できるとしています。CKBはUniversal Verification Layerとも表現され、検証をチェーン側に置き、計算をレイヤー2以上のアプリケーションやプロトコルへ委ねます。

この説明は、チェーンが何でも実行するという意味ではありません。利用予定の言語、コンパイラ、VMの命令、検証コスト、レイヤー2との接続を具体的なサンプルで確認します。READMEはcellモデルに関係する外部記事へ案内していますが、モデルの完全な説明やテスト済み言語の一覧は含んでいません。未確認の部分は設計上の仮定として記録してください。

MiranaとPudgeを分けた初期化

READMEが示す公開ネットワークは、メインネットのMiranaとテストネットのPudgeです。Miranaへ参加する場合は、最新リリースを使ってckb init --chain mainnetを実行します。Pudgeの場合はckb init --chain testnetです。二つのコマンドは似ていますが、接続先とデータの意味が違うため、同じデータディレクトリを使わないように環境を分けます。

Miranaはepoch 5414から有効で、Linaからの更新には移行ガイドが案内されています。Pudgeはepoch 3113から有効です。READMEはepoch番号の意味、必要なハードウェア、帯域、移行で変わるデータの詳細を説明していません。リリース版、チェーン設定、データディレクトリ、ログを保存し、同期と再初期化を試したうえで運用に進みます。

masterとdevelopの使い分け

CKBのREADMEは、masterブランチを定期的にビルドとテストを行い、本番利用の準備ができたブランチと説明しています。developは新機能を取り込む作業ブランチで、安定していないと明記されています。GitHubの既定ブランチはdevelopなので、リポジトリを開いてそのまま取得した版をmainnet運用へ使うとは限りません。

変更履歴はGitHub ReleasesとmasterのCHANGELOG.mdで確認できます。docsにはQuick Start、Configure CKB、Platform Support、バイナリの取得またはビルド、開発チェーンでのマイニング試験が案内されています。Mainnet MiranaとTestnet Pudgeの文書はmaster側へ切り替えて読むようREADMEに注記があるため、ブランチとネットワークの対応を導入記録に残します。

プラットフォームと開発者向け窓口

READMEは、各プラットフォームのサポートを3つの階層に分け、それぞれ異なる保証を持つと説明しています。ただし、階層の条件や保証内容はREADMEに列挙されず、docs/platform-support.mdへ委ねられています。ノードを動かすOSやCPUが対象となるかは、必ずその文書と実機で確認してください。

コントリビューションでは、good-first-issueの検索、CONTRIBUTING.md、SECURITY.md、Nervos RFCが入口になります。質問先として英語と中国語のDiscordが案内されていますが、応答時間や対応範囲は記載されていません。セキュリティ問題を通常のissueへ出す前に、SECURITY.mdの手順を確認する運用を決めておくべきです。

MITライセンスとSentry送信

Nervos CKBはMITライセンスで提供され、READMEはCOPYINGとOpen Source Initiativeのページを参照しています。ライセンス確認は利用や改変の出発点ですが、依存ライブラリの条件、配布物の著作権表示、ノード運用に関する法務判断までは含みません。

READMEには、Rustのpanicが起きたときckbプロセスがスタックトレースをSentryへ送る動作があると記載されています。mainnet開始前は既定で有効で、設定ファイルのdsnを空にすれば無効化できると説明されています。送信先、ログに含まれる情報、現在の既定値、組織のデータ規則を確認してからノードを外部へ接続してください。性能値やサポート保証がREADMEにない点も、採用時の未確認事項として残します。

ノード試験で保存する記録

導入の検証では、取得したリリースの版、対象ネットワーク、初期化に使ったコマンド、設定ファイルの変更、データディレクトリの場所を残します。同期中と同期後のログを分け、再起動、停止、再初期化、移行後の確認結果も記録してください。Sentryのdsnを空にした場合と既定値のままにした場合で、エラー情報の送信方針が変わる可能性があります。外部へ接続する前に、組織の情報管理規則とSECURITY.mdを照合します。READMEにないブロック時間や処理量は測定値を作らず、未確認の項目として扱います。

編集部の結論

Nervos CKBは、公開パーミッションレスのレイヤー1を運用し、検証をチェーン側、計算をレイヤー2以降へ分ける設計を検討する人向けのRust実装です。mainnetのMiranaとtestnetのPudgeでは、対応するリリースと初期化コマンドを分けてください。developは不安定な作業ブランチ、masterは本番利用を想定したブランチとREADMEに記載されていますが、実際のノード運用を保証する説明ではありません。Sentryへのスタックトレース送信、プラットフォーム階層、移行手順、性能値を自分の環境で確認してから採用を判断するのが適切です。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート