throbber
US007490151B2
`
`(12) United States Patent
`Munger et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,490,151 B2
`Feb. 10, 2009
`
`(54) ESTABLISHMENT OF A SECURE
`COMMUNICATION LINK BASED ON A
`DOMAIN NAME SERVICE (DNS) REQUEST
`
`(75)
`
`Inventors: Edward Colby Munger, Crownsville,
`MD (US); Robert Dunham Short, III,
`Leesburg, VA (US); Victor Larson,
`Fairfax, VA
`S ; Michael Williamson,
`South Ridingivg, (US)
`
`(73) Assignee: Virnetx Inc., Scotts Valley Drive, CA
`(US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 818 days.
`
`(21) APPL N05 10/2593494
`
`(56)
`
`References Cited
`
`US’ PATENT DOCUMENTS
`4,933,846 A
`6/1990 Humphrey et al.
`(Continued)
`FOREIGN PATENT DOCUMENTS
`199 24 575
`12/1999
`(Continued)
`
`DE
`
`OTHER PUBLICATIONS
`Search Report (dated Aug. 23, 2002), International Application No.
`PCT/USO 1/ 13260,
`
`(C°“‘i““ed)
`Primary Examiner—Krisna Lim
`(74) Attorney, Agent, or Firm—McDermott Will & Emery
`
`(22)
`
`Filed:
`
`Sep. 30, 2002
`
`(57)
`
`ABSTRACT
`
`(65)
`
`Prior Publication Data
`Us 2003/0037142 A1
`Feb, 20, 2003
`
`Related US, Application Data
`
`(60) Division of application No. 09/504,783, filed on Feb.
`15, 2000, now Pat. No. 6,502,135, which is a continu-
`ation-in-part of application No. 09/429,643, filed on
`Oct’ 29’ 1999’ now Pat’ No’ 7’010’604'
`(60) Provisional application No. 60/137,704, filed on Jun.
`7, 1999, provisional application No, 60/106,261, filed
`on Oct, 30, 1998,
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 15/1 73
`(52) U.S. Cl.
`..................................... .. 709/225; 709/229
`(58) Field of Classification Search ....... .. 709/217—225,
`709/229; 713/201
`See application file for complete search history.
`
`A plurality of computer nodes communicate using seemingly
`random Internet Protocol source and destination addresses.
`Data packets matching criteria defined by a moving window
`of valid addresses are accepted for further processing, while
`those that do not meet the criteria are quickly rejected.
`Improvements to the basic design include (1) a load balancer
`h
`d'
`'b
`k
`d'ff
`'
`'
`h
`Elcactoréisltlré Fotetsrapsscmitzigfirgsasth 1(1uE:,r1Ei:tI;tE:I)1S:,I1g:iIOSnpPé,aOtX;
`server that transparently creates a virtual private network in
`1‘eSP0I1Sei0 3 d0I11aii1 1131119 inquiry; (3) 3 large-t0-small link
`bandwidth management feature that prevents denial-of-ser-
`vice attacks at system chokepoints; (4) a trafiic limiter that
`regulates incoming packets by limiting the rate at which a
`transmitter can be synchronized with a receiver; and (5) a
`signaling synchronizer that allows a large number of nodes to
`communicate with a central node by partitioning the commu-
`nieatien function between two separate entities
`
`16 Claims, 35 Drawing Sheets
`
`100
`0R|G|NAT|NG
`TERMINAL
`
`A it
`
`
`ROUTER
`
`
`
`
`IP
`ROUTER
`
`‘P
`ROUTER
`
`29
`
`25
`IP
`
`QT-
`ENCRYPTION KEY
`
`110
`DESTINATION
`TERMINAL
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`US 7,490,151 B2
`Page 2
`
`..... .. 370/401
`
`............ .. 726/15
`
`U.S. PATENT DOCUMENTS
`4,988,990 A
`1/1991 Warrior
`...................... .. 380/273
`5,164,986 A * 11/1992 Bright
`5,276,735 A
`1/1994 Boebert et al.
`5,311,593 A
`5/1994 Carrni
`5,329,521 A
`7/1994 Walsh etal,
`5,341,426 A
`8/1994 Barneyetal
`5,367,643 A
`11/1994 Chang etal,
`5,559,883 A
`9/1996 Williams
`5,561,669 A
`10/1996 Lenneyetal
`5,588,060 A
`12/1996 Aziz
`5,625,626 A
`4/1997 Uniekila
`5,654,695 A
`8/1997 Olnowich et al.
`5,682,480 A
`10/1997 Nakagawa
`5,689,566 A
`11/1997 Nguyen
`5,740,375 A
`4/1998 Dunne etal,
`5,774,660 A
`6/1998 Brendel et al.
`5,787,172 A
`7/1998 Arnold
`5,790,548 A *
`8/1998 Sistanizadeh et al.
`5,796,942 A
`8/1998 Esbensen
`5,805,801 A
`9/1998 Hollowayetal,
`5,842,040 A
`11/1998 Hnghesetal,
`5,845,091 A
`12/1998 Dunne etal,
`5,867,650 A
`2/1999 Oslerrnan
`5,870,610 A
`2/1999 Beyda etal,
`5,878,231 A
`3/1999 Baehr etal.
`5,892,903 A
`4/1999 Klaus
`5,898,830 A *
`4/1999 Wesingeretal.
`5,905,859 A
`5/1999 Holloway et al.
`5,918,019 A
`6/1999 Valencia
`5,996,016 A
`11/1999 Thalheimer etal.
`6,006,259 A
`12/1999 Adelman etal.
`6,006,272 A
`12/1999 Aravamudan etal.
`6,016,318 A
`1/2000 Tomoike
`6,016,512 A
`1/2000 Huitema
`6,041,342 A
`3/2000 Yamaguchi
`6,052,788 A
`4/2000 Wesinger,Jr.etal.
`6,055,574 A
`4/2000 Smorodinsky etal.
`6,061,736 A
`5/2000 Rochbergeretal.
`6,079,020 A *
`6/2000 Liu .......................... .. 713/201
`6,092,200 A
`7/2000 Muniyappa etal.
`6,101,182 A *
`8/2000 Sistanizadeh etal.
`6,119,171 A
`9/2000 Alkhatib
`6,119,234 A *
`9/2000 Aziz etal.
`6,147,976 A
`11/2000 Shand etal.
`6,157,957 A
`12/2000 Berthaud
`6,158,011 A
`12/2000 Chen etal.
`6,168,409 B1
`1/2001 Fare
`6,175,867 B1
`1/2001 Taghadoss
`6,178,409 B1
`1/2001 Weber etal.
`5,178,505 B1
`1/3001 Se1111e1de1e131
`5,179,103 B1
`1/3001 Webe1e131~
`5,333,843 B1
`4/3001 S35Y311 e1 31
`6,226,751 B1
`5/2001 Arrowet al.
`5,333,518 B1
`5/3001 S1131111011
`6,243,360 B1
`6/2001 Basilico
`5,343,749 B1
`5/3001 S113131T1311e131
`5,343,754 B1
`5/3001 G11e1111 e131
`6,256,671 B1 *
`7/2001 Strentzsch et al.
`6,263,445 B1
`7/2001 Blumenau
`5,385,047 B1
`9/3001 R31T13113111311e131
`5,301,333 B1
`10/3001 H13S131e131
`6,308,274 B1
`10/2001 Swift
`5,311,307 B1
`10/3001 M1g11d011e131
`5,334,151 B1
`11/3001 K0911
`6,330,562 B1
`12/2001 Boden etal.
`5,333,158 B1 * 13/3001 R151eY e131 ~~~~~~~~~~~~~~ ~- 709/319
`6,353,614 B1
`3/2002 Borella etal.
`5,425,003 B1 *
`7/2002 Herzog el 31 ------------- -- 709/223
`6,430,155 B1
`8/2002 Davie etal.
`6,430,610 B1
`8/2002 Carter
`6,487,598 B1
`11/2002 Valencia
`
`..... .. 370/352
`
`................ .. 713/201
`
`........ .. 709/227
`
`............ .. 709/225
`
`6,502,135 131* 12/2002 Mungeretal.
`6505 232 B1
`1/2003 Mi
`doll etal.
`6:510:154 B1
`1/2003 Magyiiasetal.
`6,549,516 B1
`4/2003 Albefi et 31.
`6,557,037 B1
`4/2003 Provino
`6,571,296 B1
`5/2003 Dillon
`6,571,338 B1
`5/2003 Shaio etal.
`6,581,166 B1
`6/2003 Hirstetal.
`6,606,708 131*
`8/2003 Devine etal.
`6,618,761 B2
`9/2003 Mungeretal.
`6,671,702 B2
`12/2003 Kruglikov etal.
`6,687,551 B2
`2/2004 Steindl
`6,714,970 B1
`3/2004 Fiveash etal.
`6,717,949 B1
`4/2004 Boden et 31.
`6,751,738 132*
`6/2004 Wesingeretal.
`6,760,766 B1
`7/2004 Sahlqvist
`6,826,616 B2
`11/2004 Larson etal.
`6,839,759 B2
`1/2005 Larson et al.
`7,010,604 B1
`3/2006 Mungeretal.
`7,133,930 B2
`11/2006 Munger et al.
`7,188,180 B2
`3/2007 Larson etal.
`7,197,563 B2
`3/2007 Sheymov etal.
`2002/0004898 A1
`1/2002 Droge
`2003/0196122 A1* 10/2003 Wesingeretal.
`2005/0055306 A1
`3/2005 Milleretal.
`2006/0059337 A1*
`3/2006 Poyhonen etal.
`
`............. .. 713/201
`
`.......... .. 713/201
`
`.......... .. 713/201
`
`......... .. 713/165
`
`FOREIGN PATENT DOCUMENTS
`
`E1’
`E1’
`E1’
`E1’
`E1’
`E1’
`013
`013
`013
`013
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`
`0 814 589
`0814 589 A
`0 838 930
`0 838930 A
`835305 A1
`0858189
`3 317 793
`3317 793 A
`3334181 A
`3334181 A
`9837783 A
`W0 98/37783
`W0 9837783 A
`W0 98 55930
`W0 98 59470
`W0 99 38081
`W0 99 48303
`W0 00/ 17775
`W0 00/70458
`W00150588
`
`13/ 1997
`13/1997
`4/ 1998
`4/ 1998
`4/1998
`8/1998
`4/ 1998
`4/ 1998
`8/ 1999
`8/1999
`0/ 1998
`0/ 1998
`5/ 1998
`13/ 1998
`13/1998
`7/ 1999
`9/1999
`3/3000
`11/3000
`7/3001
`
`Internet
`
`OTHER PUBLICATIONS
`Donald E. Eastlake, 3”’, “Domain Name System Security Exten-
`sions”, Internet Draft, Apr. 1998, pp. 1-51.
`D. B. Chapman et al., “Building Internet Firewalls”, Nov. 1995, pp.
`273.375.
`P. Srisuresh etal., “DNA extensions to Network address Translators
`(DNS_ALG)”, Internet Draft, Jul. 1998, pp. 1-27.
`James E. Bellaire, “New Statement of Rules—Namin
`g
`Domains”, Internet Newsgroup, Jul. 30, 1995, lpage.
`1). Clark, “Us C3115 for private D0main_Name system”, Computer
`g0ciety,Aug. 1, 1993,1515. 22-25.
`AugustBequai,“BalancingLegal ConcernsOVerCrimeandSecurity
`in Cyberspace”, Computer & Security, Vol. 17, No. 4, 1998, pp.
`293.298.
`Rich Winkel, “CAQ: Networking With Spooks: The NET & The
`Control Of Information”, Internet Newsgroup, Jun. 21, 1997, 4
`3 es.
`ISe§.rch Report (dated Jun. 18, 2002), International Application No.
`PCT/US01/13260,
`Search Report (dated Jun. 28, 2002), International Application No.
`PCTMS01/13261.
`Donald E. Eastlake, “Domain Name System Security Extensions”,
`DNS Security Working Group, Apr. 1998, 51 pages.
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`US 7,490,151 B2
`Page 3
`
`D. B. Chapman et al., “Building Internet Firewalls”, Nov. 1995, pp.
`278-297 and pp. 351-375.
`P. Srisuresh eta1., “DNS extensions to Network Address Translators”,
`Jul. 1998, 27 pages.
`Laurie Wells, “Security Icon”, Oct. 19, 1998, 1 page.
`W. Stallings, “Cryptography And Network Security”, 2“ Edition,
`Chapter 13, IP Security, Jun. 8, 1998, pp. 399-440.
`W. Stallings, “New Cryptography and Network Security Book”, Jun.
`8, 1998, 3 pages.
`Search Report (dated Aug. 20, 2002), International Application No.
`PCT/US01/04340.
`Shree Murthy et al., “Congestion-Oriented Shortest Multipath Rout-
`ing”, Proceedings of IEEE Infocom, 1996, pp. 1028-1036.
`Jim Jones et al., “Distributed Denial of Service Attacks: Defenses”,
`Global Integrity Corporation, 2000, pp. 1-14.
`Fasbender, Kesdogan, and Kubitz: “Variable and Scalable Security:
`Protection of Location Information in Mobile IP”, IEEE publication,
`1996, pp. 963-967.
`Laurie Wells (Lancasterbibelrnail MSN COM); “Subject: Security
`Icon” Usenet Newsgroup, Oct. 19, 1998, XP002200606.
`Davila J et al, “Implementation of Virtual Private Networks at the
`Transport Layer”, Inforn1ation Security, Second International Work-
`shop, ISW ’99. Proceedings (Lecture Springer-Verlag Berlin, Ger-
`many,
`[Online] 1999, pp. 85-102, XP002399276, ISBN 3-540-
`66695-B, retrieved from the Internet: URL: http://www.springerlink.
`com/content/4uac0tb0heccma89/fulltext.pdf> (Abstract).
`Alan 0. Frier et al., “The SSL Protocol Version 30”, Nov. 18, 1996,
`printed from http://www.netscape.com/eng/ssl13/ draft302.b<t on
`Feb. 4, 2002, 56 pages.
`Davila J et al, “Implementation of Virtual Private Networks at the
`Transport Layer”, Inforn1ation Security, Second International Work-
`shop, ISW’99. Proceedings (Lecture Springer-Verlag Berlin, Ger-
`
`[Online] 1999, pp. 85-102, XP002399276, ISBN 3-540-
`many,
`66695-B, retrieved from the Internet: URL: http://www. springerlink.
`com/content/4uac0tb0hecoma89/fulltext.pdf>.
`Dolev, Shlomi and Ostrovsky, Rafil, Efficient Anonymous Multicast
`and Reception (Extended Abstract), 16 pages.
`F. Halsall, “Data Communications, Computer Networks and Open
`Systems”, Chapter 4, Protocol Basics, 1996, pp. 198-203.
`Glossary for the Linux FreeS/WAN project, printed from http://
`liberty.freeswan .org/freeswan_trees/freeswan-1 .3/
`doc/glo ssary.
`html on Feb. 21, 2002, 25 pages.
`J. Gilmore, “Swan: Securing the Internet against Wiretapping”,
`printed from http ://liberty. freeswan. org/freeswan_trees/freeswan- 1 .
`3.doc/rationale.html on Feb. 21, 2002, 4 pages.
`Linux FreeS/WAN Index File, printed from http://liberty.freewan.
`org/freeswan trees/freeswan-1.3/doc/ on Feb. 21, 2002, 3 pages.
`Reiter, Michael K. and Rubin, Aviel D. (AT&T Labs—Research),
`Crowds: Anonymity for Web Transactions, pp. 1-23.
`RFC 2401-Security Architecture for the Internet Protocol (RTP).
`RFC 2543-SIP: Session Initiation Protocol (SIP or SIPS).
`Rubin, Aviel D., Geer, Daniel, and Ranum, Marcus J. (Wiley Com-
`puter Publishing), “Web Security Sourcebook”, pp. 82-94.
`Search Report, IPER (dataed Nov. 13, 2002), International Applica-
`tion No. PCT/USO 1/04340.
`Search Report, IPER (dated Feb. 6, 2002), International Application
`No. PCT/US01/13261.
`Search Report, IPER (dated Jan. 14, 2003), International Application
`No. PCT/US01/13260.
`Shar1kar, A.U. “A verified sliding window protocol with variable flow
`control”. Proceedings of ACM SIGCOMM conference on Commu-
`nications architectures & protocols. pp. 84-91, ACM Press, NY,NY
`1986.
`
`* cited by examiner
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 1 of 35
`
`US 7,490,151 B2
`
`100
`
`ORKHNAHNG
`TERMINAL
`
`40
`
`107
`
` 28
`
`IP
`ROUTER
`
`110
`
`ENCRYPTION KEY
`
`DEST|NAT|0N
`TERMINAL
`
`FIG. 1
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 2 of 35
`
`US 7,490,151 B2
`
`100
`
`TARP
`
`TERMINAL
`
`145
`
`TARP PACKET
`
`131
`
`
`
`LINK KEY
`
`TARP
`
`ROUTER
`
`129
`
`IP
`
`ROUTER
`
`128
`
`IP
`ROUTER
`
`TARP
`ROUTER
`
`132
`
`"3
`ROUTER
`
`126
`
`TARP
`ROUTER
`
`127
`
`TARP
`ROUTER
`
`LINK KEY
`
`143
`®T.
`SESS,0N KEY
`
`3.11
`110
`LINK KEY
`TARP PACKET
`
`
`
`
`
`
`
`TARP
`
`TERMINAL
`
`
`
`FIG. 2
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 3 of 35
`
`US 7,490,151 B2
`
`DATA STREAM Q9
`
`INTERLEAVED
`
`SESS|ON—KEY-ENCRYPTED
`PAYLOAD DATA 3_3g
`
`TARP PACKET WITH
`ENCRYPTED PAYLOADS §4_Q
`
`TARP PACKETS ESQ
`
`LINK-KEY-ENCRYPTED
`
`~-.-,»_ |P PACKETS WI ENCRYPTED
`"
`TARP PACKETS AS
`PAYLOAD 3_6_Q
`
`
`
`
`
`
`TARP
`
`ROUTER 2
`
`TARP
`ROUTER 1
`
`
`
`
`
`TARP
`
`
`
`TARP
`ROUTER 5
`
`TARP
`
`ROUTER 6
`
`TARP
`ROUTER 7
`
`TARP
`
`ROUTER 3
`
`
`
`
`
`TARP
`
`ROUTER 4
`
`
`
`
`
`FIG. 3A
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 4 of 35
`
`US 7,490,151 B2
`
`892mm><s_
`
`
`<29moeaos§__>_8
`
`
`Ev_.zo_m$aaE%_,m.va3m.
`
`
`
`ea_>aVacsazaozm
`
`§8<o§§z_
`
`
`
`aflozmgomm23%
`
`...IIIIIEIEIE
`
`§_>_$E2ea‘&...£8£3asas
`
`
`
`oma_>aVacsazéuzm
`
`
`
`.mm|a>§%:z_8<o:§9z_
`
`Boss53m853%
`
`
`
`
`
`m§m>,$Ez_mm<o._><n_o._.z_
`
`_.:_>>Evaahas
`
`
`
`%220::EESE
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`
`

`
`U.S. Patent
`
`W
`
`2Bm
`
`0,
`
`IM%.:m&$_;M§o5m$_z_E,aU
`
`w.o_”_
`
`1.n__2o_.:_>>Mez_m$ooE$3
`
`mzazoo
`
`Wmommmoog
`
`
`
`o._.m_>:.<zm_m._.._<mzo
`
`m_§m>_§z§E%
`
`3$5Ev_§Ez
`
`Agog;
`
`ozamaog
`
`E:mz_m_>_89m>_2_,_$:<$15
`
`9289z_E8.3mommaog.3E:
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 6 of 35
`
`US 7,490,151 B2
`
`BACKGROUND LOOP-DECOY
`GENERATION
`
`S0
`
`AUTHENTICATE TARP PACKET
`
`S2
`
`S3
`
`S4
`
`85
`
`37
`
`38
`
`S10
`
`311
`
`MANGROVE 1001
`
`
`
`TRANSMIT DECOY?
`
`
`
`YES
`
`
`
`GENERATE NEXT-HOP TARP
`ADDRESS AND STORE LINK KEY
`AND IP ADDRESS
`
`S9
`
`DETERMINE DESTINATION TARP
`ADDRESS AND STORE LINK KEY
`AND IP ADDRESS
`
`GENERATE NEXT-HOP TARP
`ADDRESS AND STORE LINK KEY
`AND IP ADDRESS
`
`GENERATE IP HEADER
`AND TRANSMIT
`
`FIG. 5
`
`DUMP DECOY
`
`OUTER LAYER DECRYPTION OF
`TARP PACKET USING LINK KEY
`
`CHECK FOR DECOY AND
`INCREMENT PIERISHABLE DECOY
`COUNTER AS APPROPRIATE
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 7 of 35
`
`US 7,490,151 B2
`
`BACKGROUND LOOP-DECOY
`
`GENERATION
`
`320
`
`GROUP RECEIVED IP PACKETS
`INTO INTERLEAVE WINDOW
`
`S21
`
`DETERMINE DESTINATION TARP
`ADDRESS, INITIALIZE TTL, STORE
`IN TARP HEADER
`
`S22
`
`RECORD WINDOW SEQ. NOS. AND
`INTERLEAVE SEQ. NOS IN TARP
`HEADERS
`
`S23
`
`CHOOSE FIRST HOP TARP
`
`
`
`ROUTER, LOOK UP IP ADDRESS
`AND STORE IN CLEAR IP HEADER,
`OUTER LAYER ENCRYPT
`
`S24
`
`INSTALL CLEAR IP HEADER
`
`AND TRANSMIT
`
`S25
`
`FIG. 6
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 8 of 35
`
`US 7,490,151 B2
`
`S40
`
`ACKROUND LOOP-DECOY
`GENERATION
`
`S42
`
`AUTHENTICATE TARP PACKET
`RECEIVED
`
`349
`
`DIVIDE BLOCK INTO PACKETS s43
`
`USING WINDOW SEQUENCE DATA,
`ADD CLEAR IP HEADERS
`GENERATEDFROM TARP
`HEADERS
`
`DECRYPT OUTER LAYER
`ENCRYPTION WITH LINK KEY
`
`S50
`
`HAND COMPLETED IP PACKETS
`
`TO IP LAYER PROCESS
`
`'N%%EUIfll§Iéy|’E§'§gé$LE
`
`S44
`
`S45
`
`THROW AWAY DECOY OR KEEP
`IN RESPONSE TO ALGORITHM
`
`S46
`
`CACHE TARP PACKETS UNTIL
`WINDOW IS ASSEMBLED
`
`S47
`
`S48
`
`DEINTERLEAVE PACKETS
`FORMING WINDOW
`
`DECRYPT BLOCK
`
`FIG. 7
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Sheet 9 of 35
`
`US 7,490,151 B2
`
`$58I5.m“as$50502E3Mm?_va<n:_o<25MQmvag25§
`
`
`
`._<z_%.._m:.:,m__d
`
`
`
`
`
`_.aQzo_z:_z_zgmmmmmmamm
`
`
`
`
`
`flV2zo_._.<_._._z_zoawwmwsomw
`
`w.o_u_
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`

`
`U.S. Patent
`
`US 7,490,151 B2
`
`
`
`m.,aggfie_§.§.§.§M£§.§.E_$§.§.§
`
`
`
`9$.§.E.§_:.§.§.§m§.§.§.§_m2.§.E.§
`
`
`
`Wmwasm>_m8m
`
`
`
`n_m<._
`
`aWmsom
`
` :_>_mz<EWHH %§.§.§.§.§.2N.§mmmwas
`
`
`
`
`
`
`E.g$§2_©$8.2N_§
`
`
`
`5.3.25.5.S~.SN.2N.§
`
`3023.5_2:§:..§
`
`_Hzw:o
`
`am
`
`$.§.2N.§.$.§.£~.§Qwas
`§_.a,z<E
`
`3.3$E.§.§N.§.2~.§
`
`
`
`§.§.2N.§.m2.§.§.§
`
`
`
`52.2.5.=.§.E.§
`
`
`
`Nwwasm>_§m
`
`g.§.§.§_§.§.2N.§
`
`E.§.E.§.$335.5
`
`E.§..E.§.§.§.§.§
`
`$.g§N.§.m:.§.§.§
`
`m.o_n_
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 11 of 35
`
`US 7,490,151 B2
`
`:0.
`
`N_o_
`
`m_o_
`
`<mw_
`
`mmqg
`
`mmhzom
`
`mmm_
`
`mm¢F
`
`mwpgom
`
`FNOF
`
`NNOF
`
`mNo_
`
`Hzwso
`
`‘
`
`Foo_
`
`2oz
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`

`
`U.S. Patent
`
`6m,
`
`2
`
`
`
`
`3:mmnmamog<5:2”m$%o<:_._am<3::_._Em
`mm”m$m8<:15%mg:mg:3”m$§<:1En.
`
`
`mmo<m:
`
`mmo<mI
`
`m:<m¢:mzmmI:m
`
`m:<m¢:mzmmI:m
`
`»/.00:
`
`»/.om:
`
`
`Eo<&_E5:FEo<&_mg::”m$E9:_.53a_mE:”m$%9:_W958<3:2_mm%2a_$58m$3:<2:92SE:_%ma03:Os:2SE:__6m_Qm5w$§E_Hmamg:
`
`
`
`
`
`
`
`
`m_‘_‘GE
`
`7,N:23::m2:
`
` 5<2:$3:m.E9:m.mm§<o:$2::a<3:a
`
`
`
`02:m_:Em:_>__%_m_o
`mg:2.mm§§_5%E2”w$%9a_M958
`
`2:
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 13 of 35
`
`US 7,490,151 B2
`
`
`
`<N_.®_n_
`
`MANGROVE 1001
`
`gag
`
`fiflaa
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 14 of 35
`
`US 7,490,151 B2
`
`
`
`am:%2z_2_5m_n_
`
`33,;
`
`BE,mm25
`
`025z_
`
`BE,mm25
`
`02$z_
`
`82%mm25
`
`02%z_
`
`$m$m8E_
`
`B_m<>mm25
`
`025z_
`
`82>mm25
`
`oz;z_
`
`82%mm26
`
`023z_
`
`mm<>>e_<_._
`
`$m$§<
`
`382._._<mem_>_$
`
`:m_En_s_8mo
`
`_>_8z§
`
`2%SEmeax:
`
`82%mm25
`
`02$_,__
`
`woos.
`
`mo
`
`._.zm_s__n_oms_m_
`
`%o8m__2oE._
`
`m88w_s_oEN
`
`2n_>mm:
`
`mméei_m
`
`oz_nEo_._
`
`ms.o_“_
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 15 of 35
`
`US 7,490,151 B2
`
`m_.zm__.6
`
`<._.zm__._o
`
`07%B228
`
`.o._<ozm
`
`22
`
`r_>§o
`
`9dc
`
`m$m8<M958n__
`
`
`
`w$%o<.53.__
`
`was,Q25
`
`2058032;
`
`was,02;,
`
`
`
`2058E<>_i
`
`$3.2:
`
`aE>$zm_
`
`n_<o._><m
`
`22
`
`82
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 16 of 35
`
`U
`
`5,
`
`2
`
`$:_s_mz<E
`
`;__<n_n__
`
`Nm_<n_n__
`
`%:__2mz<E
`
`
`
`n_m_mr_.zm__n__om_mn_m_mfiozmm
`
`
`
`
`
`m30_u_
`
`
`
`
`
`$N_zo$_oz>E_,m_n__amo:mQzm$_o$2>mz_Ee_mAIIIII:In|l|v$N_zo$az>mfiozmm9:,_m_n__om_mme07%z_Ev.MA......................--v
`
`
`
`
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`US 7,490,151 B2
`
`
`
`
`oz_s_ooz_._.E>>$>_§<5;__oeB_aE2oz?~__§n__E_oe_85m5.1oz;:_>az,E.E2EsmzmomE:_2mzs:z__.93H.E0u$951wmin__:__oe_omIo
`
`
`
`
`
` $>_§mz___EU#w_as;__oe_..mIoW>>ooz_>>.u:.<on5.>>mmzommmm$>m.$m52wauaxom_mm_>_mommEsmzmooz<:E0m_<n_Mumm_o<m=.__.E>>n=._.z_o$6m_._omm:__>_mz<Eo.z__>_ooz_
`anE2Esmzmo.X202%2%;3”
`
`$>_%<$m02%E1?52ez_%§_025
`
`
`
`
`
`:e2_<.:_mE_s_mz<Ez___E0
`
`3.O_u_
`
`MANGROVE 1001
`
`31-02%©
`zo:.<N_zom_._oz>m5:;©
`
`
`
`§_mz$_me:s_mz<E.28¢
`
`
`
`.§§:Es>._._<o_oo_mmn_
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 18 of 35
`
`US 7,490,151 B2
`
`‘_.
`
`FIG.15
`
`MANGROVE 1001
`
`L()
`05
`’
`
`EQ
`
`4095
`
`Z
`
`4095
`
`4095
`
`i
`
`0
`
`
`
`
`
`(ETHERNETLAN-TWOAADDRESSBLOCKS)
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 19 of 35
`
`US 7,490,151 B2
`
`I INACTIVE
`VA ACTIVE
`USED
`
`MANGROVE 1001
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`7//////////////////////4
`V//I///////////////////.
`7/////'/////////////////.
`
`7////////////////////I/A
`
`FIG. 17
`
`
`
`7//////////////////////A
`
`
`

`.
`7//////////////////////A
`_'///////////////////////A
`
`,/////////////////////m
`7//////////////////////4
`
`
`000
`
`W|NDOW_S|ZE
`
`W|NDOW_S|ZE
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 20 of 35
`
`US 7,490,151 B2
`
`
`
`MANGROVE 1001
`
`—— 7
`
`/////////////////////A
`
`000
`
`W|NDOW_S|ZE
`
`7//////////////////////,
`0'///////////////////////.
` A
`,/////////////////////J
`
`
`W|NDOW_SlZE
`
`.:
`
`FIG. 18
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 21 of 35
`
`US 7,490,151 B2
`
`
`
`’
`
`VA ACTIVE
`
`000
`
`MANGROVE 1001
`
`
`
`
`
`
`
`.
`
`7
`
`,'/////////////////////fl
`_/////////////////////fl
`7/////////////////////fl
`
`
`
`
`
`
`
`000
`
`
`
`W|NDOW_S|ZE
`
`
`
`W////////////////////.
`
`V//////////////////////A
`
`
`
`W|NDOW_S|ZE
`
`:
`
`’.:
`
`
`
`
`7/////////////////////4
`
`FIG. 19
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 22 of 35
`
`US 7,490,151 B2
`
`2011
`
`FIG.20
`
`MANGROVE 1001
`
`
`
`COMPUTER #2
`
`2002
`
`
`
`
`
`COMPUTER #1
`
`2001
`
`2008
`
`2005
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 23 of 35
`
`US 7,490,151 B2
`
`MANGROVE 1001
`
`2101
`
`2102
`
`2103
`
`2104
`
`2105
`
`2106
`
`2107
`
`2108
`
`2109
`
`
`
`
`
`
`
`
`
`AD'LABLE
`
`IP1
`
`IP3
`
`|P2
`
`|P4
`
`AETABLE
`
`AFTABLE
`
`BDTABLE
`
`BETABLE
`
`T’
`V
`
`CDTABLE
`
`CETABLE
`
`CFTABLE
`
`
`
`LWKDOWN
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 24 of 35
`
`US 7,490,151 B2
`
`
`
`
`
`MEASURE
`
`QUALITY OF
`TRANSMISSION
`PATH X
`
`
`
`MORE
`
`THAN ONE
`
`TRANSMITTER
`TURNED
`ON?
`
`
`
`
`2209
`
`SET WEIGHT
`
`TO MIN. VALUE
`
`FIG. 22A
`
`MANGROVE 1001
`
`DECREASE
`WEIGHT FOR
`PATH X
`
`INCREASE WEIGHT
`FOR PATH X
`
`TOWARD STEADY
`
`
`STATE VALUE
`
`
`
`ADJUST WEIGHTS
`
`FOR REMAINING
`
`
`
`
`PATHS SO THAT
`WEIGHTS EQUAL ONE
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 25 of 35
`
`US 7,490,151 B2
`
`
`
`
`SET WEIGHT
`
`TO ZERO
`
`ADJUST WE|GHTS
`FOR REMAINING
`PATHS so THAT
`
`WEIGHTS EQUAL ONE
`
`FIG. 22B
`
`MANGROVE 1001
`
`(EVENT) TRANSMITTER
`FOR PATH x
`
`TURNS OFF
`
`AT LEAST
`
`DROP ALL PACKETS
`
`ONE TRANSMITTER
`
`UNTILATRANSMITTER
`
`TURNED ON?
`
`TURNS ON
`
`2210
`
`2211
`
`2212
`
`2313
`
`2214
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 26 of 35
`
`US 7,490,151 B2
`
`am
`
`82
`
`AA
`
`_.mv_o<..._
`
`$:__>_mz<E
`
`
`
` was._._s_mz<m_._./88
`
`
`
`wasm>_m_8m
`
`82\._Qm.
`
`mm.o:
`
`._._._m_.u_>>
`
`._.zm__E.m:3<
`
`zo_.Sz_.z
`
`
`
`>.:._<:ov_z_._
`
`._.zm__>_m_~=._m<m_s_
`
`zozoza
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 27 of 35
`
`US 7,490,151 B2
`
`$5n__>_8
`
`%E.n_s_8
`
`Ea:
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 28 of 35
`
`US 7,490,151 B2
`
`moms
`
`Ea$2
`
`$2
`
`mmmgomm
`
`mmd:
`
`E:maze
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`b.M
`
`0mm,
`
`Mnm
`
`US 7,490,151 B2
`
`88
`
`gamzo
`
`fizmm
`
`2o
`
`9:
`
`38
`
`.6.E_mm$_<E%$m
`
`88oz_&o_._n__
`
`:8maammzs
`
`Ha593
`
`om.0_u_
`
`9$nme_as
`
`s$502:5:
`
`mm;
`
`fimgomm
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 30 of 35
`
`US 7,490,151 B2
`
`2701
`
`RECEIVE DNS
`REQUEST FOR
`
`TARGET SITE
`
`
`
`
`ACCESS TO
`SECURE SITE
`REQUESTED?
`
`
`
`
`
`
`YES
`
`2703
`
`PASS TH RU
`
`REQUEST TO
`DNS SERVER
`
`2705
`
`2702
`
`2704
`
`
`
`USER
`AUTHORIZED TO
`
`
`CONNECT?
`
`
`
`
`RETURN
`"HOST UNKNOWN"
`ERROR
`
`YES
`
`2706
`
`ESTABLISH
`VPN WITH
`
`TARGET SITE
`
`FIG. 27
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 31 of 35
`
`US 7,490,151 B2
`
`$8$0:
`
`$58£mwazoo
`
`mmd:
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`hR
`
`W
`
`7m
`
`m0,
`
`2
`
`3mm.0_..._
`
`W25_._o_:ga32
`
`gags
`
`$59.
`
`+l
`
`§.§V:m_%mEa_>_8so:
`
`m2%
`
`EN22
`
`33:Em5%,_oo5%
`
`
`
`
`
`Mg22xE_ooo¢$5n_s_oS_ea<_._22
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`
`
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 33 of 35
`
`Us 7,490,151 B2
`
`$E_2mz<E
`
`m>_§m
`
`52cm._w_u_
`
`8%
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 34 of 35
`
`US 7,490,151 B2
`
`3105
`
`3106
`
`3104
`
`CLIENT#2
`
`FIG.31
`
`
`
`
`TX/RXTX/RXTX/RX
`
`3102
`
`MANGROVE 1001
`
`(D
`Z
`1—-
`C’)
`
`I\
`3
`x—--
`O’?
`
`MANGROVE 1001
`
`

`
`U.S. Patent
`
`Feb. 10, 2009
`
`Sheet 35 of 35
`
`US 7,490,151 B2
`
`CLIENT
`
`SERVER
`
`SEND DATA PACKET
`USING CKPT_N
`CKPT_O=CKPT_N
`GENERATE NEW CKPT_N
`START TIMER, SHUT
`TRANSMITTER OFF
`
`IF CKPT_O IN SYNC_ACK
`MATCHES TRANSMITTER'S
`CKPT_O
`UPDATE RECEIVER'S
`CKPT_R
`KILL TIMER, TURN
`TRANSMITTER ON
`
`SEND DATA PACKET
`USING CKPT_N
`CKPT_O=CKPT_N
`GENERATE NEW CKPT_N
`START TIMER, SHUT
`TRANSMITTER OFF
`
`WHEN TIMER EXPIRES
`TRANSMIT SYNC_REQ
`USING TRANSMITTERS
`CKPT_O, START TIMER
`
`IF CKPT_O IN SYNC_ACK
`MATCHES TRANSMITTERS
`CKPT_O
`UPDATE RECEIVER'S
`CKPT_R
`KILL TIMER, TURN
`TRANSMITTER ON
`
`SYNC_REQ
`
`FIG. 32
`
`PASS DATA UP STACK
`CKPT_O=CKPT_N
`GENERATE NEW CKPT_N
`GENERATE NEW CKPT_R
`FOR TRANSMITTER SIDE
`TRANSMIT SYNC_ACK
`CONTAINING CKPT_O
`
`CKPT_O=CKPT_N
`GENERATE NEW CKPT_N
`GENERATE NEW CKPT_R
`FOR TRANSMITTER SIDE
`TRANSMIT SYNC_ACK
`CONTAINING CKPT_O
`
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`US 7,490,151 B2
`
`1
`ESTABLISHMENT OF A SECURE
`COMMUNICATION LINK BASED ON A
`
`DOMAIN NAME SERVICE (DNS) REQUEST
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application is a divisional application of 09/504,783
`(filed Feb. 15, 2000), now U.S. Pat. No. 6,502,135, issued
`Dec. 31, 2002, which claims priority from and is a continua-
`tion-in-part of previously filed U.S. application Ser. No.
`09/429,643 (filed Oct. 29, 1999) now U.S. Pat. No. 7,010,604.
`The subject matter of the ’643 application, which is bodily
`incorporated herein, derives from provisional U.S. applica-
`tion No. 60/106,261 (filed Oct. 30, 1998) and 60/137,704
`(filed Jun. 7, 1999).
`
`GOVERNMENT CONTRACT RIGHTS
`
`This invention was made with Government support under
`Contract No. 360000-1999-000000-QC-000-000 awarded by
`the Central Intelligence Agency. The Government has certain
`rights in the invention.
`
`BACKGROUND OF THE INVENTION
`
`A tremendous variety of methods have been proposed and
`implemented to provide security and anonymity for commu-
`nications over the Internet. The variety stems, in part, from the
`different needs of different Internet users. A basic heuristic
`
`framework to aid in discussing these different security tech-
`niques is illustrated in FIG. 1. Two terminals, an originating
`terminal 100 and a destination terminal 110 are in communi-
`cation over the Internet. It is desired for the communications
`
`to be secure, that is, immune to eavesdropping. For example,
`terminal 100 may transmit secret information to terminal 110
`over the Internet 107. Also, it may be desired to prevent an
`eavesdropper from discovering that terminal 100 is in com-
`munication with terminal 1 10. For example, ifterminal 1 00 is
`a user and terminal 110 hosts a web site, terminal 100’s user
`may not want anyone in the intervening networks to know
`what web sites he is “visiting.” Anonymity would thus be an
`issue, for example, for companies that want to keep their
`market research interests private and thus would prefer to
`prevent outsiders from knowing which web-sites or other
`Internet resources they are “visiting.” These two security
`issues may be called data security and anonymity, respec-
`tively.
`Data security is usually tackled using some form of data
`encryption. An encryption key 48 is known at both the origi-
`nating and terminating terminals 100 and 110. The keys may
`be private and public at the originating and destination termi-
`nals 100 and 110, respectively or they may be symmetrical
`keys (the same key is used by both parties to encrypt and
`decrypt). Many encryption methods are known and usable in
`this context.
`
`To hide trafiic from a local administrator or ISP, a user can
`employ a local proxy server in communicating over an
`encrypted channel with an outside proxy such that the local
`administrator or ISP only sees the encrypted trafiic. Proxy
`servers prevent destination servers from determining the
`identities of the originating clients. This system employs an
`intermediate server interposed between client and destination
`server. The destination server sees only the Internet Protocol
`(IP) address ofthe proxy server and not the originating client.
`The target server only sees the address of the outside proxy.
`This scheme relies on a trusted outside proxy server. Also,
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`proxy schemes are vulnerable to trafiic analysis methods of
`determining identities of transmitters and receivers. Another
`important limitation of proxy servers is that the server knows
`the identities of both calling and called parties. In many
`instances, an originating terminal, such as terminal A, would
`prefer to keep its identity concealed from the proxy, for
`example, ifthe proxy server is provided by an Internet service
`provider (ISP).
`To defeat traffic analysis, a scheme called Chaum’s mixes
`employs a proxy server that transmits and receives fixed
`length messages, including dummy messages. Multiple origi-
`nating terminals are connected through a mix (a server) to
`multiple target servers. It is difficult to tell which of the
`originating terminals are communicating to which ofthe con-
`nected target servers, and the dummy messages confuse
`eavesdroppers’ efforts to detect communicating pairs by ana-
`lyzing traffic. A drawback is that there is a risk that the mix
`server could be compromised. One way to deal with this risk
`is to spread the trust among multiple mixes. If one mix is
`compromised, the identities of the originating and target ter-
`minals may remain concealed. This strategy requires a num-
`ber of alternative mixes so that the intermediate servers inter-
`
`posed between the originating and target terminals are not
`determinable except by compromising more than one mix.
`The strategy wraps the message with multiple layers of
`encrypted addresses. The first mix in a sequence can decrypt
`only the outer layer of the message to reveal the next desti-
`nation mix in sequence. The second mix can decrypt the
`message to reveal the next mix and so on. The target server
`receives the message and, optionally, a multi-layer encrypted
`payload containing return information to send data back in
`the same fashion. The only way to defeat such a mix scheme
`is to collude among mixes. If the packets are all fixed-length
`and intermixed with dummy packets, there is no way to do
`any kind of trafiic analysis.
`Still another anonymity technique, called ‘crowds,’ pro-
`tects the identity of the originating terminal from the inter-
`mediate proxies by providing that originating terminals
`belong to groups ofproxies called crowds. The crowd proxies
`are interposed between originating and target terminals. Each
`proxy through which the message is sent is randomly chosen
`by an up stream proxy. Each intermediate proxy can send the
`message either to another randomly chosen proxy in the
`“crowd” or to the destination. Thus, even crowd members
`carmot determine if a preceding proxy is the originator of the
`message or if it was simply passed from another proxy.
`ZKS (Zero-Knowledge Systems) Anonymous IP Protocol
`allows users to select up to any of five different pseudonyms,
`while desktop software encrypts outgoing trafiic and wraps it
`in User Datagrarn Protocol (UDP) packets. The first server in
`a 2+-hop system gets the UDP packets, strips off one layer of
`encryption to add another, then sends the traffic to the next
`server, which strips off yet another layer of encryption and
`adds a new one. The user is permitted to control the number of
`hops. At the final server, trafiic is decrypted with an untrace-
`able IP address. The technique is called onion-routing. This
`method can be defeated using trafiic analysis. For a simple
`example, bursts of packets from a user during low-duty peri-
`ods can reveal the identities of sender and receiver.
`
`Firewalls attempt to protect LANs from unauthorized
`access and hostile exploitation or damage to computers con-
`nected to the LAN. Firewalls provide a server through which
`all access to the LAN must pass. Firewalls are centralized
`systems that require administrative overhead to maintain.
`They can be compromised by virtual-machine applications
`(“applets”). They instill a false sense of security that leads to
`security breaches for example by users sending sensitive
`MANGROVE 1001
`
`MANGROVE 1001
`
`

`
`US 7,490,151 B2
`
`3
`information to servers outside the firewall or encouraging use
`of modems to sidestep the firewall security. Firewalls are not
`useful for distributed systems such as business travelers,
`extranets, small teams, etc.
`
`SUMMARY OF THE INVENTION
`
`A secure mechanism for communicating over the intemet,
`including a protocol referred to as the TunneledAgile Routing
`Protocol (TARP), uses a unique two-layer encryption format
`and special TARP routers. TARP routers are similar in func-
`tion to regular IP routers. Each TARP router has one or more
`IP addresses and uses normal IP protocol to send IP packet
`messages
`(“packets” or “datagrams”). The IP packets
`exchanged between TARP terminals via TARP routers are
`actually encrypted packets whose true destination address is
`concealed except to TARP routers and servers. The normal or
`“clear” or “outside” IP header attached to TARP IP packets
`contains only the address of a next hop router or destination
`server. That is, instead of indicating a final destination in the
`destination field of the IP header, the TARP packet’s IP
`header always points to a next-hop in a series of TARP router
`hops, or to the final destination. This means there is no overt
`indication from an intercepted TARP packet of the true des-
`tination of the TARP packet since the destination could
`always be next-hop TARP router as well as the final destina-
`tion.
`
`Each TARP packet’s true destination is concealed behind a
`layer of encryption generated using a link key. The link key is
`the encryption key used for encrypted communication
`between the hops intervening between an originating TARP
`terminal and a destination TARP terminal. Each TARP router
`
`can remove the outer layer of encryption to reveal the desti-
`nation router for each TARP packet. To identify the link key
`needed to decrypt the outer layer of encryption of a TARP
`packet, a receiving TARP or routing terminal may identify the
`transmitting terminal by the sender/receiver IP numbers in the
`cleartext IP header.
`
`Once the outer layer of encryption is removed, the TARP
`router determines the final destination. Each TARP packet
`140 undergoes a minimum number of hops to help foil trafiic
`analysis. The hops may be chosen at random or by a fixed
`value. As a result, each TARP packet may make random trips
`among a number of geographically disparate routers before
`reaching its destination. Each trip is highly likely to be dif-
`ferent for each packet composing a given message because
`each trip is independently randomly determined. This feature
`is called agile routing. The fact that different packets take
`different routes provides distinct advantages by m

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket