private void Check(BulkCipherAlgorithmARCFour cipher, int keySize) { Assert.AreEqual(keySize / 8, cipher.KeySize); Assert.AreEqual(0, cipher.BlockSize); Assert.AreEqual(keySize, cipher.Strength); Assert.AreEqual(BulkCipherAlgorithmType.Stream, cipher.Type); Assert.IsTrue(cipher.SupportsProtocolVersion(ProtocolVersion.TLS1_0)); Assert.IsFalse(cipher.SupportsProtocolVersion(ProtocolVersion.DTLS1_0)); Assert.IsNotNull(cipher.CreateEncryptor(new byte[keySize / 8], null)); Assert.IsNotNull(cipher.CreateDecryptor(new byte[keySize / 8], null)); }
/* Test vectors from http://www.freemedialibrary.com/index.php/RC4_test_vectors */ private void CheckVector(byte[] key, byte[] plaintext, byte[] ciphertext) { BulkCipherAlgorithmARCFour cipher = new BulkCipherAlgorithmARCFour(key.Length * 8); ICryptoTransform encryptor = cipher.CreateEncryptor(key, null); byte[] enc = encryptor.TransformFinalBlock(plaintext, 0, plaintext.Length); ICryptoTransform decryptor = cipher.CreateDecryptor(key, null); byte[] dec = decryptor.TransformFinalBlock(enc, 0, enc.Length); Assert.AreEqual(ciphertext, enc); Assert.AreEqual(plaintext, dec); }
/* Test vectors from http://www.freemedialibrary.com/index.php/RC4_test_vectors */ private void CheckVector(byte[] key, byte[] plaintext, byte[] ciphertext) { BulkCipherAlgorithmARCFour cipher = new BulkCipherAlgorithmARCFour(key.Length*8); ICryptoTransform encryptor = cipher.CreateEncryptor(key, null); byte[] enc = encryptor.TransformFinalBlock(plaintext, 0, plaintext.Length); ICryptoTransform decryptor = cipher.CreateDecryptor(key, null); byte[] dec = decryptor.TransformFinalBlock(enc, 0, enc.Length); Assert.AreEqual(ciphertext, enc); Assert.AreEqual(plaintext, dec); }
private void Check(BulkCipherAlgorithmARCFour cipher, int keySize) { Assert.AreEqual (keySize/8, cipher.KeySize); Assert.AreEqual (0, cipher.BlockSize); Assert.AreEqual (keySize, cipher.Strength); Assert.AreEqual (BulkCipherAlgorithmType.Stream, cipher.Type); Assert.IsTrue (cipher.SupportsProtocolVersion(ProtocolVersion.TLS1_0)); Assert.IsFalse (cipher.SupportsProtocolVersion(ProtocolVersion.DTLS1_0)); Assert.IsNotNull (cipher.CreateEncryptor(new byte[keySize/8], null)); Assert.IsNotNull (cipher.CreateDecryptor(new byte[keySize/8], null)); }
public void EncryptionKeyNull() { BulkCipherAlgorithmARCFour cipher = new BulkCipherAlgorithmARCFour(128); cipher.CreateEncryptor(null, null); }
public void EncryptionKeyInvalid() { BulkCipherAlgorithmARCFour cipher = new BulkCipherAlgorithmARCFour(128); cipher.CreateEncryptor(new byte[15], null); }
public void DecryptionKeyInvalid() { BulkCipherAlgorithmARCFour cipher = new BulkCipherAlgorithmARCFour(128); cipher.CreateDecryptor(new byte[15], null); }
public void DecryptionKeyNull() { BulkCipherAlgorithmARCFour cipher = new BulkCipherAlgorithmARCFour(128); cipher.CreateDecryptor(null, null); }