public void InvalidBinaryKeyLengthTest()
        {
            int byteArrayLength = 33;

            Byte[] key = new Byte[byteArrayLength];
            (BitcoinAddress address, String result) = BitcoinAddress.CreateAddressFromPrivateKeyByteArray(key, NetworkType.Main);
            Assert.IsNull(address);
            Assert.AreEqual(result, $"Private key has invalid length of {byteArrayLength}, expected length of 32.");
        }
 public void GenerateAddressFromKnownGoodPrivateKey()
 {
     Byte[] key = Encoding.HexStringToByteArray("18e14a7b6a307f426a94f8114701e7c8e774e7f9a47e2c2035db29a206321725");
     (BitcoinAddress address, String result) = BitcoinAddress.CreateAddressFromPrivateKeyByteArray(key, NetworkType.Main);
     Assert.IsNotNull(address);
     Assert.AreEqual(address.PrivateKey, "18e14a7b6a307f426a94f8114701e7c8e774e7f9a47e2c2035db29a206321725");
     Assert.AreEqual(address.PrivateKeyWIF, "Kx45GeUBSMPReYQwgXiKhG9FzNXrnCeutJp4yjTd5kKxCitadm3C");
     Assert.AreEqual(address.P2PKHAddress, "1PMycacnJaSqwwJqjawXBErnLsZ7RkXUAs");
     Assert.AreEqual(address.P2SHAddress, "3BxwGNjvG4CP14tAZodgYyZ7UTjruYDyAM");
 }