Previously, I used AES CBC 256 with 256 bit key and 128 bit IV.
However it seems slow so I decide to switch to AES GCM 256 bit key, 96 bit IV which has some parts I don't understand such as:
Auth tag: the output of AES GCM when encrypting and decrypting needs it Can I prepend it to the encrypted cipher text so it's instantly available when decrypting? Or does it need to be hidden from attacker?
Does reused IV cause repeated patterns in 2 encrypted cipher texts of 2 messages(2 messages are different but some letter can be identical)?
Reused IV in CBC is bad but in GCM is catastrophic. Let's say it's only reused for data, messages of 1 person while the others have their unique IVs, instead of nonce, it is only used for one person. Is it applicable?
What is AuthenticatedData? https://developer.apple.com/documentation/cryptokit/aes/gcm/3243034-seal