2016-12-02 7 views
1

Ethereumとのスマートな契約の作成にはetherのユーザーが関与しているため、すべてのユーザーのエーテルを補充することは企業にとってコストがかかります。それで、ある企業がethereumネットワーク上でトークンを発行することにし、そのトークンが新しい通貨を表すとしましょう。トークンの元の作成者は、トークンを誰かに送るたびに取引手数料を受け取ることができますか?そうすれば、会社は簡単に全員のトークンをエーテルで補充することができます。Ethereumトークンの作成と取引手数料の設定

答えて

2

あなたは、その取引に費やされたガスのために支払われたEtherを受け取ることはできません。それはすべて現在のブロックの鉱夫に行きます。

ただし、その料金のサポートをトークン契約に追加できます。たとえば、各トークン転送でいくつかのEtherを送信し、そのEther値をTokenコントラクト自体に自動的に送信するか、別のアドレスに送信することができます。そのような

何か:

function transferFrom(address _from, address _to, uint256 _value) returns (bool success) { 
    // accept fees 
    if (msg.value < FEE) { 
     return false; 
    } 
    if (!MYADDR.send(msg.value) { 
     throw; 
    } 

    // do token transfer (WARNING, no validation here, don't use, it's for current example only) 
    balances[_to] += _value; 
    balances[_from] -= _value; 
    return true; 
} 
+1

しかし、そのトークンのユーザーに十分なエーテルがない場合はどうなりますか?トークンを転送するたびに、より多くのトークンを送信するようにユーザーに要求することはできますか?そして、各トークン転送から(エーテルではなくトークンで)カットを取るだけですか? –

+1

はい、確かです。コードの行の代わりに '_value'の一部を' balance [your system address] 'に追加するだけです –

-1

あなたは全体として問題を見てみると、すべてのユーザーが任意のトランザクションを実行する(手数料など)いくつかのエーテルを費やす必要があります。ユーザーが支払ったユーザーアカウントをユーザーアカウントで埋める予定の場合、純額はゼロです(エンティティとしてのすべてのユーザーと別のエンティティとしての会社を参照)。あなたのポケットからエーテルを使ってユーザーアカウントを埋める必要がありますか、ユーザーは自分のポケットを焼いてトランザクション(転送トークンなど)を行う必要があります

関連する問題