Ich habe eine Menge ETH an eine Brieftasche gesendet. Ich habe den Kontostand der Brieftasche auf der Etherkette überprüft. Ich habe die Adresse in das Suchfeld eingegeben und festgestellt, dass sowohl Klein- als auch Großbuchstaben der Adresse zu funktionieren schienen.
Ich wollte ein paar Dollar mehr kaufen, aber jetzt bin ich mir nicht sicher, ob etwas mit der von mir erstellten Adresse nicht stimmt. Für eine Anleitung wäre ich dankbar.
Ethereum-Wallet-Adressen sind in Hex [0-9A-F]*. Während bei der Adresse selbst die Groß-/Kleinschreibung nicht beachtet wird ( A
ist dieselbe wie a
beim Netzwerk), wird die Groß-/Kleinschreibung als (optionale) Prüfsumme verwendet. Es wurde als nachträglicher Gedanke zu einem Adressierungsschema entwickelt, dem eine grundlegende Prüfsummenvalidierung fehlte.
https://github.com/ethereum/EIPs/issues/55#issuecomment-187159063
Die Prüfsumme funktioniert so:
Sie hashen also die Adresse und sehen sich jedes N-te Zeichen des sha-Ergebnisses an. Wenn es 7 oder weniger ist, ist das N-te Zeichen in der Adresse kleingeschrieben. Wenn es 8 oder höher ist, wird dieses Zeichen in Großbuchstaben geschrieben.
(Übernommen aus einem alten Ethereum-Forum, dessen Link jetzt defekt ist .)
Großschreibung bedeutet einfach, dass die Adresse eine Prüfsumme hat. Aus diesem Grund sollten Sie die Adresse mit Großschreibung verwenden, aber beide funktionieren.
capitalization address
heißt genau Diese Antwort ist etwas zweideutigSchauen Sie sich diese Beispiele an:
> Web3.utils.toChecksumAddress("0x03fB09251eC05ee9Ca36c98644070B89111D4b3F".toLowerCase());
'0x03FB09251eC05ee9Ca36c98644070B89111D4b3F'
> Web3.utils.toChecksumAddress("0x03fB09251eC05ee9Ca36c98644070B89111D4b3f".toLowerCase());
'0x03FB09251eC05ee9Ca36c98644070B89111D4b3F'
> Web3.utils.toChecksumAddress("0x03fB09251eC05ee9Ca36c98644070B89111D4b3e".toLowerCase());
'0x03Fb09251ec05eE9CA36c98644070B89111D4b3e'
> Web3.utils.isAddress("0x03FB09251eC05ee9Ca36c98644070B89111D4b3f".toLowerCase());
true
> Web3.utils.isAddress("0x03FB09251eC05ee9Ca36c98644070B89111D4b3F".toLowerCase());
true
> Web3.utils.isAddress("0x03FB09251eC05ee9Ca36c98644070B89111D4b3F");
true
> Web3.utils.isAddress("0x03FB09251eC05ee9Ca36c98644070B89111D4b3f");
false
> Web3.utils.isAddress("0x03FB09251eC05ee9Ca36c98644070B89111D4b3e");
false
> Web3.utils.isAddress("0x03FB09251eC05ee9Ca36c98644070B89111D4b3E");
false
Beachte das letzte Zeichen ;)
Erich