[翻訳] 監査するまでデプロイしないでください！究極のスマートコントラクトチェックリスト


:::note info
本記事は下記の翻訳となります。
[『Don't Deploy Until You Audit! The Ultimate Smart Contract Checklist
』](https://blog.bunzz.dev/the-ultimate-smart-contract-checklist/)
:::

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1926720/ca2317c1-b8b7-1feb-2f6f-96f745e19285.png)

**_免責事項_**_: これはセキュリティアドバイスではありません。セキュリティの決定をする前に、必ず独自の調査を行ってください。_

スマートコントラクトの構築は、複雑な機械を作り上げることに似ています。刺激的で革新的ですが、リスクも伴います。ロケットを厳密にチェックせずに打ち上げることはしないように、実際のお金や資産とのやり取りを行う前に、スマートコントラクトを[徹底的に**監査**](https://blog.bunzz.dev/3-low-cost-smart-contract-audit-tips)する必要があります。

監査は、悪意のある行為者が悪用する可能性のある**バグ、脆弱性、抜け穴**をコードのセキュリティチームが検査することと考えてください。単なるチェックボックスを埋めるだけではありません。あなたやユーザーに大きな損失をもたらす可能性のある隠れた欠陥を見つけることが重要です。

以下は、簡単な言葉で説明された**究極のスマートコントラクト監査チェックリスト**です。

## **監査前:**

1.  **コードを整理する:** コードを行ごとに確認し、既知のエラーを修正し、適切にドキュメント化されて理解しやすいことを確認してください。**Slither**、**Mythril**、または**Bunzz Audit**（近日公開予定）などのツールを使用して、コードを自動的に脆弱性のスキャンを行うこともできます。また、コード内に明確なコメントと説明を書くことも忘れないでください。

2.  **範囲を定義する:** コントラクトにはどのような機能がありますか？攻撃の可能性のある箇所（悪用のリスクが高い領域）はどこですか？目標と懸念を明確にすることは、監査プロセスに役立ちます。

範囲を定義する別の方法は、資金の取り扱い、アクセス制御、および重要な操作を行うコードの箇所を強調することです。最後のヒントとして、ハッカーのように考え、誰かがあなたのコントラクトを悪用する方法を考えてみてください。

## **監査中:**

1.  **脆弱性を修正する:** 識別された問題を真剣に受け止め、迅速に修正してください。STRIDE や PASTA などのツールを使用して、潜在的な脅威を体系的に特定することができます。警告を無視しないでください。些細な欠陥でも大きな被害をもたらす可能性があります。

2.  **必要に応じてテストと再監査を行う:** 各機能ごとに個別のテストを作成し、それらが期待どおりに動作し、コントラクトの異なる部分が互いにどのように相互作用するかを確認してください。**sFuzz**などのツールを使用して、入力をランダムに生成し、コントラクトをストレステストすることができます。

## **監査後:**

1.  **警戒心を持ち、再監査を行う:** セキュリティは一度きりの修正ではなく、継続的なプロセスです。見つけた脅威のレベルに応じて、再監査が必要になる場合があります。コントラクトを最新の状態に保ち、その活動を監視し、新たな脅威に対応する準備をしておいてください。
2.  **継続的なモニタリング:** セキュリティは継続的なプロセスです。デプロイされたコントラクトを不審な活動に対して積極的に監視し、新たな脅威や脆弱性について最新情報を把握してください。

監査されていないスマートコントラクトをデプロイすることは、ユーザーの信頼と評判を危険にさらすことです。リスクを冒さないでください！このチェックリストに従い、セキュリティを真剣に考えてください。DYOR（自分自身で調査を行う）を忘れずに、次のことを覚えておいてください：

- **完璧なツールは存在しない:** 各ツールには制限と潜在的な誤検知があります。複数のツールの結果と手動のレビューを組み合わせて総合的な評価を行ってください。
- **テストは完全ではない:** すべての可能なシナリオをテストすることはできません。リスクの高い領域に焦点を当て、テスト戦略を継続的に改善してください。
- **コミュニティに参加する:** 信頼できる同僚やセキュリティの専門家とコードを共有し、新しい視点や脆弱性の発見を考慮してください。

必要な手順を踏み、スマートコントラクトが成功の物語となるようにすることができます。警戒心を持ち、計画をしっかりと立て、自信を持って監査を行ってください。

---

Bunzz Audit のオープンベータ版が利用可能です！無料のスマートコントラクト監査を[こちら](https://9vi3topj6b2.typeform.com/to/EAb8IHmA)でリクエストできます。

# 出力テキスト

---

---

:::note info
【Bunzz とは】
Bunzz はアジア最大級の DApps 開発インフラを運営する、web3×LLM におけるリーディングカンパニーです。「公共財としてのスマートコントラクト」の実現に向けて、各種 web3 インフラやサービスを開発・提供しております。

【Our Projects】

- **[Smart Contract Hub | スマートコントラクトの Github](https://www.bunzz.dev/)**
- **[DeCipher | "Read me" for All of Contracts](https://www.bunzz.dev/decipher)**
- **[Bunzz for Enterprise | Tier1 の技術リソースを日本企業に提供](https://enterprise.bunzz.dev/ja)**
- **[Bunzz Audit | 透明かつ持続的なコントラクト監査の仕組みを実現](hhttps://www.bunzz.dev/audit)**

【Social Links】

- [X(旧 Twitter))](https://twitter.com/BunzzDev)
- [Discord Community](https://t.co/6hHgssJdvW)
- [Youtube](https://www.youtube.com/@bunzzdev)
- [Instagram](https://www.instagram.com/bunzzdev/)

【お問合せ】
web3 開発・コンサルティングのご相談はこちらから 👉[Google Form](https://forms.gle/4tgQjWSw2MMMZW6E6)
:::

:::note info
Bunzz R&D エンジニア荒巻さんの著書[『スマートコントラクトの仕組みと法律』](https://amzn.to/3V03sNH)が好評発売中です 📕
<a href="https://amzn.to/3V03sNH" rel="nofollow" referrerpolicy="no-referrer-when-downgrade">
<img
    src="https://m.media-amazon.com/images/I/81wopoZ1K4L._SY522_.jpg"
    alt="『スマートコントラクトの仕組みと法律』（中央経済グループパブリッシング）"
    width="200px"
    height="auto"
    Style="border: 0px;"
  />
</a>
:::