throbber
I 1111111111111111 11111 1111111111 111111111111111 11111 111111111111111 IIII IIII
`US009059969B2
`
`c12) United States Patent
`McNulty
`
`(IO) Patent No.:
`(45) Date of Patent:
`
`US 9,059,969 B2
`*Jun. 16, 2015
`
`(54) APPARATUS, METHOD AND SYSTEM FORA
`TUNNELING CLIENT ACCESS POINT
`
`(71) Applicant: Scott McNulty, Rowayton, CT (US)
`
`(72)
`
`Inventor: Scott McNulty, Rowayton, CT (US)
`
`(58) Field of Classification Search
`CPC ............ H04L 2209/56; H04L 2209/76; H04L
`2209/80; H04L 63/0272; H04L 63/0428;
`H04L 67/04; H04L 9/3226; H04L 9/3247
`USPC .................... 709/203, 250; 713/150; 711/115
`See application file for complete search history.
`
`( *) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 18 days.
`
`This patent is subject to a terminal dis(cid:173)
`claimer.
`
`(21) Appl. No.: 13/960,514
`
`(22) Filed:
`
`Aug. 6, 2013
`
`(65)
`
`Prior Publication Data
`
`US 2014/0172958 Al
`
`Jun. 19, 2014
`
`(63)
`
`(51)
`
`(52)
`
`Related U.S. Application Data
`
`Continuation of application No. 12/950,321, filed on
`Nov. 19, 2010, now Pat. No. 8,539,047, which is a
`continuation of application No. 10/807,731, filed on
`Mar. 23, 2004, now Pat. No. 7,861,006.
`
`(2006.01)
`(2006.01)
`(2006.01)
`(2006.01)
`(2006.01)
`(2006.01)
`
`Int. Cl.
`G06F 15116
`G06F 151177
`H04L29/08
`H04L 9132
`G06F 13/00
`H04L29/06
`U.S. Cl.
`CPC ............ H04L 67104 (2013.01); H04L 6310272
`(2013.01); H04L 63/0428 (2013.01); H04L
`913226 (2013.01); H04L 913247 (2013.01);
`H04L 2209/56 (2013.01); H04L 2209/76
`(2013.01); H04L 2209/80 (2013.01)
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,960,085 A
`6,098,097 A *
`6,134,662 A *
`6,199,108 Bl*
`6,547,130 Bl
`6,763,399 B2 *
`6,799,077 Bl *
`6,928,463 Bl *
`7,051,157 B2 *
`
`9/1999 de la Huerga
`8/2000 Dean et al. .................... 709/220
`10/2000 Levy et al. ...................... 726/11
`3/2001 Casey et al. ................... 709/220
`4/2003 Shen
`7/2004 Margalit et al. ................. 710/13
`9/2004 Hauet ............................... 700/2
`8/2005 Tene et al. ..................... 709/203
`5/2006 James ........................... 711/115
`(Continued)
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`1/2002
`1168137
`Primary Examiner - Alina N Boutah
`(74) Attorney, Agent, or Firm - Locke Lord LLP
`
`ABSTRACT
`(57)
`The disclosure details the implementation of a tunneling cli(cid:173)
`ent access point (TCAP) that is a highly secure, portable,
`power efficient storage and data processing device. The
`TCAP "tunnels" data through an access terminal's (AT)
`input/output facilities. In one embodiment, the TCAP con(cid:173)
`nects to an AT and a user employs theAT's user input periph(cid:173)
`erals for input, and views the TCAP' s activities on the AT' s
`display. This enables the user to observe data stored on the
`TCAP without it being resident on the AT, which can be useful
`to maintain higher levels of data security. Also, the TCAP
`may tunnel data through an AT across a communications
`network to access remote servers. The disclosure also teaches
`a plug-n-play virtual private network (VPN).
`
`29 Claims, 17 Drawing Sheets
`
`Q
`
`I
`I
`
`r-------------------------------,
`l
`rn1e:n!fc':.g~'.thvi:CBts
`l
`~
`AT ;gz
`Wlfi, USS, etc.) ~ :
`130
`I
`I
`, - - -L - - - - , I
`I
`TC.AP powers up 310
`I
`' - - - - . - -~ I
`I
`. - - - 'L - - - - , I
`l
`TCAP loods/accesses operating
`system ill
`I
`' - - - - . - -~ I
`I
`. . - - - ' - - - - I
`:
`TCAP provides: memory space to
`Access Tenninal (AT) _gQ
`I
`' - - - , - -~ I
`. . - - - ' - - -~ I
`:
`AT accesses/mounts the TC.AP
`I
`memory space ill.
`I
`' - - - - - - - - - " I
`I
`I
`'
`
`I
`I
`
`:
`
`I
`I
`I
`I
`J
`I
`I
`I
`:
`I
`I
`I
`I
`:
`I
`I
`I
`:
`I
`1
`1
`I
`I
`I
`
`13/6'\~
`\.a)
`
`125
`
`PayPal Ex. 1002, p. 1
`PayPal v. IOENGINE
`
`

`

`US 9,059,969 B2
`Page 2
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`2/2007 Tamagno et al.
`7,178,724 B2
`7,213,766 B2 *
`5/2007 Ryan et al. .................... 235/492
`12/2007 Himmel et al.
`7,308,584 B2
`7,546,340 B2 *
`6/2009 Terasawa ...................... 709/203
`6/2009 Poo et al.
`7,549,161 B2
`7,558,953 B2 *
`7/2009 Osthoff et al. ................ 713/161
`7,762,470 B2 *
`7/2010 Finn et al. ..................... 235/492
`2002/0044663 Al *
`4/2002 King eta!. .................... 380/284
`6/2002 Mambakkam et al.
`2002/0073340 Al
`2002/0184349 Al * 12/2002 Manukyan .................... 709/221
`2002/0194499 Al
`12/2002 Audebert et al.
`2003/0005337 Al
`1/2003 Poo et al.
`
`2003/0028649 Al *
`2003/0158891 Al *
`2003/0182456 Al
`2004/0044897 Al
`2004/0127254 Al*
`2005/0172075 Al*
`2005/0197859 Al*
`2005/0198221 Al*
`2006/0052085 Al*
`2006/0071066 Al *
`2006/0294249 Al
`2007 /0038870 Al
`2007/0274291 Al*
`2008/0233942 A9 *
`
`2/2003 Uhlik et al. ................... 709/228
`8/2003 Lei et al. ....................... 709/203
`9/2003 Lin et al.
`3/2004 Lim
`7/2004 Chang ........................... 455/557
`8/2005 Marcus ......................... 711/115
`9/2005 Wilson et al. ..................... 705/2
`9/2005 Manchester et al. .......... 709/220
`3/2006 Rodriguez et al. ............ 455/411
`4/2006 Vanzini et al. ................ 235/380
`12/2006 Oshima et al.
`2/2007 Ciesinger
`11/2007 Diomelli ....................... 370/352
`9/2008 Kim .............................. 455/419
`
`* cited by examiner
`
`PayPal Ex. 1002, p. 2
`PayPal v. IOENGINE
`
`

`

`Fig. 1
`
`F drive users
`
`127
`
`Redundancy server
`
`F drive backend
`
`115
`
`Load-balanced servers
`
`Fdrive front end f
`
`120
`
`PayPal Ex. 1002, p. 3
`PayPal v. IOENGINE
`
`Storage (EMC)
`
`105
`
`Communication
`
`113a
`Network
`
`127
`
`\
`\
`
`\ 125
`
`~~ ;
`......_,__
`
`e
`
`113b
`Networ------
`
`113c
`Network
`
`Communication Communication
`
`F drive bock end
`
`110
`server
`
`

`

`U.S. Patent
`
`Jun. 16,2015
`
`Sheet 2 of 17
`
`US 9,059,969 B2
`
`Engoge Tunneling
`Client
`Access Point
`(TCAP} 201
`
`l09in using Access T erminof
`{AT) as o peripheral controller
`204
`
`1Log in My Account
`
`~205

`
`Login using Access Terminot
`TCAP Takes User Input from
`AT 210
`
`y
`
`N
`
`Execute on TCAP 220
`
`Aetess/store doto/ programs
`on TCAP/server 210
`
`Shutdown/store on TCAP
`240
`r-- -- ----1
`I Unmount TCAP 245
`L _______ -_J
`
`N
`
`Terminate TCAP 1/0
`driver on AT 250
`
`Fig. 2
`
`PayPal Ex. 1002, p. 4
`PayPal v. IOENGINE
`
`

`

`U.S. Patent
`
`Jun.16,2015
`
`Sheet 3 of 17
`
`US 9,059,969 B2
`
`--------7
`~
`.
`I
`Engage TCAP with Access
`Terminol (e.g., via BT,
`WiFi, USB, etc.) 305
`
`\
`
`- )
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`r----------------
`
`1
`I
`I
`!
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`l
`I
`I
`I
`j
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`tJO AT 327
`
`125
`
`~
`
`TCAP powers up 310
`
`TCAP loads/accesses operating
`system 315
`
`TCAP provides memory space to
`Access Terminal (AT) 320
`
`AT accesses/mounts the TCAP
`memory spoce 325
`
`I
`
`Fig. 3a
`
`PayPal Ex. 1002, p. 5
`PayPal v. IOENGINE
`
`

`

`U.S. Patent
`
`Jun.16,2015
`
`Sheet 4 of 17
`
`US 9,059,969 B2
`
`I
`I
`I
`I
`I
`I
`
`:
`~342
`: _______ 7
`I
`desktoptool.exe
`
`User engages TCAP memory to
`issue instruction signals (e.g.,
`executes a TCAP application by
`double-clicking mounted TCAP)
`340
`
`I
`I
`I
`r
`I
`I
`
`1------------
`1
`AT executes instructions from
`I
`'----------l- TCAP memory to provide 1/0
`I
`1
`[ Engage Tunneling Client
`for TCAP 345
`1
`Access Point (TCAP) 301
`L--------- -
`----------
`-------~
`Execution
`398
`
`Fig. 3b
`
`PayPal Ex. 1002, p. 6
`PayPal v. IOENGINE
`
`

`

`\C) = N
`
`O'I
`"' \C)
`\C)
`Ul
`"' 0
`\C)
`00
`d
`
`Fig. 4a
`
`0 -. ....
`('t) ....
`00 =- ('t)
`
`UI
`
`---l
`
`c:::=:::::i =
`
`c:::=:::::i
`
`440o
`
`425
`
`on!ine to reqister or login)
`Message ( e.g., please go
`
`Display Error Message
`
`Registration Information
`
`User Provides
`
`440
`
`y
`
`registration welcome
`
`Display login/
`
`screen 405
`
`PayPal Ex. 1002, p. 7
`PayPal v. IOENGINE
`
`y
`
`N
`
`User selection 41 O
`
`

`

`Fig. 4b
`
`ot remote server (e.g.,
`programs on TCAP and
`execute/store data/
`Allow user to access/
`
`decrypt) 485
`
`off-line (e.g., decrypt) ~
`
`programs on 'f
`execute/store data
`Allow user to accgliss
`
`PayPal Ex. 1002, p. 8
`PayPal v. IOENGINE
`
`---------.J
`
`prints, print documents, etc.)
`
`(e.g., run program, order
`Provide oll TCAP options
`
`480
`
`Provide TCAP off-line
`
`options (e.g., run
`
`program) 460
`
`>-__ ,,...,,,---synchronize 00 and-.........
`
`....... ,,
`
`----
`
`.,.,,.,~
`
`Ml\K!, etc. )450
`please choose different
`please re-enter; User exists,
`(e.g .• information incomplete,
`
`Display Error MeSS(lge
`
`online (dimmed if not online)/USB
`
`Provide Options ( e.g.,
`
`storage) 453
`
`-=--.J
`:
`r------------7
`
`L--
`
`,..., ..... •-----•-'l Synchronize 475
`
`..,,,.,,,..,,.
`
`,......,-#"',,,.,.
`
`YN
`,...__ 470
`
`',, off-line storage?
`
`

`

`Fig. 5a
`
`550
`Drag & Drop
`
`523
`
`521
`
`517
`
`519
`
`= = =
`'
`
`= 518
`
`507
`Please Install
`
`AT 307 130
`
`PayPal Ex. 1002, p. 9
`PayPal v. IOENGINE
`
`

`

`U.S. Patent
`
`Jun. 16, 2015
`
`Sheet 8 of 17
`
`US 9,059,969 B2
`
`~,
`
`...a
`LO
`•
`0,
`
`·-1.J..
`
`PayPal Ex. 1002, p. 10
`PayPal v. IOENGINE
`
`

`

`Fig. 60
`
`650
`
`lj 640
`
`esktoptool
`
`62.2
`621
`
`Welcome Dant
`
`630
`
`625
`
`PayPal Ex. 1002, p. 11
`PayPal v. IOENGINE
`
`

`

`U.S. Patent
`
`Jun.16,2015
`
`Sheet 10 of 17
`
`US 9,059,969 B2
`
`i21
`
`~
`ml
`
`~I
`
`..0
`(0
`
`• en ·-LL.
`
`0000000
`
`~,
`
`~I
`
`0
`
`0
`
`~I
`
`~ ~I
`D
`0
`
`PayPal Ex. 1002, p. 12
`PayPal v. IOENGINE
`
`

`

`\0 = N
`
`= UI
`\0
`d r.,;_
`
`0--,
`\0
`\0
`
`U.S. Patent
`
`Jun. 16, 2015
`
`Sheet 11 of 17
`
`US 9,059,969 B2
`
`746
`
`750
`
`744
`
`742
`
`748
`
`~
`
`0
`0
`
`D
`
`Fig. 7a
`
`741
`
`PayPal Ex. 1002, p. 13
`PayPal v. IOENGINE
`
`
`
`725
`
`0 -
`
`720
`
`715
`
`710
`
`c::::,
`
`705
`
`

`

`\C) = N
`
`O'I
`"' \C)
`\C)
`Ul
`"' 0
`\C)
`00
`d
`
`-l
`
`""'
`,...
`
`,...
`('t) ....
`00 =-
`
`('t)
`
`Q
`N
`
`0 ,...
`N
`:"
`? ,...
`;-
`
`UI
`
`U.S. Patent
`
`Jun. 16, 2015
`
`Sheet 12 of 17
`
`US 9,059,969 B2
`
`765
`
`Fig. 7b
`
`772
`
`Q_
`I
`
`o0o
`
`PayPal Ex. 1002, p. 14
`PayPal v. IOENGINE
`
`775
`
`
`
`752
`
`754
`=
`
`I
`
`780
`
`00
`ooo
`
`-1
`
`756
`=
`
`

`

`U.S. Patent
`
`Jun. 16,2015
`
`Sheet 13 of 17
`
`US 9,059,969 B2
`
`835
`
`830
`
`825
`
`Fig. 8
`
`PayPal Ex. 1002, p. 15
`PayPal v. IOENGINE
`
`

`

`User(s)933
`
`Client(s) '
`
`I
`
`Crypto Device
`
`928
`
`Fig. 9a
`
`Storage lnterf oce
`
`909
`
`Network lnterf ace
`
`910
`
`00
`0000
`o.,,_,,_~~..,.,o
`0
`0
`g 926 g
`° Crypto 0
`0
`0
`0
`0
`000000000
`
`-
`
`I
`I
`I
`I
`I
`1
`I
`l
`I
`I
`I
`l
`, ___ ...__ _ __,1
`I
`l
`I
`I 905
`l
`I RAM
`
`906
`ROM
`
`I
`I
`, ___ ,.._....i...--,1
`I
`I
`
`r-------------,
`
`PayPal Ex. 1002, p. 16
`PayPal v. IOENGINE
`
`Processor Interface
`
`Cryptographic
`
`927
`
`g 903 g
`~ CP.U
`0
`Q
`g@Jooooooog
`
`000000000
`O
`0
`0
`0
`
`-
`
`0
`
`930
`Clock
`
`Computer Systemization 902
`
`Interface Bus
`
`907
`
`Interface tl/0)
`Input Ouy,ut
`
`908
`
`....------,..System Bus __
`
`904
`
`

`

`U.S. Patent
`
`Jun. 16, 2015
`
`Sheet 15 of 17
`
`US 9,059,969 B2
`
`PayPal Ex. 1002, p. 17
`PayPal v. IOENGINE
`
`Fig.9b
`
`Cer
`
`1626Arowey
`
`3‘t{1tirfi!}i'1iit'ii‘t:'jit''t:ii:iiii1iiaii1i4ii1ii{ii1SkaitSAADaNNeBeeESI
`
`
`B16eSOqQD}DGSd¥OL
`
`
`
`G16einpow(SO)waysksBu_osado
`
`
`ZBBINPOWsantosoIydoUBoYu5
`
`
`S16ainpowJ3A55UORDUO;U
`
`
`
`
`aolaag36p10}5
`
`v6
`
`
`
`SEBFINPONSd¥OL
`
`
`
`
`
`pntanaeshnooenrmrrerrennnn'
`
`smeee nv, ma nnAaahe EE OS me
`
`46*
`614
`
`
`
`
`
`106(SdVOL)seduagyulogssaddyyayGuyauuny
`
`
`
`
`
`
`
`

`

`1012b Keyboard 1012
`0
`Mouse
`~ I
`n
`r
`
`II
`
`--
`1011b
`
`Access Terminal
`
`~
`
`..
`
`r------
`I
`etc.
`Wif1
`~•!work 1013
`"
`Communication
`
`(cid:143)
`
`.
`
`__ J
`I
`I
`I
`
`Server(s) 1033
`
`r------i.,
`
`I 0
`
`tJ
`
`I
`I
`
`Fig. 1 Oa
`
`PayPal Ex. 1002, p. 18
`PayPal v. IOENGINE
`
`Storage Interface
`~----------------J
`I
`r
`l
`: Network lnterf ace i
`r----------------,
`
`I
`
`I
`I
`
`'
`
`I
`
`1009
`
`1010
`
`I
`1
`
`Interface Bus
`
`--
`1007
`
`1/0 Interface 1008
`L-_t. ___ --J
`11066 l BT 1044:
`fBT 17or 1043
`"!
`
`Processor Interface
`
`Cryptographic
`
`1027
`
`I
`I
`I
`i
`r ----------~-----------...tf\..-.Jt.._ ________
`
`\.------------'
`IO~V00(cid:144)
`1cL _______ J0t
`101 --10:
`10! 1026
`lc-1
`,o, Crypto 101
`:o,
`,o:
`10,
`,01
`t V ;2.Y_~Q~"_q,_£, 0 I
`r----------,
`• • .t
`
`(cid:144)C,t
`
`01
`
`1
`
`'"'
`
`1004
`
`System Bus
`
`:
`
`I
`I
`I
`I
`I
`
`--I
`1006
`ROM
`
`t
`I
`I
`l
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I 1005
`I
`I
`I
`I RAM
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`f
`
`l
`I
`I
`I
`I
`
`I r-------------,
`
`\J 08~,/
`. lPOWER\
`
`, __
`
`✓,.--..... ,,
`
`T~J
`
`g 1003 g
`~ CPU
`0
`0
`0
`
`000000000
`0
`0
`0 --0
`
`1030
`Clock
`
`Computer Systemization 1002
`
`(cid:144)
`

`

`U.S. Patent
`
`Jun. 16, 2015
`
`Sheet 17 of 17
`
`US 9,059,969 B2
`
`
`
`
`ataheatSant1Vy|820k|wtih)|quandandaea||Hheent2OhEY,endOQOLOOtedJ00m0||
`[emmem%ieeeneneeeeeeiiW1(Oftw!“Bra)
`
`
`
`
`
`
`
`
`
`
`
`
`
`
` {,SLOL(ya“sosueswaype,juopng“Gra)swagianeog!EPG]Gayads!
`
`
`
`OtVOL)WlOgsseooyyuo)Burauuny
`
`
`G0]uORDULIOjL]AsAU0>
`
`Fig.1 Ob
`
`
`
`
`
`
`
`
`
`[001(dvoL)
`
`PayPal Ex. 1002, p. 19
`PayPal v. IOENGINE
`
`40
`Bly
`
`|‘
`
`L
`
`Prvemerrete
`
`|9103
`
`
`(B26Aiowsy1
`3601035 QNPOW
`
`ahapskshineehtenbntngsHHlltNieMNAAat
`
`avivag
`
`+101
`
`———oS6iLOL
`
`eseqnyogSdVol
`
`Jas)
`
`syunoody
`
`DBLOL
`
`
`
`
`
`SEOLSINPOWSd¥OL
`
`
`
`
`
`JOBSUOHOUNOJU;
`
`
`

`

`US 9,059,969 B2
`
`1
`APPARATUS, METHOD AND SYSTEM FORA
`TUNNELING CLIENT ACCESS POINT
`
`This application is a continuation application ofU.S. appli(cid:173)
`cation Ser. No. 12/950,321, filed Nov. 19, 2010, which is a
`continuation application ofU.S. application Ser. No. 10/807,
`731, filed on Mar. 23, 2003, now U.S. Pat. No. 7,861,006.
`
`FIELD
`
`The present invention is directed generally to an apparatus,
`method, and system of accessing data, and more particularly,
`to an apparatus, method and system to execute and process
`data by tunneling access through a terminal.
`
`BACKGROUND
`
`Portable Computing and Storage
`Computing devices have been becoming smaller over time.
`Currently, some of the smallest computing devices are in the
`form of personal digital assistants (PD As). Such devices usu(cid:173)
`ally come with a touch screen, an input stylus and/or mini
`keyboard, and battery source. These devices, typically, have
`storage capacities around 64 MB. Examples of these devices
`include Palm's Palm Pilot.
`Information Technology Systems
`Typically, users, which may be people and/or other sys(cid:173)
`tems, engage information technology systems (e.g., com(cid:173)
`monly computers) to facilitate information processing. In
`turn, computers employ processors to process information;
`such processors are often referred to as central processing
`units (CPU). A common form of processor is referred to as a
`microprocessor. A computer operating system, which, typi(cid:173)
`cally, is software executed by CPU on a computer, enables
`and facilitates users to access and operate computer informa(cid:173)
`tion technology and resources. Common resources employed
`in information technology systems include: input and output
`mechanisms through which data may pass into and out of a
`computer; memory storage into which data may be saved; and
`processors by which information may be processed. Often
`information technology systems are used to collect data for
`later retrieval, analysis, and manipulation, commonly, which
`is facilitated through database software. Information technol(cid:173)
`ogy systems provide interfaces that allow users to access and
`operate various system components.
`User Interface
`The function of computer interfaces in some respects is
`similar to automobile operation interfaces. Automobile
`operation interface elements such as steering wheels, gear(cid:173)
`shifts, and speedometers facilitate the access, operation, and
`display of automobile resources, functionality, and status.
`Computer interaction interface elements such as check boxes,
`cursors, menus, scrollers, and windows ( collectively and
`commonly referred to as widgets) similarly facilitate the
`access, operation, and display of data and computer hardware
`and operating system resources, functionality, and status.
`Operation interfaces are commonly called user interfaces.
`Graphical user interfaces (GUis) such as the Apple Macin(cid:173)
`tosh Operating System's Aqua, Microsoft's Windows XP, or
`Unix's X-Windows provide a baseline and means of access(cid:173)
`ing and displaying information, graphically, to users.
`Networks
`Networks are commonly thought to comprise of the inter(cid:173)
`connection and interoperation of clients, servers, and inter(cid:173)
`mediary nodes in a graph topology. It should be noted that the
`term "server" as used herein refers generally to a computer,
`other device, software, or combination thereof that processes
`
`5
`
`2
`and responds to the requests of remote users across a com(cid:173)
`munications network. Servers serve their information to
`requesting "clients." The term "client" as used herein refers
`generally to a computer, other device, software, or combina-
`tion thereof that is capable of processing and making requests
`and obtaining and processing any responses from servers
`across a communications network. A computer, other device,
`software, or combination thereof that facilitates, processes
`information and requests, and/or furthers the passage ofinfor-
`10 mation from a source user to a destination user is commonly
`referred to as a "node." Networks are generally thought to
`facilitate the transfer of information from source points to
`destinations. A node specifically tasked with furthering the
`passage of information from a source to a destination is com-
`15 manly called a "router." There are many forms of networks
`such as Local Area Networks (LANs), Pico networks, Wide
`Area Networks (WANs), Wireless Networks (WLANs), etc.
`For example, the Internet is generally accepted as being an
`interconnection of a multitude of networks whereby remote
`20 clients and servers may access and interoperate with one
`another.
`
`SUMMARY
`
`25
`
`Although all of the aforementioned portable computing
`systems exist, no effective solution to securely access,
`execute, and process data is available in an extremely com(cid:173)
`pact form. Currently, PDAs, which are considered among the
`smallest portable computing solution, are bulky, provide
`30 uncomfortably small user interfaces, and require too much
`power to maintain their data. Current PDA designs are com(cid:173)
`plicated and cost a lot because they require great processing
`resources to provide custom user interfaces and operating
`systems. Further, current PDAs are generally limited in the
`35 amount of data they can store or access. No solution exists
`that allows users to employ traditional large user interfaces
`they are already comfortable with, provides greater portabil(cid:173)
`ity, provides greater memory footprints, draws less power,
`and provides security for data on the device. As such, the
`40 disclosed tunneling client access point (TCAP) is very easy to
`use; at most it requires the user to simply plug the device into
`any existing and available desktop or laptop computer,
`through which, the TCAP can make use of a traditional user
`interface and input/output (I/0) peripherals, while the TCAP
`45 itself, otherwise, provides storage, execution, and/or process(cid:173)
`ing resources. Thus, the TCAP requires no power source to
`maintain its data and allows for a highly portable "thumb"
`footprint. Also, by providing the equivalent of a plug-n-play
`virtual private network (VPN), the TCAP provides certain
`50 kinds of accessing of remote data in an easy and secure
`manner that was unavailable in the prior art.
`In accordance with certain aspects of the disclosure, the
`above-identified problems of limited computing devices are
`overcome and a technical advance is achieved in the art of
`55 portable computing and data access. An exemplary tunneling
`client access point (TCAP) includes a method to dispose a
`portable storage device in communication with a terminal.
`The method includes providing the memory for access on the
`terminal, executing processing instructions from the memory
`60 on the terminal to access the terminal, communicating
`through a conduit, and processing the processing instructions.
`In accordance with another embodiment, a portable tun(cid:173)
`neling storage processor is disclosed. The apparatus has a
`memory and a processor disposed in communication with the
`65 memory, and configured to issue a plurality of processing
`instructions stored in the memory. Also, the apparatus has a
`conduit for external communications disposed in communi-
`
`PayPal Ex. 1002, p. 20
`PayPal v. IOENGINE
`
`

`

`US 9,059,969 B2
`
`3
`cation with the processor, configured to issue a plurality of
`communication instructions as provided by the processor,
`configured to issue the communication instructions as signals
`to engage in communications with other devices having com(cid:173)
`patible conduits, and configured to receive signals issued 5
`from the compatible conduits.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The accompanying drawings illustrate various non-limit(cid:173)
`ing, example, inventive aspects in accordance with the
`present disclosure:
`FIG. 1 is of a flow diagram illustrating embodiments of a
`tunneling client access point (TCAP);
`FIG. 2 is of a flow diagram illustrating embodiments of a
`system of turmeling client access point and access terminal
`interaction;
`FIG. 3 is of a flow diagram illustrating embodiments of
`engaging the tunneling client access point to an access termi(cid:173)
`nal interaction;
`FIG. 4 is of a flow diagram illustrating embodiments of
`accessing the tunneling client access point and server through
`an access terminal;
`FIGS. 5-8 is of a flow diagram illustrating embodiments of
`facilities, programs, and/or services that the turmeling client
`access point and server may provide to the user as accessed
`through an access terminal;
`FIG. 9 is of a block diagram illustrating embodiments of a
`tunneling client access point server controller;
`FIG. 10 is of a block diagram illustrating embodiments of
`a tunneling client access point controller;
`The leading number of each reference number within the
`drawings indicates the first figure in which that reference
`number is introduced. As such, reference number 101 is first
`introduced in FIG. 1. Reference number 201 is first intro- 35
`duced in FIG. 2, etc.
`
`4
`have access to and can provide extended storage 105 to the
`TCAP through the AT. In one embodiment, a single server and
`storage device may provide such TCAP server support. In
`another embodiment, server support is provided over a com(cid:173)
`munications network, e.g., the Internet, by an array offront(cid:173)
`end load-balancing servers 120. These servers can provide
`access to storage facilities within the servers or to remote
`storage 105 across a communications network 113b, c ( e.g., a
`local area network (LAN)). In such an embodiment, a back-
`! o end server 110 may offload the front-end server with regard to
`data access to provide greater throughput. For purposes of
`load balancing and/or redundancy, a backup server 115 may
`be similarly situated to provide for access and backup in an
`efficient manner. In such an embodiment, the back-end serv-
`15 ers may be connected to the front-end servers through a
`communications network 113b ( e.g., wide area network
`(WAN)). The backend servers 110, 115 may be connected to
`the remote storage 105 through a communications network
`113c as well ( e.g., a high speed LAN, fiber-channel, and/or
`20 the like).
`Thus, to the user 133a, the contents of the TCAP 130
`appear on the AT as being contained on the TCAP 125 even
`though much of the contents may actually reside on the serv(cid:173)
`ers 115,120 and/or the servers' storage facilities 105. In these
`25 ways, the TCAP "tunnels" data through an AT. The data may
`be provided through the AT's I/O for the user to observe
`without it actually residing on the AT. Also, the TCAP may
`tunnel data through an AT across a communications network
`to access remote servers without requiring its own more com-
`30 plicated set of peripherals and I/O.
`TCAP and AT Interaction
`FIG. 2 illustrates embodiments for a system of tunneling
`client access point (TCAP) (see FIG. 10 for more details on
`the TCAP) and access terminal interaction. FIG. 2 provides
`an overview for TCAP and AT interaction and subsequent
`figures will provide greater detail on elements of the interac-
`tion. In this embodiment, a user engages the TCAP 201. For
`example, the user may plug the TCAP into an AT via the AT' s
`USB port. Thereafter the user is presented with a login prompt
`40 205 on the AT' s display mechanism, e.g., on a video monitor.
`Topology
`FIG. 1 illustrates embodiments for a topology between a
`After a user successfully logs in (for example by providing a
`tunneling client access point (TCAP) (see FIG. 10 for more
`user name and password) 204, the TCAP can then accept user
`details on the TCAP) and TCAP server (TCAPS) (see FIG. 9
`inputs from the AT and its peripherals (the TCAP can then
`for more details on the TCAPS). In this embodiment, a user
`also provide output to the user via the AT's peripherals).
`133a may plug-in a TCAP into any number of access termi- 45
`The user may employ the AT's input peripherals as user
`nals 127 located anywhere. Access terminals (ATs) may be
`input devices that control actions on the TCAP. Depending on
`the user's actions 215, the TCAP can be used by the AT as a
`any number of computing devices such as servers, worksta(cid:173)
`tions, desktop computers, laptops, portable digital assistants
`storage device from which it can access and store data and
`programs 225. For example, if the user takes the action of
`(PD As), and/or the like. The type of AT used is not important
`other than the device should provide a compatible mechanism 50 opening a file from the TCAP's memory, e.g., by double
`of engagement to the TCAP 130 and provide an operating
`clicking on an icon when the TCAP is mounted as a USB
`drive on the AT, then the AT may treat the TCAP as a memory
`environment for the user to engage the TCAP through the AT.
`device and retrieve information from the TCAP 225. If the
`In one embodiment, the TCAP provides a universal serial bus
`user's action 215 is one that is directed at executing on the
`(USB) connector through which it may plug into an AT. In
`TCAP 215, then the AT will not be involved in any execution.
`other embodiment, the TCAP may employ Bluetooth, WiFi 55
`and/or other wireless connectivity protocols to connect with
`For example, if the user drops an icon representing a graphics
`ATs that are also so equipped. In one embodiment, the AT
`file onto a drag-and-drop location visually representing the
`provides Java and/or Windows runtime environments, which
`TCAP, then the file may be copied to the TCAP where it will
`allows the TCAP to interact with the input/output mecha(cid:173)
`process and spool the file for sending the graphics file to be
`nisms of the AT. See FIG. 9 for more details and embodiments 60
`printed at a remote location. In such a case, all of the require(cid:173)
`on the types of connections that may be employed by the
`ments to process and spool the file are handled by the TCAP' s
`TCAP. Once the TCAP has engaged with an AT, it can provide
`processor and the AT would only be used as a mechanism for
`the user with access to its storage and processing facilities.
`user input and output and as a conduit through which the
`If the AT is connected to a communication network 113, the
`TCAP may send files.
`Regardless of if there is an action 215 to execute on the
`TCAP may then communicate beyond the AT. In one embodi- 65
`TCAP 220 or to access or store data on the TCAP 225, the AT
`ment, the TCAP can provide extended storage and/or pro(cid:173)
`cessing resources by engaging servers 110, 115, 120, which
`is used to display the status ofany actions 23 0. At any time the
`
`DETAILED DESCRIPTION
`
`PayPal Ex. 1002, p. 21
`PayPal v. IOENGINE
`
`

`

`US 9,059,969 B2
`
`5
`user may select to terminate TCAP related facilities executing
`either on the AT, a backend server, on the TCAP itself, and/or
`the like 235. In one embodiment, the user may select a quit
`option that is displayed on the AT's screen. In another
`embodiment, the user may simply disengage the TCAP from 5
`the AT by severing the connection ( e.g., turning power off,
`physically pulling the device off the AT, turning off wireless
`transmissions, and/or the like). It should be noted that such
`abrupt severing may result in the loss of data, file corruption,
`etc. if the TCAP has not saved data that is on the AT or on 10
`some remote server, however, if the TCAP is employing flash
`like memory, its contents should remain intact.
`If there is no instruction signal to terminate the TCAP 235,
`execution will continue and the TCAP will continue to take
`and look for input from the user. Of course if the TCAP has
`been set to perform certain actions, those actions will con(cid:173)
`tinue to execute, and the TCAP may respond to remote serv-
`ers when it is communicating with them through the AT.
`When the user issues a terminate signal 235, then the TCAP
`will shut down by saving any data to the TCAP that is in the
`AT' s memory and then terminating any programs executing
`on both the AT and TCAP that were executed by and/or from
`the TCAP 240. Ifno activities are taking place on the TCAP
`and all the data is written back to the TCAP 240, then the
`TCAP may optionally unmount itself from the AT's file(cid:173)
`system 245. At this point, if there is a TCAP I/O driver
`executing on the AT, that driver may be terminated as trig(cid:173)
`gered by the absence of the TCAP at a mount point 250. After
`the TCAP is unmounted and/or the TCAP I/O driver is ter(cid:173)
`minated, it is safe to disengage the TCAP from the AT.
`TCAP and AT Interaction
`FIG. 3 illustrates embodiments engaging the tunneling cli(cid:173)
`ent access point to an access terminal interaction. Examples
`of engaging the TCAP 301 with an AT were discussed above
`in FIG. 1127, 130, 133a and FIG. 2 201. In one embodiment,
`the TCAP 130 is engaged with an access terminal 327, 305.
`As mentioned in FIG. 1, the TCAP is capable of engaging
`withATs using a number of mechanisms. In one embodiment,
`the TCAP has a USB connector for plugging into an AT,
`which acts as a conduit for power and data transfer. In another
`embodiment, the TCAP may use Bluetooth to establish a
`wireless connection with a number of ATs. In another
`embodiment, the TCAP may employ WiFi. In yet another
`embodiment, the TCAP may employ multiple communica(cid:173)
`tions mechanisms. It should be noted, with some wireless
`mechanisms like Bluetooth and WiFi, simply coming into
`proximity with an AT that is configured for such wireless
`communication may result in the TCAP engaging with and
`establish a communications link with the AT. In one embodi(cid:173)
`ment, the TCAP has a "connect" button that will allow such
`otherwise automatically engaging interactions take place
`only if the "connect" button is engaged by a user. Such an
`implementation may provide greater security for users (see
`FIG. 10 for more details on the TCAP).
`After being engaged 305, the TCAP will then power on. In
`an embodiment requiring a direct connection, e.g., USB,
`simply plugging the TCAP into the AT provides power. In a
`wireless embodiment, the TCAP may be on in a lower pow(cid:173)
`ered state or otherwise turned on by engaging the connect
`button as discussed above. In such an embodiment, the TCAP 60
`can employ various on-board power sources (see FIG. 10 for
`more details on the TCAP). The TCAP then may load its own
`operating system 315. The operating system can provide for
`interaction with the AT. In one embodiment, a Java runtime is
`executed on the TCAP, and Java applets communicate with 65
`the AT through JavaAPis. In another embodiment, a driver is
`loaded onto the AT, and the on-TCAP Java operating system
`
`6
`applets communicate to and through the AT via the driver
`running on the AT, wherein the driver provides an API
`through and to which messages may be sent.
`After engaging with the AT, the TCAP can provide its
`memory space to the AT 3 20. In one embodiment, the TCAP' s
`memory is mapped and mounted as a virtual disk drive 125
`storage 325. In this manner, the TCAP may be accessed and
`manipulated as a standard storage device through the AT's
`operating system. Further, the TCAP and in some cases the
`AT can determine if the AT is capable of accessing program
`instructions stored in the TCAP's memory 330. In one
`embodiment, the AT's operating system looks to auto-run a
`specified file from any drive as it mounts. In such an embodi(cid:173)
`ment, the TCAP' s primary interface may be specified in such
`15 a boot sequence. For example, under windows, anautorun.inf
`file can specify the opening of a program from t

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