What if we use a counter within the plain text and then encrypt the plain text with aes 256 to encrypt & authenticate?
encryptAES(32bit_counter+plain_text_of_96bit); or encryptAES(16bit_counter+plain_text_of_112bit);
This way we do not need to depend on other authentication algorithms and can send about 2^32*96 ~= 48 GB of data using single key.
User can also adjust their counter length & massage length and they can start using a new key by securely exchanging a new key before reaching maximum data transfer limit.
So is there any disadvantages of using this method except reduced data transfer rate?
Is this authentication method better than available cryptographic hash functions? (How much future proof this method is, considering weakness of cryptographic hash functions to collision attacks & length extension attacks? Ref: Comparison of SHA functions).