- Encrypting happens on binary data
- Mcrypt pads plain text with \0 to fill up a whole block
- It's up to you to strip excessive padding
- The IV for encryption and decryption should always be the same.
- But it does not need to be secret, only unique and random.