Beispiel #1
0
        private void RestoreFor(string networkId)
        {
            string lyraKey;

            if (!string.IsNullOrWhiteSpace(txtPrivateKey.Text))
            {
                lyraKey = txtPrivateKey.Text;
            }
            else
            {
                if (tboxes.Any(a => string.IsNullOrWhiteSpace(a.Text)))
                {
                    return;
                }

                var words = string.Join(" ", tboxes.Select(a => a.Text));

                var bip39     = new BIP39();
                var recovered = bip39.MnemonicToEntropy(words, BIP39Wordlist.English);

                var privateKey = StringToByteArray(recovered);

                lyraKey = Base58Encoding.EncodePrivateKey(privateKey);
            }

            Frame.Navigate(typeof(WalletCreatePassword), new WalletCreateSettings {
                network = networkId, restoreKey = lyraKey
            });
        }
        private (string entropy, string seedHex, string mnemonic) TestVector(string description, BIP39Wordlist wordlist, string password,
                                                                             string entropy, string mnemonic, string seedHex)
        {
            var bip39          = new BIP39();
            var entropyResult  = bip39.MnemonicToEntropy(mnemonic, wordlist);
            var seedResult     = bip39.MnemonicToSeedHex(mnemonic, password);
            var mnemonicResult = bip39.EntropyToMnemonic(entropy, wordlist);

            return(entropyResult, seedResult, mnemonicResult);
        }