コントラクトアドレスの意味とは?
コントラクトアドレスとは、直訳すると「契約アドレス」のことであり、「スマートコントラクト」を実行するときに使用されるアドレスのことを指します。後ほど詳しく説明しますが、コントラクトアドレスは、通常の送金用のアドレスとは異なり、基本的には送受金に対応していないという特徴があります。
また、スマートコントラクトとはプログラムによって自動的に実行される契約の事で、その通貨を使って取引をすると自動的に契約内容がブロックチェーンに書き込まれます。
スマートコントラクトが用いられている代表的なプラットフォームには、イーサリアムがありますが、他にもLiskやNEM、Augurなどにも用いられています。
コントラクトアドレスには送金することができない
取引所からイーサリアムやERC20トークンを送金すると、アドレスをきちんと確認したはずなのに送金に失敗することがあります。その場合の原因は、送金先のアドレスが送金用アドレスではなくコントラクトアドレスになっている場合です。
コントラクトアドレスは先ほど述べたように送金用アドレスとは異なるので、送受金には対応していません。これはセキュリティの問題で、仮想通貨取引所からコントラクトアドレスに宛てて送金する事はできないようになっているようです。
コントラクトアドレスにも秘密鍵のついているウォレットからなら送金可能
基本的には、コントラクトアドレスに送金することはできませんが、MyEtherWalletなどの秘密鍵の付いているウォレットからであればコントラクトアドレスに送金する事ができます。
ICOに参加する際には、イーサリアムを指定されたアドレスに送金することが多いですが、「取引所から直接イーサリアムを送金するのではなく、MyEtherWalletなどから送金してください」と注意喚起されているケースがあるのはこのためです。
コントラクトアドレスへの送金手順
ここでは、イーサリアムを保管するのに多く使われているMyEtherWalletからの送金手順について紹介していきます。
MyEtherWalletとはウェブウォレット(デスクトップウォレット)で、イーサリアムの他にイーサリアムをベースにした通貨を保管する事ができ、秘密鍵が付いているのでMyEtherWalletから直接コントラクトアドレスに送金する事ができるという特徴があります。
MyEhterWalletから送金を行うには、まずホームページの左上の「Ether/トークンの送出」をクリックします。ここでMyEtherWalletにログインするのですが、8種類の方法が選択できるようになっています。基本的には「Keystore/JSON File」と「秘密鍵」の2種類が使われる事が多いです。
「Keystore/JSON File」は「お財布ファイルを選択」にお財布作成時にダウンロードしたファイルをアップロードし、作成したパスワードを入力するとログインできます。「秘密鍵」はお財布作成時に保存した秘密鍵を入力するとログインできます。
ログインすると送金のページが表示されるので、「宛先アドレス」に送金先のアドレス、「送出数量」に送金する数量を入力します。「ガスリミット」は上げる事で送金の失敗を減らす事ができます。
入力が終わったら間違いが無いかを確認して、「トランザクションを生成」を選択し、もう一度確認をしたら「トランザクションの送出」を選択します。
確認画面が表示されるので「はい、確かです。処理を実行します。」を選択すると送金が完了します。MyEtherWalletの使い方についてさらに詳しく知りたい方は、【MyEtherWallet(マイイーサウォレット)の使い方・始め方・登録方法を徹底解説!】を参考にしてください。