中級者用語を調べる
スマートコントラクト監査とは
- 執筆
- CRYPTO PORT 編集部
- 公開日
- 更新日
- 読了目安
- 5 分
結論
スマートコントラクト監査は、第三者がコードを精査して脆弱性や設計上の問題を指摘する作業です。監査済みであることは安全の保証ではなく、「その時点のコードを、その範囲で見た」という記録にすぎません。報告書の日付・対象範囲・指摘への対応状況まで見て初めて、判断材料になります。
要点
- 第三者がコードを精査し脆弱性を指摘する作業
- 監査済み=安全の保証ではない
- 報告書の日付・対象範囲・対応状況を見る
- 監査後の更新は監査の対象外になる
定義
開発者以外の専門家が、スマートコントラクトのコードと設計を対象に、脆弱性・権限設計の問題・仕様との齟齬を体系的に確認し、指摘事項を報告書としてまとめる作業。
スマートコントラクトは、一度公開すると簡単には直せません。だからこそ、公開前に第三者の目を入れる工程が重視されます。監査では、既知の脆弱性の型、権限の設計、経済的な前提が崩れる条件、そして仕様書とコードの食い違いなどが確認されます。
ここで注意したいのは、監査の範囲です。報告書には対象としたファイルとコミットが明記されます。その後にコードが更新されていれば、更新部分は監査されていません。また、外部のプロトコルと組み合わせたときに生じる問題は、単体の監査では見つからないことがあります。
利用者が見るべきなのは、監査を受けたという事実ではなく報告書そのものです。指摘された項目が修正済みか、未対応のまま残っているか、対応しない理由が説明されているか。重大度の高い指摘が「了承済み」として残っている場合は、その内容が自分の許容範囲かを考える必要があります。
複数の監査会社が別々に見ている、報奨金制度が実際に運用されている、公開から長期間にわたり大きな資産を扱い続けている、といった要素が重なるほど、検証の厚みは増します。逆に、監査会社の名前だけが掲示され、報告書へのリンクがない場合は注意が必要です。
注意点
- · 「監査済み」の表示だけで判断せず、報告書の日付・範囲・未対応の指摘を読む
- · 監査後にコードが更新されている場合、その部分は監査されていないと考える
- · 監査会社のロゴは掲示されているのに報告書が公開されていないサービスは避ける