Encrypt one or more blocks of data. OutCiphertext must be at least size of the result of GetUpdateBufferSizeBytes, or it will fail. If Plaintext is less than the size of a block, OutCiphertext may or may not be modified until more data is provided in a future call to Update.