Please report errors and improvements to Ted Krovetz.
C files:
umac.h umac.c
Python files:
umac.py
You will also need an AES implementation. Good free ones are available at:
The Rijndael Homepage. (Search for "Barreto".) Gladman's AES Page rijndael.py