Mir sind mehrere Tools und Websites bekannt, die Adressen für Sie generieren, aber ich suche nach einem tatsächlichen JavaScript-Code-Snippet, um die Schritte deutlich zu demonstrieren.
Schauen Sie sich an:
https://github.com/kvhnuke/etherwallet
(und hauptsächlich diese Datei, suchen Sie nach generateSingleWallet : https://github.com/kvhnuke/etherwallet/blob/gh-pages/js/source/01_global.js )
Es ist der Quellcode für https://www.myetherwallet.com/ , der die In-Browser-Generierung von Ethereum-Adressen bereitstellt.
Ein einfaches Javascript-Snippet (mit CryptoJS- und staticJS/01_ethereumjs-accounts.js-Bibliotheken aus dem oben genannten Repository):
function generateSingleWallet(password) {
// reference from staticJS/01_ethereumjs-accounts.js
var acc = new Accounts();
var newAccountEnc = acc.new(password);
var addressHash =
cryptoJSToHex(CryptoJS.SHA3(newAccountEnc.address));
addressHash = addressHash.substr(addressHash.length - 4);
var newAccountUnEnc = acc.get(newAccountEnc.address, password);
// now: newAccountUnEnc.private is unencoded private key
newAccountEnc.private = newAccountEnc.private + addressHash;
// now: newAccountEnc.private is encoded private key
// always clear the Accounts object after generation
acc.clear();
}