I think I need to use a MAC for ensuring the integrity of a URL that my system will provide to an end user that will use it to download a content from another component of the system, i.e., an URL has to go from one component of my system to another component using the end user as a non-secure channel.
I had thought to use something like AES256(shared_key, MD5 (URL)), i.e., using the output of the MD5(URL) will be 16 bytes that will the input for the AES256, i.e., just one block encryption.
The point is that the key will not be changeb a lot, i.e., lots of MACs will be generated using the same key so and I am not sure if this method is secure on existencial forgery, because, using the same key multiple with AES is not CPA secure.
Please could anybody help on this?
Update: Thanks very much for the responses
I forgot to mention that in some way I am enforced to use that approach.
However I am a little bit upset with the fact of generating MACs using the same key, I mean, AES with a single block is not CPA secure if the same key is used and I am not sure how this impacts the security of the MAC using the approach that I have described.
Thanks in advance