public void Constructor_RNGTest() { using MiniPrivateKey key = new MiniPrivateKey(new SharpRandom()); string actual = key.ToString(); using var sha = System.Security.Cryptography.SHA256.Create(); byte[] keyBytes = Encoding.UTF8.GetBytes(actual); byte[] bytesToHash = new byte[keyBytes.Length + 1]; Buffer.BlockCopy(keyBytes, 0, bytesToHash, 0, keyBytes.Length); bytesToHash[^ 1] = (byte)'?';
public string CheckMiniKey(string key) { try { using MiniPrivateKey mini = new MiniPrivateKey(key); return($"Compressed:{Environment.NewLine}" + $" WIF: {mini.ToWif(true)}{Environment.NewLine}" + $" Address: {Address.GetP2pkh(mini.ToPublicKey(), true)}{Environment.NewLine}" + $"Uncompressed:{Environment.NewLine}" + $" WIF: {mini.ToWif(false)}{Environment.NewLine}" + $" Address: {Address.GetP2pkh(mini.ToPublicKey(), false)}"); } catch (Exception ex) { return(ex.Message); } }