I would like to come up with a MAC algorithm that is simple and provably secure.
The message and mac are OTP encrypted. For the purpose of this exercise lets say the entire plaintext is known to the adversary (they have predicted it), but the MAC for the authentic message is not known.
I'm not an expert, but it seems to me that perfect mac security can be described as follows:
For any bitflip(s) of the encrypted message, the MAC should change in a way that is completely unpredictable. That is to say the OTP encrypted mac should be equally likely to change into any value in the set of potential values.
Question 1: Is that too stict? Too lax? Or just right?
Following from the above definition, here's an extremely inefficient but (I believe) perfectly secure algorithm:
MAC is initialized with 0's. Then, for every bit of the message, n random bits from the OTP are assigned. Where n is the MAC length. If the message bit is 1, the random bits are XOR'd with the MAC. If 0, they are not.
Question 2: Is that perfectly secure?
Question 3: If it is secure, is there any way the algorithm can be changed to improve the efficiency without reducing the security?