public void Sign_and_verify_should_sign_with_valid_key_and_verify()
        {
            var    rsa           = new RsaXmlCryptoProvider();
            var    wkFolder      = AppDomain.CurrentDomain.BaseDirectory.Substring(0, AppDomain.CurrentDomain.BaseDirectory.IndexOf("bin"));
            string rsaPrivateKey = @"<RSAKeyValue><Modulus>l7EzMLcKyCWRJGx0llt7ydar6e+ylPvGjmK5NiQ4kNMxfej1KKMamBkuOuNiCoQIivIUsktQ9E+FqGk+oQZN0qx72nzCLVt/WjsZkYxN493tq5phYypZAisGWQIQz2fdpCD66nrZ5a3s7IEZp26iomOt+OZ/BERz/yPDuMgy3YuG2WYmlINR+JCfRKROKCcUw7DwjNnzXSNcx3CvryDvAkQgPZAlu2OihcCR/Ayb7uVDh0GdQ5AFVxKffzHdmG9s0WB86vrpmgnjGV54FMQQpAQ9mN3iO3ItAVudv/S00d9NJp18x4OK6OK/aO1kWqGf5WQmrFUDO9EgO7T8YjlLhw==</Modulus><Exponent>AQAB</Exponent><P>0DN4Etsb4XjIvTjv/GeN1KkJ2hzvSJ1fPAvWOXwAeG7kp275/58SKanLRroSt3s1isJmJ2O+f+9257Voijz0A3b+uG3N1g36DP7ejXQXMrojjrw03JlgyjCmiVw7NDLSxmrR6cmrPOVIXb2u9edaw6ZBH0rx+UhwSYEyv4PfhQU=</P><Q>uoSN6BaOiN6g4+FHRbkfeEodZFMQPkM2oTshmwLxzHIaE1r9GT8gOTc2ukKdooHr3T5IuW9pBNasV2WXIsdahCEgMwoT3WPvYdk7uh2AL5U2CRfiXO1/5gDuZNAjRYPF+u3y/l/IqoMc2Mb+34/QBbn0MSefkV+jSgc/bingdBs=</Q><DP>KQNajexXq6zNbmj+7WvAxrmd1TeJ83X8wqlaQ+yncxH1PP5hhPdi7o4iGwaglUBSJclxsiS17CHR/IcB1ul28A/K0a3ftGEAdvrmAFt0DmwYgQ+WIjacmHfI9poSl4/DcY6tVy6A6vgHr1+kTZCLkqr3fSCYVhDs/a3Tv2JM77k=</DP><DQ>boVxWR9UooHZMG8jPottvGeedv5JV7uYOX3CcgoSoaTTErkN1NH1FDJFeaVTpyH5U4Y+rbL4tedHBBqsre0XE8hVPikwkDVRedexbp1ggdGWzVibx5jr+qx+lrpGzEBDJmetX1H+pBtBEqsICA09pMcFjcL+6LOVHJ6i1XJ3EBU=</DQ><InverseQ>vYcxbFvwDKRlANH1Il2mlkzIjN2yaoVqBWqEv1gnBRsywVQhT22PRh4ZgnQOcrl9mvRQdNHdc9GVSCvDt285x4i9SB1odY5LEqTttUoZADFJXEM/YuJ6vYL/Qh2JNtjt2KVYud3+DK0xW2pN2jaI9J6IQUeorI7p1uG/lMT0zx8=</InverseQ><D>GbcafHmrRD7KGiigoxSjKZZQ0nmmBoegI2ctCradOD/1NekWFmuACKTMJ4OAjVPQtu1PAOKvuJr6h5A/48BT1REUdfeMW3AVaNB4ByqH0cc/kUW8mLkHGcz9aH1nKCHtevN0Vee5pKwVbAp+tNmWjHzlczpv8eNA3tHLTjnyFYhcy7On8hVfPvyDPeH6lhHZA8sz/Jwyo/LA2KCkV8ixYq6HAk/B1IWSynTb085qB3gycN/TPiMZGHjcGGBBx/rDoS8yXxa5DZhi3OWYa8RZUVUUgQVEeEfppreB8D0ZjAgrjxvWJe10xEWDvV3g9UKiHzXPbz9p43HQtlru+71NcQ==</D></RSAKeyValue>";
            string rsaPublicKey  = @"<RSAKeyValue><Modulus>l7EzMLcKyCWRJGx0llt7ydar6e+ylPvGjmK5NiQ4kNMxfej1KKMamBkuOuNiCoQIivIUsktQ9E+FqGk+oQZN0qx72nzCLVt/WjsZkYxN493tq5phYypZAisGWQIQz2fdpCD66nrZ5a3s7IEZp26iomOt+OZ/BERz/yPDuMgy3YuG2WYmlINR+JCfRKROKCcUw7DwjNnzXSNcx3CvryDvAkQgPZAlu2OihcCR/Ayb7uVDh0GdQ5AFVxKffzHdmG9s0WB86vrpmgnjGV54FMQQpAQ9mN3iO3ItAVudv/S00d9NJp18x4OK6OK/aO1kWqGf5WQmrFUDO9EgO7T8YjlLhw==</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";

            var signedBites = rsa.Sign(rsaPrivateKey, wkFolder);

            Assert.IsNotNull(signedBites);
            Assert.IsTrue(rsa.Verify(rsaPublicKey, signedBites, wkFolder.ConvertToByteArray()));
        }