`
`(12) United States Patent
`US 7,188,180 B2
`(10) Patent No.:
`Larson et al.
`(45) Date of Patent:
`Mar. 6, 2007
`
`(54)
`
`(75)
`
`METHOD FOR ESTABLISHING SECURE
`COMMUNICATION LINK BETWEEN
`COMPUTERS OF VIRTUAL PRIVATE
`NETWORK
`
`Inventors: Victor Larson, Fairfax, VA (US);
`Robert Durham Short, III, Leesburg,
`VA (US); Edmund Colby Munger,
`Crownsville, MD (US); Michael
`Williamson, South Riding, VA (US)
`
`(73)
`
`Assignee: VimetX, 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 413 days.
`
`(21)
`
`Appl. No.: 10/702,486
`
`(22)
`
`Filed:
`
`Nov. 7, 2003
`
`(65)
`
`(60)
`
`(60)
`
`(51)
`
`(52)
`(58)
`
`Prior Publication Data
`
`US 2004/0107285 A1
`
`Jun. 3, 2004
`
`Related US. Application Data
`
`Division of application No. 09/558,209, filed on Apr.
`26, 2000, now abandoned, which is a continuation-
`in-part of application No. 09/504,783, filed on Feb.
`15, 2000, now Pat. No. 6,502,135, which is a con-
`tinuation-in-part of application No. 09/429,643, filed
`on Oct. 29, 1999, now Pat. No. 7,010,604.
`
`Provisional application No. 60/137,704, filed on Jun.
`7, 1999, provisional application No. 60/106,261, filed
`on Oct. 30, 1998.
`
`Int. Cl.
`
`(2006.01)
`G06F 15/173
`US. Cl.
`....................................... 709/227; 709/228
`Field of Classification Search ........ 709/2257229,
`709/245
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`4,933,846 A
`5,341,426 A
`5,588,060 A
`5,689,566 A
`
`6/1990 Humphrey et a1.
`8/1994 Barney et a1.
`12/1996 Aziz
`11/1997 Nguyen
`
`(Continued)
`FOREIGN PATENT DOCUMENTS
`
`DE
`
`199 24 575
`
`12/1999
`
`(Continued)
`OTHER PUBLICATIONS
`
`Search Report (dated Jun. 18, 2002), International Application No.
`PCT/US01/13260.
`
`(Continued)
`
`Primary ExamineriKr‘isna Lim
`(74) Attorney, Agent, or FirmiBanner & Witcoff, Ltd.
`
`(57)
`
`ABSTRACT
`
`A technique is disclosed for establishing a secure commu-
`nication link between a first computer and a second com-
`puter over a computer network. Initially, a secure commu-
`nication mode of communication is enabled at a first
`
`computer without a user entering any cryptographic infor-
`mation for establishing the secure communication mode of
`communication. Then, a secure communication link is estab-
`lished between the first computer and a second computer
`over a computer network based on the enabled secure
`communication mode of communication. The secure com-
`
`munication link is a virtual private network communication
`link over the computer network in which one or more data
`values that vary according to a pseudo-random sequence are
`inserted into each data packet.
`
`See application file for complete search history.
`
`41 Claims, 40 Drawing Sheets
`
`Petitioner Apple Inc. - EX. 1001, p. 1
`
`RECEIVE
`FORTARGET SITE
`DNS REQUEST
`
`ACCESS TO
`SECURE SITE
`REQUESTED?
`
`USER
`AUTHORIZED T0
`CONNECT?
`
`III
`
`Z701
`
`2705
`
`TARGETSITE
`
`2709
`\
`PASSTHRU
`REQUESTTO
`DNS SERVER
`
`2705
`
`
`
`\
`
`RETURN
`"HOSTUNKNOWN"
`ERROR
`I_—
`
`Petitioner Apple Inc. - Ex. 1001, p. 1
`
`
`
`US 7,188,180 B2
`
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`5,787,172 A
`5,796,942 A
`5,805,801 A
`5,842,040 A
`5,870,610 A
`5,878,231 A
`5,892,903 A
`5,898,830 A
`5,905,859 A
`6,006,259 A
`6,016,318 A
`6,052,788 A
`6,079,020 A
`6,092,200 A
`6,119,171 A
`6,119,234 A
`6,158,011 A
`6,178,409 B1
`6,178,505 B1
`6,226,751 B1
`6,243,749 B1
`6,256,671 B1 *
`6,286,047 B1
`6,330,562 B1
`6,332,158 B1
`6,353,614 B1
`
`7/1998 Arnold
`8/1998 Esbensen
`9/1998 Holloway et al.
`11/1998 Hughes et al.
`2/1999 Beyda et al.
`3/1999 Baehr et a1.
`4/1999 Klaus
`4/1999 Wesinger, Jr. et al.
`5/1999 Holloway et al.
`12/1999 Adelman et al.
`1/2000 Tomoike
`4/2000 Wesinger, Jr. et al.
`6/2000 Liu
`7/2000 Muniyappa et al.
`9/2000 Alkhatib ..................... 709/245
`9/2000 Aziz et al.
`.................... 726/11
`12/2000 Chen et al.
`1/2001 Weber et al.
`1/2001 Schneider et al.
`5/2001 Arrow et al.
`6/2001 Sitaraman et al.
`.......... 709/227
`7/2001 Strentzsch et al.
`9/2001 Ramanathan et a1.
`12/2001 Boden et al.
`12/2001 Risley et al.
`3/2002 Borella et al.
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`EP
`EP
`EP
`EP
`GB
`GB
`GB
`WO
`WO
`W0
`W0
`W0
`W0
`W0
`
`0 814 589
`0 814 589 A
`0 838 930
`0 838 930 A
`0 858 189
`2 317 792
`2 317 792 A
`2 334 181 A
`9827783 A
`VVO 98/27783
`W0 98 55930
`W0 98 59470
`W0 99 38081
`W0 99 48303
`W0 01 50688
`
`12/1997
`12/1997
`4/1998
`4/1998
`8/1998
`4/1998
`4/1998
`8/1999
`6/1998
`6/1998
`12/1998
`12/1998
`7/1999
`9/1999
`7/2001
`
`OTHER PUBLICATIONS
`
`Search Report (dated Jun. 28, 2002), International Application No.
`PCT/US01/13261.
`Donald E. Eastlake, “Domain Name System Security Extensions”,
`DNS Security Working Group, Apr. 1998, 51 pages.
`D. B. Chapman et al., “Building Internet Firewalls”, Nov. 1995, pp.
`278-297 and pp. 351-375.
`P. Srisuresh et al., “DNS extensions to Network Address Transla-
`tors”, 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.
`
`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 publica-
`tion, 1996, pp. 963-967.
`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 Secu-
`rity 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
`pages.
`Linux FreeS/WAN Index File, printed from http://liberty.freeswan.
`org/freeswanitrees/freeswan-1.3/doc/on Feb. 21, 2002, 3 Pages.
`J. Gilmore, “Swan: Securing the Internet against Wiretapping”,
`printed from http://liberty.freeswan.org/freeswanitrees/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/freeswanitrees/freeswan-1 .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/ss13/draft302.txt on
`Feb. 4, 2002, 56 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 Transmission”, pp. 1-23.
`Dolev, Shlomi
`and Ostrovsky, Rafil,
`“Eflicient Anonymous
`Multicast and Reception” (Extended Abstract), 16 pages.
`Rubin, Aviel D., Greer, Daniel, and Ranum, Marcus J. (Wiley
`Computer 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.
`Laurie Wells (LANCASTERBIBELMAIL MSN COM); “Subject:
`Security Icon” USENET Newsgroup, Oct. 19, 1998, XP002200606.
`Davila J et al, “Implementation 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://www.
`springerlink.com/content/4uac0tb0hecoma89/fulltext .pdf>
`(Abstract).
`
`* cited by examiner
`
`Petitioner Apple Inc. - Ex. 1001, p. 2
`
`Petitioner Apple Inc. - Ex. 1001, p. 2
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 1 0140
`
`US 7,188,180 B2
`
`IP ROUTER
`Q
`
`IP ROUTER
`1
`. __
`
`
`
`ORIGINATING
`TERMINAL
`
`
`1%
`
`
` IP PACKET
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IP ROUTER
`E
`
`IP ROUTER
`
`;3_
`
`'P ROUTER
`R
`
`WWW“
`IP ROUTER _
`A
`
`IP ROUTER
`
`g
`
`48 ENCRYPTION KEY
`
`IP ROUTER
`A
`
`IP ROUTER
`A
`
`IP ROUTER
`g
`
`IP ROUTER
`
`20 _
`
`DESTINATION
`TERMINAL
`
`m
`
`FIG. 1
`
`Petitioner Apple Inc. - EX. 1001, p. 3
`
`Petitioner Apple Inc. - Ex. 1001, p. 3
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 2 0f 40
`
`US 7,188,180 B2
`
`IP ROUTER
`
`m
`
` TARP
`
`TERMINAL
`
`
`100
`
`140
`
`
` TARP PACKET
`
`
`
`TARP
`
`
`
`146
`ROUTER
`LINK KEY
`fig
`
`
`
`
`
`TARP
`
`
`TARP
`
`
`ROUTER
`ROUTER
`124
`
`
`
`123
`
`
`INTERNET
`m1
`
`TARP
`RO1UZT5ER
`
`
`
`
`
`
`ROUTER
`
` m
`
`
` TARP PACKET
`
`TERMINAL
`
`
`
`
`
`IP ROUTER
`1_2_g
`
`
`
`m
`
`FIG. 2
`
`Petitioner Apple Inc. - EX. 1001, p. 4
`
`Petitioner Apple Inc. - Ex. 1001, p. 4
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 3 0f 40
`
`US 7,188,180 B2
`
`207“
`
`2070
`
`207c
`
`207d
`
`° ° °
`
` \330 SESSION-KEY-ENCRYPTED
`
`PAYLOAD DATA
`
`\340 TARP PACKET WITH
`ENCRYPTED PAYLOADS
`
`
`
`‘\ 350 LINK-KEY-ENCRYPTED
`TARP PACKETS
`
`\ 360 IP PACKETS WI
`ENCRYPTED TARP
`PACKETS AS PAYLOAD
`
`
`
`TARP
`TARP
`
`
`ROUTER 1
`ROUTER 2
`
`
`
`
`TARP
`DESTINATION
`
`
`
`FIG. 3A
`
`Petitioner Apple Inc. - EX. 1001, p. 5
`
`Petitioner Apple Inc. - Ex. 1001, p. 5
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 4 0f 40
`
`US 7,188,180 B2
`
`2073
`
`207b
`
`2070
`
`207d
`
`- o o
`
`/300 DATASTREAM
`
`
`
`
`DUMMY
`
`BLOCKS
`OR DATA
`MAY BE
`ADDED
`
`
`
`\520 BLOCK-ENCRYPTED
`(SESSION-KEY) PAYLOAD
`SEQUENCE
`
`-89' <\522 ENCRYPTED BLOCK
`DIVIDED INTO PAYLOADS
`
`
`"‘33""? 13-6 5’59 5 \523 ENCRYPTED BLOCK
`0
`DIVIDEDINTOPAYLOADS
`g—Y—__/
`INTERLEAVED
`517
`
`
`
`
`
`
`
`
`
` 5’33 \523 ENCRYPTED BLOCK
`
`DIVIDED INTO PAYLOADS
`INTERLEAVED
`
` \340 TARP PACKETS WITH
`ENCRYPTED PAYLOADS
`
`Petitioner Apple Inc. - EX. 1001, p. 6
`
`Petitioner Apple Inc. - Ex. 1001, p. 6
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 5 0f 40
`
`US 7,188,180 B2
`
`TARP TRANSCEIVER
`fl
`
`NETWORK (IP) LAYER
`
`m ONE ALTERNATIVE TO
`
`COMBINE
`TARP PROCESSING
`WITH O/S IP
`PROCESSOR
`
`OTHERALTERNATIVE
`T0 COMBINE
`TARP PROCESSING
`WITH D.L. PROCESSOR
`(e.g., BURN INTO BOARD
`PROM)
`
`DATA LINK LAYER
`m
`
`FIG. 4
`
`450
`DATA LINK
`PROTOCOL WRAPPER
`
`Petitioner Apple Inc. - EX. 1001, p. 7
`
`Petitioner Apple Inc. - Ex. 1001, p. 7
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 6 0f 40
`
`US 7,188,180 B2
`
`
`
`BACKGROUND LOOP - DECOY
`GENERATION
`
`AUTHENTICATE TARP
`PACKET
`
`OUTER LAYER DECRYPTION
`OF TARP PACKET USING
`LINK KEY
`
`DUMP DECOY
`
`SZ
`
`33
`
`
`
`
`
`CHECK FOR DECOY AND
`INCREMENT PERISHABLE
`
`DECOY COUNTER AS-
`
`APPROPRIATE
`
`84
`
`TRANSMIT DECOY?
`
`YES
`
`DECREMENT
`TTL TTL > 0?
`
`SS
`
`$7
`
`SO
`
`
`
`
`
`
`
`LINK KEY AND IP ADDRESS
`
`SB
`
`310
`
`811
`
`DETERMINE DESTINATION
`TARP ADDRESS AND STORE
`
`
`
`
`
`
`
`GENERATE NEXT-HOP TARP
`ADDRESS AND STORE LINK
`KEY AND IF ADDRESS
`
`
`
`
`GENERATE NEXT-HOP TARP
`ADDRESS AND STORE LINK
`KEY AND IF ADDRESS
`
`
`
`
`
`GENERATE IP HEADER
`AND TRANSMIT
`
`
`FIG. 5
`
`Petitioner Apple Inc. - EX. 1001, p. 8
`
`Petitioner Apple Inc. - Ex. 1001, p. 8
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 7 of 40
`
`US 7,188,180 B2
`
`BACKGROUND LOOP - DECOY
`GENERATION
`
`820
`
`GROUP RECEIVED IP PACKETS
`INTO INTE RLEAVE WINDOW
`
`821
`
`DETERMINE DESTINATION TARP
`ADDRESS, INITIALIZE TTL, STORE
`IN TARP HEADER
`
`322
`
`RECORD WINDOW SEQ. NOS. AND
`INTERLEAVE SEQ. NOS. IN TARP
`HEADERS
`
`$23
`
`TRANSMIT
`
`CHOOSE FIRST HOP TARP
`ROUTER, LOOK UP IP ADDRESS
`AND STORE IN CLEAR IP HEADER,
`OUTER LAYER ENCRYPT
`
`INSTALL CLEAR IP HEADER AND
`
`824
`
`$25
`
`FIG. 6
`
`Petitioner Apple Inc. - EX. 1001, p. 9
`
`Petitioner Apple Inc. - Ex. 1001, p. 9
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 8 0f 40
`
`US 7,188,180 B2
`
`BACKGROUND LOOP - DECOY
`GENERATION
`
`S40
`
`AUTHENTICATE TARP PACKET
`RECEIVED
`
`S42
`
`DECRYPT OUTER LAYER
`ENCRYPTION WITH LINK KEY
`
`INCREMENT PERISHABLE
`COUNTER IF DECOY
`
`S43
`
`S44
`
`DIVIDE BLOCK INTO PACKETS
`USING WINDOW SEQUENCE
`DATA, ADD CLEAR IP HEADERS
`
`GENERATED FROM TARP
`HEADERS
`
`S49
`
`
`S46
`
`S50 THROW AWAY DECOY OR KEEP
`
`HAND COMPLETED IP PACKETS
`TO IP LAYER PROCESS
`
`IN RESPONSE TO ALGORITHM
`
`S45
`
`CACHE TARP PACKETS UNTIL
`WINDOW IS ASSEMBLED
`
`S47
`
`DEINTERLEAVE PACKETS
`FORMING WINDOW
`
`DECRYPT BLOCK
`
`543
`
`FIG. 7
`
`Petitioner Apple Inc. - EX. 1001, p. 10
`
`Petitioner Apple Inc. - Ex. 1001, p. 10
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 9 0f 40
`
`US 7,188,180 B2
`
`TEkT/ITIULL
`
`SSYN
`PAgzKlET
`
`SSYN ACK
`PACKET
`822
`
`SSYN ACK
`ACK PACKET
`823
`
`801
`
`
`
`
`TARP
`
`
`ROUTER
`
`m
`
`
`824
`825
`SECURE SESSION
`SECURE SESSION
`INITIATION
`INITIATION ACK
`
`Petitioner Apple Inc. - EX. 1001, p. 11
`
`Petitioner Apple Inc. - Ex. 1001, p. 11
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 10 0f 40
`
`US 7,188,180 B2
`
`CLIENT 1 A TARP ROUTER
`
`RECEIVE TABLE
`TRANSMIT TABLE
`924
`921
`—_3— #—
`
`131.218.204.98
`131218204221
`131.218.204.139
`131.218.204.12
`
`-
`.
`.
`.
`
`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
`
`-
`.
`.
`.
`
`131.218.204.65
`131.218.204.97
`131.218.204.186
`131.218.204.55
`
`TRANSMIT TABLE
`RECEIVE TABLE
`923
`922
`_A— __L__
`
`o
`
`131.218.204.161
`131.218.204.66
`131.218.204.201
`131.218.204.119
`
`.
`.
`.
`.
`
`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
`
`.
`.
`.
`-
`
`131.218.204.89
`131.218.204.212
`131.218.204.127
`131.218.204.49
`
`Petitioner Apple Inc. - EX. 1001, p. 12
`
`Petitioner Apple Inc. - Ex. 1001, p. 12
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 11 0140
`
`US 7,188,180 B2
`
`CLIENT
`1001
`
`
`
` ISP A
`TARP
`
`ROUTER
`1021
`
`
`
`
`
`
` ISP B
`TARP
`ROUTER
`
`
`
`1011
`
`1012
`
` ISP C
`
`TARP
`
`ROUTER
`
`
`
`1013
`
`FIG. 10
`
`Petitioner Apple Inc. - EX. 1001, p. 13
`
`Petitioner Apple Inc. - Ex. 1001, p. 13
`
`
`
`U.S. Patent
`
`Diar.6,2007
`
`Sheet12 0f40
`
`US 7,188,180 B2
`
`mm:
`
`5”mmmmogm_9me<8:<8:E53%?n:momzom
`
`
`2”3m:2285WWW:Mmmn
`
`
`EOE:
`
`mm”mmmmonz2E.omm
`
`mm.mmwmonz2,:~me$0:<3:
`
`.5ong..mg:90:
`
`
`$55:GEE&858%?a:.538“$192>>I0%
`
`R”Sm:Egg3”mmmmomzm_9me2”3me2n:momDOm
`
`ow:
`
`8:
`
`
`
`mmofizm2<EEzmmxm
`
`
`
`”$5:m2<Eszmzm
`
`a:o<3><m2:
`
`2:
`
`Eo<o._><m
`
`Ill,
`
`
`
`<35:.5onn:
`
`<8:
`
`m8:
`
`08:
`
`NE
`
`
`
`m:Umwmm8<n:6138
`
`
`
`m:”wmmmofiz&:30
`
`m:dd:2285
`
`
`
`N“:o<o._><m
`
`E.
`
`Nn:
`
`Petitioner Apple Inc. - EX. 1001, p. 14
`
`Petitioner Apple Inc. - Ex. 1001, p. 14
`
`
`
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 13 of 40
`
`US 7,188,180 B2
`
`%%%EQ ~%%
`fig
`
`mum:
`
`zo:.<o_._n_n_<
`
`E2E2
`
` 8:E03:01::09:01::1
`
`<92morn:m0.281%
`
`Em:
`
`<3
`
`OE
`
`:NF22
`
`8282
`
`a...a
`
`aa
`
`%%Ea
`
`almi
`
`aa
`
`gag
`
`gnu—am
`
`Egg
`
`EED3:01;:03201;:
`
`mo._<81%<3<moIn=‘$3$3
`
`zo:.<o_._&<
`
`Nofi
`
`as
`
`Petitioner Apple Inc. - EX. 1001, p. 15
`
`Petitioner Apple Inc. - Ex. 1001, p. 15
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 14 0f 40
`
`US 7,188,180 B2
`
`MODE
`OR
`
`
`
`
`1. PROMISCUOUS
`
`HARDWARE
`
`IF ADDRESSES
`
`DISCRIMINATOR FIELD
`
`SAME FOR ALL NODES
`OR (wBEJEJELY
`
`CAN BE VARIED
`[N SYNC
`
`CAN BE VARIED
`IN SYNC
`
`2. PROMISCUOUS
`PER VPN
`
`
`
`F'XEDFOREACHVPN
`
`
`
`CAN BE VARIED
`IN SYNC
`
`
`
`CAN BE VARIED
`IN SYNC
`
`3. HARDWARE
`HOPPING
`
`CAN BE VARIED
`IN SYNC
`
`CAN BE VARIED
`IN SYNC
`
`CAN BE VARIED
`IN SYNC
`
`
`
`
`
`FIG. 123
`
`
`
`
`
`Petitioner Apple Inc. - EX. 1001, p. 16
`
`Petitioner Apple Inc. - Ex. 1001, p. 16
`
`
`
`SU
`
`tnm
`
`uM
`
`mm6,
`
`7,
`
`2
`
`P.a:82g:32
`
`258fizma
`
`mmgofigpo:
`
`mmmoommmm;
`
`0E53Amagozam:20In205825;“:
`M.253228a$2525mmmmmoo<.5m2_
`
`2059325“;
`
`.2mzm
`
`55$32E22:
`
`BIw2omm,555w9285
`
`
`
`moz22353%
`
`22%
`
`8:
`
`82
`
`Petitioner Apple Inc. - EX. 1001, p. 17
`
`Petitioner Apple Inc. - Ex. 1001, p. 17
`
`
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 16 0f 40
`
`US 7,188,180 B2
`
`IP PAIR 1
`
`IP PAIRZ
`
`O 0
`
`IP PAIRW
`
`CURRENT IP PAIR
`
`ckpt_o
`ckpt_n
`
`TRANSMITTER
`
`RECIPIENT'S ISP
`
`CURRENT IP PAIR *n-‘
`
`WINDOW
`
`IF PAIR 1
`
`IP PAIR2
`O
`0
`0
`
`IP PAIR W
`ckpt_o
`ckpt_n
`ckpt_r4
`
`RECEIVER
`
`SENDER'S ISP
`
`
`
`KEPT IN SYNC FOR SENDER TO RECIPIENT SYNCHRONIZER < ----------------------- >
`
`KEPTIN SYNC FOR RECIPIENT TO SENDER SYNCHRONIZER <——————->
`
`FIG. 14
`
`Petitioner Apple Inc. - EX. 1001, p. 18
`
`Petitioner Apple Inc. - Ex. 1001, p. 18
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 17 0f 40
`
`US 7,188,180 B2
`
`@
`
`@ WHEN SYNCHRONIZATION
`BEGINS TRANSMIT (RETRANSMIT
`PERIODICALLY UNTIL ACKed)
`SYNC_REQ USING NEW
`TRANSMITTER CHECKPOINTIP
`PAIR ckpt_n AND GENERATE
`NEW RECETVER RESPONSE
`CHECKPOINT CkpU
`
`#WHENSYNC-ACK
`ARRIVES WITH INCOMING
`EEQEETT'QW
`CHECKPOINTIPPAIR
`
`ckpt_n IN TRANSMITTER
`
`SYNC_REQ
`
`1W
`
`*
`Wmfificsgflfigfiflws
`RECEIVERS cth n.
`'UPDATE WTNDOW
`'GENERATE NEW
`CHECKPOINT lP PAIR
`ckpt_n IN RECEIVER
`
`W
`
`KP I
`P PAIR
`ckarINTRANSMITTER
`_TRANSMIT SYNC ACK
`USING NEw CHEc‘KPOINT
`'PPA'RCKPU
`
`FIG. 15
`
`Petitioner Apple Inc. - EX. 1001, p. 19
`
`Petitioner Apple Inc. - Ex. 1001, p. 19
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 18 0f 40
`
`US 7,188,180 B2
`
`
`
`Petitioner Apple Inc. - EX. 1001, p. 20
`
`Petitioner Apple Inc. - Ex. 1001, p. 20
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 19 0f 40
`
`US 7,188,180 B2
`
`000 ' VIII/I’ll,”
`
`O O
`
`
`
`
`
`
`I INACTIVE
`a ACTIVE
`
`fl USED
`
`Petitioner Apple Inc. - EX. 1001, p. 21
`
`VIII/[IIIIIA
`’IIIIIIIIIIIA
`VIII/I'llllll
`VIII/III,“
`mil/Ill“
`O
`
`WINDOW_S|ZE
`
`WINDOW_S|ZE
`
`
`
`
`
`
`
`
`VlllllllllllA
`
`Vllllllllllfl
`VIII/[Illflfl
`
`VII/IIIIIIIIA
`
`FIG. 17
`
`Petitioner Apple Inc. - Ex. 1001, p. 21
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 20 0f 40
`
`US 7,188,180 B2
`
`VIII/I’ll,”
`
`O
`
`INACTIVE
`a ACTIVE
`
`fl USED
`
`000
`
`WINDOW_SIZE
`
`WINDOW_SIZE
`
`'IIIIIIIIIIIA
`VIII/[Illlfl
`VIII/IIIHIA
`VIII/III,“
`mun/I’ll.
`
`Petitioner Apple Inc. - EX. 1001, p. 22
`
`Petitioner Apple Inc. - Ex. 1001, p. 22
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 21 0f 40
`
`US 7,188,180 B2
`
`OoO
`
`WINDOW_S|ZE
`
`WINDOW_S|ZE
`
`711111111114
`0
`
`VIII/”I’m
`VII/I'IIIIIIA
`VIIIIIIIIIIA
`
`
`
`
`
`
`
`
`
`
`
`
`WII'IIIIIIIA
`
`
`VII/””1111
`VII/””011.
`
`
`VII/””1,”
`
`
`
`VIIIIIIIIIIA
`
`
`
`
`
`
`
`VIII/1111114
`
`I INACTIVE
`a ACTIVE
`fl USED
`
`000
`
`FIG. 19
`
`Petitioner Apple Inc. - EX. 1001, p. 23
`
`Petitioner Apple Inc. - Ex. 1001, p. 23
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 22 0f 40
`
`US 7,188,180 B2
`
`
` COMPUTER #2
`
`
`
`2008
`
`2005
`
`
`
` COMPUTER #1
`
`2011 FIG.20
`
`Petitioner Apple Inc. - EX. 1001, p. 24
`
`Petitioner Apple Inc. - Ex. 1001, p. 24
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 23 0f 40
`
`US 7,188,180 B2
`
`ADTABLE
`|_P1|P2
`
`2101
`
`AETABLE
`
`2102
`
`2103
`
`2109
`
`BDTABLE
`
`- 2104
`
`BETABLE
`
`LINKDOWN >I‘ 2105
`
`BF TABLE
`
`2106
`
`2107
`
`2108
`
`Petitioner Apple Inc. - EX. 1001, p. 25
`
`Petitioner Apple Inc. - Ex. 1001, p. 25
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 24 0f 40
`
`US 7,188,180 B2
`
`
`
`
`MEASURE
`
`QUALITY OF
`TRANSMISSION
`PATH X
`
`
`
`MORE THAN
`ONE TRANSMITTER
`TURNED ON?
`
`2202
`
`YES
`
`
`
`
`2207
`
`2203
`
`
`
`PATH X
`QUALITY<THRES_HOLD?
`SETWEIGHT
`
`TO MIN. VALUE
`
`
`
`
`
`PATH X
`WEIGHT LESS THAN
`STEADY STATE
`
`
`VALUE?
`
`
`
`
`2203
`
`DECREASE WEIGHT
`FOR PATH X
`
`INCREASE
`WEIGHT FOR PATH X
`TOWARD STEADY
`STATE VALUE
`
`
`
`ADJUST WEIGHTS
`FOR REMAINING
`
`
`PATHS SO THAT
`WEIGHTS EQUAL ONE
`
`
`2206
`
`FIG. 22A
`
`Petitioner Apple Inc. - EX. 1001, p. 26
`
`Petitioner Apple Inc. - Ex. 1001, p. 26
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 25 0f 40
`
`US 7,188,180 B2
`
`(EVENT) TRANSMITTER
`FOR PATH X
`TURNS OFF
`
`2210
`
`
`
`
`
`
`
`AT LEAST
`
`ONE TRANSMITTER
`
`
`TURNED ON?
`
`
`
`
`DROP ALL PACKETS
`UNTILATRANSMITTER
`TURNS ON
`
`SET WEIGHT
`
`TO ZERO
`
`
`
`ADJUST WEIGHTS
`FOR REMAINING PATHS
`
`SO THAT WEIGHTS
`
`EQUAL ONE
`
`
`
`FIG. 228
`
`Petitioner Apple Inc. - EX. 1001, p. 27
`
`Petitioner Apple Inc. - Ex. 1001, p. 27
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 26 0f 40
`
`US 7,188,180 B2
`
`PATH X1
`
`PATH X2
`
`w
`
`
`
`
`
`2308
`\
`
`
`
`TRANSMIT TABLE
`2302
`S
`D
`
`PACKET
`I
`PATH x3
`
`TRANSMITTER
`
`
`PATH X4
`
`
`
`PACKET
`W(X1)=0-2
`
`RECEIVER
`wa2)=0.1
`
`w (x3) = 0.6
`
`w (x4) = 0.1
`
`2301
`
`
`
`
`
`
`LINK QUALITY
`MEASUREMENT
`FUNCTION
`
`
`WEIGHT
`
`ADJUSTMENT
`FUNCTION
`
`
`
`
`
`FIG. 23
`
`Petitioner Apple Inc. - EX. 1001, p. 28
`
`Petitioner Apple Inc. - Ex. 1001, p. 28
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 27 0f 40
`
`US 7,188,180 B2
`
`
`
`
`COMPUTER
`
`2403
`
`2404
`
`2402
`
`9 100Mb/s MESST=32 9
`
`
`
`COMPUTER
`
`9 25Mb/s MESST=8
`
`FIG. 24
`
`Petitioner Apple Inc. - EX. 1001, p. 29
`
`Petitioner Apple Inc. - Ex. 1001, p. 29
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 28 0f 40
`
`US 7,188,180 B2
`
`2502
`
`
`
`
`
`2504
`
`WEB
`BROWSER
`
`DNS REQ
`
`DNS RESP
`
`PAGE REQ
`
`
`TARGET
`
`- WEB SlTE
`
`
`PAGE RESP
`
`FIG. 25
`(PRIOR ART)
`
`Petitioner Apple Inc. - EX. 1001, p. 30
`
`Petitioner Apple Inc. - Ex. 1001, p. 30
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 29 0f 40
`
`US 7,188,180 B2
`
`
`
`DNS
`SERVER
`
`2609
`
`
`
`2602
`
`
`
`WEB
`
`BROWSER
`
`
`
`GATEKEEPER
`
`
`
`IP
`HOPHNG
`
`
`
`
`
`2603
`
`
`SECURE
`TARGET
`SHE
`
`
`
`
`UNSECURE
`TARGET
`SHE
`
`26“
`
`FIG. 26
`
`Petitioner Apple Inc. - EX. 1001, p. 31
`
`Petitioner Apple Inc. - Ex. 1001, p. 31
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 30 0f 40
`
`US 7,188,180 B2
`
`RECEIVE
`DNS REQUEST
`
`FOR TARGET SITE
`
`2701
`
`2703
`
`N0
`
`ACCESS TO
`SECURE SITE
`REQUESTED?
`
`
`
`
`DNS SERVER 2702
`
`PASS THRU
`REQUEST TO
`
`YES
`
`2705
`
`
`ERROR 2704
` USER
`
`
`
`NO
`
`RETURN
`"HOST UNKNOWN"
`
`
`AUTHORIZED TO
`
`CONNECT?
`
`YES
`
`ESTABLISH
`VPN WITH
`
`TARGET SITE
`
`2705
`
`FIG. 27
`
`Petitioner Apple Inc. - EX. 1001, p. 32
`
`Petitioner Apple Inc. - Ex. 1001, p. 32
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 31 0f 40
`
`US 7,188,180 B2
`
`2802
`
`2803
`
`2801
`
`HOST
`COMPUTER #1
`
`
`
`
`
`
`
`
`EDGE
`ROUTER
`
`2804
`
`HOST
`COMPUTER #2
`
`2805
`
`HIGH BW
`
`FIG. 28
`
`Petitioner Apple Inc. - EX. 1001, p. 33
`
`Petitioner Apple Inc. - Ex. 1001, p. 33
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 32 0f 40
`
`US 7,188,180 B2
`
`2901
`
` HOST COMPUTER #1
`
`EDGE
`ROUTER
`
`
`
`
`
`_\_, HOST COMPUTER #2
`
`
`IP TX
`100-200
`
`HIGH BW
`
`2902
`
`2903
`
`
` TX
`RX
`
`2912
`
`2913
`
`
`
`4/
`
`
`HACKER
`COMPUTER
`
`
`FLOOD [P
`TX100-200
`
`FIG. 29
`
`Petitioner Apple Inc. - EX. 1001, p. 34
`
`Petitioner Apple Inc. - Ex. 1001, p. 34
`
`
`
`U.S. Patent
`
`a
`
`2
`
`40.M
`
`17,SU
`
`2B0w
`
`
`m23%mwflwfim9285
`3matI35m828%;>85%
`M852$
`mm>momm
`
`5%aéwzmo
`
`fitswzé
`
`£58m
`
`anonGE
`
`6,$68;
`
`39:.xx
`
`Petitioner Apple Inc. - EX. 1001, p. 35
`
`Petitioner Apple Inc. - Ex. 1001, p. 35
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 34 0f 40
`
`US 7,188,180 B2
`
`3103
`
`3101
`
`
`CLIENT #1
`
`
`
`
`
`
`
`
`3106
`
`
`CLIENT #2
`
`
`TXIRX
`TX/RX
`
`TX/RX
`
`3102
`
`
` 3208
`3210
`3209
`
`
`3105
`
`HACKER
`
`FIG. 31
`
`Petitioner Apple Inc. - EX. 1001, p. 36
`
`Petitioner Apple Inc. - Ex. 1001, p. 36
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 35 0f 40
`
`US 7,188,180 B2
`
`CLIENT
`
`\
`
`SEND DATA PACKET
`USING ckpt_n
`CKPT_O=cka_n
`GENERATE NEW ckpt_n
`START TIMER, SHUT TRANSMITTER
`OFF
`
`IF CKPT_O 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=cka_n
`GENERATE NEW ckpt_n
`START TIMER, SHUT TRANSMITTER
`OFF
`
`WHEN TIMER EXPIRES
`TRANSMITSYNC_REQ
`USINGTRANSMITTERS
`ckpt_o,STARTTIMER
`
`IF cka_o IN SYNC_ACK
`MATCHES TRANSMITTER'S
`ckpt_o
`UPDATE RECEIVERS
`ckpt_r
`KILL TIMER, TURN
`TRANSMITTER 0N
`
`SERVER
`
`\
`
`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
`
`
`
`SYN0_REQ
`
`FIG. 32
`
`Petitioner Apple Inc. - EX. 1001, p. 37
`
`Petitioner Apple Inc. - Ex. 1001, p. 37
`
`
`
`U.S. Patent
`
`Diar.6,2007
`
`Sheet36 0f40
`
`US 7,188,180 B2
`
`as
`
`@225‘
`%52$;5.,NNmm
`
`mmmm
`
`can.2501
`
`E8%
`
`:222%;
`
`Nam$58
`
`mcwmmg
`
`8mm
`
`as:2e:an”EM:2mm.®_..._
`
`xmmaomm
`
`#58500
`
`2531
`
`58
`
`8%
`
`8mm
`
`Petitioner Apple Inc. - EX. 1001, p. 38
`
`Petitioner Apple Inc. - Ex. 1001, p. 38
`
`
`
`
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 37 0f 40
`
`US 7,188,180 B2
`
`3400
`
`3401
`
`
`
`DISPLAY WEB PAGE
`CONTAINING GO
`SECURE HYPERLINK
`
`
`P3402
`
`YES
`
`
`
`
`
`LAUNCH LINK TO
`.COM SITE
`
`3404
`
`DOWNLOAD AND
`INSTALL PLUG-IN
`
`3405
`
`CLOSE CONNECTION
`
`3406
`
`
`
`VPN
`PLUG-IN
`LOAlDED
`
`
`
`AUTOMATIC REPLACEMENT OF TOP-LEVEL
`DOMAIN NAMDIIIMIAIIINSNAIMEE TOP-LEVEL
`
`3407
`
`3412
`
`DISPLAY "SECURE" ICON
`
`3413
`
`
`
`”0
`
`
`TEEIIIIIIEE
`CONNECTION
`
`YES
`REPLACE SECURE TOMB/EL
`DOMAIN NAME WITH NON-SECURE
`TOP-LEVEL DOMAIN NAME
`
`ACCESS SECURE PORTAL AND
`SECURE NETWORKAND SECURE DNS
`
`3408
`
`OBTAIN SECURE COMPUTER NETWORK
`ADDRESS FOR SECURE WEB SITE
`
`ACCESS GATE KEEPER AND RECEIVE
`PARAMETERS FOR ESTABLISHING VPN
`WITH SECURE WEBSITE
`
`3409
`
`3410
`
`CONNECT TO SECURE WEBSITE
`USING VPN BASED ON PARAMETERS
`ESTABLISHED BY GATE KEEPER
`
`_
`
`3411
`
`3414
`
`3415
`
`DISPLAY "GO SECURE" HYPERLINK
`
`Petitioner Apple Inc. - EX. 1001, p. 39
`
`Petitioner Apple Inc. - Ex. 1001, p. 39
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 38 0f 40
`
`US 7,188,180 B2
`
`3500
`
`\
`
`REQUESTORACCESSES 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
`
`
`
`
`YES
`
`3505
`
`NO
`
`INFORM REQUESTOR
`OF CONFLICT
`
`3506
`
`VERIFY INFORMATION AND
`ENTER PAYMENT INFORMATION
`
`3507
`
`REGISTER SECURE DOMAIN NAME
`
`3508
`
`FIG. 35
`
`Petitioner Apple Inc. - EX. 1001, p. 40
`
`Petitioner Apple Inc. - Ex. 1001, p. 40
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 39 0f 40
`
`US 7,188,180 B2
`
`WEB SERVER
`
`SERVER PROXY
`
`3610
`
`3600
`
`VPN GUARD
`
`3611
`
`
`
`
`
`
`
`
`COMPUTER NETWORK
`
`3602
`
`FIREWALL
`
`3601
`
`I BROWSER I PROXYAPPLICATION I
`
`3507
`
`3606
`
`3605
`
`CLIENT COMPUTER
`
`3604
`
`FIG. 36
`
`Petitioner Apple Inc. - EX. 1001, p. 41
`
`Petitioner Apple Inc. - Ex. 1001, p. 41
`
`
`
`U.S. Patent
`
`Mar. 6, 2007
`
`Sheet 40 0f 40
`
`US 7,188,180 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
`
`3703
`
`3704
`
`3705
`
`3706
`
`3707
`
`3708
`
`Petitioner Apple Inc. - EX. 1001, p. 42
`
`Petitioner Apple Inc. - Ex. 1001, p. 42
`
`
`
`US 7,188,180 B2
`
`1
`METHOD FOR ESTABLISHING SECURE
`COMMUNICATION LINK BETWEEN
`COMPUTERS OF VIRTUAL PRIVATE
`NETWORK
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application claims priority from and is a divisional
`patent application of US. application Ser. No. 09/558,209,
`filed Apr. 26, 2000, now abandoned which is a continuation-
`in-part patent application of previously-filed U.S. applica-
`tion 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
`of previously-filed US. application Ser. No. 09/429,643,
`filed on Oct. 29, 1999, now US. Pat. No. 7,010,604, issued
`Mar. 7, 2006, The subject matter of US. 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. application Ser.
`No. 09/558,210, filed Apr. 26, 2000, and which is incorpo-
`rated by reference herein.
`
`BACKGROUND OF THE INVENTION
`
`A tremendous variety of methods have been proposed and
`implemented to provide security and anonymity for com-
`munications 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 techniques is illustrated in FIG. 1. Two terminals, an
`originating terminal 100 and a destination terminal 110 are
`in communication over the Internet. It is desired for the
`
`communications to be secure, that is, immune to eavesdrop-
`ping. For example, terminal 100 may transmit secret infor-
`mation to terminal 110 over the Internet 107. Also, it may be
`desired to prevent an eavesdropper from discovering that
`terminal 100 is in communication with terminal 110. For
`
`example, if terminal 100 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 “visit-
`ing.” 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, respectively.
`Data security is usually tackled using some form of data
`encryption. An encryption key 48 is known at both the
`originating and terminating terminals 100 and 110. The keys
`may be private and public at the originating and destination
`terminals 100 and 110, respectively or they may be sym-
`metrical 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 traffic. Proxy
`servers prevent destination servers from determining the
`identities of the originating clients. This system employs an
`intermediate server interposed between client and destina-
`tion server. The destination server sees only the Internet
`Protocol
`(IP) address of the proxy server and not
`the
`originating client. The target server only sees the address of
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`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 con-
`cealed from the proxy, for example, if the 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
`originating 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 of the
`connected target servers, and the dummy messages confuse
`eavesdroppers’ efforts to detect communicating pairs by
`analyzing 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
`terminals may remain concealed. This strategy requires a
`number of alternative mixes so that the intermediate servers
`
`interposed 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
`destination 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 of proxies called crowds. The crowd
`proxies are interposed between originating and target termi-
`nals. Each proxy through which the message is sent
`is
`randomly chosen by an upstream 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 11’ 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 final server,
`traffic is decrypted with an
`untraceable IP address. The technique is called onion-rout-
`ing. This method can be defeated using traffic analysis. For
`a simple example, bursts of packets from a user during
`low-duty periods can reveal the identities of sender and
`receiver.
`
`Firewalls attempt to protect LANs from unauthorized
`access and hostile exploitation or damage to computers
`connected to the LAN. Firewalls provide a server through
`which all