summaryrefslogtreecommitdiff
path: root/doc/glossary.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/glossary.html')
-rw-r--r--doc/glossary.html2132
1 files changed, 0 insertions, 2132 deletions
diff --git a/doc/glossary.html b/doc/glossary.html
deleted file mode 100644
index 3ca33810f..000000000
--- a/doc/glossary.html
+++ /dev/null
@@ -1,2132 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<HTML>
-<HEAD>
-<TITLE>Introduction to FreeS/WAN</TITLE>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=iso-8859-1">
-<STYLE TYPE="text/css"><!--
-BODY { font-family: serif }
-H1 { font-family: sans-serif }
-H2 { font-family: sans-serif }
-H3 { font-family: sans-serif }
-H4 { font-family: sans-serif }
-H5 { font-family: sans-serif }
-H6 { font-family: sans-serif }
-SUB { font-size: smaller }
-SUP { font-size: smaller }
-PRE { font-family: monospace }
---></STYLE>
-</HEAD>
-<BODY>
-<A HREF="toc.html">Contents</A>
-<A HREF="web.html">Previous</A>
-<A HREF="biblio.html">Next</A>
-<HR>
-<H1><A name="ourgloss">Glossary for the Linux FreeS/WAN project</A></H1>
-<P>Entries are in alphabetical order. Some entries are only one line or
- one paragraph long. Others run to several paragraphs. I have tried to
- put the essential information in the first paragraph so you can skip
- the other paragraphs if that seems appropriate.</P>
-<HR>
-<H2><A name="jump">Jump to a letter in the glossary</A></H2>
-<CENTER> <BIG><B><A href="#0">numeric</A><A href="#A"> A</A><A href="#B">
- B</A><A href="#C"> C</A><A href="#D"> D</A><A href="#E"> E</A><A href="#F">
- F</A><A href="#G"> G</A><A href="#H"> H</A><A href="#I"> I</A><A href="#J">
- J</A><A href="#K"> K</A><A href="#L"> L</A><A href="#M"> M</A><A href="#N">
- N</A><A href="#O"> O</A><A href="#P"> P</A><A href="#Q"> Q</A><A href="#R">
- R</A><A href="#S"> S</A><A href="#T"> T</A><A href="#U"> U</A><A href="#V">
- V</A><A href="#W"> W</A><A href="#X"> X</A><A href="#Y"> Y</A><A href="#Z">
- Z</A></B></BIG></CENTER>
-<HR>
-<H2><A name="gloss">Other glossaries</A></H2>
-<P>Other glossaries which overlap this one include:</P>
-<UL>
-<LI>The VPN Consortium's glossary of<A href="http://www.vpnc.org/terms.html">
- VPN terms</A>.</LI>
-<LI>glossary portion of the<A href="http://www.rsa.com/rsalabs/faq/B.html">
- Cryptography FAQ</A></LI>
-<LI>an extensive crytographic glossary on<A href="http://www.ciphersbyritter.com/GLOSSARY.HTM">
- Terry Ritter's</A> page.</LI>
-<LI>The<A href="#NSA"> NSA</A>'s<A href="http://www.sans.org/newlook/resources/glossary.htm">
- glossary of computer security</A> on the<A href="http://www.sans.org">
- SANS Institute</A> site.</LI>
-<LI>a small glossary for Internet Security at<A href="http://www5.zdnet.com/pcmag/pctech/content/special/glossaries/internetsecurity.html">
- PC magazine</A></LI>
-<LI>The<A href="http://www.visi.com/crypto/inet-crypto/glossary.html">
- glossary</A> from Richard Smith's book<A href="biblio.html#Smith">
- Internet Cryptography</A></LI>
-</UL>
-<P>Several Internet glossaries are available as RFCs:</P>
-<UL>
-<LI><A href="http://www.rfc-editor.org/rfc/rfc1208.txt">Glossary of
- Networking Terms</A></LI>
-<LI><A href="http://www.rfc-editor.org/rfc/rfc1983.txt">Internet User's
- Glossary</A></LI>
-<LI><A href="http://www.rfc-editor.org/rfc/rfc2828.txt">Internet
- Security Glossary</A></LI>
-</UL>
-<P>More general glossary or dictionary information:</P>
-<UL>
-<LI>Free Online Dictionary of Computing (FOLDOC)
-<UL>
-<LI><A href="http://www.nightflight.com/foldoc">North America</A></LI>
-<LI><A href="http://wombat.doc.ic.ac.uk/foldoc/index.html">Europe</A></LI>
-<LI><A href="http://www.nue.org/foldoc/index.html">Japan</A></LI>
-</UL>
-<P>There are many more mirrors of this dictionary.</P>
-</LI>
-<LI>The Jargon File, the definitive resource for hacker slang and
- folklore
-<UL>
-<LI><A href="http://www.netmeg.net/jargon">North America</A></LI>
-<LI><A href="http://info.wins.uva.nl/~mes/jargon/">Holland</A></LI>
-<LI><A href="http://www.tuxedo.org/~esr/jargon">home page</A></LI>
-</UL>
-<P>There are also many mirrors of this. See the home page for a list.</P>
-</LI>
-<LI>A general<A href="http://www.trinity.edu/~rjensen/245glosf.htm#Navigate">
- technology glossary</A></LI>
-<LI>An<A href="http://www.yourdictionary.com/"> online dictionary
- resource page</A> with pointers to many dictionaries for many languages</LI>
-<LI>A<A href="http://www.onelook.com/"> search engine</A> that accesses
- several hundred online dictionaries</LI>
-<LI>O'Reilly<A href="http://www.ora.com/reference/dictionary/">
- Dictionary of PC Hardware and Data Communications Terms</A></LI>
-<LI><A href="http://www.FreeSoft.org/CIE/index.htm">Connected</A>
- Internet encyclopedia</LI>
-<LI><A href="http://www.whatis.com/">whatis.com</A></LI>
-</UL>
-<HR>
-<H2><A name="definitions">Definitions</A></H2>
-<DL>
-<DT><A name="0">0</A></DT>
-<DT><A name="3DES">3DES (Triple DES)</A></DT>
-<DD>Using three<A href="#DES"> DES</A> encryptions on a single data
- block, with at least two different keys, to get higher security than is
- available from a single DES pass. The three-key version of 3DES is the
- default encryption algorithm for<A href="web.html#FreeSWAN"> Linux
- FreeS/WAN</A>.
-<P><A href="#IPSEC">IPsec</A> always does 3DES with three different
- keys, as required by RFC 2451. For an explanation of the two-key
- variant, see<A href="#2key"> two key triple DES</A>. Both use an<A href="#EDE">
- EDE</A> encrypt-decrypt-encrpyt sequence of operations.</P>
-<P>Single<A href="#DES"> DES</A> is<A href="politics.html#desnotsecure">
- insecure</A>.</P>
-<P>Double DES is ineffective. Using two 56-bit keys, one might expect an
- attacker to have to do 2<SUP>112</SUP> work to break it. In fact, only
- 2<SUP>57</SUP> work is required with a<A href="#meet">
- meet-in-the-middle attack</A>, though a large amount of memory is also
- required. Triple DES is vulnerable to a similar attack, but that just
- reduces the work factor from the 2<SUP>168</SUP> one might expect to 2<SUP>
-112</SUP>. That provides adequate protection against<A href="#brute">
- brute force</A> attacks, and no better attack is known.</P>
-<P>3DES can be somewhat slow compared to other ciphers. It requires
- three DES encryptions per block. DES was designed for hardware
- implementation and includes some operations which are difficult in
- software. However, the speed we get is quite acceptable for many uses.
- See our<A href="performance.html"> performance</A> document for
- details.</P>
-</DD>
-<DT><A name="A">A</A></DT>
-<DT><A name="active">Active attack</A></DT>
-<DD>An attack in which the attacker does not merely eavesdrop (see<A href="#passive">
- passive attack</A>) but takes action to change, delete, reroute, add,
- forge or divert data. Perhaps the best-known active attack is<A href="#middle">
- man-in-the-middle</A>. In general,<A href="#authentication">
- authentication</A> is a useful defense against active attacks.</DD>
-<DT><A name="AES">AES</A></DT>
-<DD>The<B> A</B>dvanced<B> E</B>ncryption<B> S</B>tandard -- a new<A href="#block">
- block cipher</A> standard to replace<A href="politics.html#desnotsecure">
- DES</A> -- developed by<A href="#NIST"> NIST</A>, the US National
- Institute of Standards and Technology. DES used 64-bit blocks and a
- 56-bit key. AES ciphers use a 128-bit block and 128, 192 or 256-bit
- keys. The larger block size helps resist<A href="#birthday"> birthday
- attacks</A> while the large key size prevents<A href="#brute"> brute
- force attacks</A>.
-<P>Fifteen proposals meeting NIST's basic criteria were submitted in
- 1998 and subjected to intense discussion and analysis, &quot;round one&quot;
- evaluation. In August 1999, NIST narrowed the field to five &quot;round two&quot;
- candidates:</P>
-<UL>
-<LI><A href="http://www.research.ibm.com/security/mars.html">Mars</A>
- from IBM</LI>
-<LI><A href="http://www.rsa.com/rsalabs/aes/">RC6</A> from RSA</LI>
-<LI><A href="http://www.esat.kuleuven.ac.be/~rijmen/rijndael/">Rijndael</A>
- from two Belgian researchers</LI>
-<LI><A href="http://www.cl.cam.ac.uk/~rja14/serpent.html">Serpent</A>, a
- British-Norwegian-Israeli collaboration</LI>
-<LI><A href="http://www.counterpane.com/twofish.html">Twofish</A> from
- the consulting firm<A href="http://www.counterpane.com"> Counterpane</A>
-</LI>
-</UL>
-<P>Three of the five finalists -- Rijndael, Serpent and Twofish -- have
- completely open licenses.</P>
-<P>In October 2000, NIST announced the winner -- Rijndael.</P>
-<P>For more information, see:</P>
-<UL>
-<LI>NIST's<A href="http://csrc.nist.gov/encryption/aes/aes_home.htm">
- AES home page</A></LI>
-<LI>the Block Cipher Lounge<A href="http://www.ii.uib.no/~larsr/aes.html">
- AES page</A></LI>
-<LI>Brian Gladman's<A href="http://fp.gladman.plus.com/cryptography_technology/index.htm">
- code and benchmarks</A></LI>
-<LI>Helger Lipmaa's<A href="http://www.tcs.hut.fi/~helger/aes/"> survey
- of implementations</A></LI>
-</UL>
-<P>AES will be added to a future release of<A href="web.html#FreeSWAN">
- Linux FreeS/WAN</A>. Likely we will add all three of the finalists with
- good licenses. User-written<A href="web.html#patch"> AES patches</A>
- are already available.</P>
-<P>Adding AES may also require adding stronger hashes,<A href="#SHA-256">
- SHA-256, SHA-384 and SHA-512</A>.</P>
-</DD>
-<DT><A name="AH">AH</A></DT>
-<DD>The<A href="#IPSEC"> IPsec</A><B> A</B>uthentication<B> H</B>eader,
- added after the IP header. For details, see our<A href="ipsec.html#AH.ipsec">
- IPsec</A> document and/or RFC 2402.</DD>
-<DT><A name="alicebob">Alice and Bob</A></DT>
-<DD>A and B, the standard example users in writing on cryptography and
- coding theory. Carol and Dave join them for protocols which require
- more players.
-<P>Bruce Schneier extends these with many others such as Eve the
- Eavesdropper and Victor the Verifier. His extensions seem to be in the
- process of becoming standard as well. See page 23 of<A href="biblio.html#schneier">
- Applied Cryptography</A></P>
-<P>Alice and Bob have an amusing<A href="http://www.conceptlabs.co.uk/alicebob.html">
- biography</A> on the web.</P>
-</DD>
-<DT>ARPA</DT>
-<DD>see<A href="#DARPA"> DARPA</A></DD>
-<DT><A name="ASIO">ASIO</A></DT>
-<DD>Australian Security Intelligence Organisation.</DD>
-<DT>Asymmetric cryptography</DT>
-<DD>See<A href="#public"> public key cryptography</A>.</DD>
-<DT><A name="authentication">Authentication</A></DT>
-<DD>Ensuring that a message originated from the expected sender and has
- not been altered on route.<A href="#IPSEC"> IPsec</A> uses
- authentication in two places:
-<UL>
-<LI>peer authentication, authenticating the players in<A href="#IKE">
- IKE</A>'s<A href="#DH"> Diffie-Hellman</A> key exchanges to prevent<A href="#middle">
- man-in-the-middle attacks</A>. This can be done in a number of ways.
- The methods supported by FreeS/WAN are discussed in our<A href="adv_config.html#choose">
- advanced configuration</A> document.</LI>
-<LI>packet authentication, authenticating packets on an established<A href="#SA">
- SA</A>, either with a separate<A href="#AH"> authentication header</A>
- or with the optional authentication in the<A href="#ESP"> ESP</A>
- protocol. In either case, packet authentication uses a<A href="#HMAC">
- hashed message athentication code</A> technique.</LI>
-</UL>
-<P>Outside IPsec, passwords are perhaps the most common authentication
- mechanism. Their function is essentially to authenticate the person's
- identity to the system. Passwords are generally only as secure as the
- network they travel over. If you send a cleartext password over a
- tapped phone line or over a network with a packet sniffer on it, the
- security provided by that password becomes zero. Sending an encrypted
- password is no better; the attacker merely records it and reuses it at
- his convenience. This is called a<A href="#replay"> replay</A> attack.</P>
-<P>A common solution to this problem is a<A href="#challenge">
- challenge-response</A> system. This defeats simple eavesdropping and
- replay attacks. Of course an attacker might still try to break the
- cryptographic algorithm used, or the<A href="#random"> random number</A>
- generator.</P>
-</DD>
-<DT><A name="auto">Automatic keying</A></DT>
-<DD>A mode in which keys are automatically generated at connection
- establisment and new keys automaically created periodically thereafter.
- Contrast with<A href="ipsec.html#manual"> manual keying</A> in which a
- single stored key is used.
-<P>IPsec uses the<A href="#DH"> Diffie-Hellman key exchange protocol</A>
- to create keys. An<A href="#authentication"> authentication</A>
- mechansim is required for this. FreeS/WAN normally uses<A href="#RSA">
- RSA</A> for this. Other methods supported are discussed in our<A href="adv_config.html#choose">
- advanced configuration</A> document.</P>
-<P>Having an attacker break the authentication is emphatically not a
- good idea. An attacker that breaks authentication, and manages to
- subvert some other network entities (DNS, routers or gateways), can use
- a<A href="#middle"> man-in-the middle attack</A> to break the security
- of your IPsec connections.</P>
-<P>However, having an attacker break the authentication in automatic
- keying is not quite as bad as losing the key in manual keying.</P>
-<UL>
-<LI>An attacker who reads /etc/ipsec.conf and gets the keys for a
- manually keyed connection can, without further effort, read all
- messages encrypted with those keys, including any old messages he may
- have archived.</LI>
-<LI>Automatic keying has a property called<A href="#PFS"> perfect
- forward secrecy</A>. An attacker who breaks the authentication gets
- none of the automatically generated keys and cannot immediately read
- any messages. He has to mount a successful<A href="#middle">
- man-in-the-middle attack</A> in real time before he can read anything.
- He cannot read old archived messages at all and will not be able to
- read any future messages not caught by man-in-the-middle tricks.</LI>
-</UL>
-<P>That said, the secrets used for authentication, stored in<A href="manpage.d/ipsec.secrets.5.html">
- ipsec.secrets(5)</A>, should still be protected as tightly as
- cryptographic keys.</P>
-</DD>
-<DT><A name="B">B</A></DT>
-<DT><A href="http://www.nortelnetworks.com">Bay Networks</A></DT>
-<DD>A vendor of routers, hubs and related products, now a subsidiary of
- Nortel. Interoperation between their IPsec products and Linux FreeS/WAN
- was problematic at last report; see our<A href="interop.html#bay">
- interoperation</A> section.</DD>
-<DT><A name="benchmarks">benchmarks</A></DT>
-<DD>Our default block cipher,<A href="#3DES"> triple DES</A>, is slower
- than many alternate ciphers that might be used. Speeds achieved,
- however, seem adequate for many purposes. For example, the assembler
- code from the<A href="#LIBDES"> LIBDES</A> library we use encrypts 1.6
- megabytes per second on a Pentium 200, according to the test program
- supplied with the library.
-<P>For more detail, see our document on<A href="performance.html">
- FreeS/WAN performance</A>.</P>
-</DD>
-<DT><A name="BIND">BIND</A></DT>
-<DD><B>B</B>erkeley<B> I</B>nternet<B> N</B>ame<B> D</B>aemon, a widely
- used implementation of<A href="ipsec.html#DNS"> DNS</A> (Domain Name
- Service). See our bibliography for a<A href="ipsec.html#DNS"> useful
- reference</A>. See the<A href="http://www.isc.org/bind.html"> BIND home
- page</A> for more information and the latest version.</DD>
-<DT><A name="birthday">Birthday attack</A></DT>
-<DD>A cryptographic attack based on the mathematics exemplified by the<A href="#paradox">
- birthday paradox</A>. This math turns up whenever the question of two
- cryptographic operations producing the same result becomes an issue:
-<UL>
-<LI><A href="#collision">collisions</A> in<A href="#digest"> message
- digest</A> functions.</LI>
-<LI>identical output blocks from a<A href="#block"> block cipher</A></LI>
-<LI>repetition of a challenge in a<A href="#challenge">
- challenge-response</A> system</LI>
-</UL>
-<P>Resisting such attacks is part of the motivation for:</P>
-<UL>
-<LI>hash algorithms such as<A href="#SHA"> SHA</A> and<A href="#RIPEMD">
- RIPEMD-160</A> giving a 160-bit result rather than the 128 bits of<A href="#MD4">
- MD4</A>,<A href="#MD5"> MD5</A> and<A href="#RIPEMD"> RIPEMD-128</A>.</LI>
-<LI><A href="#AES">AES</A> block ciphers using a 128-bit block instead
- of the 64-bit block of most current ciphers</LI>
-<LI><A href="#IPSEC">IPsec</A> using a 32-bit counter for packets sent
- on an<A href="ipsec.html#auto"> automatically keyed</A><A href="#SA">
- SA</A> and requiring that the connection always be rekeyed before the
- counter overflows.</LI>
-</UL>
-</DD>
-<DT><A name="paradox">Birthday paradox</A></DT>
-<DD>Not really a paradox, just a rather counter-intuitive mathematical
- fact. In a group of 23 people, the chance of a least one pair having
- the same birthday is over 50%.
-<P>The second person has 1 chance in 365 (ignoring leap years) of
- matching the first. If they don't match, the third person's chances of
- matching one of them are 2/365. The 4th, 3/365, and so on. The total of
- these chances grows more quickly than one might guess.</P>
-</DD>
-<DT><A name="block">Block cipher</A></DT>
-<DD>A<A href="#symmetric"> symmetric cipher</A> which operates on
- fixed-size blocks of plaintext, giving a block of ciphertext for each.
- Contrast with<A href="#stream"> stream cipher</A>. Block ciphers can be
- used in various<A href="#mode"> modes</A> when multiple block are to be
- encrypted.
-<P><A href="#DES">DES</A> is among the the best known and widely used
- block ciphers, but is now obsolete. Its 56-bit key size makes it<A href="politics.html#desnotsecure">
- highly insecure</A> today.<A href="#3DES"> Triple DES</A> is the
- default block cipher for<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>
-.</P>
-<P>The current generation of block ciphers -- such as<A href="#Blowfish">
- Blowfish</A>,<A href="#CAST128"> CAST-128</A> and<A href="#IDEA"> IDEA</A>
- -- all use 64-bit blocks and 128-bit keys. The next generation,<A href="#AES">
- AES</A>, uses 128-bit blocks and supports key sizes up to 256 bits.</P>
-<P>The<A href="http://www.ii.uib.no/~larsr/bc.html"> Block Cipher Lounge</A>
- web site has more information.</P>
-</DD>
-<DT><A name="Blowfish">Blowfish</A></DT>
-<DD>A<A href="#block"> block cipher</A> using 64-bit blocks and keys of
- up to 448 bits, designed by<A href="biblio.html#schneier"> Bruce
- Schneier</A> and used in several products.
-<P>This is not required by the<A href="#IPSEC"> IPsec</A> RFCs and not
- currently used in<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>.</P>
-</DD>
-<DT><A name="brute">Brute force attack (exhaustive search)</A></DT>
-<DD>Breaking a cipher by trying all possible keys. This is always
- possible in theory (except against a<A href="#OTP"> one-time pad</A>),
- but it becomes practical only if the key size is inadequate. For an
- important example, see our document on the<A href="politics.html#desnotsecure">
- insecurity of DES</A> with its 56-bit key. For an analysis of key sizes
- required to resist plausible brute force attacks, see<A href="http://www.counterpane.com/keylength.html">
- this paper</A>.
-<P>Longer keys protect against brute force attacks. Each extra bit in
- the key doubles the number of possible keys and therefore doubles the
- work a brute force attack must do. A large enough key defeats<STRONG>
- any</STRONG> brute force attack.</P>
-<P>For example, the EFF's<A href="#EFF"> DES Cracker</A> searches a
- 56-bit key space in an average of a few days. Let us assume an attacker
- that can find a 64-bit key (256 times harder) by brute force search in
- a second (a few hundred thousand times faster). For a 96-bit key, that
- attacker needs 2<SUP>32</SUP> seconds, about 135 years. Against a
- 128-bit key, he needs 2<SUP>32</SUP> times that, over 500,000,000,000
- years. Your data is then obviously secure against brute force attacks.
- Even if our estimate of the attacker's speed is off by a factor of a
- million, it still takes him over 500,000 years to crack a message.</P>
-<P>This is why</P>
-<UL>
-<LI>single<A href="#DES"> DES</A> is now considered<A href="politics.html#desnotsecure">
- dangerously insecure</A></LI>
-<LI>all of the current generation of<A href="#block"> block ciphers</A>
- use a 128-bit or longer key</LI>
-<LI><A href="#AES">AES</A> ciphers support keysizes 128, 192 and 256
- bits</LI>
-<LI>any cipher we add to Linux FreeS/WAN will have<EM> at least</EM> a
- 128-bit key</LI>
-</UL>
-<P><STRONG>Cautions:</STRONG>
-<BR><EM> Inadequate keylength always indicates a weak cipher</EM> but it
- is important to note that<EM> adequate keylength does not necessarily
- indicate a strong cipher</EM>. There are many attacks other than brute
- force, and adequate keylength<EM> only</EM> guarantees resistance to
- brute force. Any cipher, whatever its key size, will be weak if design
- or implementation flaws allow other attacks.</P>
-<P>Also,<EM> once you have adequate keylength</EM> (somewhere around 90
- or 100 bits),<EM> adding more key bits make no practical difference</EM>
-, even against brute force. Consider our 128-bit example above that
- takes 500,000,000,000 years to break by brute force. We really don't
- care how many zeroes there are on the end of that, as long as the
- number remains ridiculously large. That is, we don't care exactly how
- large the key is as long as it is large enough.</P>
-<P>There may be reasons of convenience in the design of the cipher to
- support larger keys. For example<A href="#Blowfish"> Blowfish</A>
- allows up to 448 bits and<A href="#RC4"> RC4</A> up to 2048, but beyond
- 100-odd bits it makes no difference to practical security.</P>
-</DD>
-<DT>Bureau of Export Administration</DT>
-<DD>see<A href="#BXA"> BXA</A></DD>
-<DT><A name="BXA">BXA</A></DT>
-<DD>The US Commerce Department's<B> B</B>ureau of E<B>x</B>port<B> A</B>
-dministration which administers the<A href="#EAR"> EAR</A> Export
- Administration Regulations controling the export of, among other
- things, cryptography.</DD>
-<DT><A name="C">C</A></DT>
-<DT><A name="CA">CA</A></DT>
-<DD><B>C</B>ertification<B> A</B>uthority, an entity in a<A href="#PKI">
- public key infrastructure</A> that can certify keys by signing them.
- Usually CAs form a hierarchy. The top of this hierarchy is called the<A href="#rootCA">
- root CA</A>.
-<P>See<A href="#web"> Web of Trust</A> for an alternate model.</P>
-</DD>
-<DT><A name="CAST128">CAST-128</A></DT>
-<DD>A<A href="#block"> block cipher</A> using 64-bit blocks and 128-bit
- keys, described in RFC 2144 and used in products such as<A href="#Entrust">
- Entrust</A> and recent versions of<A href="#PGP"> PGP</A>.
-<P>This is not required by the<A href="#IPSEC"> IPsec</A> RFCs and not
- currently used in<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>.</P>
-</DD>
-<DT>CAST-256</DT>
-<DD><A href="#Entrust">Entrust</A>'s candidate cipher for the<A href="#AES">
- AES standard</A>, largely based on the<A href="#CAST128"> CAST-128</A>
- design.</DD>
-<DT><A name="CBC">CBC mode</A></DT>
-<DD><B>C</B>ipher<B> B</B>lock<B> C</B>haining<A href="#mode"> mode</A>,
- a method of using a<A href="#block"> block cipher</A> in which for each
- block except the first, the result of the previous encryption is XORed
- into the new block before it is encrypted. CBC is the mode used in<A href="#IPSEC">
- IPsec</A>.
-<P>An<A href="#IV"> initialisation vector</A> (IV) must be provided. It
- is XORed into the first block before encryption. The IV need not be
- secret but should be different for each message and unpredictable.</P>
-</DD>
-<DT><A name="CIDR">CIDR</A></DT>
-<DD><B>C</B>lassless<B> I</B>nter-<B>D</B>omain<B> R</B>outing, an
- addressing scheme used to describe networks not restricted to the old
- Class A, B, and C sizes. A CIDR block is written<VAR> address</VAR>/<VAR>
-mask</VAR>, where<VAR> address</VAR> is a 32-bit Internet address. The
- first<VAR> mask</VAR> bits of<VAR> address</VAR> are part of the
- gateway address, while the remaining bits designate other host
- addresses. For example, the CIDR block 192.0.2.96/27 describes a
- network with gateway 192.0.2.96, hosts 192.0.2.96 through 192.0.2.126
- and broadcast 192.0.2.127.
-<P>FreeS/WAN policy group files accept CIDR blocks of the format<VAR>
- address</VAR>/[<VAR>mask</VAR>], where<VAR> address</VAR> may take the
- form<VAR> name.domain.tld</VAR>. An absent<VAR> mask</VAR> is assumed
- to be /32.</P>
-</DD>
-<DT>Certification Authority</DT>
-<DD>see<A href="#CA"> CA</A></DD>
-<DT><A name="challenge">Challenge-response authentication</A></DT>
-<DD>An<A href="#authentication"> authentication</A> system in which one
- player generates a<A href="#random"> random number</A>, encrypts it and
- sends the result as a challenge. The other player decrypts and sends
- back the result. If the result is correct, that proves to the first
- player that the second player knew the appropriate secret, required for
- the decryption. Variations on this technique exist using<A href="#public">
- public key</A> or<A href="#symmetric"> symmetric</A> cryptography. Some
- provide two-way authentication, assuring each player of the other's
- identity.
-<P>This is more secure than passwords against two simple attacks:</P>
-<UL>
-<LI>If cleartext passwords are sent across the wire (e.g. for telnet),
- an eavesdropper can grab them. The attacker may even be able to break
- into other systems if the user has chosen the same password for them.</LI>
-<LI>If an encrypted password is sent, an attacker can record the
- encrypted form and use it later. This is called a replay attack.</LI>
-</UL>
-<P>A challenge-response system never sends a password, either cleartext
- or encrypted. An attacker cannot record the response to one challenge
- and use it as a response to a later challenge. The random number is
- different each time.</P>
-<P>Of course an attacker might still try to break the cryptographic
- algorithm used, or the<A href="#random"> random number</A> generator.</P>
-</DD>
-<DT><A name="mode">Cipher Modes</A></DT>
-<DD>Different ways of using a block cipher when encrypting multiple
- blocks.
-<P>Four standard modes were defined for<A href="#DES"> DES</A> in<A href="#FIPS">
- FIPS</A> 81. They can actually be applied with any block cipher.</P>
-<TABLE><TBODY></TBODY>
-<TR><TD></TD><TD><A href="#ECB">ECB</A></TD><TD>Electronic CodeBook</TD><TD>
-encrypt each block independently</TD></TR>
-<TR><TD></TD><TD><A href="#CBC">CBC</A></TD><TD>Cipher Block Chaining
-<BR></TD><TD>XOR previous block ciphertext into new block plaintext
- before encrypting new block</TD></TR>
-<TR><TD></TD><TD>CFB</TD><TD>Cipher FeedBack</TD><TD></TD></TR>
-<TR><TD></TD><TD>OFB</TD><TD>Output FeedBack</TD><TD></TD></TR>
-</TABLE>
-<P><A href="#IPSEC">IPsec</A> uses<A href="#CBC"> CBC</A> mode since
- this is only marginally slower than<A href="#ECB"> ECB</A> and is more
- secure. In ECB mode the same plaintext always encrypts to the same
- ciphertext, unless the key is changed. In CBC mode, this does not
- occur.</P>
-<P>Various other modes are also possible, but none of them are used in
- IPsec.</P>
-</DD>
-<DT><A name="ciphertext">Ciphertext</A></DT>
-<DD>The encrypted output of a cipher, as opposed to the unencrypted<A href="#plaintext">
- plaintext</A> input.</DD>
-<DT><A href="http://www.cisco.com">Cisco</A></DT>
-<DD>A vendor of routers, hubs and related products. Their IPsec products
- interoperate with Linux FreeS/WAN; see our<A href="interop.html#Cisco">
- interop</A> section.</DD>
-<DT><A name="client">Client</A></DT>
-<DD>This term has at least two distinct uses in discussing IPsec:
-<UL>
-<LI>The<STRONG> clients of an IPsec gateway</STRONG> are the machines it
- protects, typically on one or more subnets behind the gateway. In this
- usage, all the machines on an office network are clients of that
- office's IPsec gateway. Laptop or home machines connecting to the
- office, however, are<EM> not</EM> clients of that gateway. They are
- remote gateways, running the other end of an IPsec connection. Each of
- them is also its own client.</LI>
-<LI><STRONG>IPsec client software</STRONG> is used to describe software
- which runs on various standalone machines to let them connect to IPsec
- networks. In this usage, a laptop or home machine connecting to the
- office is a client, and the office gateway is the server.</LI>
-</UL>
-<P>We generally use the term in the first sense. Vendors of Windows
- IPsec solutions often use it in the second. See this<A href="interop.html#client.server">
- discussion</A>.</P>
-</DD>
-<DT><A name="cc">Common Criteria</A></DT>
-<DD>A set of international security classifications which are replacing
- the old US<A href="#rainbow"> Rainbow Book</A> standards and similar
- standards in other countries.
-<P>Web references include this<A href="http://csrc.nist.gov/cc"> US
- government site</A> and this<A href="http://www.commoncriteria.org">
- global home page</A>.</P>
-</DD>
-<DT>Conventional cryptography</DT>
-<DD>See<A href="#symmetric"> symmetric cryptography</A></DD>
-<DT><A name="collision">Collision resistance</A></DT>
-<DD>The property of a<A href="#digest"> message digest</A> algorithm
- which makes it hard for an attacker to find or construct two inputs
- which hash to the same output.</DD>
-<DT>Copyleft</DT>
-<DD>see GNU<A href="#GPL"> General Public License</A></DD>
-<DT><A name="CSE">CSE</A></DT>
-<DD><A href="http://www.cse-cst.gc.ca/">Communications Security
- Establishment</A>, the Canadian organisation for<A href="#SIGINT">
- signals intelligence</A>.</DD>
-<DT><A name="D">D</A></DT>
-<DT><A name="DARPA">DARPA (sometimes just ARPA)</A></DT>
-<DD>The US government's<B> D</B>efense<B> A</B>dvanced<B> R</B>esearch<B>
- P</B>rojects<B> A</B>gency. Projects they have funded over the years
- have included the Arpanet which evolved into the Internet, the TCP/IP
- protocol suite (as a replacement for the original Arpanet suite), the
- Berkeley 4.x BSD Unix projects, and<A href="#SDNS"> Secure DNS</A>.
-<P>For current information, see their<A href="http://www.darpa.mil/ito">
- web site</A>.</P>
-</DD>
-<DT><A name="DOS">Denial of service (DoS) attack</A></DT>
-<DD>An attack that aims at denying some service to legitimate users of a
- system, rather than providing a service to the attacker.
-<UL>
-<LI>One variant is a flooding attack, overwhelming the system with too
- many packets, to much email, or whatever.</LI>
-<LI>A closely related variant is a resource exhaustion attack. For
- example, consider a &quot;TCP SYN flood&quot; attack. Setting up a TCP connection
- involves a three-packet exchange:
-<UL>
-<LI>Initiator: Connection please (SYN)</LI>
-<LI>Responder: OK (ACK)</LI>
-<LI>Initiator: OK here too</LI>
-</UL>
-<P>If the attacker puts bogus source information in the first packet,
- such that the second is never delivered, the responder may wait a long
- time for the third to come back. If responder has already allocated
- memory for the connection data structures, and if many of these bogus
- packets arrive, the responder may run out of memory.</P>
-</LI>
-<LI>Another variant is to feed the system undigestible data, hoping to
- make it sick. For example, IP packets are limited in size to 64K bytes
- and a fragment carries information on where it starts within that 64K
- and how long it is. The &quot;ping of death&quot; delivers fragments that say,
- for example, that they start at 60K and are 20K long. Attempting to
- re-assemble these without checking for overflow can be fatal.</LI>
-</UL>
-<P>The two example attacks discussed were both quite effective when
- first discovered, capable of crashing or disabling many operating
- systems. They were also well-publicised, and today far fewer systems
- are vulnerable to them.</P>
-</DD>
-<DT><A name="DES">DES</A></DT>
-<DD>The<B> D</B>ata<B> E</B>ncryption<B> S</B>tandard, a<A href="#block">
- block cipher</A> with 64-bit blocks and a 56-bit key. Probably the most
- widely used<A href="#symmetric"> symmetric cipher</A> ever devised. DES
- has been a US government standard for their own use (only for
- unclassified data), and for some regulated industries such as banking,
- since the late 70's. It is now being replaced by<A href="#AES"> AES</A>
-.
-<P><A href="politics.html#desnotsecure">DES is seriously insecure
- against current attacks.</A></P>
-<P><A href="web.html#FreeSWAN">Linux FreeS/WAN</A> does not include DES,
- even though the RFCs specify it.<B> We strongly recommend that single
- DES not be used.</B></P>
-<P>See also<A href="#3DES"> 3DES</A> and<A href="#DESX"> DESX</A>,
- stronger ciphers based on DES.</P>
-</DD>
-<DT><A name="DESX">DESX</A></DT>
-<DD>An improved<A href="#DES"> DES</A> suggested by Ron Rivest of RSA
- Data Security. It XORs extra key material into the text before and
- after applying the DES cipher.
-<P>This is not required by the<A href="#IPSEC"> IPsec</A> RFCs and not
- currently used in<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>. DESX
- would be the easiest additional transform to add; there would be very
- little code to write. It would be much faster than 3DES and almost
- certainly more secure than DES. However, since it is not in the RFCs
- other IPsec implementations cannot be expected to have it.</P>
-</DD>
-<DT>DH</DT>
-<DD>see<A href="#DH"> Diffie-Hellman</A></DD>
-<DT><A name="DHCP">DHCP</A></DT>
-<DD><STRONG>D</STRONG>ynamic<STRONG> H</STRONG>ost<STRONG> C</STRONG>
-onfiguration<STRONG> P</STRONG>rotocol, a method of assigning<A href="#dynamic">
- dynamic IP addresses</A>, and providing additional information such as
- addresses of DNS servers and of gateways. See this<A href="http://www.dhcp.org">
- DHCP resource page.</A></DD>
-<DT><A name="DH">Diffie-Hellman (DH) key exchange protocol</A></DT>
-<DD>A protocol that allows two parties without any initial shared secret
- to create one in a manner immune to eavesdropping. Once they have done
- this, they can communicate privately by using that shared secret as a
- key for a block cipher or as the basis for key exchange.
-<P>The protocol is secure against all<A href="#passive"> passive attacks</A>
-, but it is not at all resistant to active<A href="#middle">
- man-in-the-middle attacks</A>. If a third party can impersonate Bob to
- Alice and vice versa, then no useful secret can be created.
- Authentication of the participants is a prerequisite for safe
- Diffie-Hellman key exchange. IPsec can use any of several<A href="#authentication">
- authentication</A> mechanisims. Those supported by FreeS/WAN are
- discussed in our<A href="config.html#choose"> configuration</A>
- section.</P>
-<P>The Diffie-Hellman key exchange is based on the<A href="#dlog">
- discrete logarithm</A> problem and is secure unless someone finds an
- efficient solution to that problem.</P>
-<P>Given a prime<VAR> p</VAR> and generator<VAR> g</VAR> (explained
- under<A href="#dlog"> discrete log</A> below), Alice:</P>
-<UL>
-<LI>generates a random number<VAR> a</VAR></LI>
-<LI>calculates<VAR> A = g^a modulo p</VAR></LI>
-<LI>sends<VAR> A</VAR> to Bob</LI>
-</UL>
-<P>Meanwhile Bob:</P>
-<UL>
-<LI>generates a random number<VAR> b</VAR></LI>
-<LI>calculates<VAR> B = g^b modulo p</VAR></LI>
-<LI>sends<VAR> B</VAR> to Alice</LI>
-</UL>
-<P>Now Alice and Bob can both calculate the shared secret<VAR> s =
- g^(ab)</VAR>. Alice knows<VAR> a</VAR> and<VAR> B</VAR>, so she
- calculates<VAR> s = B^a</VAR>. Bob knows<VAR> A</VAR> and<VAR> b</VAR>
- so he calculates<VAR> s = A^b</VAR>.</P>
-<P>An eavesdropper will know<VAR> p</VAR> and<VAR> g</VAR> since these
- are made public, and can intercept<VAR> A</VAR> and<VAR> B</VAR> but,
- short of solving the<A href="#dlog"> discrete log</A> problem, these do
- not let him or her discover the secret<VAR> s</VAR>.</P>
-</DD>
-<DT><A name="signature">Digital signature</A></DT>
-<DD>Sender:
-<UL>
-<LI>calculates a<A href="#digest"> message digest</A> of a document</LI>
-<LI>encrypts the digest with his or her private key, using some<A href="#public">
- public key cryptosystem</A>.</LI>
-<LI>attaches the encrypted digest to the document as a signature</LI>
-</UL>
-<P>Receiver:</P>
-<UL>
-<LI>calculates a digest of the document (not including the signature)</LI>
-<LI>decrypts the signature with the signer's public key</LI>
-<LI>verifies that the two results are identical</LI>
-</UL>
-<P>If the public-key system is secure and the verification succeeds,
- then the receiver knows</P>
-<UL>
-<LI>that the document was not altered between signing and verification</LI>
-<LI>that the signer had access to the private key</LI>
-</UL>
-<P>Such an encrypted message digest can be treated as a signature since
- it cannot be created without<EM> both</EM> the document<EM> and</EM>
- the private key which only the sender should possess. The<A href="web.html#legal">
- legal issues</A> are complex, but several countries are moving in the
- direction of legal recognition for digital signatures.</P>
-</DD>
-<DT><A name="dlog">discrete logarithm problem</A></DT>
-<DD>The problem of finding logarithms in a finite field. Given a field
- defintion (such definitions always include some operation analogous to
- multiplication) and two numbers, a base and a target, find the power
- which the base must be raised to in order to yield the target.
-<P>The discrete log problem is the basis of several cryptographic
- systems, including the<A href="#DH"> Diffie-Hellman</A> key exchange
- used in the<A href="#IKE"> IKE</A> protocol. The useful property is
- that exponentiation is relatively easy but the inverse operation,
- finding the logarithm, is hard. The cryptosystems are designed so that
- the user does only easy operations (exponentiation in the field) but an
- attacker must solve the hard problem (discrete log) to crack the
- system.</P>
-<P>There are several variants of the problem for different types of
- field. The IKE/Oakley key determination protocol uses two variants,
- either over a field modulo a prime or over a field defined by an
- elliptic curve. We give an example modulo a prime below. For the
- elliptic curve version, consult an advanced text such as<A href="biblio.html#handbook">
- Handbook of Applied Cryptography</A>.</P>
-<P>Given a prime<VAR> p</VAR>, a generator<VAR> g</VAR> for the field
- modulo that prime, and a number<VAR> x</VAR> in the field, the problem
- is to find<VAR> y</VAR> such that<VAR> g^y = x</VAR>.</P>
-<P>For example, let p = 13. The field is then the integers from 0 to 12.
- Any integer equals one of these modulo 13. That is, the remainder when
- any integer is divided by 13 must be one of these.</P>
-<P>2 is a generator for this field. That is, the powers of two modulo 13
- run through all the non-zero numbers in the field. Modulo 13 we have:</P>
-<PRE> y x
- 2^0 == 1
- 2^1 == 2
- 2^2 == 4
- 2^3 == 8
- 2^4 == 3 that is, the remainder from 16/13 is 3
- 2^5 == 6 the remainder from 32/13 is 6
- 2^6 == 12 and so on
- 2^7 == 11
- 2^8 == 9
- 2^9 == 5
- 2^10 == 10
- 2^11 == 7
- 2^12 == 1</PRE>
-<P>Exponentiation in such a field is not difficult. Given, say,<NOBR><VAR>
- y = 11</VAR>,calculating<NOBR><VAR> x = 7</VAR>is straightforward. One
- method is just to calculate<NOBR><VAR> 2^11 = 2048</VAR>,then<NOBR><VAR>
- 2048 mod 13 == 7</VAR>.When the field is modulo a large prime (say a
- few 100 digits) you need a silghtly cleverer method and even that is
- moderately expensive in computer time, but the calculation is still not
- problematic in any basic way.</P>
-<P>The discrete log problem is the reverse. In our example, given<NOBR><VAR>
- x = 7</VAR>,find the logarithm<NOBR><VAR> y = 11</VAR>.When the field
- is modulo a large prime (or is based on a suitable elliptic curve),
- this is indeed problematic. No solution method that is not
- catastrophically expensive is known. Quite a few mathematicians have
- tackled this problem. No efficient method has been found and
- mathematicians do not expect that one will be. It seems likely no
- efficient solution to either of the main variants the discrete log
- problem exists.</P>
-<P>Note, however, that no-one has proven such methods do not exist. If a
- solution to either variant were found, the security of any crypto
- system using that variant would be destroyed. This is one reason<A href="#IKE">
- IKE</A> supports two variants. If one is broken, we can switch to the
- other.</P>
-</DD>
-<DT><A name="discretionary">discretionary access control</A></DT>
-<DD>access control mechanisms controlled by the user, for example Unix
- rwx file permissions. These contrast with<A href="#mandatory">
- mandatory access controls</A>.</DD>
-<DT><A name="DNS">DNS</A></DT>
-<DD><B>D</B>omain<B> N</B>ame<B> S</B>ervice, a distributed database
- through which names are associated with numeric addresses and other
- information in the Internet Protocol Suite. See also the<A href="background.html#dns.background">
- DNS background</A> section of our documentation.</DD>
-<DT>DOS attack</DT>
-<DD>see<A href="#DOS"> Denial Of Service</A> attack</DD>
-<DT><A name="dynamic">dynamic IP address</A></DT>
-<DD>an IP address which is automatically assigned, either by<A href="#DHCP">
- DHCP</A> or by some protocol such as<A href="#PPP"> PPP</A> or<A href="#PPPoE">
- PPPoE</A> which the machine uses to connect to the Internet. This is
- the opposite of a<A href="#static"> static IP address</A>, pre-set on
- the machine itself.</DD>
-<DT><A name="E">E</A></DT>
-<DT><A name="EAR">EAR</A></DT>
-<DD>The US government's<B> E</B>xport<B> A</B>dministration<B> R</B>
-egulations, administered by the<A href="#BXA"> Bureau of Export
- Administration</A>. These have replaced the earlier<A href="#ITAR">
- ITAR</A> regulations as the controls on export of cryptography.</DD>
-<DT><A name="ECB">ECB mode</A></DT>
-<DD><B>E</B>lectronic<B> C</B>ode<B>B</B>ook mode, the simplest way to
- use a block cipher. See<A href="#mode"> Cipher Modes</A>.</DD>
-<DT><A name="EDE">EDE</A></DT>
-<DD>The sequence of operations normally used in either the three-key
- variant of<A href="#3DES"> triple DES</A> used in<A href="#IPSEC">
- IPsec</A> or the<A href="#2key"> two-key</A> variant used in some other
- systems.
-<P>The sequence is:</P>
-<UL>
-<LI><B>E</B>ncrypt with key1</LI>
-<LI><B>D</B>ecrypt with key2</LI>
-<LI><B>E</B>ncrypt with key3</LI>
-</UL>
-<P>For the two-key version, key1=key3.</P>
-<P>The &quot;advantage&quot; of this EDE order of operations is that it makes it
- simple to interoperate with older devices offering only single DES. Set
- key1=key2=key3 and you have the worst of both worlds, the overhead of
- triple DES with the &quot;security&quot; of single DES. Since both the<A href="politics.html#desnotsecure">
- security of single DES</A> and the overheads of triple DES are
- seriously inferior to many other ciphers, this is a spectacularly
- dubious &quot;advantage&quot;.</P>
-</DD>
-<DT><A name="Entrust">Entrust</A></DT>
-<DD>A Canadian company offerring enterprise<A href="#PKI"> PKI</A>
- products using<A href="#CAST128"> CAST-128</A> symmetric crypto,<A href="#RSA">
- RSA</A> public key and<A href="#X509"> X.509</A> directories.<A href="http://www.entrust.com">
- Web site</A></DD>
-<DT><A name="EFF">EFF</A></DT>
-<DD><A href="http://www.eff.org">Electronic Frontier Foundation</A>, an
- advocacy group for civil rights in cyberspace.</DD>
-<DT><A name="encryption">Encryption</A></DT>
-<DD>Techniques for converting a readable message (<A href="#plaintext">
-plaintext</A>) into apparently random material (<A href="#ciphertext">
-ciphertext</A>) which cannot be read if intercepted. A key is required
- to read the message.
-<P>Major variants include<A href="#symmetric"> symmetric</A> encryption
- in which sender and receiver use the same secret key and<A href="#public">
- public key</A> methods in which the sender uses one of a matched pair
- of keys and the receiver uses the other. Many current systems,
- including<A href="#IPSEC"> IPsec</A>, are<A href="#hybrid"> hybrids</A>
- combining the two techniques.</P>
-</DD>
-<DT><A name="ESP">ESP</A></DT>
-<DD><B>E</B>ncapsulated<B> S</B>ecurity<B> P</B>ayload, the<A href="#IPSEC">
- IPsec</A> protocol which provides<A href="#encryption"> encryption</A>.
- It can also provide<A href="#authentication"> authentication</A>
- service and may be used with null encryption (which we do not
- recommend). For details see our<A href="ipsec.html#ESP.ipsec"> IPsec</A>
- document and/or RFC 2406.</DD>
-<DT><A name="#extruded">Extruded subnet</A></DT>
-<DD>A situation in which something IP sees as one network is actually in
- two or more places.
-<P>For example, the Internet may route all traffic for a particular
- company to that firm's corporate gateway. It then becomes the company's
- problem to get packets to various machines on their<A href="#subnet">
- subnets</A> in various departments. They may decide to treat a branch
- office like a subnet, giving it IP addresses &quot;on&quot; their corporate net.
- This becomes an extruded subnet.</P>
-<P>Packets bound for it are delivered to the corporate gateway, since as
- far as the outside world is concerned, that subnet is part of the
- corporate network. However, instead of going onto the corporate LAN (as
- they would for, say, the accounting department) they are then
- encapsulated and sent back onto the Internet for delivery to the branch
- office.</P>
-<P>For information on doing this with Linux FreeS/WAN, look in our<A href="adv_config.html#extruded.config">
- advanced configuration</A> section.</P>
-</DD>
-<DT>Exhaustive search</DT>
-<DD>See<A href="#brute"> brute force attack</A>.</DD>
-<DT><A name="F">F</A></DT>
-<DT><A name="FIPS">FIPS</A></DT>
-<DD><B>F</B>ederal<B> I</B>nformation<B> P</B>rocessing<B> S</B>tandard,
- the US government's standards for products it buys. These are issued by<A
-href="#NIST"> NIST</A>. Among other things,<A href="#DES"> DES</A> and<A href="#SHA">
- SHA</A> are defined in FIPS documents. NIST have a<A href="http://www.itl.nist.gov/div897/pubs">
- FIPS home page</A>.</DD>
-<DT><A name="FSF">Free Software Foundation (FSF)</A></DT>
-<DD>An organisation to promote free software, free in the sense of these
- quotes from their web pages</DD>
-<DD><BLOCKQUOTE> &quot;Free software&quot; is a matter of liberty, not price. To
- understand the concept, you should think of &quot;free speech&quot;, not &quot;free
- beer.&quot;
-<P>&quot;Free software&quot; refers to the users' freedom to run, copy,
- distribute, study, change and improve the software.</P>
-</BLOCKQUOTE>
-<P>See also<A href="#GNU"> GNU</A>,<A href="#GPL"> GNU General Public
- License</A>, and<A href="http://www.fsf.org"> the FSF site</A>.</P>
-</DD>
-<DT>FreeS/WAN</DT>
-<DD>see<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A></DD>
-<DT><A name="fullnet">Fullnet</A></DT>
-<DD>The CIDR block containing all IPs of its IP version. The<A HREF="#IPv4">
- IPv4</A> fullnet is written 0.0.0.0/0. Also known as &quot;all&quot; and
- &quot;default&quot;, fullnet may be used in a routing table to specify a default
- route, and in a FreeS/WAN<A HREF="policygroups.html#policygroups">
- policy group</A> file to specify a default IPsec policy.</DD>
-<DT>FSF</DT>
-<DD>see<A href="#FSF"> Free software Foundation</A></DD>
-<DT><A name="G">G</A></DT>
-<DT><A name="GCHQ">GCHQ</A></DT>
-<DD><A href="http://www.gchq.gov.uk">Government Communications
- Headquarters</A>, the British organisation for<A href="#SIGINT">
- signals intelligence</A>.</DD>
-<DT>generator of a prime field</DT>
-<DD>see<A href="#dlog"> discrete logarithm problem</A></DD>
-<DT><A name="GILC">GILC</A></DT>
-<DD><A href="http://www.gilc.org">Global Internet Liberty Campaign</A>,
- an international organisation advocating, among other things, free
- availability of cryptography. They have a<A href="http://www.gilc.org/crypto/wassenaar">
- campaign</A> to remove cryptographic software from the<A href="#Wassenaar.gloss">
- Wassenaar Arrangement</A>.</DD>
-<DT>Global Internet Liberty Campaign</DT>
-<DD>see<A href="#GILC"> GILC</A>.</DD>
-<DT><A name="GTR">Global Trust Register</A></DT>
-<DD>An attempt to create something like a<A href="#rootCA"> root CA</A>
- for<A href="#PGP"> PGP</A> by publishing both<A href="biblio.html#GTR">
- as a book</A> and<A href="http://www.cl.cam.ac.uk/Research/Security/Trust-Register">
- on the web</A> the fingerprints of a set of verified keys for
- well-known users and organisations.</DD>
-<DT><A name="GMP">GMP</A></DT>
-<DD>The<B> G</B>NU<B> M</B>ulti-<B>P</B>recision library code, used in<A href="web.html#FreeSWAN">
- Linux FreeS/WAN</A> by<A href="#Pluto"> Pluto</A> for<A href="#public">
- public key</A> calculations. See the<A href="http://www.swox.com/gmp">
- GMP home page</A>.</DD>
-<DT><A name="GNU">GNU</A></DT>
-<DD><B>G</B>NU's<B> N</B>ot<B> U</B>nix, the<A href="#FSF"> Free
- Software Foundation's</A> project aimed at creating a free system with
- at least the capabilities of Unix.<A href="#Linux"> Linux</A> uses GNU
- utilities extensively.</DD>
-<DT><A name="#GOST">GOST</A></DT>
-<DD>a Soviet government standard<A href="#block"> block cipher</A>.<A href="biblio.html#schneier">
- Applied Cryptography</A> has details.</DD>
-<DT>GPG</DT>
-<DD>see<A href="#GPG"> GNU Privacy Guard</A></DD>
-<DT><A name="GPL">GNU General Public License</A>(GPL, copyleft)</DT>
-<DD>The license developed by the<A href="#FSF"> Free Software Foundation</A>
- under which<A href="#Linux"> Linux</A>,<A href="web.html#FreeSWAN">
- Linux FreeS/WAN</A> and many other pieces of software are distributed.
- The license allows anyone to redistribute and modify the code, but
- forbids anyone from distributing executables without providing access
- to source code. For more details see the file<A href="../COPYING">
- COPYING</A> included with GPLed source distributions, including ours,
- or<A href="http://www.fsf.org/copyleft/gpl.html"> the GNU site's GPL
- page</A>.</DD>
-<DT><A name="GPG">GNU Privacy Guard</A></DT>
-<DD>An open source implementation of Open<A href="#PGP"> PGP</A> as
- defined in RFC 2440. See their<A href="http://www.gnupg.org"> web site</A>
-</DD>
-<DT>GPL</DT>
-<DD>see<A href="#GPL"> GNU General Public License</A>.</DD>
-<DT><A name="H">H</A></DT>
-<DT><A name="hash">Hash</A></DT>
-<DD>see<A href="#digest"> message digest</A></DD>
-<DT><A name="HMAC">Hashed Message Authentication Code (HMAC)</A></DT>
-<DD>using keyed<A href="#digest"> message digest</A> functions to
- authenticate a message. This differs from other uses of these
- functions:
-<UL>
-<LI>In normal usage, the hash function's internal variable are
- initialised in some standard way. Anyone can reproduce the hash to
- check that the message has not been altered.</LI>
-<LI>For HMAC usage, you initialise the internal variables from the key.
- Only someone with the key can reproduce the hash. A successful check of
- the hash indicates not only that the message is unchanged but also that
- the creator knew the key.</LI>
-</UL>
-<P>The exact techniques used in<A href="#IPSEC"> IPsec</A> are defined
- in RFC 2104. They are referred to as HMAC-MD5-96 and HMAC-SHA-96
- because they output only 96 bits of the hash. This makes some attacks
- on the hash functions harder.</P>
-</DD>
-<DT>HMAC</DT>
-<DD>see<A href="#HMAC"> Hashed Message Authentication Code</A></DD>
-<DT>HMAC-MD5-96</DT>
-<DD>see<A href="#HMAC"> Hashed Message Authentication Code</A></DD>
-<DT>HMAC-SHA-96</DT>
-<DD>see<A href="#HMAC"> Hashed Message Authentication Code</A></DD>
-<DT><A name="hybrid">Hybrid cryptosystem</A></DT>
-<DD>A system using both<A href="#public"> public key</A> and<A href="#symmetric">
- symmetric cipher</A> techniques. This works well. Public key methods
- provide key management and<A href="#signature"> digital signature</A>
- facilities which are not readily available using symmetric ciphers. The
- symmetric cipher, however, can do the bulk of the encryption work much
- more efficiently than public key methods.</DD>
-<DT><A name="I">I</A></DT>
-<DT><A name="IAB">IAB</A></DT>
-<DD><A href="http://www.iab.org/iab">Internet Architecture Board</A>.</DD>
-<DT><A name="ICMP.gloss">ICMP</A></DT>
-<DD><STRONG>I</STRONG>nternet<STRONG> C</STRONG>ontrol<STRONG> M</STRONG>
-essage<STRONG> P</STRONG>rotocol. This is used for various IP-connected
- devices to manage the network.</DD>
-<DT><A name="IDEA">IDEA</A></DT>
-<DD><B>I</B>nternational<B> D</B>ata<B> E</B>ncrypion<B> A</B>lgorithm,
- developed in Europe as an alternative to exportable American ciphers
- such as<A href="#DES"> DES</A> which were<A href="politics.html#desnotsecure">
- too weak for serious use</A>. IDEA is a<A href="#block"> block cipher</A>
- using 64-bit blocks and 128-bit keys, and is used in products such as<A href="#PGP">
- PGP</A>.
-<P>IDEA is not required by the<A href="#IPSEC"> IPsec</A> RFCs and not
- currently used in<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>.</P>
-<P>IDEA is patented and, with strictly limited exceptions for personal
- use, using it requires a license from<A href="http://www.ascom.com">
- Ascom</A>.</P>
-</DD>
-<DT><A name="IEEE">IEEE</A></DT>
-<DD><A href="http://www.ieee.org">Institute of Electrical and Electronic
- Engineers</A>, a professional association which, among other things,
- sets some technical standards</DD>
-<DT><A name="IESG">IESG</A></DT>
-<DD><A href="http://www.iesg.org">Internet Engineering Steering Group</A>
-.</DD>
-<DT><A name="IETF">IETF</A></DT>
-<DD><A href="http://www.ietf.org">Internet Engineering Task Force</A>,
- the umbrella organisation whose various working groups make most of the
- technical decisions for the Internet. The IETF<A href="http://www.ietf.org/html.charters/ipsec-charter.html">
- IPsec working group</A> wrote the<A href="rfc.html#RFC"> RFCs</A> we
- are implementing.</DD>
-<DT><A name="IKE">IKE</A></DT>
-<DD><B>I</B>nternet<B> K</B>ey<B> E</B>xchange, based on the<A href="#DH">
- Diffie-Hellman</A> key exchange protocol. For details, see RFC 2409 and
- our<A href="ipsec.html"> IPsec</A> document. IKE is implemented in<A href="web.html#FreeSWAN">
- Linux FreeS/WAN</A> by the<A href="#Pluto"> Pluto daemon</A>.</DD>
-<DT>IKE v2</DT>
-<DD>A proposed replacement for<A href="#IKE"> IKE</A>. There are other
- candidates, such as<A href="#JFK"> JFK</A>, and at time of writing
- (March 2002) the choice between them has not yet been made and does not
- appear imminent.</DD>
-<DT><A name="iOE">iOE</A></DT>
-<DD>See<A HREF="#initiate-only"> Initiate-only opportunistic encryption</A>
-.</DD>
-<DT><A name="IP">IP</A></DT>
-<DD><B>I</B>nternet<B> P</B>rotocol.</DD>
-<DT><A name="masq">IP masquerade</A></DT>
-<DD>A mostly obsolete term for a method of allowing multiple machines to
- communicate over the Internet when only one IP address is available for
- their use. The more current term is Network Address Translation or<A href="#NAT.gloss">
- NAT</A>.</DD>
-<DT><A name="IPng">IPng</A></DT>
-<DD>&quot;IP the Next Generation&quot;, see<A href="#ipv6.gloss"> IPv6</A>.</DD>
-<DT><A name="IPv4">IPv4</A></DT>
-<DD>The current version of the<A href="#IP"> Internet protocol suite</A>
-.</DD>
-<DT><A name="ipv6.gloss">IPv6 (IPng)</A></DT>
-<DD>Version six of the<A href="#IP"> Internet protocol suite</A>,
- currently being developed. It will replace the current<A href="#IPv4">
- version four</A>. IPv6 has<A href="#IPSEC"> IPsec</A> as a mandatory
- component.
-<P>See this<A href="http://playground.sun.com/pub/ipng/html/ipng-main.html">
- web site</A> for more details, and our<A href="compat.html#ipv6">
- compatibility</A> document for information on FreeS/WAN and the Linux
- implementation of IPv6.</P>
-</DD>
-<DT><A name="IPSEC">IPsec</A> or IPSEC</DT>
-<DD><B>I</B>nternet<B> P</B>rotocol<B> SEC</B>urity, security functions
- (<A href="#authentication">authentication</A> and<A href="#encryption">
- encryption</A>) implemented at the IP level of the protocol stack. It
- is optional for<A href="#IPv4"> IPv4</A> and mandatory for<A href="#ipv6.gloss">
- IPv6</A>.
-<P>This is the standard<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>
- is implementing. For more details, see our<A href="ipsec.html"> IPsec
- Overview</A>. For the standards, see RFCs listed in our<A href="rfc.html#RFC">
- RFCs document</A>.</P>
-</DD>
-<DT><A name="IPX">IPX</A></DT>
-<DD>Novell's Netware protocol tunnelled over an IP link. Our<A href="firewall.html#user.scripts">
- firewalls</A> document includes an example of using this through an
- IPsec tunnel.</DD>
-<DT><A name="ISAKMP">ISAKMP</A></DT>
-<DD><B>I</B>nternet<B> S</B>ecurity<B> A</B>ssociation and<B> K</B>ey<B>
- M</B>anagement<B> P</B>rotocol, defined in RFC 2408.</DD>
-<DT><A name="ITAR">ITAR</A></DT>
-<DD><B>I</B>nternational<B> T</B>raffic in<B> A</B>rms<B> R</B>
-egulations, US regulations administered by the State Department which
- until recently limited export of, among other things, cryptographic
- technology and software. ITAR still exists, but the limits on
- cryptography have now been transferred to the<A href="#EAR"> Export
- Administration Regulations</A> under the Commerce Department's<A href="#BXA">
- Bureau of Export Administration</A>.</DD>
-<DT>IV</DT>
-<DD>see<A href="#IV"> Initialisation vector</A></DD>
-<DT><A name="IV">Initialisation Vector (IV)</A></DT>
-<DD>Some cipher<A href="#mode"> modes</A>, including the<A href="#CBC">
- CBC</A> mode which IPsec uses, require some extra data at the
- beginning. This data is called the initialisation vector. It need not
- be secret, but should be different for each message. Its function is to
- prevent messages which begin with the same text from encrypting to the
- same ciphertext. That might give an analyst an opening, so it is best
- prevented.</DD>
-<DT><A name="initiate-only">Initiate-only opportunistic encryption (iOE)</A>
-</DT>
-<DD>A form of<A HREF="#carpediem"> opportunistic encryption</A> (OE) in
- which a host proposes opportunistic connections, but lacks the reverse
- DNS records necessary to support incoming opportunistic connection
- requests. Common among hosts on cable or pppoe connections where the
- system administrator does not have write access to the DNS reverse map
- for the host's external IP.
-<P>Configuring for initiate-only opportunistic encryption is described
- in our<A href="quickstart.html#opp.client"> quickstart</A> document.</P>
-</DD>
-<DT><A name="J">J</A></DT>
-<DT><A name="JFK">JFK</A></DT>
-<DD><STRONG>J</STRONG>ust<STRONG> F</STRONG>ast<STRONG> K</STRONG>eying,
- a proposed simpler replacement for<A href="#IKE"> IKE.</A></DD>
-<DT><A name="K">K</A></DT>
-<DT><A name="kernel">Kernel</A></DT>
-<DD>The basic part of an operating system (e.g. Linux) which controls
- the hardware and provides services to all other programs.
-<P>In the Linux release numbering system, an even second digit as in 2.<STRONG>
-2</STRONG>.x indicates a stable or production kernel while an odd number
- as in 2.<STRONG>3</STRONG>.x indicates an experimental or development
- kernel. Most users should run a recent kernel version from the
- production series. The development kernels are primarily for people
- doing kernel development. Others should consider using development
- kernels only if they have an urgent need for some feature not yet
- available in production kernels.</P>
-</DD>
-<DT>Keyed message digest</DT>
-<DD>See<A href="#HMAC"> HMAC</A>.</DD>
-<DT>Key length</DT>
-<DD>see<A href="#brute"> brute force attack</A></DD>
-<DT><A name="KLIPS">KLIPS</A></DT>
-<DD><B>K</B>erne<B>l</B><B> IP</B><B> S</B>ecurity, the<A href="web.html#FreeSWAN">
- Linux FreeS/WAN</A> project's changes to the<A href="#Linux"> Linux</A>
- kernel to support the<A href="#IPSEC"> IPsec</A> protocols.</DD>
-<DT><A name="L">L</A></DT>
-<DT><A name="LDAP">LDAP</A></DT>
-<DD><B>L</B>ightweight<B> D</B>irectory<B> A</B>ccess<B> P</B>rotocol,
- defined in RFCs 1777 and 1778, a method of accessing information stored
- in directories. LDAP is used by several<A href="#PKI"> PKI</A>
- implementations, often with X.501 directories and<A href="#X509"> X.509</A>
- certificates. It may also be used by<A href="#IPSEC"> IPsec</A> to
- obtain key certifications from those PKIs. This is not yet implemented
- in<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>.</DD>
-<DT><A name="LIBDES">LIBDES</A></DT>
-<DD>A publicly available library of<A href="#DES"> DES</A> code, written
- by Eric Young, which<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>
- uses in both<A href="#KLIPS"> KLIPS</A> and<A href="#Pluto"> Pluto</A>.</DD>
-<DT><A name="Linux">Linux</A></DT>
-<DD>A freely available Unix-like operating system based on a kernel
- originally written for the Intel 386 architecture by (then) student
- Linus Torvalds. Once his 32-bit kernel was available, the<A href="#GNU">
- GNU</A> utilities made it a usable system and contributions from many
- others led to explosive growth.
-<P>Today Linux is a complete Unix replacement available for several CPU
- architectures -- Intel, DEC/Compaq Alpha, Power PC, both 32-bit SPARC
- and the 64-bit UltraSPARC, SrongARM, . . . -- with support for multiple
- CPUs on some architectures.</P>
-<P><A href="web.html#FreeSWAN">Linux FreeS/WAN</A> is intended to run on
- all CPUs supported by Linux and is known to work on several. See our<A href="compat.html#CPUs">
- compatibility</A> section for a list.</P>
-</DD>
-<DT><A name="FreeSWAN">Linux FreeS/WAN</A></DT>
-<DD>Our implementation of the<A href="#IPSEC"> IPsec</A> protocols,
- intended to be freely redistributable source code with<A href="#GPL"> a
- GNU GPL license</A> and no constraints under US or other<A href="politics.html#exlaw">
- export laws</A>. Linux FreeS/WAN is intended to interoperate with other<A
-href="#IPSEC"> IPsec</A> implementations. The name is partly taken, with
- permission, from the<A href="#SWAN"> S/WAN</A> multi-vendor IPsec
- compatability effort. Linux FreeS/WAN has two major components,<A href="#KLIPS">
- KLIPS</A> (KerneL IPsec Support) and the<A href="#Pluto"> Pluto</A>
- daemon which manages the whole thing.
-<P>See our<A href="ipsec.html"> IPsec section</A> for more detail. For
- the code see our<A href="http://freeswan.org"> primary site</A> or one
- of the mirror sites on<A href="intro.html#mirrors"> this list</A>.</P>
-</DD>
-<DT><A name="LSM">Linux Security Modules (LSM)</A></DT>
-<DD>a project to create an interface in the Linux kernel that supports
- plug-in modules for various security policies.
-<P>This allows multiple security projects to take different approaches
- to security enhancement without tying the kernel down to one particular
- approach. As I understand the history, several projects were pressing
- Linus to incorporate their changes, the various sets of changes were
- incompatible, and his answer was more-or-less &quot;a plague on all your
- houses; I'll give you an interface, but I won't incorporate anything&quot;.</P>
-<P>It seems to be working. There is a fairly active<A href="http://mail.wirex.com/mailman/listinfo/linux-security-module">
- LSM mailing list</A>, and several projects are already using the
- interface.</P>
-</DD>
-<DT>LSM</DT>
-<DD>see<A href="#LSM"> Linux Security Modules</A></DD>
-<DT><A name="M">M</A></DT>
-<DT><A name="list">Mailing list</A></DT>
-<DD>The<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A> project has
- several public email lists for bug reports and software development
- discussions. See our document on<A href="mail.html"> mailing lists</A>.</DD>
-<DT><A name="middle">Man-in-the-middle attack</A></DT>
-<DD>An<A href="#active"> active attack</A> in which the attacker
- impersonates each of the legitimate players in a protocol to the other.
-<P>For example, if<A href="#alicebob"> Alice and Bob</A> are negotiating
- a key via the<A href="#DH"> Diffie-Hellman</A> key agreement, and are
- not using<A href="#authentication"> authentication</A> to be certain
- they are talking to each other, then an attacker able to insert himself
- in the communication path can deceive both players.</P>
-<P>Call the attacker Mallory. For Bob, he pretends to be Alice. For
- Alice, he pretends to be Bob. Two keys are then negotiated,
- Alice-to-Mallory and Bob-to-Mallory. Alice and Bob each think the key
- they have is Alice-to-Bob.</P>
-<P>A message from Alice to Bob then goes to Mallory who decrypts it,
- reads it and/or saves a copy, re-encrypts using the Bob-to-Mallory key
- and sends it along to Bob. Bob decrypts successfully and sends a reply
- which Mallory decrypts, reads, re-encrypts and forwards to Alice.</P>
-<P>To make this attack effective, Mallory must</P>
-<UL>
-<LI>subvert some part of the network in some way that lets him carry out
- the deception
-<BR> possible targets: DNS, router, Alice or Bob's machine, mail server,
- ...</LI>
-<LI>beat any authentication mechanism Alice and Bob use
-<BR> strong authentication defeats the attack entirely; this is why<A href="#IKE">
- IKE</A> requires authentication</LI>
-<LI>work in real time, delivering messages without introducing a delay
- large enough to alert the victims
-<BR> not hard if Alice and Bob are using email; quite difficult in some
- situations.</LI>
-</UL>
-<P>If he manages it, however, it is devastating. He not only gets to
- read all the messages; he can alter messages, inject his own, forge
- anything he likes, . . . In fact, he controls the communication
- completely.</P>
-</DD>
-<DT><A name="mandatory">mandatory access control</A></DT>
-<DD>access control mechanisims which are not settable by the user (see<A href="#discretionary">
- discretionary access control</A>), but are enforced by the system.
-<P>For example, a document labelled &quot;secret, zebra&quot; might be readable
- only by someone with secret clearance working on Project Zebra.
- Ideally, the system will prevent any transfer outside those boundaries.
- For example, even if you can read it, you should not be able to e-mail
- it (unless the recipient is appropriately cleared) or print it (unless
- certain printers are authorised for that classification).</P>
-<P>Mandatory access control is a required feature for some levels of<A href="#rainbow">
- Rainbow Book</A> or<A href="#cc"> Common Criteria</A> classification,
- but has not been widely used outside the military and government. There
- is a good discussion of the issues in Anderson's<A href="biblio.html#anderson">
- Security Engineering</A>.</P>
-<P>The<A href="#SElinux"> Security Enhanced Linux</A> project is adding
- mandatory access control to Linux.</P>
-</DD>
-<DT><A name="manual">Manual keying</A></DT>
-<DD>An IPsec mode in which the keys are provided by the administrator.
- In FreeS/WAN, they are stored in /etc/ipsec.conf. The alternative,<A href="ipsec.html#auto">
- automatic keying</A>, is preferred in most cases. See this<A href="adv_config.html#man-auto">
- discussion</A>.</DD>
-<DT><A name="MD4">MD4</A></DT>
-<DD><A href="#digest">Message Digest Algorithm</A> Four from Ron Rivest
- of<A href="#RSAco"> RSA</A>. MD4 was widely used a few years ago, but
- is now considered obsolete. It has been replaced by its descendants<A href="#MD5">
- MD5</A> and<A href="#SHA"> SHA</A>.</DD>
-<DT><A name="MD5">MD5</A></DT>
-<DD><A href="#digest">Message Digest Algorithm</A> Five from Ron Rivest
- of<A href="#RSAco"> RSA</A>, an improved variant of his<A href="#MD4">
- MD4</A>. Like MD4, it produces a 128-bit hash. For details see RFC
- 1321.
-<P>MD5 is one of two message digest algorithms available in IPsec. The
- other is<A href="#SHA"> SHA</A>. SHA produces a longer hash and is
- therefore more resistant to<A href="#birthday"> birthday attacks</A>,
- but this is not a concern for IPsec. The<A href="#HMAC"> HMAC</A>
- method used in IPsec is secure even if the underlying hash is not
- particularly strong against this attack.</P>
-<P>Hans Dobbertin found a weakness in MD5, and people often ask whether
- this means MD5 is unsafe for IPsec. It doesn't. The IPsec RFCs discuss
- Dobbertin's attack and conclude that it does not affect MD5 as used for
- HMAC in IPsec.</P>
-</DD>
-<DT><A name="meet">Meet-in-the-middle attack</A></DT>
-<DD>A divide-and-conquer attack which breaks a cipher into two parts,
- works against each separately, and compares results. Probably the best
- known example is an attack on double DES. This applies in principle to
- any pair of block ciphers, e.g. to an encryption system using, say,
- CAST-128 and Blowfish, but we will describe it for double DES.
-<P>Double DES encryption and decryption can be written:</P>
-<PRE> C = E(k2,E(k1,P))
- P = D(k1,D(k2,C))</PRE>
-<P>Where C is ciphertext, P is plaintext, E is encryption, D is
- decryption, k1 is one key, and k2 is the other key. If we know a P, C
- pair, we can try and find the keys with a brute force attack, trying
- all possible k1, k2 pairs. Since each key is 56 bits, there are 2<SUP>
-112</SUP> such pairs and this attack is painfully inefficient.</P>
-<P>The meet-in-the middle attack re-writes the equations to calculate a
- middle value M:</P>
-<PRE> M = E(k1,P)
- M = D(k2,C)</PRE>
-<P>Now we can try some large number of D(k2,C) decryptions with various
- values of k2 and store the results in a table. Then start doing E(k1,P)
- encryptions, checking each result to see if it is in the table.</P>
-<P>With enough table space, this breaks double DES with<NOBR> 2<SUP>56</SUP>
- + 2<SUP>56</SUP> = 2<SUP>57</SUP>work. Against triple DES, you need<NOBR>
- 2<SUP>56</SUP> + 2<SUP>112</SUP> ~= 2<SUP>112</SUP>.</P>
-<P>The memory requirements for such attacks can be prohibitive, but
- there is a whole body of research literature on methods of reducing
- them.</P>
-</DD>
-<DT><A name="digest">Message Digest Algorithm</A></DT>
-<DD>An algorithm which takes a message as input and produces a hash or
- digest of it, a fixed-length set of bits which depend on the message
- contents in some highly complex manner. Design criteria include making
- it extremely difficult for anyone to counterfeit a digest or to change
- a message without altering its digest. One essential property is<A href="#collision">
- collision resistance</A>. The main applications are in message<A href="#authentication">
- authentication</A> and<A href="#signature"> digital signature</A>
- schemes. Widely used algorithms include<A href="#MD5"> MD5</A> and<A href="#SHA">
- SHA</A>. In IPsec, message digests are used for<A href="#HMAC"> HMAC</A>
- authentication of packets.</DD>
-<DT><A name="MTU">MTU</A></DT>
-<DD><STRONG>M</STRONG>aximum<STRONG> T</STRONG>ransmission<STRONG> U</STRONG>
-nit, the largest size of packet that can be sent over a link. This is
- determined by the underlying network, but must be taken account of at
- the IP level.
-<P>IP packets, which can be up to 64K bytes each, must be packaged into
- lower-level packets of the appropriate size for the underlying
- network(s) and re-assembled on the other end. When a packet must pass
- over multiple networks, each with its own MTU, and many of the MTUs are
- unknown to the sender, this becomes a fairly complex problem. See<A href="#pathMTU">
- path MTU discovery</A> for details.</P>
-<P>Often the MTU is a few hundred bytes on serial links and 1500 on
- Ethernet. There are, however, serial link protocols which use a larger
- MTU to avoid fragmentation at the ethernet/serial boundary, and newer
- (especially gigabit) Ethernet networks sometimes support much larger
- packets because these are more efficient in some applications.</P>
-</DD>
-<DT><A name="N">N</A></DT>
-<DT><A name="NAI">NAI</A></DT>
-<DD><A href="http://www.nai.com">Network Associates</A>, a conglomerate
- formed from<A href="#PGPI"> PGP Inc.</A>, TIS (Trusted Information
- Systems, a firewall vendor) and McAfee anti-virus products. Among other
- things, they offer an IPsec-based VPN product.</DD>
-<DT><A name="NAT.gloss">NAT</A></DT>
-<DD><B>N</B>etwork<B> A</B>ddress<B> T</B>ranslation, a process by which
- firewall machines may change the addresses on packets as they go
- through. For discussion, see our<A href="background.html#nat.background">
- background</A> section.</DD>
-<DT><A name="NIST">NIST</A></DT>
-<DD>The US<A href="http://www.nist.gov"> National Institute of Standards
- and Technology</A>, responsible for<A href="#FIPS"> FIPS standards</A>
- including<A href="#DES"> DES</A> and its replacement,<A href="#AES">
- AES</A>.</DD>
-<DT><A name="nonce">Nonce</A></DT>
-<DD>A<A href="#random"> random</A> value used in an<A href="#authentication">
- authentication</A> protocol.</DD>
-<DT></DT>
-<DT><A name="non-routable">Non-routable IP address</A></DT>
-<DD>An IP address not normally allowed in the &quot;to&quot; or &quot;from&quot; IP address
- field header of IP packets.
-<P>Almost invariably, the phrase &quot;non-routable address&quot; means one of the
- addresses reserved by RFC 1918 for private networks:</P>
-<UL>
-<LI>10.anything</LI>
-<LI>172.x.anything with 16 &lt;= x &lt;= 31</LI>
-<LI>192.168.anything</LI>
-</UL>
-<P>These addresses are commonly used on private networks, e.g. behind a
- Linux machines doing<A href="#masq"> IP masquerade</A>. Machines within
- the private network can address each other with these addresses. All
- packets going outside that network, however, have these addresses
- replaced before they reach the Internet.</P>
-<P>If any packets using these addresses do leak out, they do not go far.
- Most routers automatically discard all such packets.</P>
-<P>Various other addresses -- the 127.0.0.0/8 block reserved for local
- use, 0.0.0.0, various broadcast and network addresses -- cannot be
- routed over the Internet, but are not normally included in the meaning
- when the phrase &quot;non-routable address&quot; is used.</P>
-</DD>
-<DT><A name="NSA">NSA</A></DT>
-<DD>The US<A href="http://www.nsa.gov"> National Security Agency</A>,
- the American organisation for<A href="#SIGINT"> signals intelligence</A>
-, the protection of US government messages and the interception and
- analysis of other messages. For details, see Bamford's<A href="biblio.html#puzzle">
- &quot;The Puzzle Palace&quot;</A>.
-<P>Some<A href="http://www.gwu.edu/~nsarchiv/NSAEBB/NSAEBB23/index.html">
- history of NSA</A> documents were declassified in response to a FOIA
- (Freedom of Information Act) request.</P>
-</DD>
-<DT><A name="O">O</A></DT>
-<DT><A name="oakley">Oakley</A></DT>
-<DD>A key determination protocol, defined in RFC 2412.</DD>
-<DT>Oakley groups</DT>
-<DD>The groups used as the basis of<A href="#DH"> Diffie-Hellman</A> key
- exchange in the Oakley protocol, and in<A href="#IKE"> IKE</A>. Four
- were defined in the original RFC, and a fifth has been<A href="http://www.lounge.org/ike_doi_errata.html">
- added since</A>.
-<P>Linux FreeS/WAN currently supports the three groups based on finite
- fields modulo a prime (Groups 1, 2 and 5) and does not support the
- elliptic curve groups (3 and 4). For a description of the difference of
- the types, see<A href="#dlog"> discrete logarithms</A>.</P>
-</DD>
-<DT><A name="OTP">One time pad</A></DT>
-<DD>A cipher in which the key is:
-<UL>
-<LI>as long as the total set of messages to be enciphered</LI>
-<LI>absolutely<A href="#random"> random</A></LI>
-<LI>never re-used</LI>
-</UL>
-<P>Given those three conditions, it can easily be proved that the cipher
- is perfectly secure, in the sense that an attacker with intercepted
- message in hand has no better chance of guessing the message than an
- attacker who has not intercepted the message and only knows the message
- length. No such proof exists for any other cipher.</P>
-<P>There are, however, several problems with this &quot;perfect&quot; cipher.</P>
-<P>First, it is<STRONG> wildly impractical</STRONG> for most
- applications. Key management is at best difficult, often completely
- impossible.</P>
-<P>Second, it is<STRONG> extremely fragile</STRONG>. Small changes which
- violate the conditions listed above do not just weaken the cipher
- liitle. Quite often they destroy its security completely.</P>
-<UL>
-<LI>Re-using the pad weakens the cipher to the point where it can be
- broken with pencil and paper. With a computer, the attack is trivially
- easy.</LI>
-<LI>Using<EM> anything</EM> less than truly<A href="#random"> random</A>
- numbers<EM> completely</EM> invalidates the security proof.</LI>
-<LI>In particular, using computer-generated pseudo-random numbers may
- give an extremely weak cipher. It might also produce a good stream
- cipher, if the pseudo-random generator is both well-designed and
- properely seeded.</LI>
-</UL>
-<P>Marketing claims about the &quot;unbreakable&quot; security of various products
- which somewhat resemble one-time pads are common. Such claims are one
- of the surest signs of cryptographic<A href="#snake"> snake oil</A>;
- most systems marketed with such claims are worthless.</P>
-<P>Finally, even if the system is implemented and used correctly, it is<STRONG>
- highly vulnerable to a substitution attack</STRONG>. If an attacker
- knows some plaintext and has an intercepted message, he can discover
- the pad.</P>
-<UL>
-<LI>This does not matter if the attacker is just a<A href="#passive">
- passive</A> eavesdropper. It gives him no plaintext he didn't already
- know and we don't care that he learns a pad which we will never re-use.</LI>
-<LI>However, an<A href="#active"> active</A> attacker who knows the
- plaintext can recover the pad, then use it to encode with whatever he
- chooses. If he can get his version delivered instead of yours, this may
- be a disaster. If you send &quot;attack at dawn&quot;, the delivered message can
- be anything the same length -- perhaps &quot;retreat to east&quot; or &quot;shoot
- generals&quot;.</LI>
-<LI>An active attacker with only a reasonable guess at the plaintext can
- try the same attack. If the guess is correct, this works and the
- attacker's bogus message is delivered. If the guess is wrong, a garbled
- message is delivered.</LI>
-</UL>
-<P>In general then, despite its theoretical perfection, the one-time-pad
- has very limited practical application.</P>
-<P>See also the<A href="http://pubweb.nfr.net/~mjr/pubs/otpfaq/"> one
- time pad FAQ</A>.</P>
-</DD>
-<DT><A name="carpediem">Opportunistic encryption (OE)</A></DT>
-<DD>A situation in which any two IPsec-aware machines can secure their
- communications, without a pre-shared secret and without a common<A href="#PKI">
- PKI</A> or previous exchange of public keys. This is one of the goals
- of the Linux FreeS/WAN project, discussed in our<A href="intro.html#goals">
- introduction</A> section.
-<P>Setting up for opportunistic encryption is described in our<A href="quickstart.html#quickstart">
- quickstart</A> document.</P>
-</DD>
-<DT><A name="responder">Opportunistic responder</A></DT>
-<DD>A host which accepts, but does not initiate, requests for<A HREF="#carpediem">
- opportunistic encryption</A> (OE). An opportunistic responder has
- enabled OE in its<A HREF="#passive.OE"> passive</A> form (pOE) only. A
- web server or file server may be usefully set up as an opportunistic
- responder.
-<P>Configuring passive OE is described in our<A href="policygroups.html#policygroups">
- policy groups</A> document.</P>
-</DD>
-<DT><A name="orange">Orange book</A></DT>
-<DD>the most basic and best known of the US government's<A href="#rainbow">
- Rainbow Book</A> series of computer security standards.</DD>
-<DT><A name="P">P</A></DT>
-<DT><A name="P1363">P1363 standard</A></DT>
-<DD>An<A href="#IEEE"> IEEE</A> standard for public key cryptography.<A href="http://grouper.ieee.org/groups/1363">
- Web page</A>.</DD>
-<DT><A name="pOE">pOE</A></DT>
-<DD>See<A href="#passive.OE"> Passive opportunistic encryption</A>.</DD>
-<DT><A name="passive">Passive attack</A></DT>
-<DD>An attack in which the attacker only eavesdrops and attempts to
- analyse intercepted messages, as opposed to an<A href="#active"> active
- attack</A> in which he diverts messages or generates his own.</DD>
-<DT><A name="passive.OE">Passive opportunistic encryption (pOE)</A></DT>
-<DD>A form of<A HREF="#carpediem"> opportunistic encryption</A> (OE) in
- which the host will accept opportunistic connection requests, but will
- not initiate such requests. A host which runs OE in its passive form
- only is known as an<A HREF="#responder"> opportunistic responder</A>.
-<P>Configuring passive OE is described in our<A href="policygroups.html#policygroups">
- policy groups</A> document.</P>
-</DD>
-<DT><A name="pathMTU">Path MTU discovery</A></DT>
-<DD>The process of discovering the largest packet size which all links
- on a path can handle without fragmentation -- that is, without any
- router having to break the packet up into smaller pieces to match the<A href="#MTU">
- MTU</A> of its outgoing link.
-<P>This is done as follows:</P>
-<UL>
-<LI>originator sends the largest packets allowed by<A href="#MTU"> MTU</A>
- of the first link, setting the DF (<STRONG>d</STRONG>on't<STRONG> f</STRONG>
-ragment) bit in the packet header</LI>
-<LI>any router which cannot send the packet on (outgoing MTU is too
- small for it, and DF prevents fragmenting it to match) sends back an<A href="#ICMP.gloss">
- ICMP</A> packet reporting the problem</LI>
-<LI>originator looks at ICMP message and tries a smaller size</LI>
-<LI>eventually, you settle on a size that can pass all routers</LI>
-<LI>thereafter, originator just sends that size and no-one has to
- fragment</LI>
-</UL>
-<P>Since this requires co-operation of many systems, and since the next
- packet may travel a different path, this is one of the trickier areas
- of IP programming. Bugs that have shown up over the years have
- included:</P>
-<UL>
-<LI>malformed ICMP messages</LI>
-<LI>hosts that ignore or mishandle these ICMP messages</LI>
-<LI>firewalls blocking the ICMP messages so host does not see them</LI>
-</UL>
-<P>Since IPsec adds a header, it increases packet size and may require
- fragmentation even where incoming and outgoing MTU are equal.</P>
-</DD>
-<DT><A name="PFS">Perfect forward secrecy (PFS)</A></DT>
-<DD>A property of systems such as<A href="#DH"> Diffie-Hellman</A> key
- exchange which use a long-term key (such as the shared secret in IKE)
- and generate short-term keys as required. If an attacker who acquires
- the long-term key<EM> provably</EM> can
-<UL>
-<LI><EM>neither</EM> read previous messages which he may have archived</LI>
-<LI><EM>nor</EM> read future messages without performing additional
- successful attacks</LI>
-</UL>
-<P>then the system has PFS. The attacker needs the short-term keys in
- order to read the trafiic and merely having the long-term key does not
- allow him to infer those. Of course, it may allow him to conduct
- another attack (such as<A href="#middle"> man-in-the-middle</A>) which
- gives him some short-term keys, but he does not automatically get them
- just by acquiring the long-term key.</P>
-<P>See also<A href="http://sandelman.ottawa.on.ca/ipsec/1996/08/msg00123.html">
- Phil Karn's definition</A>.</P>
-</DD>
-<DT>PFS</DT>
-<DD>see Perfect Forward Secrecy</DD>
-<DT><A name="PGP">PGP</A></DT>
-<DD><B>P</B>retty<B> G</B>ood<B> P</B>rivacy, a personal encryption
- system for email based on public key technology, written by Phil
- Zimmerman.
-<P>The 2.xx versions of PGP used the<A href="#RSA"> RSA</A> public key
- algorithm and used<A href="#IDEA"> IDEA</A> as the symmetric cipher.
- These versions are described in RFC 1991 and in<A href="#PGP">
- Garfinkel's book</A>. Since version 5, the products from<A href="#PGPI">
- PGP Inc</A>. have used<A href="#DH"> Diffie-Hellman</A> public key
- methods and<A href="#CAST128"> CAST-128</A> symmetric encryption. These
- can verify signatures from the 2.xx versions, but cannot exchange
- encryted messages with them.</P>
-<P>An<A href="mail.html#IETF"> IETF</A> working group has issued RFC
- 2440 for an &quot;Open PGP&quot; standard, similar to the 5.x versions. PGP Inc.
- staff were among the authors. A free<A href="#GPG"> Gnu Privacy Guard</A>
- based on that standard is now available.</P>
-<P>For more information on PGP, including how to obtain it, see our
- cryptography<A href="web.html#tools"> links</A>.</P>
-</DD>
-<DT><A name="PGPI">PGP Inc.</A></DT>
-<DD>A company founded by Zimmerman, the author of<A href="#PGP"> PGP</A>
-, now a division of<A href="#NAI"> NAI</A>. See the<A href="http://www.pgp.com">
- corporate website</A>. Zimmerman left in 2001, and early in 2002 NAI
- announced that they would no longer sell PGP..
-<P>Versions 6.5 and later of the PGP product include PGPnet, an IPsec
- client for Macintosh or for Windows 95/98/NT. See our<A href="interop.html#pgpnet">
- interoperation documen</A>t.</P>
-</DD>
-<DT><A name="photuris">Photuris</A></DT>
-<DD>Another key negotiation protocol, an alternative to<A href="#IKE">
- IKE</A>, described in RFCs 2522 and 2523.</DD>
-<DT><A name="PPP">PPP</A></DT>
-<DD><B>P</B>oint-to-<B>P</B>oint<B> P</B>rotocol, originally a method of
- connecting over modems or serial lines, but see also PPPoE.</DD>
-<DT><A name="PPPoE">PPPoE</A></DT>
-<DD><B>PPP</B><B> o</B>ver<B> E</B>thernet, a somewhat odd protocol that
- makes Ethernet look like a point-to-point serial link. It is widely
- used for cable or ADSL Internet services, apparently mainly because it
- lets the providers use access control and address assignmment
- mechanisms developed for dialup networks.<A href="http://www.roaringpenguin.com">
- Roaring Penguin</A> provide a widely used Linux implementation.</DD>
-<DT><A name="PPTP">PPTP</A></DT>
-<DD><B>P</B>oint-to-<B>P</B>oint<B> T</B>unneling<B> P</B>rotocol, used
- in some Microsoft VPN implementations. Papers discussing weaknesses in
- it are on<A href="http://www.counterpane.com/publish.html">
- counterpane.com</A>. It is now largely obsolete, replaced by L2TP.</DD>
-<DT><A name="PKI">PKI</A></DT>
-<DD><B>P</B>ublic<B> K</B>ey<B> I</B>nfrastructure, the things an
- organisation or community needs to set up in order to make<A href="#public">
- public key</A> cryptographic technology a standard part of their
- operating procedures.
-<P>There are several PKI products on the market. Typically they use a
- hierarchy of<A href="#CA"> Certification Authorities (CAs)</A>. Often
- they use<A href="#LDAP"> LDAP</A> access to<A href="#X509"> X.509</A>
- directories to implement this.</P>
-<P>See<A href="#web"> Web of Trust</A> for a different sort of
- infrastructure.</P>
-</DD>
-<DT><A name="PKIX">PKIX</A></DT>
-<DD><B>PKI</B> e<B>X</B>change, an<A href="mail.html#IETF"> IETF</A>
- standard that allows<A href="#PKI"> PKI</A>s to talk to each other.
-<P>This is required, for example, when users of a corporate PKI need to
- communicate with people at client, supplier or government
- organisations, any of which may have a different PKI in place. I should
- be able to talk to you securely whenever:</P>
-<UL>
-<LI>your organisation and mine each have a PKI in place</LI>
-<LI>you and I are each set up to use those PKIs</LI>
-<LI>the two PKIs speak PKIX</LI>
-<LI>the configuration allows the conversation</LI>
-</UL>
-<P>At time of writing (March 1999), this is not yet widely implemented
- but is under quite active development by several groups.</P>
-</DD>
-<DT><A name="plaintext">Plaintext</A></DT>
-<DD>The unencrypted input to a cipher, as opposed to the encrypted<A href="#ciphertext">
- ciphertext</A> output.</DD>
-<DT><A name="Pluto">Pluto</A></DT>
-<DD>The<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A> daemon which
- handles key exchange via the<A href="#IKE"> IKE</A> protocol,
- connection negotiation, and other higher-level tasks. Pluto calls the<A href="#KLIPS">
- KLIPS</A> kernel code as required. For details, see the manual page
- ipsec_pluto(8).</DD>
-<DT><A name="public">Public Key Cryptography</A></DT>
-<DD>In public key cryptography, keys are created in matched pairs.
- Encrypt with one half of a pair and only the matching other half can
- decrypt it. This contrasts with<A href="#symmetric"> symmetric or
- secret key cryptography</A> in which a single key known to both parties
- is used for both encryption and decryption.
-<P>One half of each pair, called the public key, is made public. The
- other half, called the private key, is kept secret. Messages can then
- be sent by anyone who knows the public key to the holder of the private
- key. Encrypt with the public key and you know that only someone with
- the matching private key can decrypt.</P>
-<P>Public key techniques can be used to create<A href="#signature">
- digital signatures</A> and to deal with key management issues, perhaps
- the hardest part of effective deployment of<A href="#symmetric">
- symmetric ciphers</A>. The resulting<A href="#hybrid"> hybrid
- cryptosystems</A> use public key methods to manage keys for symmetric
- ciphers.</P>
-<P>Many organisations are currently creating<A href="#PKI"> PKIs, public
- key infrastructures</A> to make these benefits widely available.</P>
-</DD>
-<DT>Public Key Infrastructure</DT>
-<DD>see<A href="#PKI"> PKI</A></DD>
-<DT><A name="Q">Q</A></DT>
-<DT><A name="R">R</A></DT>
-<DT><A name="rainbow">Rainbow books</A></DT>
-<DD>A set of US government standards for evaluation of &quot;trusted computer
- systems&quot;, of which the best known was the<A href="#orange"> Orange Book</A>
-. One fairly often hears references to &quot;C2 security&quot; or a product
- &quot;evaluated at B1&quot;. The Rainbow books define the standards referred to
- in those comments.
-<P>See this<A href="http://www.fas.org/irp/nsa/rainbow.htm"> reference
- page</A>.</P>
-<P>The Rainbow books are now mainly obsolete, replaced by the
- international<A href="#cc"> Common Criteria</A> standards.</P>
-</DD>
-<DT><A name="random">Random</A></DT>
-<DD>A remarkably tricky term, far too much so for me to attempt a
- definition here. Quite a few cryptosystems have been broken via attacks
- on weak random number generators, even when the rest of the system was
- sound.
-<P>See<A href="http://nis.nsf.net/internet/documents/rfc/rfc1750.txt">
- RFC 1750</A> for the theory.</P>
-<P>See the manual pages for<A href="manpage.d/ipsec_ranbits.8.html">
- ipsec_ranbits(8)</A> and ipsec_prng(3) for more on FreeS/WAN's use of
- randomness. Both depend on the random(4) device driver..</P>
-<P>A couple of years ago, there was extensive mailing list discussion
- (archived<A href="http://www.openpgp.net/random/index.html"> here</A>
-)of Linux /dev/random and FreeS/WAN. Since then, the design of the
- random(4) driver has changed considerably. Linux 2.4 kernels have the
- new driver..</P>
-</DD>
-<DT>Raptor</DT>
-<DD>A firewall product for Windows NT offerring IPsec-based VPN
- services. Linux FreeS/WAN interoperates with Raptor; see our<A href="interop.html#Raptor">
- interop</A> document for details. Raptor have recently merged with
- Axent.</DD>
-<DT><A name="RC4">RC4</A></DT>
-<DD><B>R</B>ivest<B> C</B>ipher four, designed by Ron Rivest of<A href="#RSAco">
- RSA</A> and widely used. Believed highly secure with adequate key
- length, but often implemented with inadequate key length to comply with
- export restrictions.</DD>
-<DT><A name="RC6">RC6</A></DT>
-<DD><B>R</B>ivest<B> C</B>ipher six,<A href="#RSAco"> RSA</A>'s<A href="#AES">
- AES</A> candidate cipher.</DD>
-<DT><A name="replay">Replay attack</A></DT>
-<DD>An attack in which the attacker records data and later replays it in
- an attempt to deceive the recipient.</DD>
-<DT><A name="reverse">Reverse map</A></DT>
-<DD>In<A href="ipsec.html#DNS"> DNS</A>, a table where IP addresses can
- be used as the key for lookups which return a system name and/or other
- information.</DD>
-<DT>RFC</DT>
-<DD><B>R</B>equest<B> F</B>or<B> C</B>omments, an Internet document.
- Some RFCs are just informative. Others are standards.
-<P>Our list of<A href="#IPSEC"> IPsec</A> and other security-related
- RFCs is<A href="rfc.html#RFC"> here</A>, along with information on
- methods of obtaining them.</P>
-</DD>
-<DT><A name="rijndael">Rijndael</A></DT>
-<DD>a<A href="#block"> block cipher</A> designed by two Belgian
- cryptographers, winner of the US government's<A href="#AES"> AES</A>
- contest to pick a replacement for<A href="#DES"> DES</A>. See the<A href="http://www.esat.kuleuven.ac.be/~rijmen/rijndael">
- Rijndael home page</A>.</DD>
-<DT><A name="RIPEMD">RIPEMD</A></DT>
-<DD>A<A href="#digest"> message digest</A> algorithm. The current
- version is RIPEMD-160 which gives a 160-bit hash.</DD>
-<DT><A name="rootCA">Root CA</A></DT>
-<DD>The top level<A href="#CA"> Certification Authority</A> in a
- hierachy of such authorities.</DD>
-<DT><A name="routable">Routable IP address</A></DT>
-<DD>Most IP addresses can be used as &quot;to&quot; and &quot;from&quot; addresses in packet
- headers. These are the routable addresses; we expect routing to be
- possible for them. If we send a packet to one of them, we expect (in
- most cases; there are various complications) that it will be delivered
- if the address is in use and will cause an<A href="#ICMP.gloss"> ICMP</A>
- error packet to come back to us if not.
-<P>There are also several classes of<A href="#non-routable">
- non-routable</A> IP addresses.</P>
-</DD>
-<DT><A name="RSA">RSA algorithm</A></DT>
-<DD><B>R</B>ivest<B> S</B>hamir<B> A</B>dleman<A href="#public"> public
- key</A> algorithm, named for its three inventors. It is widely used and
- likely to become moreso since it became free of patent encumbrances in
- September 2000.
-<P>RSA can be used to provide either<A href="#encryption"> encryption</A>
- or<A href="#signature"> digital signatures</A>. In IPsec, it is used
- only for signatures. These provide gateway-to-gateway<A href="#authentication">
- authentication</A> for<A href="#IKE"> IKE</A> negotiations.</P>
-<P>For a full explanation of the algorithm, consult one of the standard
- references such as<A href="biblio.html#schneier"> Applied Cryptography</A>
-. A simple explanation is:</P>
-<P>The great 17th century French mathematician<A href="http://www-groups.dcs.st-andrews.ac.uk/~history/Mathematicians/Fermat.html">
- Fermat</A> proved that,</P>
-<P>for any prime p and number x, 0 &lt;= x &lt; p:</P>
-<PRE> x^p == x modulo p
- x^(p-1) == 1 modulo p, non-zero x
- </PRE>
-<P>From this it follows that if we have a pair of primes p, q and two
- numbers e, d such that:</P>
-<PRE> ed == 1 modulo lcm( p-1, q-1)
- </PRE>
- where lcm() is least common multiple, then
-<BR> for all x, 0 &lt;= x &lt; pq:
-<PRE> x^ed == x modulo pq
- </PRE>
-<P>So we construct such as set of numbers p, q, e, d and publish the
- product N=pq and e as the public key. Using c for<A href="#ciphertext">
- ciphertext</A> and i for the input<A href="#plaintext"> plaintext</A>,
- encryption is then:</P>
-<PRE> c = i^e modulo N
- </PRE>
-<P>An attacker cannot deduce i from the cyphertext c, short of either
- factoring N or solving the<A href="#dlog"> discrete logarithm</A>
- problem for this field. If p, q are large primes (hundreds or thousands
- of bits) no efficient solution to either problem is known.</P>
-<P>The receiver, knowing the private key (N and d), can readily recover
- the plaintext p since:</P>
-<PRE> c^d == (i^e)^d modulo N
- == i^ed modulo N
- == i modulo N
- </PRE>
-<P>This gives an effective public key technique, with only a couple of
- problems. It uses a good deal of computer time, since calculations with
- large integers are not cheap, and there is no proof it is necessarily
- secure since no-one has proven either factoring or discrete log cannot
- be done efficiently. Quite a few good mathematicians have tried both
- problems, and no-one has announced success, but there is no proof they
- are insoluble.</P>
-</DD>
-<DT><A name="RSAco">RSA Data Security</A></DT>
-<DD>A company founded by the inventors of the<A href="#RSA"> RSA</A>
- public key algorithm.</DD>
-<DT><A name="S">S</A></DT>
-<DT><A name="SA">SA</A></DT>
-<DD><B>S</B>ecurity<B> A</B>ssociation, the channel negotiated by the
- higher levels of an<A href="#IPSEC"> IPsec</A> implementation (<A href="#IKE">
-IKE</A>) and used by the lower (<A href="#ESP">ESP</A> and<A href="#AH">
- AH</A>). SAs are unidirectional; you need a pair of them for two-way
- communication.
-<P>An SA is defined by three things -- the destination, the protocol (<A href="#AH">
-AH</A> or<A href="#ESP">ESP</A>) and the<A href="SPI"> SPI</A>, security
- parameters index. It is used as an index to look up other things such
- as session keys and intialisation vectors.</P>
-<P>For more detail, see our section on<A href="ipsec.html"> IPsec</A>
- and/or RFC 2401.</P>
-</DD>
-<DT><A name="SElinux">SE Linux</A></DT>
-<DD><STRONG>S</STRONG>ecurity<STRONG> E</STRONG>nhanced Linux, an<A href="#NSA">
- NSA</A>-funded project to add<A href="#mandatory"> mandatory access
- control</A> to Linux. See the<A href="http://www.nsa.gov/selinux">
- project home page</A>.
-<P>According to their web pages, this work will include extending
- mandatory access controls to IPsec tunnels.</P>
-<P>Recent versions of SE Linux code use the<A href="#LSM"> Linux
- Security Module</A> interface.</P>
-</DD>
-<DT><A name="SDNS">Secure DNS</A></DT>
-<DD>A version of the<A href="ipsec.html#DNS"> DNS or Domain Name Service</A>
- enhanced with authentication services. This is being designed by the<A href="mail.html#IETF">
- IETF</A> DNS security<A href="http://www.ietf.org/ids.by.wg/dnssec.html">
- working group</A>. Check the<A href="http://www.isc.org/bind.html">
- Internet Software Consortium</A> for information on implementation
- progress and for the latest version of<A href="#BIND"> BIND</A>.
- Another site has<A href="http://www.toad.com/~dnssec"> more information</A>
-.
-<P><A href="#IPSEC">IPsec</A> can use this plus<A href="#DH">
- Diffie-Hellman key exchange</A> to bootstrap itself. This allows<A href="#carpediem">
- opportunistic encryption</A>. Any pair of machines which can
- authenticate each other via DNS can communicate securely, without
- either a pre-existing shared secret or a shared<A href="#PKI"> PKI</A>.</P>
-</DD>
-<DT>Secret key cryptography</DT>
-<DD>See<A href="#symmetric"> symmetric cryptography</A></DD>
-<DT>Security Association</DT>
-<DD>see<A href="#SA"> SA</A></DD>
-<DT>Security Enhanced Linux</DT>
-<DD>see<A href="#SElinux"> SE Linux</A></DD>
-<DT><A name="sequence">Sequence number</A></DT>
-<DD>A number added to a packet or message which indicates its position
- in a sequence of packets or messages. This provides some security
- against<A href="#replay"> replay attacks</A>.
-<P>For<A href="ipsec.html#auto"> automatic keying</A> mode, the<A href="#IPSEC">
- IPsec</A> RFCs require that the sender generate sequence numbers for
- each packet, but leave it optional whether the receiver does anything
- with them.</P>
-</DD>
-<DT><A name="SHA">SHA</A></DT>
-<DT>SHA-1</DT>
-<DD><B>S</B>ecure<B> H</B>ash<B> A</B>lgorithm, a<A href="#digest">
- message digest algorithm</A> developed by the<A href="#NSA"> NSA</A>
- for use in the Digital Signature standard,<A href="#FIPS"> FIPS</A>
- number 186 from<A href="#NIST"> NIST</A>. SHA is an improved variant of<A
-href="#MD4"> MD4</A> producing a 160-bit hash.
-<P>SHA is one of two message digest algorithms available in IPsec. The
- other is<A href="#MD5"> MD5</A>. Some people do not trust SHA because
- it was developed by the<A href="#NSA"> NSA</A>. There is, as far as we
- know, no cryptographic evidence that SHA is untrustworthy, but this
- does not prevent that view from being strongly held.</P>
-<P>The NSA made one small change after the release of the original SHA.
- They did not give reasons. Iit may be a defense against some attack
- they found and do not wish to disclose. Technically the modified
- algorithm should be called SHA-1, but since it has replaced the
- original algorithm in nearly all applications, it is generally just
- referred to as SHA..</P>
-</DD>
-<DT><A name="SHA-256">SHA-256</A></DT>
-<DT>SHA-384</DT>
-<DT>SHA-512</DT>
-<DD>Newer variants of SHA designed to match the strength of the 128, 192
- and 256-bit keys of<A href="#AES"> AES</A>. The work to break an
- encryption algorithm's strength by<A href="#brute"> brute force</A> is
- 2
-<!--math xmlns="http://www.w3.org/1998/Math/MathML"-->
-
-<!--msup-->
-
-<!--mi-->
- keylength</(null)></(null)></(null)> operations but a<A href="birthday">
- birthday attack</A> on a hash needs only 2
-<!--math xmlns="http://www.w3.org/1998/Math/MathML"-->
-
-<!--msup-->
-
-<!--mrow-->
-
-<!--mi-->
- hashlength</(null)>
-<!--mo-->
- /</(null)>
-<!--mn-->
-
- 2</(null)></(null)></(null)></(null)> , so as a general rule you need a
- hash twice the size of the key to get similar strength. SHA-256,
- SHA-384 and SHA-512 are designed to match the 128, 192 and 256-bit key
- sizes of AES, respectively.</DD>
-<DT><A name="SIGINT">Signals intelligence (SIGINT)</A></DT>
-<DD>Activities of government agencies from various nations aimed at
- protecting their own communications and reading those of others.
- Cryptography, cryptanalysis, wiretapping, interception and monitoring
- of various sorts of signals. The players include the American<A href="#NSA">
- NSA</A>, British<A href="#GCHQ"> GCHQ</A> and Canadian<A href="#CSE">
- CSE</A>.</DD>
-<DT><A name="SKIP">SKIP</A></DT>
-<DD><B>S</B>imple<B> K</B>ey management for<B> I</B>nternet<B> P</B>
-rotocols, an alternative to<A href="#IKE"> IKE</A> developed by Sun and
- being marketed by their<A href="http://skip.incog.com"> Internet
- Commerce Group</A>.</DD>
-<DT><A name="snake">Snake oil</A></DT>
-<DD>Bogus cryptography. See the<A href="http://www.interhack.net/people/cmcurtin/snake-oil-faq.html">
- Snake Oil FAQ</A> or<A href="http://www.counterpane.com/crypto-gram-9902.html#snakeoil">
- this paper</A> by Schneier.</DD>
-<DT><A name="SPI">SPI</A></DT>
-<DD><B>S</B>ecurity<B> P</B>arameter<B> I</B>ndex, an index used within<A
-href="#IPSEC"> IPsec</A> to keep connections distinct. A<A href="#SA">
- Security Association (SA)</A> is defined by destination, protocol and
- SPI. Without the SPI, two connections to the same gateway using the
- same protocol could not be distinguished.
-<P>For more detail, see our<A href="ipsec.html"> IPsec</A> section
- and/or RFC 2401.</P>
-</DD>
-<DT><A name="SSH">SSH</A></DT>
-<DD><B>S</B>ecure<B> SH</B>ell, an encrypting replacement for the
- insecure Berkeley commands whose names begin with &quot;r&quot; for &quot;remote&quot;:
- rsh, rlogin, etc.
-<P>For more information on SSH, including how to obtain it, see our
- cryptography<A href="web.html#tools"> links</A>.</P>
-</DD>
-<DT><A name="SSHco">SSH Communications Security</A></DT>
-<DD>A company founded by the authors of<A href="#SSH"> SSH</A>. Offices
- are in<A href="http://www.ssh.fi"> Finland</A> and<A href="http://www.ipsec.com">
- California</A>. They have a toolkit for developers of IPsec
- applications.</DD>
-<DT><A name="SSL">SSL</A></DT>
-<DD><A href="http://home.netscape.com/eng/ssl3">Secure Sockets Layer</A>
-, a set of encryption and authentication services for web browsers,
- developed by Netscape. Widely used in Internet commerce. Also known as<A
-href="#TLS"> TLS</A>.</DD>
-<DT>SSLeay</DT>
-<DD>A free implementation of<A href="#SSL"> SSL</A> by Eric Young (eay)
- and others. Developed in Australia; not subject to US export controls.</DD>
-<DT><A name="static">static IP address</A></DT>
-<DD>an IP adddress which is pre-set on the machine itself, as opposed to
- a<A href="#dynamic"> dynamic address</A> which is assigned by a<A href="#DHCP">
- DHCP</A> server or obtained as part of the process of establishing a<A href="#PPP">
- PPP</A> or<A href="#PPPoE"> PPPoE</A> connection</DD>
-<DT><A name="stream">Stream cipher</A></DT>
-<DD>A<A href="#symmetric"> symmetric cipher</A> which produces a stream
- of output which can be combined (often using XOR or bytewise addition)
- with the plaintext to produce ciphertext. Contrasts with<A href="#block">
- block cipher</A>.
-<P><A href="#IPSEC">IPsec</A> does not use stream ciphers. Their main
- application is link-level encryption, for example of voice, video or
- data streams on a wire or a radio signal.</P>
-</DD>
-<DT><A name="subnet">subnet</A></DT>
-<DD>A group of IP addresses which are logically one network, typically
- (but not always) assigned to a group of physically connected machines.
- The range of addresses in a subnet is described using a subnet mask.
- See next entry.</DD>
-<DT>subnet mask</DT>
-<DD>A method of indicating the addresses included in a subnet. Here are
- two equivalent examples:
-<UL>
-<LI>101.101.101.0/24</LI>
-<LI>101.101.101.0 with mask 255.255.255.0</LI>
-</UL>
-<P>The '24' is shorthand for a mask with the top 24 bits one and the
- rest zero. This is exactly the same as 255.255.255.0 which has three
- all-ones bytes and one all-zeros byte.</P>
-<P>These indicate that, for this range of addresses, the top 24 bits are
- to be treated as naming a network (often referred to as &quot;the
- 101.101.101.0/24 subnet&quot;) while most combinations of the low 8 bits can
- be used to designate machines on that network. Two addresses are
- reserved; 101.101.101.0 refers to the subnet rather than a specific
- machine while 101.101.101.255 is a broadcast address. 1 to 254 are
- available for machines.</P>
-<P>It is common to find subnets arranged in a hierarchy. For example, a
- large company might have a /16 subnet and allocate /24 subnets within
- that to departments. An ISP might have a large subnet and allocate /26
- subnets (64 addresses, 62 usable) to business customers and /29 subnets
- (8 addresses, 6 usable) to residential clients.</P>
-</DD>
-<DT><A name="SWAN">S/WAN</A></DT>
-<DD>Secure Wide Area Network, a project involving<A href="#RSAco"> RSA
- Data Security</A> and a number of other companies. The goal was to
- ensure that all their<A href="#IPSEC"> IPsec</A> implementations would
- interoperate so that their customers can communicate with each other
- securely.</DD>
-<DT><A name="symmetric">Symmetric cryptography</A></DT>
-<DD>Symmetric cryptography, also referred to as conventional or secret
- key cryptography, relies on a<EM> shared secret key</EM>, identical for
- sender and receiver. Sender encrypts with that key, receiver decrypts
- with it. The idea is that an eavesdropper without the key be unable to
- read the messages. There are two main types of symmetric cipher,<A href="#block">
- block ciphers</A> and<A href="#stream"> stream ciphers</A>.
-<P>Symmetric cryptography contrasts with<A href="#public"> public key</A>
- or asymmetric systems where the two players use different keys.</P>
-<P>The great difficulty in symmetric cryptography is, of course, key
- management. Sender and receiver<EM> must</EM> have identical keys and
- those keys<EM> must</EM> be kept secret from everyone else. Not too
- much of a problem if only two people are involved and they can
- conveniently meet privately or employ a trusted courier. Quite a
- problem, though, in other circumstances.</P>
-<P>It gets much worse if there are many people. An application might be
- written to use only one key for communication among 100 people, for
- example, but there would be serious problems. Do you actually trust all
- of them that much? Do they trust each other that much? Should they?
- What is at risk if that key is compromised? How are you going to
- distribute that key to everyone without risking its secrecy? What do
- you do when one of them leaves the company? Will you even know?</P>
-<P>On the other hand, if you need unique keys for every possible
- connection between a group of 100, then each user must have 99 keys.
- You need either 99*100/2 = 4950<EM> secure</EM> key exchanges between
- users or a central authority that<EM> securely</EM> distributes 100 key
- packets, each with a different set of 99 keys.</P>
-<P>Either of these is possible, though tricky, for 100 users. Either
- becomes an administrative nightmare for larger numbers. Moreover, keys<EM>
- must</EM> be changed regularly, so the problem of key distribution
- comes up again and again. If you use the same key for many messages
- then an attacker has more text to work with in an attempt to crack that
- key. Moreover, one successful crack will give him or her the text of
- all those messages.</P>
-<P>In short, the<EM> hardest part of conventional cryptography is key
- management</EM>. Today the standard solution is to build a<A href="#hybrid">
- hybrid system</A> using<A href="#public"> public key</A> techniques to
- manage keys.</P>
-</DD>
-<DT><A name="T">T</A></DT>
-<DT><A name="TIS">TIS</A></DT>
-<DD>Trusted Information Systems, a firewall vendor now part of<A href="#NAI">
- NAI</A>. Their Gauntlet product offers IPsec VPN services. TIS
- implemented the first version of<A href="#SDNS"> Secure DNS</A> on a<A href="#DARPA">
- DARPA</A> contract.</DD>
-<DT><A name="TLS">TLS</A></DT>
-<DD><B>T</B>ransport<B> L</B>ayer<B> S</B>ecurity, a newer name for<A href="#SSL">
- SSL</A>.</DD>
-<DT><A name="TOS">TOS field</A></DT>
-<DD>The<STRONG> T</STRONG>ype<STRONG> O</STRONG>f<STRONG> S</STRONG>
-ervice field in an IP header, used to control qualkity of service
- routing.</DD>
-<DT><A name="traffic">Traffic analysis</A></DT>
-<DD>Deducing useful intelligence from patterns of message traffic,
- without breaking codes or reading the messages. In one case during
- World War II, the British guessed an attack was coming because all
- German radio traffic stopped. The &quot;radio silence&quot; order, intended to
- preserve security, actually gave the game away.
-<P>In an industrial espionage situation, one might deduce something
- interesting just by knowing that company A and company B were talking,
- especially if one were able to tell which departments were involved, or
- if one already knew that A was looking for acquisitions and B was
- seeking funds for expansion.</P>
-<P>In general, traffic analysis by itself is not very useful. However,
- in the context of a larger intelligence effort where quite a bit is
- already known, it can be very useful. When you are solving a complex
- puzzle, every little bit helps.</P>
-<P><A href="#IPSEC">IPsec</A> itself does not defend against traffic
- analysis, but carefully thought out systems using IPsec can provide at
- least partial protection. In particular, one might want to encrypt more
- traffic than was strictly necessary, route things in odd ways, or even
- encrypt dummy packets, to confuse the analyst. We discuss this<A href="ipsec.html#traffic.resist">
- here</A>.</P>
-</DD>
-<DT><A name="transport">Transport mode</A></DT>
-<DD>An IPsec application in which the IPsec gateway is the destination
- of the protected packets, a machine acts as its own gateway. Contrast
- with<A href="#tunnel"> tunnel mode</A>.</DD>
-<DT>Triple DES</DT>
-<DD>see<A href="#3DES"> 3DES</A></DD>
-<DT><A name="TTL">TTL</A></DT>
-<DD><STRONG>T</STRONG>ime<STRONG> T</STRONG>o<STRONG> L</STRONG>ive,
- used to control<A href="ipsec.html#DNS"> DNS</A> caching. Servers
- discard cached records whose TTL expires</DD>
-<DT><A name="tunnel">Tunnel mode</A></DT>
-<DD>An IPsec application in which an IPsec gateway provides protection
- for packets to and from other systems. Contrast with<A href="#transport">
- transport mode</A>.</DD>
-<DT><A name="2key">Two-key Triple DES</A></DT>
-<DD>A variant of<A href="#3DES"> triple DES or 3DES</A> in which only
- two keys are used. As in the three-key version, the order of operations
- is<A href="#EDE"> EDE</A> or encrypt-decrypt-encrypt, but in the
- two-key variant the first and third keys are the same.
-<P>3DES with three keys has 3*56 = 168 bits of key but has only 112-bit
- strength against a<A href="#meet"> meet-in-the-middle</A> attack, so it
- is possible that the two key version is just as strong. Last I looked,
- this was an open question in the research literature.</P>
-<P>RFC 2451 defines triple DES for<A href="#IPSEC"> IPsec</A> as the
- three-key variant. The two-key variant should not be used and is not
- implemented directly in<A href="web.html#FreeSWAN"> Linux FreeS/WAN</A>
-. It cannot be used in automatically keyed mode without major fiddles in
- the source code. For manually keyed connections, you could make Linux
- FreeS/WAN talk to a two-key implementation by setting two keys the same
- in /etc/ipsec.conf.</P>
-</DD>
-<DT><A name="U">U</A></DT>
-<DT><A name="V">V</A></DT>
-<DT><A name="virtual">Virtual Interface</A></DT>
-<DD>A<A href="#Linux"> Linux</A> feature which allows one physical
- network interface to have two or more IP addresses. See the<CITE> Linux
- Network Administrator's Guide</CITE> in<A href="biblio.html#kirch">
- book form</A> or<A href="http://metalab.unc.edu/LDP/LDP/nag/node1.html">
- on the web</A> for details.</DD>
-<DT>Virtual Private Network</DT>
-<DD>see<A href="#VPN"> VPN</A></DD>
-<DT><A name="VPN">VPN</A></DT>
-<DD><B>V</B>irtual<B> P</B>rivate<B> N</B>etwork, a network which can
- safely be used as if it were private, even though some of its
- communication uses insecure connections. All traffic on those
- connections is encrypted.
-<P><A href="#IPSEC">IPsec</A> is not the only technique available for
- building VPNs, but it is the only method defined by<A href="rfc.html#RFC">
- RFCs</A> and supported by many vendors. VPNs are by no means the only
- thing you can do with IPsec, but they may be the most important
- application for many users.</P>
-</DD>
-<DT><A name="VPNC">VPNC</A></DT>
-<DD><A href="http://www.vpnc.org">Virtual Private Network Consortium</A>
-, an association of vendors of VPN products.</DD>
-<DT><A name="W">W</A></DT>
-<DT><A name="Wassenaar.gloss">Wassenaar Arrangement</A></DT>
-<DD>An international agreement restricting export of munitions and other
- tools of war. Unfortunately, cryptographic software is also restricted
- under the current version of the agreement.<A href="politics.html#Wassenaar">
- Discussion</A>.</DD>
-<DT><A name="web">Web of Trust</A></DT>
-<DD><A href="#PGP">PGP</A>'s method of certifying keys. Any user can
- sign a key; you decide which signatures or combinations of signatures
- to accept as certification. This contrasts with the hierarchy of<A href="#CA">
- CAs (Certification Authorities)</A> used in many<A href="#PKI"> PKIs
- (Public Key Infrastructures)</A>.
-<P>See<A href="#GTR"> Global Trust Register</A> for an interesting
- addition to the web of trust.</P>
-</DD>
-<DT><A name="WEP">WEP (Wired Equivalent Privacy)</A></DT>
-<DD>The cryptographic part of the<A href="#IEEE"> IEEE</A> standard for
- wireless LANs. As the name suggests, this is designed to be only as
- secure as a normal wired ethernet. Anyone with a network conection can
- tap it. Its advocates would claim this is good design, refusing to
- build in complex features beyond the actual requirements.
-<P>Critics refer to WEP as &quot;Wire<EM>tap</EM> Equivalent Privacy&quot;, and
- consider it a horribly flawed design based on bogus &quot;requirements&quot;. You
- do not control radio waves as you might control your wires, so the
- metaphor in the rationale is utterly inapplicable. A security policy
- that chooses not to invest resources in protecting against certain
- attacks which can only be conducted by people physically plugged into
- your LAN may or may not be reasonable. The same policy is completely
- unreasonable when someone can &quot;plug in&quot; from a laptop half a block
- away..</P>
-<P>There has been considerable analysis indicating that WEP is seriously
- flawed. A FAQ on attacks against WEP is available. Part of it reads:</P>
-<BLOCKQUOTE> ... attacks are practical to mount using only inexpensive
- off-the-shelf equipment. We recommend that anyone using an 802.11
- wireless network not rely on WEP for security, and employ other
- security measures to protect their wireless network. Note that our
- attacks apply to both 40-bit and the so-called 128-bit versions of WEP
- equally well.</BLOCKQUOTE>
-<P>WEP appears to be yet another instance of governments, and
- unfortunately some vendors and standards bodies, deliberately promoting
- hopelessly flawed &quot;security&quot; products, apparently mainly for the
- benefit of eavesdropping agencies. See this<A href="politics.html#weak">
- discussion</A>.</P>
-</DD>
-<DT><A name="X">X</A></DT>
-<DT><A name="X509">X.509</A></DT>
-<DD>A standard from the<A href="http://www.itu.int"> ITU (International
- Telecommunication Union)</A>, for hierarchical directories with
- authentication services, used in many<A href="#PKI"> PKI</A>
- implementations.
-<P>Use of X.509 services, via the<A href="#LDAP"> LDAP protocol</A>, for
- certification of keys is allowed but not required by the<A href="#IPSEC">
- IPsec</A> RFCs. It is not yet implemented in<A href="web.html#FreeSWAN">
- Linux FreeS/WAN</A>.</P>
-</DD>
-<DT>Xedia</DT>
-<DD>A vendor of router and Internet access products, now part of Lucent.
- Their QVPN products interoperate with Linux FreeS/WAN; see our<A href="interop.html#Xedia">
- interop document</A>.</DD>
-<DT><A name="Y">Y</A></DT>
-<DT><A name="Z">Z</A></DT>
-</DL>
-<HR>
-<A HREF="toc.html">Contents</A>
-<A HREF="web.html">Previous</A>
-<A HREF="biblio.html">Next</A>
-</BODY>
-</HTML>