Пример #1
0
 private void btnAesDecrypt_Click(object sender, EventArgs e)
 {
     byte[] ciphertext = Util.GetBytes(tbAesCipherText.Text);
     byte[] key        = Util.GetBytes(tbAesKey.Text);
     byte[] iv         = Util.GetBytes(tbAesIV.Text);
     byte[] plaintext  = AesStatic.Decrypt(ciphertext, key, iv);
     if (EncodingUTF8Rb.Checked)
     {
         tbAesPlainText.Text = Encoding.UTF8.GetString(plaintext);
     }
     else
     {
         tbAesPlainText.Text = Util.ToHexString(plaintext);
     }
     tbAesCipherText.Text = "";
 }
Пример #2
0
        public void TestAes()
        {
            byte[] key = AesStatic.GenerateKey();
            Assert.IsNotNull(key);
            byte[] iv = AesStatic.GenerateIV();
            Assert.IsNotNull(iv);

            Random random = new Random();

            byte[] plaintext = new byte[45674];
            random.NextBytes(plaintext);

            byte[] ciphertext = AesStatic.Encrypt(plaintext, key, iv);
            Assert.IsNotNull(ciphertext);
            Assert.AreEqual(ciphertext.Length, Util.GetTotalSize(plaintext.Length, 16));

            byte[] decrypted = AesStatic.Decrypt(ciphertext, key, iv);
            Assert.IsNotNull(decrypted);
            CollectionAssert.AreEqual(plaintext, decrypted);
        }