UMAC: Source Code Download

If you agree with the Download Policy stated on this page, you may download the source code available here. Downloading these files constitutes implicit agreement on your part to the Download Policy:

Technical Notes


Download Policy

** Permission to Download -- if you are in the USA or Canada **

Permission to download umac.c and umac.h to any site within the United States or Canada, and to subsequently use this code for any purpose, is hereby granted.

** Permission to Download -- if you are NOT in the USA or Canada **

Permission to download umac.c and umac.h to any site outside the United States and Canada is hereby granted only if you agree to use this code solely for its intended purpose of generating a message authentication code



Export of some cryptographic software is restricted under the International Traffic in Arms Regulations (ITAR), which covers:

Cryptographic ... software with the capability of maintaining secrecy or confidentiality ..." [ITAR Part 121.1]

The ITAR explicitly excludes software which is:

Limited to data authentication which calculates a Message Authentication Code (MAC) or similar results to ensure no alteration of text has taken place ... but does not allow for encryption of data, text, or other media other than that needed for the authentication. [ITAR Part 121.1 (vi)]

I conclude that our UMAC source (umac.c and umac.h) is not ITAR restricted, and I am under NO legal obligation to restrict its distribution.

That said, it is clear that UMAC code could always be modified to provide a confidentiality capability. So could any piece of software. With that in mind, I am disallowing you to download this software if you are outside the USA and Canada and intend to do anything with this source code which would result in its having a confidentiality capability. If you are in the USA or Canada and feel like modifying the code for confidentiality-related purposes, go right ahead.

Phillip Rogaway
University of California, Davis