throbber
USOO7418504B2
`
`(12) United States Patent
`(10) Patent No.:
`US 7,418,504 B2
`
`Larson et al.
`(45) Date of Patent:
`Aug. 26, 2008
`
`(54) AGILE NETWORK PROTOCOL FOR SECURE
`COMMUNICATIONS USING SECURE
`DOMAIN NAMES
`
`(58) Field of Classification Search ................. 709/226,
`709/221; 713/201
`See application file for complete search history.
`
`(75)
`
`Inventors: Victor Larson, Fairfax, VA (US);
`Robert Dunham Short, III, Leesburg,
`VA (US); Edmund Colby Munger,
`Crownsville, MD (US); Michael
`Williamson, South Riding, VA (US)
`
`(73) Assignee: VirnetX, Inc., Scotts Valley, CA (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 646 days.
`
`(21) Appl.No.: 10/714,849
`
`(22) Filed:
`
`Nov. 18, 2003
`
`(65)
`
`Prior Publication Data
`
`US 2004/0098485 A1
`
`May 20, 2004
`
`Related US. Application Data
`
`(63) Continuation of application No. 09/558,210, filed on
`Apr. 26, 2000, now abandoned, which is a continua—
`tion-in-part of application No. 09/504,783, filed on
`Feb. 15, 2000, now Pat. No. 6,502,135, which is a
`continuation-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) US. Cl.
`...................................................... 709/226
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`4,933,846 A
`4,988,990 A
`5,164,988 A
`5,276,735 A
`5,311,593 A
`
`6/1990 Humphrey et al.
`1/1991 Warrior
`11/1992 Matyas et 31.
`1/1994 Boebert et 31.
`5/1994 Carmi
`
`(Continued)
`FOREIGN PATENT DOCUMENTS
`
`DE
`
`199 24 575
`
`12/1999
`
`(Continued)
`OTHER PUBLICATIONS
`
`Laurie Wells (Lancasterbibelmail MSN Com); “Subject: Security
`Icon” Usenet Newsgroup, Oct. 19, 1998, XP002200606.
`
`(Continued)
`
`Primary ExamineriKrisna Lim
`(74) Attorney, Agent, or FirmiMcDermott Will & Emery,
`LLP
`
`(57)
`
`ABSTRACT
`
`A secure domain name service for a computer network is
`disclosed that includes a portal connected to a computer net-
`work, such as the Internet, and a domain name database
`connected to the computer network through the portal. The
`portal authenticates a query for a secure computer network
`address, and the domain name database stores secure com-
`puter network addresses for the computer network. Each
`secure computer network address is based on a non-standard
`top-level domain name, such as .scom,
`.sorg,
`.snet,
`.snet,
`.sedu, .smil and .sint.
`
`60 Claims, 40 Drawing Sheets
`
`ORIGINATTNG
`TERMINAL
`
`
`fl
`
`
`IP PACKET
`
`
`
`1P ROUTER
`
`
`
`
`
`1F ROUTER
`IP ROUTER
`
`
`fl
`IP ROUTER
`IP ROUTER
`
`
`
`
`
`w ROUTER
`
`
`
`”lacuna
`A
`1P ROUTER
`|p ROUTER _
`
`
`g
`_2_9_
`25
`
`
`
`IP ROUTER
`
`IP ROUTER
`26
`fl
`48 ENCRYFTION KEY
`
`
`DESTINATION
`TERMINAL
`
`
`
`m
`
`MICROSOFT 1001
`
`1
`
`MICROSOFT 1001
`
`

`

`US 7,418,504 B2
`
`Page 2
`
`US. PATENT DOCUMENTS
`
`>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
`
`5,329,521
`5,341,426
`5,367,643
`5,559,883
`5,561,669
`5,588,060
`5,625,626
`5,654,695
`5,682,480
`5,689,566
`5,740,375
`5,774,660
`5,787,172
`5,790,548
`5,796,942
`5,805,801
`5,842,040
`5,845,091
`5,867,650
`5,870,610
`5,878,231
`5,892,903
`5,898,830
`5,905,859
`5,918,019
`5,996,016
`6,006,259
`6,006,272
`6,016,318
`6,016,512
`6,041,342
`6,052,788
`6,055,574
`6,061,736
`6,079,020
`6,092,200
`6,101,182
`6,119,171
`6,119,234
`6,147,976
`6,157,957
`6,158,011
`6,168,409
`6,175,867
`6,178,409
`6,178,505
`6,179,102
`6,222,842
`6,226,751
`6,233,618
`6,243,360
`6,243,749
`6,243,754
`6,256,671
`6,263,445
`6,286,047
`6,301,223
`6,308,274
`6,311,207
`6,324,161
`6,330,562
`6,332,158
`6,353,614
`6,425,003
`6,430,155
`6,430,610
`6,487,598
`6,502,135
`6,505,232
`6,510,154
`6,549,516
`
`7/1994
`8/1994
`11/1994
`9/1996
`10/1996
`12/1996
`4/1997
`8/1997
`10/1997
`11/1997
`4/1998
`6/1998
`7/1998
`8/1998
`8/1998
`9/1998
`11/1998
`12/1998
`2/1999
`2/1999
`3/1999
`4/1999
`4/1999
`5/1999
`6/1999
`11/1999
`12/1999
`12/1999
`1/2000
`1/2000
`3/2000
`4/2000
`4/2000
`5/2000
`6/2000
`7/2000
`8/2000
`9/2000
`9/2000
`11/2000
`12/2000
`12/2000
`1/2001
`1/2001
`1/2001
`1/2001
`1/2001
`4/2001
`5/2001
`5/2001
`6/2001
`6/2001
`6/2001
`7/2001
`7/2001
`9/2001
`10/2001
`10/2001
`10/2001
`11/2001
`12/2001
`12/2001
`3/2002
`7/2002
`8/2002
`8/2002
`11/2002
`12/2002
`1/2003
`1/2003
`4/2003
`
`Walsh ct al.
`Barney et a1.
`Chang et a1.
`Williams
`Lenney et al.
`Aziz
`Umekita
`Olnowich et a1.
`Nakagawa
`Nguyen
`Dunne et a1.
`Brendel et al.
`Arnold
`Sistanizadeh et a1.
`Esbensen
`Holloway et a1.
`Hughes et a1.
`Dunne et a1.
`Osterman
`Beyda et a1.
`Baehr et a1.
`Klaus
`Wesinger, Jr. et a1.
`Holloway et a1.
`Valencia
`Thalheimer et a1.
`Adelman et a1.
`Aravamudan et a1.
`Tomoike
`Huitema
`Yamaguchi
`Wesinger, Jr. et a1.
`Smorodinsky et a1.
`Rochberger et a1.
`Liu
`Muniyappa et a1.
`Sistanizadeh et a1.
`Alkhatib
`Aziz et a1.
`Shand et a1.
`Berthaud
`Chen et a1.
`Fare
`Taghadoss
`Weber et a1.
`Schneider et a1.
`Weber et a1.
`Sasyan et a1.
`Arrow et a1.
`Shannon
`Basilico
`Sitaraman et a1.
`Guerin et a1.
`Strentzsch et a1.
`Blumenau
`Ramanathan et a1.
`Hrastar et al.
`Swift
`Mighdoll et a1.
`Kirch
`Boden et a1.
`Risley et a1.
`Borella et al.
`Herzog et al.
`Davie et a1.
`Carter
`Valencia
`Munger et al.
`Mighdoll et a1.
`Mayes et a1.
`Albert et a1.
`
`6,557,037 B1
`6,571,296 B1
`6,571,338 B1
`6,581,166 B1
`6,606,708 B1
`6,618,761 B2
`6,671,702 B2
`6,687,551 B2
`6,714,970 B1
`6,717,949 B1
`6,751,738 B2
`6,760,766 B1
`6,826,616 B2
`6,839,759 B2
`7,010,604 B1
`7,133,930 B2
`7,188,180 B2
`7,197,563 B2
`2002/0004898 A1
`2003/0196122 A1
`2005/0055306 A1
`2006/0059337 A1
`
`)rovino ...................... 709/227
`4/2003
`)illon
`5/2003
`5/2003 Shaio et al.
`6/2003
`Iirst et a1.
`8/2003
`)evine et a1.
`9/2003 VIunger et a1.
`12/2003
`{ruglikov et a1.
`2/2004 Steindl
`3/2004
`:iveash et a1.
`4/2004 Soden et a1.
`6/2004 Wesinger, Jr. et a1.
`7/2004 Sahlqvist
`11/2004
`sarson et a1.
`1/2005
`sarson et a1.
`3/2006 VIunger et a1.
`11/2006 VIunger et a1.
`3/2007
`sarson et a1.
`3/2007 Sheymov et a1.
`1/2002
`)roge
`10/2003 Wesinger, Jr. et a1.
`3/2005 VIiller et a1.
`3/2006
`)olyhonen et a1.
`
`
`
`FOREIGN PATEI\T DOCUMENTS
`
`DE
`EP
`EP
`EP
`EP
`EP
`EP
`EP
`GB
`GB
`GB
`WO
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`
`199 24 575 A1
`0 814 589
`0 814 589 A
`0 838 930
`0 838 930 A
`0 838 930 A2
`836306 A1
`0 858189
`2317 792
`2317792 A
`2 334181 A
`9827783 A
`WO 98/27783
`W0 98 55930
`W0 98 59470
`W0 99 38081
`W0 99 48303
`WO 00/17775
`WO 00/70458
`W0 01 50688
`
`12/1999
`12/1997
`12/1997
`4/1998
`4/1998
`4/1998
`4/1998
`8/1998
`4/1998
`4/1998
`8/1999
`6/1998
`6/1998
`12/1998
`12/1998
`7/1999
`9/1999
`3/2000
`11/2000
`7/2001
`
`OTHER PUBLICATIONS
`
`Davila J et a1, “Implementatin of Virtual Private Networks at the
`Transport Layer”, Information 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://wwwspringerlink.
`com/content/4uac0tb0heccma89/fulltext.pdf>(Abstract).
`Donald E. Eastlake, III, “Domain Name System Security Exten-
`sions”, Internet Draft, Apr. 1998.
`P. Srisuresh, et a1., “DNS Extensions to Network Address Transla-
`tors”, Internet Draft, Jul. 1998.
`DB. Chapman, et a1., “Building Internet Firewalls, chapters 8 and 10
`(parts)”, pp. 278-296 and pp. 351-375.
`Search Report (dated Jun. 18, 2002), International Application No.
`PCT/USOl/13260.
`Search Report (dated Jun. 28, 2002), International Application No.
`PCT/USOl/13261.
`Donald E. Eastlake, “Domain Name System Security Extensions”,
`DNS Security Working Group. Apr. 1998, 51 pages.
`D. B. Chapman et a1., “Building Internet Firewalls”, Nov. 1995, pp.
`278-297 and pp. 351-375.
`P. Srisuresh et a1., “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”, 2nd Edition,
`Chapter 13, IP Security, Jun. 8, 1998, pp. 399-440.
`
`2
`
`

`

`US 7,418,504 B2
`
`Page 3
`
`W. Stallings, “New Cryptography and Network Security Book”, Jun.
`8, 1998, 3 pages.
`Fasbender,Kesdogan, and Kubitz: “Variable and Scalable Security:
`Protection of Location Information in Mobile IP”, IEEE publication,
`1996, pp. 963-967.
`Linux FreeS/WAN Index File, printed from http://liberty.freeswan.
`org/freeswan, trees/freeswan-1.3/doc/ on Feb. 21, 2002, 3 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.
`Glossary for the Linux FreeS/WAN project. printed from http://
`liberty.freeswan.org/freeswan,
`trees/freeswan-l .3/doc/glossary.
`htrnl on Feb. 21, 2002,25 pages.
`Alan 0. Frier et al., “The SSL Protocol Version 3.0”, Nov. 18, 1996,
`printed from http://www.netscape.com/eng/ssl3/draft302.b<t on Feb.
`4,2002, 56 pages.
`Search Report (dated Aug. 20, 2002), International Application No.
`PCT/US01/04340.
`Search Report (dated Aug. 23, 2002), International Application No.
`PCT/US01/13260.
`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.
`James E. Bellaire, “New Statement of RulesiNaming Internet
`Domains”, Internet Newsgroup, Jul. 30, 1995, 1 page.
`D. Clark, “US Calls for Private Domain-Name System”, Computer,
`IEEE Computer Society, Aug. 1, 1998, pp. 22-25.
`August Bequai, “Balancing Legal Concerns Over Crime and Security
`in Cyberspace”, Computer & Security, vol. 17, No. 4, 1998, pp.
`293 -298.
`Rich Winkel, “CAQ: Networkinig With Spooks: The NET & The
`Control Of Information”, Internet Newsgroup, Jun. 21, 1997, 4
`pages.
`
`Search Report (dated Oct. 7, 2002), International Application No.
`PCT/US01/13261.
`
`F. Halsall, “Data Communications, Computer Networks And Open
`Systems”, Chapter 4, Protocol Basics, 1996, pp. 198-203.
`Reiter, Michael K. and Rubin, Aviel D. (AT&T LabsiResearch),
`“Crowds: Anonymity for Web Transmissoins”, pp. 1-23.
`Dolev, Shlomi and Ostrovsky, Rafil, “Efficient Anonymous Multicast
`and Reception”(Extended Abstract), 16 pages.
`Rubin, Aviel D., Greer, Daniel, and Ranum, Marcus J. (Wiley Com-
`puter Publishing), “Web Security Sourcebook”, pp. 82-94.
`Fasbender, Kesdogan, and Kubitz: “Variable and Scalable Security”
`Protection of Location Information in Mobile IP, IEEE publication,
`1996, pp. 963-967.
`Eastlake, D. E., “Domain Name System Security Extensions”,
`Internet Draft, Apr. 1998, XP002199931, Sections 1, 2.3 and 2.4.
`RFC 2401 (dated Nov. 1998) Security Architecture for the Internet
`Protocol (RTP).
`RFC 2543-SIP (dated Mar. 1999): Session Initiation Protocol (SIP or
`SIPS).
`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.
`
`Shankur, 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.
`
`W. Stallings, “Crytography and Network Security”, 2nd, Edition,
`Chapter 13, IP Security, Jun. 8, 1998, pp. 399-440.
`
`3
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 1 0f 40
`
`US 7,418,504 B2
`
`
`
`ORIGINATING
`TERMINAL
`100
`
`
`
`
`
`IP PACKET
`IP ROUTER
`31
`
`IP ROUTER
`
`
`
`1;
`
`
`
`
`IP ROUTER
`E
`
`IP ROUTER
`
`fl
`
`'P ROUTER
`19—
`
`INTEIIIIET
`|p ROUTER —
`fi
`
`
`
`IP ROUTER
`21
`
`IPROUTER
`&
`
`|P ROUTER
`E
`
`IP ROUTER
`.32
`
`IP ROUTER
`
`&
`
`
`
`
`
`
`
`
`
`
`
` DESTINATION
`48 ENCRYPTION KEY
`TERMINAL
`
`m
`
`FIG. 1
`
`4
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 2 0f 40
`
`US 7,418,504 B2
`
` TARP
`
`TERMINAL
`
`
`m
`
`140
`
`
`TARP PACKET
`
`lP ROUTER
`m
`
`
`
`
`
`
`TARP
`
`
`146
`ROUTER
`
`
`t“m ARP
`LINK KEY
`L22
`
`
`
`
`
`
`
`
`TARP
`ROUTER
`'PR$3%TER
`
`
`fl
`ROUTER
`@
`
`
`INTE§7NET
`
`
`
`TARP
`IP ROUTER
`—
`
`m
`ROUTER
`
`
`
`ROUTER
`121
`
`
`
`
`TERMINAL
`
`m
`
`FIG. 2
`
`5
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 3 0f 40
`
`US 7,418,504 B2
`
`2073
`
`
`207b
`
`207c
`
`207d
`
`' ° '
`
`320
`AVE WINDOW
`.2-_. ".13 B IE". .':'.I \ 330 SESSION-KEY-ENCRYPTED
`PAYLOAD DATA
`
`
`
`
`
`
`\ 340 TARP PACKET WITH
`ENCRYPTED PAYLOADS
`
`\350 LINK-KEY-ENCRYPTED
`TARP PACKETS
`
`'3’"-
`
`‘\360 IP PACKETS WI
`ENCRYPTED TARP
`PACKETS AS PAYLOAD
`
`
`
`TARP
`DESTINATION
`
`6
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 4 0f 40
`
`US 7,418,504 B2
`
`207C
`
`207d
`
`0 o o
`
`/300 DATA STREAM
`
`207b
`207a
`A;
`fli—fl—Ifl_-_- ‘ ° '
`
`
`
`DUMMY
`
`
`
`BLOCKS
`OR DATA
`MAY BE
`
`
`ADDED
`
`- 3' \523 ENCRYPTED BLOCK
`DIVIDED INTO PAYLOADS
`INTERLEAVED
`
`517
`
` \523 ENCRYPTED BLOCK
`
`DIVIDED INTO PAYLOADS
`INTERLEAVED
`
` \340 TARP PACKETS WITH
`ENCRYPTED PAYLOADS
`
`
`
`‘
`
`\SZOBLOCK-ENCRYPTED
`(SESSION-KEY) PAYLOAD
`SEQUENCE
`33 \522 ENCRYPTED BLOCK
`DIVIDED INTO PAYLOADS
`
`r
`
` '
`
`7
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 5 0f 40
`
`US 7,418,504 B2
`
`TARP TRANSCEIVER
`
`fl NETWORK (IP) LAYER
`
`m
`
`III_
`
`ONE ALTERNATIVE TO
`CONNNE
`TARP PROCESSING
`WITH O/S |P
`PROCESSOR
`
`OTHERALTERNATIVE
`TO COMBINE
`TARP PROCESSING
`WITH D.L. PROCESSOR
`(e.g., BURN INTO BOARD
`PROM)
`
`TARP LAYER
`fl
`
`DATA LINK LAYER
`Q
`
`FIG. 4
`
`450
`DATALINK
`PROTOCOL WRAPPER
`
`8
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 6 0f 40
`
`US 7,418,504 B2
`
`SO
`
`S7.
`
`33
`
`S4
`
`
`BACKGROUND LOOP - DECOY
`GENERATION
`
`
`
`AUTHENTICATE TARP
`PACKET
`
`OUTER LAYER DECRYPTION
`0F TARP PACKET USING
`LINK KEY
`
`
`
`
`
`CHECK FOR DECOY AND
`INCREMENT PERISHABLE
`
`DECOY COUNTER AS
`
`APPROPRIATE
`
`DUMP DECOY
`
`
`
`
`
`
`TRANSMIT DECOY?
`
`YES
`
`35
`
`87
`
`NO
`
`DECREMENT
`TTL m > 0?
`
`39
`
`YES
`
`DETERMINE DESTINATION
`TARP ADDRESS AND STORE
`LINK KEY AND IF ADDRESS
`
`GENERATE NEXT-HOP TARP
`ADDRESS AND STORE LINK
`KEY AND IF ADDRESS
`
`38
`
`GENERATE NEXT-HOP TARP
`ADDRESS AND STORE LINK
`KEY AND IP ADDRESS
`
`GENERATE lP HEADER
`AND TRANSMIT
`
`FIG. 5
`
`310
`
`S11
`
`9
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 7 0f 40
`
`US 7,418,504 B2
`
`BACKGROUND LOOP - DECOY
`GENERATION
`
`820
`
`GROUP RECEIVED IP PACKETS
`INTO INTERLEAVE WINDOW
`
`821
`
`DETERMINE DESTINATION TARP
`ADDRESS, INITIALIZE TTL, STORE
`IN TARP HEADER
`
`322
`
`RECORD WINDOW SEQ. NOS. AND
`INTERLEAVE SEQ. NOS. IN TARP
`HEADERS
`
`823
`
`
`
`CHOOSE FIRST HOP TARP
`ROUTER, LOOK UP IPADDRESS
`AND STORE IN CLEAR IP HEADER,
`OUTER LAYER ENCRYPT
`
`$24
`
`INSTALL CLEAR IP HEADER AND
`TRANSMIT
`
`$25
`
`FIG. 6
`
`10
`
`10
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 8 0f 40
`
`US 7,418,504 B2
`
`BACKGROUND LOOP - DECOY
`GENERATION
`
`S40
`
`AUTHENTICATE TARP PACKET
`RECEIVED
`
`S42
`
`HEADERS '
`S44
`$50 THROW AWAY DECOY OR KEEP
`S45
`
`DIVIDE BLOCK INTO PACKETS
`USING WINDOW SEQUENCE
`DATA, ADD CLEAR IP HEADERS
`
`GENERATED FROM TARP
`
`S49
`
`HAND COMPLETED IP PACKETS
`TO IP LAYER PROCESS
`
`DECRYPT OUTER LAYER
`ENCRYPTION WITH LINK KEY
`
`843
`
`INCREMENT PERISHABLE
`COUNTER IF DECOY
`
`IN RESPONSE TO ALGORITHM
`
`CACHE TARP PACKETS UNTIL
`WINDOW IS ASSEMBLED
`
`S46
`
`S47
`
`DEINTERLEAVE PACKETS
`FORMING WINDOW
`
`DECRYPT BLOCK
`
`S48
`
`FIG. 7
`
`11
`
`11
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 9 0f 40
`
`US 7,418,504 B2
`
`SSYN
`
`SSYN ACK
`
`SSYN ACK
`
`TECEEIML
`PAgzfiE-r
`PACKET
`ACK PACKET
`801
`
`822
`
`823
`
`
` TARP
`
`ROUTER
`w.
`
`
`
`
`824
`825
`SECURE SESSION
`SECURE SESSION
`INITIATION
`INITIATION ACK
`
`FIG. 8
`
`12
`
`12
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 10 0f 40
`
`US 7,418,504 B2
`
`CLIENT 1 A TARP
`
`ROUTER
`
`TRANSMIT TABLE
`RECEIVE TABLE
`921
`924
`—\.____ ___\_—
`
`131.218.204.98
`131.218.204.221
`131.218.204.139
`131.218.204.12
`
`0
`-
`.
`0
`
`131.218.204.65
`131.218.204.97
`131.218.204.186
`131.218.204.55
`
`131.218.204.98
`131.218.204.221
`131.218.204.139
`131.218.204.12
`
`I
`-
`.
`.
`
`131.218.204.65
`131.218.204.97
`131.218.204.186
`131.218.204.55
`
`RECEIVE TABLE
`TRANSMIT TABLE
`922
`923
`____A__ #—
`
`131.218.204.161
`131.218.204.66
`131.218.204.201
`131.218.204.119
`
`-
`-
`0
`.
`
`131.218.204.89
`131.218.204.212
`131.218.204.127
`131.218.204.49
`
`131.218.204.161
`131.218.204.66
`131.218.204.201
`131.218.204.119
`
`0
`0
`0
`0
`
`131.218.204.89
`131.218.204.212
`131.218.204.127
`131.218.204.49
`
`13
`
`13
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 11 0140
`
`US 7,418,504 B2
`
`CUENT
`1001
`
`
`
` ISPA
`TARP
`
`ROUTER
`1021
`
`
`
`
`
`
` ISPB
`TARP
`
`ROUTER
`
`
`
`10H
`
`1012
`
` ISPC
`
`TARP
`
`ROUTER
`
`
`
`1013
`
`FIG. 10
`
`14
`
`14
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 12 0f 40
`
`US 7,418,504 B2
`
`8:
`
`8:
`
`”Gem:mzémEzmmzm
`
`$55:mzémEzmmzm
`
`2
`
`E95:555n__8”mmmmoe‘2,:9meS”mmmmoex
`>>_._0%
`
`2285a”mmmmanzn:9meE”mmmmoe‘n:6138
`3”ad:
`
`ono<o._><n_
`
`mg:mg:__g.gag:
`
`<3:<5:mm5%8”mmmmonz
`
`
`
`>>_._.95
`
`llllvmgfixméi
`
`
`
`NEEssa
`
`<8:2”Egg0:$58
`
`
`
`mmwn2new:2235g2“£02n:.53
`
`awn:«£92n:.53
`08:Mwmm$32285a
`so:2”8552n:mass
`
`
`
`$2”:555n:
`
`
`
`2:a:£292;
`
`15
`
`15
`
`
`
`

`

`U.S. Patent
`
`Aug
`
`. 26, 2008
`
`Sheet 13 of 40
`
`9US7
`
`418,504 B2
`
`SNF
`
`33
`
`Em:
`
`zo:<o_._&<
`
`5.vaXmmmfi
`
`:3
`
`meowEo0.2moI>>Io3:01;:<3<morn:m8:01;
`
`meow
`
`EEE5%?8om8amE x83x83
`
`<3.0_u_
`
`III
`
`HEEEEgg
`
`
`
`Inna.afifi
`
`mg83
`
`ES
`
`zo:<o:&<
`
`16
`
`16
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 14 0f 40
`
`US 7,418,504 B2
`
`MODE
`OR
`
`1. PROMISCUOUS
`
`
`
`
`
`
`2. PROMISCUOUS
`PER VPN
`
`
`
`3. HARDWARE
`HOPPING
`
`HARDWARE
`
`IF ADDRESSES
`
`DISCRIMINATOR FIELD
`
`SAME FOR ALL NODES
`OR wngJELY
`
`CAN BE VARIED
`IN SYNC
`
`CAN BE VARIED
`IN SYNC
`
`FIXED FOR EACH VPN
`
`
`
`CAN BE VARIED
`IN SYNC
`
`CAN BE VARIED
`IN SYNC
`
`CAN BE VARIED
`IN SYNC
`
`FIG. 128
`
`CAN BE VARIED
`IN SYNC
`
`CAN BE VARIED
`IN SYNC
`
`
`
`
`
`
`
`
`
`
`
`17
`
`17
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 15 of 40
`
`US 7,418,504 B2
`
`32‘
`
`mpzmjo
`
`momF
`
`N02
`
`52
`
`<Emso
`
`55%
`
`360%mm;
`
`:2
`
`920%
`
`BEE
`
`oz
`
`02%$2528
`
`.o..<02¢
`
`OE
`
`
`
`m_‘.OE
`
`HERE
`
`32
`
`
`
`mmmmog5128n:
`
`
`
`wmmmonz.53n:
`
`
`
`m3<>oz>m
`
`2958use:
`
`was,oz;
`
`2818ES:
`
`$52:
`
`QmEEozm
`
`o<o._><n_
`
`mom_‘
`
`18
`
`82
`
`18
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 16 0f 40
`
`US 7,418,504 B2
`
`CURRENT IP PAIR ‘x-
`
`ckpt_o ~¢
`ckpt_n ‘
`ckpt_r
`
`TRANSMITTER
`
`IP PAIR 1
`
`IP PAIR 2
`O
`0
`0
`
`WINDOW
`
`IP PAIR W
`ckpt_o
`ckpt_n
`ckpt_r <
`RECEIVER
`
`SENDER'S ISP
`
`IP PAIR 1
`
`IP PA|R2
`:
`
`CURRENT IP PAIR
`
`ckpt_
`ckpt_n
`
`TRANSMITTER
`
`RECIPIENT'S ISP
`
`
`
`KEPT IN SYNC FOR SENDER T0 RECIPIENT SYNCHRONIZER ‘ ----------------------- >
`
`KEPT IN SYNC FOR RECIPIENT TO SENDER SYNCHRONIZER <——>
`
`FIG. 14
`
`19
`
`19
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 17 of 40
`
`US 7,418,504 B2
`
`JW
`
`* WHEN SYNC_REQ ARRIVES
`WITH INCOMING HEADER =
`
`[w
`
`RECEIVER'S ckpt_n:
`°UPDATE WINDOW
`'GENERATE NEW
`CHECKPOINT IP PAIR
`ckan IN RECEIVER
`'GENERATE NEW
`CHECKPOINT IP PAIR
`ckpt_r IN TRANSMITTER
`°TRANSMIT SYNC_ACK
`USING NEW CHECKPOINT
`IP PAIR ckpt_r
`
`@
`
`@ WHEN SYNCHRONIZATION
`BEGINS TRANSMIT (RETRANSMIT
`PERIODICALLY UNTIL ACKed)
`SYNC_REQ USING NEW
`TRANSMITTER CHECKPOINT IP
`PAIR ckpt_n AND GENERATE
`NEW RECEIVER RESPONSE
`
`CHECKPOINT ckpt_r
`
`# WHEN SYNC_ACK
`ARRIVES WITH INCOMING
`HEADER = ckpt_r:
`GENERATE NEW
`CHECKPOINT IP PAIR
`ckpt_n IN TRANSMITTER
`
`SYNC_REQ
`
`FIG. 15
`
`20
`
`20
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 18 0f 40
`
`US 7,418,504 B2
`
`
`
`21
`
`21
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 19 0f 40
`
`US 7,418,504 B2
`
`000 —
`
`VIII/Illllll
`
`O
`
`I INACTIVE
`a ACTIVE
`
`E USED
`
`
`
`
`
`’IIIIIIIIIIIA
`VIII/IIIIIIA
`'Illlllllllll.
`
`
`VII/[IIIIIIA
`VII/IIIIIIIA
`
`
`O
`
`
`'llllllllll‘
`
`
`VIII/[Illllfl
`VIII/IIIIIIIA
`
`
`VlllllllllllA
`
`WINDOW_S|ZE
`
`WINDOW_S|ZE
`
`FIG. 17
`
`22
`
`22
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 20 0f 40
`
`US 7,418,504 B2
`
`000
`
`WINDOW_S|ZE
`
`WINDOW_S|ZE
`
`_ '
`
`IIIIIIIIIIA
`
`VIII/IIIIIIA
`’IIIIIIIIIIIA
`VIII/IIIIIIA
`VII/IIIIIIIA
`Will/[Ill]
`
`C
`
`23
`
`23
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 21 0f 40
`
`US 7,418,504 B2
`
`VIII/[IIIIIA
`C
`
`
`
`I |NACT|VE
`a ACTIVE
`fl USED
`
`OoO
`
`000
`
`WINDOW_S|ZE
`
`WINDOW_S|ZE
`
`
`
`VIII/”0m
`VIII/III,”
`VIII/III,”
`
`O
`
`VII/[IIIIIIA
`VII/IIIIIIIA
`WII'IIIIIIIA
`VII/llllllll.
`mill/”Ill
`
`
`
`VIII/1111114
`
`FIG. 19
`
`24
`
`24
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 22 0f 40
`
`US 7,418,504 B2
`
`%mmhamzoo
`
`$8
`
`$501
`
`EESEOQ
`
`moom
`
`E501
`
`25
`
`25
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 23 0f 40
`
`US 7,418,504 B2
`
`
`
`
`AD TABLE
`
`|P1
`|P3
`
`|P2
`an4
`
`
`
`
`AE TABLE
`
`AF TABLE
`
`BD TABLE
`
`BE TABLE
`
`BF TABLE
`
`LINK DOWN
`
`2101
`
`2102
`
`2103
`
`2104
`
`2105
`
`2106
`
`2107
`
`2108
`
`2109
`
`
`
`
`
`
`
`
`
`
`2100/
`
`CD TABLE
`
`CE TABLE
`
`CF TABLE
`
`FIG. 21
`
`26
`
`26
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 24 0f 40
`
`US 7,418,504 B2
`
`
`
`
`MEASURE
`QUALITY OF
`TRANSMISSION
`PATH X
`
`
`
`
`
`
`MORE THAN
`
`ONE TRANSMITTER
`TURNED ON?
`
`
`
`
`PATH X
`
`
`
`QUALITY < THRESHOLD?
`
`
`N0
`SET WEIGHT
`
`TO MIN. VALUE
`
`
`
`
`
`PATH X
` DECREASE WEIGHT
`
`WEIGHT LESS THAN
`FOR PATH X
`STEADY STATE
` 2208
`
`VALUE?
`
`
`
`
`
`INCREASE
`
`WEIGHT FOR PATH X
`
`TOWARD STEADY
`STATE VALUE
`
`
`
`ADJUST WEIGHTS
`FOR REMAINING
`PATHS SO THAT
`WEIGHTS EQUAL ONE
`
`FIG. 22A
`
`27
`
`27
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 25 0f 40
`
`US 7,418,504 B2
`
`(EVENT) TRANSMITTER
`FOR PATH x
`TURNS OFF
`
`
`
`
`2210
`
`
`
`AT LEAST
`ONE TRANSMITTER
`
`TURNED ON?
`
`
`
`DROP ALL PACKETS
`UNTIL ATRANSMITTER
`TURNS ON
`
`
`
`
`SET WEIGHT
`TO ZERO
`
`
`
`ADJUST WEIGHTS
`FOR REMAINING PATHS
`
`SO THAT WEIGHTS
`EQUAL ONE
`
`FIG. 22B
`
`28
`
`28
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 26 0f 40
`
`US 7,418,504 B2
`
`2302
`
`
`PACKET
`
`TRANSMITTER
`
`
`'w
`
`PATH X1
`
`PATH X2
`
`PATH X4
`
`
`
`2308
`\
`
`TRANSMIT TABLE
`
`PATH X3
`
`
`
`
`
`W(X1)=0.2
`PACKET
`
`RECEIVER
`W(X2)=0.1
`
`
`
`w (X3) = 0.6
`
`w (x4) = 0.1
`
`
`
`
`
`
`WEIGHT
`LINK QUALITY
`
`
`MEASUREMENT
`ADJUSTMENT
`
`FUNCTION
`FUNCTION
`
`
`
`
`
`
`2301
`
`FIG. 23
`
`29
`
`29
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 27 0f 40
`
`US 7,418,504 B2
`
`2403
`
`!
`
`2404
`
`
`100Mbls MESST=32 9
`
`
`
`
`COMPUTER
`
`
`
`
`COMPUTER
`
`9 25Mb/s MESST=8
`
`FIG. 24
`
`30
`
`30
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 28 0f 40
`
`US 7,418,504 B2
`
`2502
`
`2504
`
`, WEB
`BROWSER
`
`
`
`
`DNS REQ
`
`DNS RESP
`
`PAGE REQ
`
`
`
`TARGET
`
`WEB SITE PAGE RESP
`
`
`FIG. 25
`(PRIOR ART)
`
`31
`
`31
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 29 0f 40
`
`US 7,418,504 B2
`
`
` DNS
`SERVER
`
`2609
`
`
`
`
`
`
`WEB
`
`BROWSER
`
`
`GATEKEEPER
`
`HOPPING
`
`RULES
`
`2602
`
`2503
`
`HOPPING
`
`
`SECURE
`TARGET
`SHE
`
`
`
`
`
`
`UNSECURE
`TARGET
`flTE
`
`26“
`
`FIG. 26
`
`32
`
`32
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 30 0f 40
`
`US 7,418,504 B2
`
`
` RECEIVE
`
`DNS REQUEST
`FOR TARGET SITE
`
`2701
`
`
`
`PASS THRU
`ACCESS TO
`
`REQUEST TO
`SECURE SITE
`DNS SERVER
`REQUESTED?
`
`
`
`
`
`
`
`
`
`
`
`
`USER
`RETURN
`
`AUTHORIZED TO
`“HOST UNKNOWN"
`
`ERROR
`CONNECT?
`
`
`
`
`2705
`
`
`
`ESTABLISH
`VPN WITH
`TARGET SITE
`
`
`FIG. 27
`
`33
`
`33
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 31 0f 40
`
`US 7,418,504 B2
`
`2802
`
`2803
`
`2801
`
`HOST
`COMPUTER #1
`
`
`
`
`
`
`
`
`EDGE
`ROUTER
`
`2804
`
`HOST
`COMPUTER #2
`
`2805
`
`HIGH BW
`
`FIG. 28
`
`34
`
`34
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 32 0f 40
`
`US 7,418,504 B2
`
`2901
`
`HOST COMPUTER #1
`
`
`
`
`
`
`HIGH BW
`
`
`EDGE
`
`
`ROUTER
`
`
`RX
`TX
`
`
`
`IP TX
`100-200
`L.
`
`
`
`HOST COMPUTER #2
`
` TX
`
`2902
`
`RX
`
`
`
`
`2912
`2913
`4'
`
`
`
`HACKER
`COMPUTER
`
`
`FLOODIP
`TX100-200
`
`2903
`
`FIG. 29
`
`35
`
`35
`
`

`

`U.S. Patent
`
`uA
`
`20.5
`
`2
`
`40.mB
`
`US 7,418,504 132
`
`6,ESE
`
`
`
`m8%?mmfifiw52::
`
`mw3%
`m8208mm
`$382
`
`omGE
`
`5%Eémzmo
`
`mmEEmz<E
`
`m>momm
`
`0mm.uz>m
`
`39:.xx
`
`36
`
`36
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 34 0f 40
`
`US 7,418,504 B2
`
`3101
`
`3103
`
`
`CLIENT #1
`
`
`
`
`3106
`
`
`
`
`CLIENT #2
`
`TXlRX
`TX/RX
`TXlRX
`
`
`
`3102
`
`
`
` 3208
`3209
`
`3210
`
`3105
`
`HACKER
`
`FIG. 31
`
`37
`
`37
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 35 of 40
`
`US 7,418,504 B2
`
`SERVER
`\
`
`
`
`SYNC_REQ
`
`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 ckan
`GENERATE NEW cka_r FOR
`TRANSMITTER SIDE
`
`TRANSMIT SYNC_ACK
`CONTAINING ckao
`
`CLIENT
`\
`
`SEND DATA PACKET
`
`USING cka_n
`CKPT_O=cka_n
`GENERATE NEW cka_n
`START TIMER, SHUT TRANSMITTER
`OFF
`
`IF CKPT_0 IN SYNC_ACK
`MATCHES TRANSMITTER‘S
`
`ckpt_o
`UPDATE RECEIVERS
`ckpt_r
`KILL TIMER, TURN
`TRANSMITTER ON
`
`SEND DATA PACKET
`USING ckpt_n
`ckpt_o=ckpt_n
`GENERATE NEW cka_n
`START TIMER, SHUT TRANSMITTER
`OFF
`
`WHEN TIMER EXPIRES
`TRANSMIT SYNC_REQ
`USING TRANSMITTERS
`
`cka_o, START TIMER
`
`IF ckpt_o IN SYNC_ACK
`MATCHES TRANSMITTER'S
`
`ckpt_o
`UPDATE RECEIVER'S
`
`cka_r
`KILL TIMER, TURN
`TRANSMITTER 0N
`
`FIG. 32
`
`38
`
`38
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 36 of 40
`
`US 7,418,504 B2
`
`:8
`
`$8$58
`
`..<zmm:z_
`
`88.258
`
`$585
`
`mcmmmg
`
`8mm
`
`mzoem
`
`$8
`
`Em”
`
`28
`
`
`
` %52%;;8mm
`
`208219
`
`.__<s_.m_ESEmmmmmxmEomzom
`
`28
`
`:8
`
`28:82%mm.0_H_3mm
`
`«N8
`
`’7528m./(i88
`
`xmmgomm
`
`manomwow
`
`z_.o:._n_
`
`38
`
`8mm
`
`8mm
`
`39
`
`39
`
`
`
`
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 37 0f 40
`
`US 7,418,504 B2
`
`3400
`
`3401
`
`
`
`
`DISPLAY WEB PAGE
`CONTAINING GO
`SECURE HYPERLINK
`
`3402E
`
`YES
`
`LAUNCH LINK TO
`.COM SITE
`
`3404
`
`DOWNLOAD AND
`INSTALL PLUG-IN
`
`3405
`
`CLOSE CONNECTION
`
`3406
`
`
`
`
`
`
`
`VPN
`PLUG-IN
`LOAODED
`
`
`
`
`
`AUTOMATIC REPLACEMENT OF TOP-LEVEL
`DOMAIN NAME WITH SECURE TOP-LEVEL
`DOMAIN NAME
`
`3407
`
`3412
`
`DISPLAY "SECURE" ICON
`
`ACCESS SECURE PORTALAND
`
`SECURE NETWORKANDSECUREDNS
`
`3403
`
`OBTAIN SECURE COMPUTER NETWORK
`ADDRESS FOR SECURE WEB SITE
`
`ACCESS GATE KEEPER AND RECEIVE
`PARAMETERS FOR ESTABLISHING VPN
`WITH SECURE WEBSITE
`
`3409
`
`3410
`
`
`
`N0
`
`
`TEPNIIII‘EE
`CONNECTION
`
`'
`YES
`REPLACE SECURE TOP_LEVEL
`DOMAIN NAME WITH NON-SECURE
`TOP-LEVEL DOMAIN NAME
`
`3413
`
`3414
`
`3415
`
`DISPLAY "GO SECURE" HYPERLINK
`
`CONNECTTOSECUREWEBSITE
`USINGVPN BASEDON PARAMETERS m
`ESTABLISHEDBYGATE KEEPER
`3411
`
`40
`
`40
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 38 of 40
`
`US 7,418,504 B2
`
`3500
`
`
`
`
`
`REQUESTOR ACCESSES WEBSITE
`AND LOGS INTO SECURE
`DOMAIN NAME REGISTRY SERVICE
`
`
`
`3501
`
`
`
`REQUESTER COMPLETES ONLINE
`REGISTRATION FORM
`
`
`
`
`QUERY STANDARD DOMAIN NAME
`SERVICE REGARDING OWNERSHIP
`OF EQUIVALENT NON-SECURE
`DOMAIN NAME
`
`RECEIVE REPLY FROM STANDARD
`DOMAIN NAME REGISTRY
`
`
`
`
`
`
`INFORM REQUESTOR
`OF CONFLICT
`
`3506
`
`
`
`VERIFY INFORMATION AND
`ENTER PAYMENT INFORMATION
`
`3507
`
`
`
`REGISTER SECURE DOMAIN NAME
`
`
`
`3508
`
`FIG. 35
`
`41
`
`41
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 39 0f 40
`
`US 7,418,504 B2
`
`WEB SERVER
`
`SERVER PROXY
`
`3600
`
`VPN GUARD
`
` 3611
`
` 3610
`
`
`
`
`
`
`COMPUTER NETWORK
`
`3602
`
`FIREWALL
`
`3601
`
`I BROWSER I PROXYAPPLICATION I
`
`3607
`
`3606
`
`3605
`
`CLIENT COMPUTER
`
`3604
`
`FIG. 36
`
`42
`
`42
`
`

`

`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 40 0f 40
`
`US 7,418,504 B2
`
`3700
`/
`
`GENERATE MESSAGE PACKETS
`
`3701
`
`MODIFY MESSAGE PACKETS WITH PRIVATE
`CONNECTION DATA AT AN APPLICATION LAYER
`
`3702
`
`SEND TO HOST COMPUTER
`THROUGH FIREWALL
`
`RECEIVE PACKETS AND AUTHENTICATE
`AT KERNEL LAYER OF HOST COMPUTER
`
`RESPOND TO RECEIVED MESSAGE
`PACKETS AND GENERATE REPLY
`MESSAGE PACKETS
`
`MODIFY REPLY MESSAGE PACKETS WITH
`PRIVATE CONNECTION DATA AT A
`KERNEL LAYER
`
`SEND PACKETS TO CLIENT COMPUTER
`THROUGH FIREWIRE
`
`RECEIVE PACKETS AT CLIENT
`COMPUTER AND AUTHENTICATE AT
`APPLICATION LAYER
`
`FIG. 37
`
`43
`
`3703
`
`3704
`
`3705
`
`3706
`
`3707
`
`3708
`
`43
`
`

`

`US 7,418,504 B2
`
`1
`AGILE NETWORK PROTOCOL FOR SECURE
`COMMUNICATIONS USING SECURE
`DOMAIN NAMES
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application claims priority from and is a continuation
`patent application of US. application Ser. No. 09/558,210,
`filed Apr. 26, 2000 now abandoneed, which is a continuation-
`in-part patent application ofpreviously-filed US. application
`Ser. No. 09/504,783, filed on Feb. 15, 2000, now US. Pat. No.
`6,502,135, issued Dec. 31, 2002, which claims priority from
`and is a continuation-in-part patent application ofpreviously-
`filed US. application Ser. No. 09/429,643, filed on Oct. 29,
`1999 now US. Pat. No. 7,010,604. The subject matter ofU.S.
`application Ser. No. 09/429,643, which is bodily incorporated
`herein, derives from provisional US. application Nos.
`60/106,261 (filed Oct. 30, 1998) and 60/137,704 (filed Jun. 7,
`1999). The present application is also related to US. appli-
`cation Ser. No. 09/558,209, filed Apr. 26, 2000, and which is
`incorporated by reference herein.
`
`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 Intemet 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 traffic 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
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`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,
`proxy schemes are vulnerable to traffic 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 traffic 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
`cannot 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 traffic and wraps it
`in User Datagram 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 fi

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