private bool OnUpgradeWalletCommand(string[] args) { if (args.Length < 3) { Console.WriteLine("error"); return(true); } string path = args[2]; if (Path.GetExtension(path) != ".db3") { Console.WriteLine("Can't upgrade the wallet file."); return(true); } if (!File.Exists(path)) { Console.WriteLine("File does not exist."); return(true); } string password = ReadPassword("password"); if (password.Length == 0) { Console.WriteLine("cancelled"); return(true); } string path_new = Path.ChangeExtension(path, ".json"); BHP6Wallet.Migrate(path_new, path, password).Save(); Console.WriteLine($"Wallet file upgrade complete. New wallet file has been auto-saved at: {path_new}"); return(true); }
private static Wallet OpenWallet(string path, string password) { if (Path.GetExtension(path) == ".db3") { return(UserWallet.Open(path, password)); } else { BHP6Wallet BHP6wallet = new BHP6Wallet(path); BHP6wallet.Unlock(password); return(BHP6wallet); } }
private bool OnCreateWalletCommand(string[] args) { if (args.Length < 3) { Console.WriteLine("error"); return(true); } string path = args[2]; string password = ReadPassword("password"); if (password.Length == 0) { Console.WriteLine("cancelled"); return(true); } string password2 = ReadPassword("password"); if (password != password2) { Console.WriteLine("error"); return(true); } switch (Path.GetExtension(path)) { case ".db3": { Program.Wallet = UserWallet.Create(path, password); WalletAccount account = Program.Wallet.CreateAccount(); Console.WriteLine($"address: {account.Address}"); Console.WriteLine($" pubkey: {account.GetKey().PublicKey.EncodePoint(true).ToHexString()}"); } break; case ".json": { BHP6Wallet wallet = new BHP6Wallet(path); wallet.Unlock(password); WalletAccount account = wallet.CreateAccount(); wallet.Save(); Program.Wallet = wallet; Console.WriteLine($"address: {account.Address}"); Console.WriteLine($" pubkey: {account.GetKey().PublicKey.EncodePoint(true).ToHexString()}"); } break; default: Console.WriteLine("Wallet files in that format are not supported, please use a .json or .db3 file extension."); break; } return(true); }