@Test public void testEncryptionDecryption() throws Exception { for (int i=0; i<encryptedPackets.length; i++) { EncryptedEmailPacket packet = encryptedPackets[i]; UnencryptedEmailPacket decryptedPacket = packet.decrypt(identities[i]); byte[] arrayA = decryptedPacket.getContent(); byte[] arrayB = message.getBytes(); assertArrayEquals("Email message differs after decryption! CryptoImplementation = " + packet.getCryptoImpl().getName(), arrayA, arrayB); } }
@Test public void testHash() throws Exception { for (EncryptedEmailPacket packet: encryptedPackets) { assertTrue("Hash not valid! CryptoImplementation = " + packet.getCryptoImpl().getName(), packet.verifyPacketHash()); alterEncryptedData(packet); assertFalse("Hash is valid, but should be invalid! CryptoImplementation = " + packet.getCryptoImpl().getName(), packet.verifyPacketHash()); } }
@Test public void toByteArrayAndBack() throws Exception { for (EncryptedEmailPacket packet: encryptedPackets) { byte[] arrayA = packet.toByteArray(); byte[] arrayB = new EncryptedEmailPacket(arrayA).toByteArray(); assertArrayEquals("The two arrays differ! CryptoImplementation = " + packet.getCryptoImpl().getName(), arrayA, arrayB); } }