レンディング

コントラクトアドレスとは?コインチェックからイーサリアムが送金できない時の対処法

読者さん
読者さん
イーサリアムを送金しようとしたとき、送金エラーとなってしまう。コントラクトアドレスというやつが悪さをしているらしい。なんだこれ?
いけやん
いけやん
はい!同じ経験、私もあります!

先日、コインチェックから「HashHub(ハッシュハブ)」にレンディング(貸し仮想通貨)のため、

イーサリアムを送金しようとしたとき、

送金エラーとなって自動でキャンセルされてしまう、ということが起こりました。

エラーメッセージでは

「コントラクトアドレスのため、送金をキャンセルしました」

ということで、最初は????でしたが、調べた結果、解決できたので紹介しておきたいと思います。

この記事で分かること
  • イーサリアムの「コントラクトアドレス」とは何か
  • コントラクトアドレスの「見分け方」
  • コントラクトアドレスへ「送金できない場面」とは
  • コントラクトアドレスヘイーサリアムを「送金する方法」

≫参考 【体験談】大丈夫か不安だったHashHubへのレンディングを決断した理由

コインチェックのエラーメッセージ「宛先アドレスがコントラクトアドレスのため、送金をキャンセル」とは

まず、状況の説明から。

この画像が、タイトルのメッセージが出たときの画面。

コインチェックのイーサリアムをHashHubの送金アドレスに送ろうとしたところ、送金指示の直後にこのメッセージがでて「送金はキャンセル」されました。

なお、HashHubに対しては、事前にテスト送金で0.01ETH送っており、この時は問題なく送金できたのですが、本送金(残り9.99ETH)でエラーとなりました。

いけやん
いけやん
マジで焦った!!

最初は送付ミスで「9.99ETHをセルフゴックスしたか?!?!」と思いましたが、コインはちゃんとコインチェック内にあるし、どうやらコインチェック側のセーフティ機能が働いたということのようです。

コインチェックの送金画面でも以下の但し書きがあり、これに該当しているよう。

まとめると、下のようになります。

  • HashHubの送金アドレスが「コントラクトアドレス」である
  • コインチェックは「コントラクトアドレス」への送金を禁じている
  • HashHubの送金アドレスへは「初回は送金できたが、2回目ではダメだった」

コントラクトアドレスとは

コントラクトアドレスとは、

  • イーサリアムの「契約のためのアドレス」

とのこと。

これは、いわゆる「送付先のアドレス」とは別ものです。

BTCとETHの「アドレスの違い」

ビットコインは、ブロックチェーンによって取引履歴を管理しており、通常使うアドレスは「送金先」を表す住所のようなもの。

このアドレスそのものが送付先となります。

これに対し、イーサリアムはブロックチェーン上にまず「契約情報」を書き込み、その上で送金を実行しています。

コントラクトアドレスはこの「契約情報」に対して与えられたアドレスであり、「送付先」とはまた別もの。

いけやん
いけやん
ただし、見た目には、送付先アドレスと違いがつかず、コントラクトアドレスであることは分かりません。

「コントラクトアドレスへ送金」するのは間違い

コントラクトアドレスは、契約情報を書いたアドレスのため、送付先だと間違ってコントラクトアドレスに送ってしまうと、ゴックスになってしまう模様。

このため、コインチェックなど、

一部の国内取引所では、コントラクトアドレスへの送金をストップしている

=送金された場合でも自動キャンセルする

ようになっているようです。

いけやん
いけやん
どうやら、これに該当したらしい!

2回目の送金以降、コントラクトアドレスに変わる?

HashHubの送金アドレスへ「初回は送金できたのに、2回目ではダメだった理由」は今ひとつ分かりません。

初回の送金の時点でそのアドレスが「コントラクトアドレスに変わった?」ということなのかもしれませんが

・・・この点はいまだに謎です。

コントラクトアドレスの見分け方

見た目には違いがつかないコントラクトアドレスがそうであると見分ける方法は、「Etherscan」というサイト。

アドレスを入力すると、見分けることができます。

コントラクトアドレスであれば左上に「Contract」。そうでなければ、「Address」と表示されます。

コントラクトアドレスへのアドレスができない取引所

コインチェックのように、コントラクトアドレスへの送金ができない国内取引所は以下のとおり。

  • コインチェック
  • Zaif
  • Biflyer
  • BitPoint
  • TaoTao
  • 楽天ウォレット
  • DMM Bitcoin

(出典:HashHub「貸出しのために取引所から暗号資産貸出用アドレスへ送金(出金/出庫)することは可能ですか?」)

※最新情報は、必ずその取引所で確認してください。

いけやん
いけやん
ここに挙がっていない取引所(例:バイナンスなど)だと、送金自体はできてしまうが、ETHがゴックスしてしまうのか?・・・怖くてできないので分かりません。

コントラクトアドレスへ送金する方法

対処方としては、

自分で秘密鍵を管理できる「セルフウォレットアプリ」

を経由して送金すればOK。

秘密鍵を管理しない送金元からは送れない

HashHub側では、「秘密鍵を自身で管理するウォレットからの送金を推奨している」とのこと。

コインチェックなどの国内取引所は私たちユーザーが秘密鍵を持っておらず、運営管理になっています。

また、ほとんどの海外取引所からも送金できるとのことですが、こちらは推奨されていません。

↓HashHub代表の平野さん(@junbhirano)から返信いただきました。

セルフウォレットアプリ「MyEtherWallet」を経由する

HashHubでは、イーサリアムの送金に「MyEtherWallet」というアプリが推奨されています。

これは、「セルフウォレット」で、自分で秘密鍵を管理します(キーフレーズとして自分でいくつかの英単語を鍵として管理する)。

このアプリをスマホにダウンロードし、

「コインチェック⇒My Ether Wallet⇒HashHub」

と送ることで、無事ハッシュタブに送金できました。

いけやん
いけやん
送金手数料は2回かかりますが、仕方ないですね。

ちなみに「超速達・速達・通常」3種類の送金モードが選べます(短い送金時間のものは、手数料も高い)。

My Ether Walletのダウンロード・送金方法は「コントラクトアドレスへETH/DAIを送る方法を教えてほしい。」のページで詳しく解説されています。英語アプリですが、このページ通りやっていけば問題ありません。

いけやん
いけやん
キーフレーズの管理には気を付けて使いましょう!

これが漏れると資金を盗られます。

 

以上、コントラクトアドレスへの送金について、実体験と調べたことをまとめました。まだまだ勉強不足ですので、詳しい方いらっしゃいましたら、コメント欄で補足いただけると嬉しいです。