Was bedeutet Adresse (0)? [Duplikat]

Verweis auf diesen Link: https://theethereum.wiki/w/index.php/ERC20_Token_Standard

Blick auf den letzten Vertrag. (Zeile 130)

function totalSupply() public constant returns (uint) {
    return _totalSupply  - balances[address(0)];
}

Warum verwenden wir balances[address(0)]hier? Bedeutet das, dass wir die Summe aller Werte in den Salden erhalten?

Antworten (1)

balancesist eine Zuordnung der Adresse zu der Anzahl der Token, die diese Adresse besitzt.

balances[address(0)]bedeutet dann, wie viele Token die Adresse 0 (0x00000000...00) besitzt.

Obwohl ich die Praxis nicht mag, betrachten einige ERC20-Token Token, die an die Adresse 0 gesendet werden, als "verbrannt" und zählen sie daher nicht in der Gesamtsumme. Gibt also _totalSupply - balances[address(0)]die Gesamtzahl der Token abzüglich derjenigen an, die "verbrannt" wurden, indem sie an die Adresse 0 übertragen wurden.

Danke für die Antwort. Wer sendet dann eigentlich an Adresse (0)? Durch Fehler, Vertragsfehler oder Störungen in der Blockchain?
Die Erwartung ist, dass die Leute address(0)absichtlich senden, um Token zu verbrennen.
Und auch aufgrund menschlicher Fehler wird standardmäßig eine Nulladresse verwendet, wenn keine Daten an die Funktion übergeben werden.
@smart warum magst du diese Praxis nicht? Ich setze es in den Vertrag meines Tokens ein, da ich manchmal Token verbrennen werde und möchte, dass die Gesamtmenge im Umlauf angezeigt wird. Gibt es irgendwelche Nachteile?
Sonderfälle mag ich nicht. Warum werden Token im Besitz von Adresse 0 nicht gezählt, aber Token im Besitz von Adresse 1? Ich würde eine explizite burn()Funktion bevorzugen.
Hat Adresse (0) einen privaten Schlüssel?