A MAC is usually constructed using a one way hash functions (cf. HMACs) or a block cipher (eg. CBC-MAC).