Aus dem Masterpasswort werden die 4 PrivateKeys errechnet und aus diesen wiederum die PublicKeys. Das Ganze funktioniert nur in einer Richtung, d.h. es gibt keine Möglichkeit aus einem private Key das Masterpasswort oder von einem public Key den private Key zu berechen.
Das hört sich etwas kompliziert an, folgende Grafik soll etwas Licht ins Dunkel bringen:
Aus dem Bild geht auch hervor, dass nur die public Keys in der Blockchain gespeichert werden, so können auch nur die public Keys bei einer Fork übernommen werden. Nicht die private Keys, die kennt ausschließlich der User.
Unterschiede MasterPasswort / OwnerKey
- das MP hinterlässt keine Spuren auf der Chain.
- aus dem MP werden alle Key's berechnet, mit dem OwnerKey kann man sich deshalb weder posting noch aktive Key anzeigen lassen.
- es gibt keinen public MasterKey.
So, das war es im Grunde schon, denke wenn man die Struktur kennt, beantworten sich auch einige Fragen zu dem Thema von ganz alleine.
Für alle die es genauer wissen wollen
Auf Steemworld Account Creator kann man sich unter Create New Account testweise Schlüsselpaare anzeigen lassen. Hier ein zufälliges Ergebnis:
Account Name: testuser1
Master Password: P5JKC4SY5Uw76MEi3XhMhq8shzVGLL57r1t2Vyjzvvj5Mf1KShtg
Type | Private Key | Public Key |
---|---|---|
Owner | 5JL6kY1LJ1jnBffRqrbr3qUAqzcabLjK7C1wiUDYRpyWvdP4yoq | STM5RqngfAZSVQSGjh7NCe6VRUMKyEcWceCFBYwR7bqGAzKcC86uC |
Active | 5KgdZyaXkWTqf9aW8BwVcYzECU2uYnfzAozpdcp3sxnLSVaLhPj | STM74UUEnSoAt7mSvj1vz7P11i9wQhia9m4Ns1LTZrzJEqMZi55XT |
Posting | 5JugxyGSnnF1UZkzHkQhSwwdmRmuWseyMB3EfDzqK7KCTuKG7PZ | STM85LdBvnboLsNLQzodwrhAbQSt8iyJ7HvPPXmhLnRNAkgyjd4sY |
Memo | 5Jb7hT6zoo6TxsBPiUCemYHqbjM3xX55iScLR5pLdMmCHpUBrap | STM6aYbuqueNgERm3czXB3uy6qhK22ABoLjTg7LnYuQLvxnjGcGY6 |
Anhand dieses Beispiels kann man die Berechnung testen, die grundlegende Formel ist:
key = SHA256( AccountName + Type + MasterPassword )
Für unseren testuser1 ergibt sich nach obiger Formel für den OwnerKey folgender String:
testuser1ownerP5JKC4SY5Uw76MEi3XhMhq8shzVGLL57r1t2Vyjzvvj5Mf1KShtg
Aus dieser Zeichenfolge kann man z.B. mit diesem Tool einen SHA-256 Hash erzeugen, das Ergebnis ist:
43b1d6f4cde6bbf6984e2af9b25c57309eb3081de89166105a7ad9ae73b0105d
Um nun unseren OwnerKey zu erhalten, müssen wir diesen noch in das Wallet Import Format (WIF) umwandeln. Hier Infos wie das geht, einfacher ist es mit diesem Tool zu erledigen.
Screenshot: https://learnmeabitcoin.com/technical/wif
Und, tada, wir haben aus dem MasterPasswort den OwnerKey errechnet. Für aktive und posting Key funktioniert es entsprechend.
WICHTIG: Das war nur ein Test, niemals ein original MasterPasswort in ein online Tool eingeben!
Und, oh wie schön, als ich diesen Post senden wollte bekam ich diese Meldung:
Ok, ich hoffe stark, ich weiß was ich tue, ist nicht immer der Fall ;-)
Nützliche Links zu diesem Beitrag: