#use wml::debian::template title="Exploring Cryptographic Software in Debian's Main Archive" BARETITLE=true #use wml::debian::translation-check translation="1.3" # Nota bene! This is basically draft text from the lawyers, and it must # _not_ be modified for spelling errors and such. Formatting changes are # fine (I think). -- Joy
To: | Software in the Public Interest, Debian Project |
From: | Roszel C. Thomsen II, Partner, Thomsen & Burke LLP |
Date: | July 31, 2001 |
Re: | Exploring Cryptographic Software in Debian's Main Archive |
Thank you for this opportunity to comment on Sam Hartman's white paper entitled “Exploring Cryptographic Software in Debian's Main Archive”.
We are providing this information as a general guideline to you. BXA requires that each entity exporting products be familiar with and comply with their affirmative obligations set forth in the Export Administration Regulations. Please note that the regulations are subject to change. We recommend that you obtain your own legal advice when attempting to export. In addition some countries may restrict certain levels of encryption imported into their country. We recommend consulting legal counsel in the appropriate country or the applicable governmental agencies in the particular country.
By way of background, the export of cryptographic software from the United States is governed under the United States Export Administration Regulations (“EAR”, 15 CFR Part 730 et seq.) administered by the Commerce Department's Bureau of Export Administration (“BXA”). BXA revised the provisions of the EAR governing cryptographic software most recently on October 19, 2000. I refer to these as the “new US Regulations” in order to distinguish them from prior regulations that were more restrictive.
When the Clinton Administration came to Washington, encryption items were controlled for export from the United States as “munitions” under the Arms Export Control Act and the International Traffic in Arms Regulations. Most applications for licenses to export strong encryption items were denied. Industry and public interest groups lobbied for liberalization, and the Clinton Administration reformed the outdated U.S. export controls on encryption items in a series of graduated steps, culminating the new US Regulations. The new Bush Administration is considering further liberalizations that may be published later this year.
Despite these liberalizations, the U.S. export controls on commercial encryption items remain complex and onerous. American companies must submit encryption items for technical reviews by the intelligence authorities prior to export. Exports to some agencies of foreign governments require licenses, as do exports to telecommunications and Internet service providers wishing to provide services to some government agencies. Finally, post-export reporting requirements apply to many exports from the United States. Thus, U.S. encryption export controls continue to impose a significant regulatory burden on American companies, retarding the worldwide deployment of strong cryptography in commercial software programs.
Not all software programs with encryption are commercial products, however. For purposes of the EAR, cryptographic source code controls fall into three categories: (a) open source, (b) community source, and (c) proprietary source. The rules governing exports of each type of source code are different, and they have been amended in important respects in the new US Regulations.
Open source refers to software that is available to the public without restriction free of charge, under a GNU-style license agreement. Debian would appear to fall into this category. The old regulations allowed the export of open source to any end-user without a technical review, provided that the person making the open source available filed a contemporaneous notification with BXA and the National Security Agency (“NSA”). However, the old regulations were silent with respect to restrictions (if any) on the export of compiled executable software derived from open source.
Under the new US Regulations, not only the open source, but also the compiled executable software derived from open source, is eligible for export under the same conditions as the open source itself, provided that the compiled executable is available without restriction and free of charge. Unfortunately, if you include the compiled executable software into a product that you distribute for a fee, then the resulting product is subject to all of the rules that apply to commercial software programs. For example, they must be submitted to BXA and NSA for a one-time technical review, described above.
Community source refers to software that is available to the public free of charge for non-commercial use but that contains further restrictions on commercial use. Community source may be exported under essentially the same conditions as open source, but community source remains subject to more detailed reporting requirements.
Proprietary source refers to all source code that is neither “open” nor “community” source. Exporters may provide proprietary source code to any end-user in the EU and its partners, and to any non-government end-user in other countries, promptly upon filing of a technical review with BXA and NSA. The same reporting requirements applicable to community source also apply to proprietary source.
Please keep in mind that persons in the US who may post to sites outside the US are governed by US law, even if they do so in their individual capacity. Therefore, you may want to warn persons in the US that their posting to the current crypto server outside the US are still subject to US regulations.
Finally, you should be aware that a core set of US export controls apply to all exports of open source cryptographic software from the United States. In essence, these controls prohibit the export of open source cryptographic software under License Exception TSU to (1) prohibited parties (listed at http://www.bxa.doc.gov/DPL/Default.shtm, (2) prohibited countries (currently Cuba, Iran, Iraq, Libya, North Korea, Sudan, Syria and Taliban Occupied Afghanistan) and (3) design, development, stockpiling, production or use of nuclear, chemical or biological weapons or missiles.
With this background, your specific questions with respect to Debian are address in the order that they appear in Sam Hartman's white paper, below in italics.
Sam Hartman
Debian Project
Debian is a free operating system. Currently for US export reasons, Debian
splits cryptographic software off into a separate archive located outside
the US. This document summarizes the questions we would need to answer from
a legal standpoint in order to merge these two archives.
Debian is a group of individuals working to produce a free operating system.
These individuals are responsible for decisions they make while working on
Debian; there is no legal Debian organization that developers work for or that
decisions are made on behalf of. There is a registered non-profit, Software in
the Public Interest (SPI), that holds money and resources for Debian. So
decisions developers make may impact resources owned by SPI and thus impact
SPI. Other Debian resources are owned by various sponsors. Debian generally
depends on sponsors for network connectivity. There are also third-party groups
that copy the Debian software onto mirrors so that people around the world can
download and use it. Others make and sell CDs of Debian. All these groups might
be accountable to a greater or lesser extent for the decisions Debian makes. We
want to conduct ourselves in a manner that minimizes the liability for all
parties and, within that constraint, maximizes the value of our efforts. As with all operating system vendors, Debian needs to include cryptographic
software. This software provides security, allows users to engage in Internet
commerce, and accomplishes other tasks requiring cryptography. Today, this
software is stored on a server outside the United States, known as the "non-US
server". Currently Debian takes no measures to assist US developers in
following export control regulations if they upload software to the non-US
archive or to prevent them from uploading software. We would like to move
cryptographic software from the non-US server onto our main server in the US. With the increasing networked nature of the work, and the fact that more and
more critical functions are being placed on computing platforms, and the
unfortunate growth of mischief and deliberate malice, security is going to be
increasingly important. Cryptography is an important corner stone of a number
of security processes. Any OS that does not make an effort to seamlessly
increasingly important. Cryptography is an important corner stone of a number
of security processes. Any OS that does not make an effort to seamlessly
integrate cryptography is unlikely to be competitive. Putting all software on a single source, and the corresponding ability to
create a single set of CD's that have integrated cryptographic support makes it
easier for the users, makes it easier for CD vendors, simplifies the task of
developers uploading software to these sites, and simplifies the task of
replicating the software repositories on the internet. The rest of this document will focus on the main server within the US and on
its mirrors and copies around the world. It's important to realize that there
is currently a parallel structure set up to deal with the non-US server. Every few months Debian developers release a new official version of Debian.
This software is made available on the main (and for cryptographic software,
the non-US) server to a group of primary mirrors around the world. These
mirrors copy the software off the main server and make it available to users
and secondary mirrors. The users can use HTTP, FTP, or a variety of other
methods to retrieve the software. CD images are made available to users and
resellers. These images can be burned onto physical CDs by individuals or by
those wanting to sell/give away Debian. In addition, there are two constantly evolving releases of Debian: the testing
and unstable releases. These releases are updated on a daily basis by
developers around the world. Like the official releases, these releases are
made available on the main and non-US servers to primary mirrors. The primary
mirrors make software available via HTTP, FTP and other methods both to end
users and to secondary mirrors. CD images are sometimes made from these
releases. The important difference between these evolving releases and the
official release is that they are constantly changing. Often, developers upload binaries and source code at the same time. However, we
support many different types of computers each of which requires different
binaries for the same source code. Most developers make binaries only for one
of the computer architectures we support when they upload a changed program.
Automated processes go and use the source code they have uploaded to make
binaries for the other architectures. As such, some binaries for a particular
source code program will likely be uploaded at a later time than that source
code. Some Debian developers also use Debian resources to work on as-yet-unreleased
software. The primary resource that is useful for this task is the Debian CVS
server. Source code to projects on this server is almost always available to
the public, but may change many times in a day. The CVS server is in the US.
server. Source code to projects on this server is almost always available to
the public, but may change many times in a day. The CVS server is in the US. However most Debian software is not developed directly by Debian developers.
Instead, the software is released to the public by some third party. Some
software is made available to the public on sites within the US, while other
original authors release their software on sites outside the US. Debian
developers are responsible for integrating the software into Debian. As part of
this job, many Debian developers end up working closely with the original
software author, often contributing code back to the original release. The software in Debian complies with the Debian Free Software Guidelines; the
DFSG. We believe this software has publicly available source code in the sense
of section 740.13(e) of the EAR. The guidelines require that the source code be
redistributable. The DFSG indirectly requires that one be able to distribute a
product based on the source code without paying a fee. We distribute all the
source code in Debian as part of our releases. Other software is distributed in
our non-free archive, but our focus in this document is on the DFSG-free
software. We would be interested in knowing to what extent we could move
non-DFSG-free software for which we can distribute source code into the US, but
we want to make sure advice in this area does not get confused with advice on
how to handle DFSG-free software. Debian developers live around the world and are citizens of many countries.
Obviously some are US citizens, but many others are not. Some may be citizens
of the seven forbidden countries in EAR section 740.13(e). As mentioned, we have mirrors all around the world. We do not have any official
mirrors (mirrors with which the project is connected) in any of the seven
countries listed in EAR section 740.13(e), although since our software is
publicly available, it might be copied into these countries. Most mirrors
within the US currently only mirror the main server (the one without
cryptography), although some mirror both the main and non-US portions of the
archive. Debian takes no responsibility for mirrors within the US that mirror
the non-US portion of the archive. We want to include cryptographic software in our main archive. We want to
understand the risks to developers, users, SPI, mirror maintainers, CD
resellers, sponsors and any other parties that are connected with Debian so
that we can make an informed decision. We want to be able to document and
publicize these risks so that these parties do not commit a crime through
that we can make an informed decision. We want to be able to document and
publicize these risks so that these parties do not commit a crime through
ignorance. Obviously, we also want to avoid taking unnecessary risks. In particular we would like to consider the following activities: END Debian Document Preamble
I will try to reflect these goals in my answers to your questions. By
way of summary, I think that an initial notification should suffice for
the current archive and updates thereto. A new notification would be
required only if a new program with encryption should be added to the
archive. Additional distribution of freeware does not require further
notification. However, commercial versions would be subject to the
technical review, licensing and reporting requirements that apply to
other commercial products. Predicting the future of changes to laws or
regulations is difficult, but if the law changes, you would either have
to take down the site or modify it in order to remain in compliance.
You have no obligation to inform other constituencies of their legal
obligations, but if you have a list of frequently asked questions, I
would be pleased to suggest appropriate responses that you might wish to
offer. Questions (Note, each question by Debian is marked with "D:") If the notification is drafted properly, and the archive remains on the
site identified in the notification, then you only have to file a single
notification with BXA for the initial archive. Only one notification
for one U.S. site is required; no separate notification is required for
mirror sites inside or outside the U.S. This notification would only
have to be updated if you added a new program implementing encryption. The draft language above includes the information that you need to
include in the notification As drafted above, and assuming that the archive remains on the Internet
site identified in the notification, you should not have to file a
subsequent notification for subsequent updates. You would only file
another notification if you added a new program implementing
cryptography. The trend has been toward increased liberalization of the export
controls on cryptography in the United States, rather than increased
restrictions. This trend has been constant over the past decade and has
accelerated in the past year. We cannot advise you with respect to what
you might lose unless and until new regulations are published. However,
we believe that you would retain copyrights to the software and some,
albeit perhaps more limited, rights to export. I think that you only have to file a new notification if you add a new
program that incorporates cryptography. Updates to existing programs
should be covered by the broad language of the notification we
suggested, above. The regulations are pretty clear that the notification has to occur
prior to or contemporaneous with public availability. Exports prior to
public availability require an export license. Therefore, if the archive
in step 3 is not publicly available, then either the package must be made
publicly available prior to step 3 (and notifications sent), or export
licenses will be needed for Debian developers. If the archive in step 3
is publicly available, then notification at that point would eliminate the
need to have export licenses for Debian developers. If the upstream author has notified BXA, that is sufficient. I do not think that you have to file a new notification for object code,
provided that a notification for the source code has been filed. As long as the program is open source, it may include an open crypto API
and still qualify under License Exception TSU. Yes. Overreporting should probably be avoided where reasonable, but
underreporting must be avoided. Future updates of an existing program
do not require separate notification. Only new programs require separate
notification. You may automate the process of sending notifications. This in an
internal procedural matter. BXA and NSA do not care how you handle the
filing of notifications internally. The BXA notification may be in either electronic or paper form;
however, the NSA notification must be in paper form. Any person may send in the notification; citizenship is not relevant. Other than notification, you might consider implementing a reverse IP
lookup that identifies the computer requesting the download, and that
blocks downloads of the cryptographic archive to countries embargoed by
the United States: Cuba, Iran, Iraq, Libya, North Korea, Syria, Sudan
and Taliban Occupied Afghanistan. In addition, you might consider
having a provision in your license agreement, or a separate screen prior
to download, that advises the person downloading the software as
follows: This software is subject to U.S. export controls applicable to open source
software that includes encryption. Debian has filed the notification with
the Bureau of Export Administration and the National Security Agency that
is required prior to export under the provisions of License Exception TSU
of the U.S. Export Administration Regulations. Consistent with the
requirements of License Exception TSU, you represent and warrant that you
are eligible to receive this software, that you are not located in a country
subject to embargo by the United States, and that you will not use the
software directly or indirectly in the design, development, stockpiling
or use of nuclear, chemical or biological weapons or missiles. Compiled
binary code that is given away free of charge may be re-exported under the
provisions of License Exception TSU. However, additional technical review
and other requirements may apply to commercial products incorporating this
code, prior to export from the United States. For additional information,
please refer to www.bxa.doc.gov. One issue we often run into is software patents. Clearly the
integration of cryptography into software doesn't remove any of the
patent concerns we would normally have to think about. However, are
there any new issues we need to consider when patents interact with
cryptography export regulations? It seems that at least for exemption
TSU (section 740.13 of the EAR), patents do not influence whether the
source code is public.
It is important to differentiate between the archive that has been a
subject of notification, and new programs. You can update the archive
that has been a subject of notification without further notification, as
described above. Only new programs need to be subject of a separate
notification, prior to posting. If new programs must be reviewed by
developers prior to posting, and such software is not both publicly
available and already notified to the U.S. government, then I recommend
that you consider obtaining an export license authorizing this limited,
pre-notification review. You are correct that patents do not disqualify
software from eligibility for export under License Exception TSU. Do our mirrors within the US need to notify the BXA if we add
cryptography to our archive? How often do they need to notify BXA?
We would like to avoid a situation where mirrors have to notify for
each new program Debian adds to the archive, even if our master
server must send in such notifications. We need to keep operations
simple for mirror operators. What, if anything, would mirrors
outside the US need to do? If we send an update to a mirror rather than waiting for it to
download software, do we need to take any special steps? What if we
send a mirror a request to download new/changed software? Once the notification has been filed for the central server, no further
notification is required for mirror sites.
A) mail-order shipment of CD's for the cost of the media? If it's easier, another way to look at this is: what conditions must
be met for the vendor to ship binaries under License Exception TSU,
and what expenses is the vendor allowed to recover costs and/or sell
at a profit? Reasonable and customary fees for reproduction and distribution are
allowed, but not license fees or royalties. Support also is allowed,
subject to the above limitation. A one time review is for the product, and is vendor-independent. You would have to apply for a license to set up an official mirror in an
embargoed country. The de facto industry standard should suffice. I hope that the government
will recognize that any system devised by man can be defeated, with enough
effort. Some of our developers may live in or be citizens of the seven
countries forbidden for exemption TSU. Would it be a problem for
these developers to have access to cryptographic software on our
machines? Would we need to ask them not to download such software?
What steps should we take if we become aware of them downloading
cryptographic software? Simply posting cryptographic software on a server that may be accessible
from an embargoed country does not constitute “knowledge” that the
software has been exported there. Therefore, criminal liability would
not apply to the act of posting. We recommend that you perform IP
checking and deny downloads to known embargoed countries. This due
diligence also would provide a defense to a claim of civil liability.
If you find out that your software has been downloaded to a prohibited
destination, then I recommend that you block future downloads to that
specific site unless and until you obtain a license from BXA. Debian thanks the Hewlett-Packard
Linux Systems Operation
for their support in obtaining this legal opinion.About Debian
Our Goal
D:
Do we need to notify the Bureau of Export Administration (BXA)
about software we add to releases?
Department of Commerce
Bureau of Export Administration
Office of Strategic Trade and Foreign Policy Controls
14th Street and Pennsylvania Ave., N.W.
Room 2705
Washington, DC 20230
Re: Unrestricted Encryption Source Code Notification
Commodity: Debian Source Code
Dear Sir/Madam:
Pursuant to paragraph (e)(1) of Part 740.13 of the U.S. Export
Administration Regulations ("EAR", 15 CFR Part 730 et seq.), we are
providing this written notification of the Internet location of the
unrestricted, publicly available Debian Source Code. Debian Source Code
is a free operating system developed by a group of individuals,
coordinated by the non-profit Software in the Public Interest. This
archive is updated from time to time, but its location is constant.
Therefore, and this notification serves as a one-time notification for
subsequent updates that may occur in the future. New programs will be
the subject of a separate notification. The Internet location for the
Debian Source Code is: http://www.debian.org.
This site is mirrored to a number of other sites located
outside the United States.
A duplicate copy of this notification has been sent to the ENC
Encryption Request Coordinator, P.O. Box 246, Annapolis Junction, MD
20701-0246.
If you have any questions, please call me at (xxx) xxx-xxxx.
Sincerely,
Name
Title
D:
What information do we need to include in the notifications?
D:
How often do we need to notify? We want to notify as little as
possible as it creates more work for us and for the government,
but we want to notify as often as necessary to follow the
regulations.
D:
If we move our cryptographic software into this country,
and the laws or regulations change to be more restrictive, what
are we likely to lose? Would we have to destroy any software,
or CDs? Would we have to remove it from our master or secondary
sites? If we use the increased availability of cryptographic
software to improve the security of the rest of the system, and
the cryptographic legal climate worsens, would be likely to have
to discard all copies of such software in the U.S.?
D:
In order of decreasing preference, we would like to notify:
D:
New packages enter the debian archive through the following sequence
of steps. At what point must the notification happen?
D:
If the upstream author has notified BXA, is the notification needed?
(Packaging for debian can involve modifications to the source
involving file locations, and occasionally functional differences,
although the general goal is to make the upstream code work in
Debian with minimal modification.)
D:
Do we need to notify when new binaries (object code) are added if
we have already notified for the source code?
D:
Is notification required for programs that do not contain crypto
algorithms, but are linked against crypto libraries? What about
programs that launch other programs in order to do cryptographic
functions?
D:
New programs can be checked easily prior to their release (and
notification done at that time), but when an update is performed,
there isn't a manual step at which to do the notification. Would
it be acceptable to notify BXA for each addition of software, with
an indication that future updates may include the addition of
crypto functionality?
D:
Can we automate the process of sending in notifications?
D:
What form should the notification take?
D:
Who can send in the notifications? For example, do they need to
be a US citizen?
D:
Are there any other concerns we should be aware of? What steps
other than notification do we need to take?
D:
Currently, users around the world can access and potentially
download software that is awaiting integration into our archive.
Likely, we would do any necessary notifications as software is
processed into the archive, so software in this state would be
awaiting notification. Would this be a problem? If so, would it
be acceptable to set up an alternate queue of cryptographic
software awaiting integration into the archive available only to
our developers? In order to process software into our distribution,
developers who are often outside the US need to examine the
software and make sure it meets certain guidelines. How should we
accomplish this access? Are there any other solutions to this
pre-notification area of the archive we should consider?
D:
Distribution, Mirroring and CDs
D:
Which of the following vendors (if any) would be able to ship
unmodified Debian binaries (and source) with only notification?
Which would require review and approval? Could the review be
concurrent with shipment, or must approval predate shipment?
B) mail-order shipment of CD's for profit?
C) off-the-shelf sales of CD's for the cost of the media?
D) off-the-shelf sales of CD's for profit?
E) vendor providing CD's from A or C above, along with hardware. HW
sold at a profit, but with no preinstall?
F) E, but with software pre-installed?
G) any of the above, selling support for the software?
D:
If the one-time review is required for unmodified binaries shipped
for-profit, can that approval be used by other vendors which are
shipping unmodified binaries?
D:
Would it be acceptable to set up an official mirror in a country
forbidden in EAR section 740.13(e)?
D:
If it is technically infeasible to block access from the T7 countries
to a web (or ftp, etc) server, does due diligence require extreme
measures? Does the defacto standard of (US) industry common-practice
meet due diligence?
D:
What steps should we take if we become aware of someone downloading
software into one of these countries from a mirror within the US?
What if we become aware of downloads into one of these countries
from a mirror outside the US?