I have to encrypt and decrypt csv-files with the following specifications:

Cipher: AES-256-CBC MAC: SHA-512 Method: Encrypt-then-MAC

I am working on an Ubuntu Bionic and I have root acceess.

1.) Which would be the simplest setup to do this? Is this with openssl possible? I read tutorials for encryption and decryption with openssl, but are the specifications above possible with openssl?

2.) Is there a python library which can do this? If not python, could you emphasize a library of a programming language (and a programming language) I should use to do this task quick?

3.) I read how this symmetric block encryption works. Do I understand it right, that blocks of size 16 bytes are encrypted. The first block will be encrypted by the use of a password I set. Every next block will be encrypted from the one before and this will be validated with sha512 hash-function. Is this correct so far?

4.) I am not sure if I understand the last part correct: Method: Encrypt-then-MAC Does this mean, that the block will be encrypted before I use the Sha512 hash-function? What is the difference to MAC-then-Encrypt?

Thanks and Greetings