本稿について
ÆTERNITYのメインネットリリース前から行われているセキュリティ監査報告のv0.5について見ていきます。監査報告のバージョンが0.5なのは執筆時点で公開されているバージョンが0.5だからです。
この監査はÆTERNITYのファーストリリース(V1.0)となる"Roma"の前の段階に対してcnlabが行ったものになります。ちなみに執筆時点でのリリース最新版はセカンドリリース(V2.0)の"Minerva"です(マイナーリリースも含めるとMinerva V2.2.0が最新)。最新版はGitHubで確認していただければと思います。
監査時期的には半年前に当たるのでちょっと古いのですが、だいぶ古くなったホワイトペーパーに代わって随時更新されているプロトコルのページをそのまま読み込むよりはとっつきやすい気もするので...。
今回の範囲は「1. Management Summary」です。原文はこちらになります。
スポンサードサーチ
セキュリティレビュー:ÆTERNITYブロックチェーン
バージョン | 変更 | 日付 |
0.1 | 初版 | 2018-09-12 |
0.2 | プロトコルレコメンデーション | 2018-09-18 |
0.3 | ソースコードレビューとノードに対するテストが一部完了 | 2018-10-24 |
0.4 | ノードに対するさらなるテストが完了 | 2018-11-13 |
0.5 | ベースアプリケーションの暗号コードのレビュー | 2018-11-19 |
今回のまとめ
- メインリリース前にプロジェクト外のセキュリティ研究者ら(cnlab)を交えて監査を行った。監査の範囲はプロトコルの設計、ノード実装、ウォレット実装である。
- プロトコルの設計について
- ÆTERNITYプロトコルのプロトコル設計全体はブロックチェーンネットワークのしっかりした基盤を与えるものであると結論付ける。
- ノードのリファレンス実装について
- 現時点では、ÆTERNITYノードのリファレンス実装はÆTERNITYブロックチェーンのネットワークに良質な基盤を与えるものであると結論付ける。
- ウォレット実装
- このベースアプリの修正版は使い勝手の良い日常利用を目的とするウォレットに適切なセキュリティを備えていると結論付ける。
※以下、今回まとめた範囲の和訳になりますので詳細をご覧になりたい方は読み進めてください。
1. マネジメントサマリ
ÆTERNITYは新しいブロックを作ることを目標とするプロジェクトだ。本プロジェクトはBitcoinやEthereumのような既存の広く知られているブロックチェーンでは利用できない多くの機能を提供することを目的とする。
ÆTERNITYのプロトコルとそのノードやウォレットのリファレンス実装はローンチの準備段階に入った。ローンチ前にÆTERNITYは第三者のセキュリティ研究者によるセキュリティレビューを実施したいと考えている。セキュリティレビューの範囲にはプロトコルの設計だけでなく関連するクライアントソフトウェアの設計及び実装が含まれる。
cnlab security ag(以下、cnlab)は個のセキュリティレビューを実施する。ÆTERNITYブロックチェーンの様々な側面をカバーするために、レビューはいくつかのステップに分けて行う。
- ÆTERNITYプロトコルの設計
- ノードエンジニアリングと実装(Epoch)
- ウォレットエンジニアリングと実装
現段階では、最初のステップのセキュリティレビューが実施済みで、リファレンスノード(Epoch)のテストのほとんどが実施済みだ。ウォレットのテストは現在進行中である。
1.1 プロトコルの設計
ÆTERNITYプロトコルのプロトコル設計全体はブロックチェーンネットワークのしっかりした基盤を与えるものであるとの結論に至った。
レビュー中に私たちはステートチャネルの解決に関する問題に気付いた。しかしながらプロトコル全体を危険にさらさない方法でこの問題に対処可能であると考えている。
さらに、ネットワークのセキュリティを一層向上させるためのいくつかの推奨案を考えた。推奨案のうちの一部はプロトコルの実装に関するガイドラインである。リファレンスノードとサードパーティクライアントの両方の開発はこれらのガイドラインに準じて行うべきである。
1.2 "Epoch"-ノードのリファレンス実装
計画済みのテクニカルテストとソースコードレビューのほとんどは実施済みである。リスクが"高"の問題は見つからなかった。リスクが"中"及び"低"の問題はいくつか見つかった。これらはレポートの巻末に一覧にして掲載する。最終的な結論は現在保留しているノードに対するテストの完了後に下す。
(現時点では)ÆTERNITYノードのリファレンス実装である"Epoch"はÆTERNITYブロックチェーンのネットワークに良質な基盤を与えるものであるとの結論に至った。
1.3 ウォレット実装
セキュリティレビュー中にcnlabはベースアプリのソースコードの暗号に関する部分を監査した。このベースアプリは使い勝手の良いスマートフォンアプリとして設計され、"PWA(プログレッシブウェブアプリ)"の手法で実装されている。このアプリは日常使用する小額のお金の管理向けに作られている点を付け加えておく。より大きな資産の管理にはもっと高度なソリューションを使うことをÆTERNITYプロジェクトは推奨している。
レビュー中にウォレットの鍵のストレージに関する問題を発見し、報告した。この問題はその間にもÆTERNITYにより修正された。
このベースアプリの修正版は使い勝手の良い日常利用を目的とするウォレットに適切なセキュリティを備えているとの結論に至った。
1.4 このレポートについて
このレポートはレビュープロセスの進行に伴って更新・完了するものである。
後にcnlabが行った調査と結果についての詳細情報を公開する。
|(次 →→ ÆTERNITYのセキュリティ監査報告を読んでみる2)
免責
邦訳には誤りがある場合がございます。予めご承知おき下さい。
確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。