ブロックチェーン上にホストされたスマートコントラクトは、契約または合意に指定されたすべての条件が満たされると自律的に実行され、中間者の介入を必要としません。

契約の条件は機械可読なコードで書かれています。スマートコントラクトが完成すると、それは不可逆的で法的に拘束力があり、質問が生じます: スマートコントラクトを終了させることは可能ですか?そして、より重要なことに、スマートコントラクトは逆転可能ですか?

この記事では、スマートコントラクトを取り消すことが可能かどうか、また可能な場合はどのようにして自分の暗号通貨の保有に対するスマートコントラクトのアクセスを取り消すことができるかについて議論しています。

スマートコントラクトを取り消すことは何を意味しますか?

スマートコントラクトを取り消すことは、通常、ブロックチェーン上でその機能を無効にしたり終了させたりすることを意味します。たとえば、取り消すことでユーザーの暗号ウォレットへのアクセスやトークンを移動する能力が停止される可能性があります。さらに、スマートコントラクトを取り消すことにより、ユーザーのトークン残高や公開アドレスを表示する権限が停止されます。

なぜスマートコントラクトは取り消されるのですか?

スマートコントラクトは、資産を購入、販売、または転送するつもりがない場合や、再度スマートコントラクトを使用しない場合など、いくつかの状況下で取り消すことができます。

他の事例では、悪意のある開発者がスマートコントラクトにバックドアを構築し、資金への不正アクセスを許可します。

誰がスマートコントラクトを変更できますか?

他の契約と同様に、当事者が契約条件に合意すると、それは変更できません。たとえ当事者がそうしたいと思っても、条件はブロックチェーンに書き込まれており、変更できません。これにより、スマートコントラクトは不変となります。

契約の条件を「変更」する唯一の方法は、契約を「アップグレード」すること、つまり、分散型アプリケーション(DApp)の基盤となるスマートコントラクトを別のものに入れ替えることです。あるいは、当事者は最初からアップグレード可能な契約を選択し、スマートコントラクトの変更を可能にします。

誰がスマートコントラクトを管理しますか?

コードがブロックチェーンに書き込まれると、誰もスマートコントラクトを管理できなくなります。コードは、あらかじめ定められた条件や条項が満たされるか確認されると実行されます。この行動にはブロックチェーンの更新と通知の送信が含まれます。スマートコントラクトへのアクセス権を持つ当事者のみがトランザクションの詳細を確認できます。

契約の明示的な管理者がいないため、当事者は条項を特定し、あいまいさのないように十分に説明する必要があります。それによって、実行可能性が確保されます。これにより、トークンはスマートコントラクト内にロックされることができるのかという疑問が生じます。ユーザーがトークンをスマートコントラクトに送信すると、誰もそれを取引したり引き出したりできず、実質的にロックされます。

スマートコントラクトは、特定の期間または特定の条件が実行されるまでトークンを放出しません。一部のプラットフォームでは、ユーザーがトークンが利用可能になる日付と時刻を指定できるトークンロックアップのカスタマイズも許可しています。

スマートコントラクトにおけるトークン承認と権限とは何ですか?

スマートコントラクトの悪用から保護する唯一の方法は、必要な資金の引き出しのみを承認し、未テストのプラットフォームを避け、トークンの承認と権限を取り消すことです。

しかし、トークンの承認と権限とは何でしょうか?スマートコントラクトはDAppがユーザーのウォレット内でトークンの移動を自動化することを可能にします。したがって、トークンの承認と権限は、ウォレットからトークンを引き出して取引を実行するためのスマートコントラクトの所有者の承認を示します。ユーザーは、スマートコントラクトへのトークンのアクセスを取り消すためにいくつかの手段を使用できます。

トークンブロックエクスプローラーを通じてスマートコントラクトを取り消す

各ネットワークには通常、PolygonscanやEtherscanのようなブロックエクスプローラーがあり、ユーザーがトークン承認ツールを利用して権限と承認を取り消すことができる承認セクションがあります。

これらはトークン承認ツールを使用する際の一般的な手順であり、接続されたスマートコントラクトを取り消すことができるのはアドレスの所有者だけであることに注意してください。

1. トークン承認ページに移動します。

2. 検索バーにアドレスを入力し、「検索」をクリックします。

3. ユーザーの代わりに支出できるアドレスに関連付けられたスマートコントラクトが資産リストに表示され、スマートコントラクトのトークン許可、トランザクションハッシュ、トークン標準などの詳細情報が提供されます。

4. 「Web3に接続」ボタンをクリックしてウォレットに接続します。

5. 接続が確認されたら、取り消す契約を選択します。

Ethereum上のスマートコントラクトのトークン承認と権限を取り消す方法

Ethereumメインネット上でスマートコントラクトを取り消す際の通常の手順は次のとおりです。

ステップ1: アクセス取り消しツール

ユーザーは、自分のアドレスに接続されたスマートコントラクトを追跡し、取り消すためにいくつかのサードパーティのアクセス取り消しツールを使用できます。これらのウェブサイトのいずれかに接続してプロセスを開始します:

  • approved.zone: Ethereum

  • 取り消し: 複数のネットワーク

  • EverRise: 複数のネットワーク

  • Ethallowance: Ethereum

  • Unrekt: 複数のネットワーク

  • Beefy.finance: BNBスマートチェーン

  • Etherscan: Ethereum

  • Cointool: 複数のネットワーク

ステップ2: ウォレットを接続します。

ウェブサイトに接続したら、「ウォレットを接続」ボタンを検索してクリックします。ウェブサイトをウォレットに接続する際は、取り消しアクセスツールが特定のチェーンでのみ機能するため、同じネットワークにいることを確認してください。

例えば、Ethereumメインネットに接続している場合、Polygonスマートコントラクトを取り消すことはできません。なぜなら、Ethereumスマートコントラクトのみがサポートされており、表示されるからです。

ステップ3: スマートコントラクトを選択します。

スマートコントラクトツールはすべての互換性のあるスマートコントラクトを表示し、そのアクセス権限と支出制限を示します。ユーザーは取り消したいものを選択する必要があります。不明な場合は、すべてを選択し、各DAppの次回起動時に新しい権限を付与します。

ステップ4: アクセスを取り消します。

「取り消し」ボタンをクリックし、トランザクションの支払いを行い、トランザクションが完了するまで1、2分待ちます。取り消されたトランザクションが成功したことを確認するために、ウェブサイトからログアウトし、再度ログインします(スマートコントラクトはリストに表示されていないはずです)。

トークンアクセスを取り消すことはDeFi戦略も終了させますか?

いいえ。ユーザーはプール、ステーキング、貸付などの分散型金融(DeFi)戦略におけるポジションを保持し、報酬を受け取り続けることができます。ただし、コンテキストや戦略の構造によって大きな影響を受ける可能性があります。

DeFiエコシステムでは、ユーザーは取引、貸付、またはステーキングなどのさまざまな機能のためにスマートコントラクトにトークンへのアクセス権を付与することがよくあります。ユーザーがこのアクセスを取り消すと、スマートコントラクトはユーザーのトークンを代わりに移動または管理できなくなります。

このアクションは、契約がトークンと相互作用する能力に依存する進行中の戦略を混乱させる可能性があります。ただし、根本的なDeFi戦略は終了するのではなく、一時停止または非アクティブになります。再度アクセスが付与されるか、戦略が調整されるまで。

プロジェクトからウォレットを切断することは、資金を使用する権限を取り消すことと同じですか?

いいえ、同じではありません。ウォレットをプロジェクトから切断することは、他のユーザーが自分のトークン残高、公開アドレス、および過去の活動を見ることを許可する権限をキャンセルするだけであり、トランザクションの開始を停止します。ただし、トランザクションの実行を防ぐことにはならないことに注意してください。

一方で、資金を使用する権限を取り消すことは、DAppがウォレットの内容にアクセスし、移動する権限を取り消すことを意味します。