Code Is Lawとは?
Code Is Lawは、ブロックチェーン上でプログラムのルールが結果を決めるという考え方です。コードがある動作を許可すれば、ネットワークがそれを実行します。やり直しを求めるカスタマーサポートはありません。自動販売機の仕組みを会話少なめで想像してください。
「Code Is Lawは、コードが許すことは全て自動的に正しいという意味だ」――それは完全には正しくありません。スマートコントラクトもソフトウェアであり、コミュニティはアップグレードや一時停止、場合によってはフォークで対応することがあります。法制度も依然として存在します。
Code Is Lawの仕組み
ブロックチェーンアプリでスワップする場面を想像してください。あなたの取引を承認する管理者はいません。ルールは既にコードとして存在します。
- ステップ1:開発者がプログラムのルールをチェーンに公開します。
- ステップ2:あなたがトークン交換などの関数を呼ぶトランザクションを送信します。
- ステップ3:バリデータがトランザクションがルールを満たしているか確認し、トラストレスな方法で実行します。
- ステップ4:結果が記録され、プログラムに明示的な上書き機能が含まれていない限り特別な介入はありません。
- ステップ5:ルールが許すなら、それは実行されます。メンプールを見ている人を驚かせることがあっても同様です。
それがモデルです。良い面も悪い面もあります。
Code Is Lawが重要な理由
ゲートキーパーなしで予測可能な実行が得られますが、自分が呼び出すルールを理解する責任も伴います。
- 利点:自動化と予測性により、時間や手数料を節約できます。
- 視点:信頼を人からプログラムへ移す仕組みであるため、分散型金融(DeFi)はチームが休んでいる間も稼働し続けます。
- 関連性:トレーディングアプリ、NFTのミント、DAOの投票など、多くのdappで出会います。
確認を押す前に、そのプログラムがアップグレード可能か、一時停止可能か、または不変性を謳っているかを確認してください。これらの手がかりで誰がルールを変えられるか、誤りがどれだけ危険かが分かります。
Code Is Lawの主な特徴
主な性質は次のとおりです:
- 決定性:同じ入力はネットワーク全体で同じ出力を生みます。
- 自律性:実行はコードに従い、サポートの人の判断で動くわけではありません。
- 透明性:ルールと状態が可視化されているため、誰でも挙動を監査できます。
- ネットワーク:分散型の参加者群で動作し、単一障害点を減らします。
多くの損失はプログラムや統合部分の脆弱性の悪用に起因します。監査を読み、少額で試し、チェーンはプログラムの指示どおりに正確に動くことを忘れないでください。
例
レンディングアプリが価格フィードが閾値を越えた瞬間にあなたのポジションを清算する。電話も通じない。異議申し立てもない。これがCode Is Lawの実例です。
豆知識
1999年に法学教授ローレンス・レッシグがこの表現を広め、ソフトウェアが法律のようにルールを作ると主張しました。これは暗号通貨が日常的な現実にするずっと前のことです。
まとめ
簡単な結論:コードを信頼する前に検証し、プログラムが許容する範囲でしか扱わないようにしましょう。
