Fix nondeterministic bruteforce_decrypt test

The existing test_bruteforce_decrypt was nondeterministic; in some
cases, the generated ciphertext would be decryptable with one of the
wrong passphrases, which would cause test failure even though it
decrypts to gibberish. This checks that by splitting it into two
tests:

1. Test with an invalid ciphertext, so that EVPError is always raised;
2. Test with valid ciphertext, and check for *either* EVPError or
   decrypted plaintext that is not the same as the original plaintext.