There's nothing like an official letter from the U.S. Department of Commerce's munitions control office to make you choke on your morning coffee. At least that was my response upon receiving such a notice a few years ago. It turns out we were (and still are) exporting "Dr. Dobb's Essential Books of Cryptography and Security" CD-ROM which provides the full text of articles and books -- as well as source code -- about encryption algorithms and protocols.
We'd been exporting "munitions" without a license -- that is, munitions that consisted of source code implementations of cryptography algorithms.
The solution was simple: I filled out some paperwork, wrote a $250 check, and Dr. Dobb's became a legally sanctioned munitions exporter.
Since then, the Department of Commerce, which administers munitions exports, has made some changes, forming the Bureau of Industry and Security to deal with the likes of Dr. Dobb's and acknowledging the concept of both open source software and the Internet. Now, organizations and individuals are required to notify the Bureau before making open source cryptographic software public on the Internet.
Still, open source cryptographic software can be a time bomb for companies using open source. A recent search of the Black Duck KnowledgeBase revealed more than 4,000 projects that include encryption algorithms strong enough to require a license if the code is exported, while another 3,900 projects might require an export license.
Which crypto algorithms are popping up most often in open source? The usual suspects lead the list -- RSA, DES, MD5, SHA, Blowfish, Diffie-Hellman, ElGamal, and AES. As far as the government is concerned, if your company exports software that includes implementation in source code of even a single strong encryption algorithm, then you must get a license, no matter who wrote the software or when it was written. Violators of encryption export controls can be subject to fines and imprisonment. Open source is here to stay and increasingly central to the IT landscape, and for good reason. However, that doesn't mean caution isn't in order, especially when security is involved.