暗号資産
数年前に承認したトークンが、今ウォレットから資金を引き出している 몇 년 전에 눌러둔 토큰 승인이 지금 지갑을 비웁니다
DeFiプロトコルやNFTマーケットプレイスにウォレットを接続すると、トークン承認(approve)を求められます。ほとんどの人は無造作に確認ボタンを押しますが、正確に何が承認されているかを知っている人は多くありません。
トークン承認とは、特定のコントラクトが私のウォレットからそのトークンを引き出すことを許可する行為です。問題は、多くのサービスが利便性のために無制限の承認を要求している点です。毎回承認ウィンドウを表示させないための設計ですが、ユーザーの立場からすると、限度額のない引き出し権限を与えていることになります。
そして、この承認はサイトを離れても消えません。ブラウザでウォレット接続を切断しても、オンチェーンに記録された承認はそのまま残ります。明示的に取り消さない限り、消えません。
ここでリスクが生じます。承認したプロトコルが後にハッキングされたり、開発者が悪意を持ったり、コントラクトに脆弱性が発見されたりした場合、数年前に押した承認を通じて、現在の残高が引き出される可能性があります。実際の被害事例を見ると、本人はそのサービスの存在すら忘れていたケースが多くあります。
点検方法は難しくありません。承認履歴を照会し、取り消すことができるツールがあります。ウォレットを接続すると、どのコントラクトにどのトークンがどれだけ承認されているかリスト表示してくれます。使っていないものを整理すれば良いのです。取り消しにも手数料がかかりますが、保険だと思った方が良いでしょう。
より根本的な対策は、ウォレットを分離することです。長期保有資産は、どのサイトにも接続していないウォレットに置き、DeFiやミントに使うウォレットは別に作って、必要な分だけ移して使う方式です。そうすれば、承認関連の事故が起きても、被害範囲はそのウォレットに限定されます。
承認要求ウィンドウが表示されたら、限度額が無制限でないか確認し、可能であれば必要な金額だけ承認する習慣をつけることも良いでしょう。一部のウォレットでは、この値を直接修正できるようになっています。디파이 프로토콜이나 NFT 마켓에 지갑을 연결하면 토큰 승인(approve)을 요청받습니다. 대부분 무심코 확인 버튼을 누르는데, 이때 승인되는 것이 정확히 무엇인지 아는 사람은 많지 않습니다.
토큰 승인은 특정 컨트랙트가 내 지갑에서 해당 토큰을 꺼내갈 수 있도록 허락하는 행위입니다. 문제는 많은 서비스가 편의를 위해 무제한 승인을 요청한다는 점입니다. 매번 승인 창을 띄우지 않으려는 설계인데, 사용자 입장에서는 한도 없는 인출 권한을 넘기는 것입니다.
그리고 이 승인은 사이트를 떠난다고 사라지지 않습니다. 브라우저에서 지갑 연결을 끊어도 온체인에 기록된 승인은 그대로 남아 있습니다. 명시적으로 취소해야 없어집니다.
여기서 위험이 생깁니다. 승인해준 프로토콜이 나중에 해킹당하거나, 개발자가 악의를 품거나, 컨트랙트에 취약점이 발견되면, 몇 년 전에 눌러준 승인을 통해 지금 잔고가 빠져나갈 수 있습니다. 실제 피해 사례를 보면 본인은 그 서비스의 존재조차 잊고 있었던 경우가 많습니다.
점검 방법은 어렵지 않습니다. 승인 내역을 조회하고 취소할 수 있는 도구들이 있습니다. 지갑을 연결하면 어떤 컨트랙트에 어떤 토큰이 얼마나 승인되어 있는지 목록으로 보여줍니다. 쓰지 않는 것을 정리하면 됩니다. 취소에도 수수료가 들지만 보험이라고 생각하는 편이 낫습니다.
더 근본적인 대책은 지갑을 분리하는 것입니다. 장기 보유 자산은 아무 사이트에도 연결하지 않은 지갑에 두고, 디파이나 민팅에 쓰는 지갑은 따로 만들어 필요한 만큼만 옮겨 쓰는 방식입니다. 그러면 승인 관련 사고가 나도 피해 범위가 그 지갑으로 제한됩니다.
승인 요청 창이 뜨면 한도가 무제한인지 확인하고, 가능하다면 필요한 금액만큼만 승인하는 습관을 들이는 것도 좋습니다. 일부 지갑은 이 값을 직접 수정할 수 있게 해줍니다.
0
コメント 0