`Lincke et al.
`
`USOO6253326B1
`(10) Patent No.:
`US 6,253,326 B1
`(45) Date of Patent:
`Jun. 26, 2001
`
`(54) METHOD AND SYSTEM FOR SECURE
`COMMUNICATIONS
`
`(75) Inventors: Scott D. Lincke, San Carlos; Ronald
`Marianetti, II, Morgan Hill, both of
`CA (US)
`(73) Assignee: Palm, Inc., Santa Clara, CA (US)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`(21) Appl. No.: 09/086,888
`(22) Filed:
`May 29, 1998
`
`(51) Int. Cl." .................................................... H06F 1/24
`(52) U.S. Cl. .......................... 713/201; 713/200; 713/168;
`380/255; 380/270
`
`(58) Field of Search ..................................... 380/255, 270,
`380/277,281, 283; 713/168, 171, 193,
`200, 201
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`4,432,057
`4,807,182
`4.866,611
`4,875,159
`4,956.809
`5,001,628
`5,065,360
`5,124,909
`5,142,619
`5,159,592
`
`2/1984 Daniell et al. ....................... 364/300
`2/1989
`... 364/900
`9/1989 Cree et al. ........................... 364/300
`10/1989 Cary et al. ........................... 364/200
`9/1990 George et al. .
`... 364/900
`3/1991 Johnson et al.
`... 364/200
`11/1991 Kelly ..............
`... 395/800
`6/1992 Blakely et al. ...................... 395/200
`8/1992 Webster, III ......................... 395/157
`10/1992 Perkins ................................ 370/85.7
`(List continued on next page.)
`OTHER PUBLICATIONS
`Schneier, Applied Cryptography 1995, sec. 2.4.*
`Brown, Mark R., “Using Netscape 3", (1996), pp. 7-38.
`McFedrie, Paul, “Windows 95 Unleashed”, (1996), pp.
`1114-1152.
`
`“Connectivity Pack for the HP 95LX” User's Guide,
`Hewlett Packard Co., (1991), pp. 1-1 to 6–5.
`Droms, R., “Dynamic Host Configuration Protocol',
`Request for Comments #1541, Oct. 1993, 24 pages.
`“Redline, Strikeout, and Document Comparison', pp.
`429-435.
`“LapLink for Windows SpeedSync’, printed from Traveling
`Software, Inc. website.
`“Introducing Windows 95” Microsoft Windows 93–For the
`Microsoft Windows Operating System, Microsoft Corpora
`tion, (1995), p. 66.
`(List continued on next page.)
`Primary Examiner Thomas R. Peeso
`(74) Attorney, Agent, or Firm- Van Mahamedi; Wilson
`Sonsini Goodrich & Rosati
`(57)
`ABSTRACT
`A communications System and methods for Securely trans
`mitting a message between a wireleSS client and a proxy
`Server are provided. A method for transmitting a message
`from the wireless client to a proxy server is provided. The
`message includes at least one packet of data and is encrypted
`using a data encryption key. The data encryption key is
`encrypted using a proxy server public key prior to Sending
`the encrypted data encryption key to the proxy server. A
`method for transmitting a message from the proxy server to
`the wireless client is also provided. The proxy server recov
`ers the data encryption key using the proxy server private
`key corresponding to the proxy server public key. The proxy
`Server encrypts the message using the data encryption key
`and transmits the encrypted message to the WireleSS client.
`A communications System for Secure communications com
`prising a Source of data, a proxy Server and a wireleSS client
`is also provided. Each transaction in the communications
`System comprises at least one request message and at least
`one response message. For each transaction, the wireleSS
`client encrypts a data encryption key using a proxy server
`public key. MessageS eXchanged between the wireleSS client
`and the proxy Server are encrypted using the transaction
`Specific data encryption key.
`
`36 Claims, 14 Drawing Sheets
`
`Wireless CTP
`Response
`
`CPResponse
`134
`
`wireless CTPQuery
`122
`
`Private Network
`72
`
`S5. - - -
`- St.
`
`
`
`food
`
`Screen
`101
`
`Query
`124
`
`Base
`Station
`1.
`
`Wifeless
`Communications
`Device 00
`
`
`
`
`
`Operating System 102
`Browser 104
`Wireless Application 106
`
`Example Query form
`105
`
`Example Que
`E. ry
`107
`
`HTTP Response
`36
`
`ProxyServer
`180
`
`Web Sever 140
`
`CGI 142
`HTMLPage 144
`
`
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 1
`
`
`
`US 6,253,326 B1
`Page 2
`
`
`
`U.S. PATENT DOCUMENTS
`
`4/1998 Perlman et al. ..................... 395/617
`5,742,820
`4/1998 Lynn et al. ...
`395/200.75
`5,745,699
`5/1998 Huang et al. ........................ 707/201
`5,758,354
`2/1993 Skeen et al. ......................... 395/600
`5,187,787
`6/1998 Kar et al. .....
`395/20078
`5,761,439
`5/1993 Shimada et al. ...
`395/600
`5,210,868
`9/1998 Lazaridis et al.
`395/200.68
`5,802,312
`8/1993 Yoshizawa et al. ..
`395/156
`5,235,679
`9/1998 Rodwin et al. ..
`... 395/500
`5,812,819
`8/1993 Kuechler et al. ..
`395/600
`5,237,678
`10/1998 Jackson, Jr. ............................ 707/10
`5,819,274
`10/1993 Malcolm ........
`395/146
`5,251.291
`5,857,191 * 1/1999 Blackwell, Jr. et al. .............. 707/10
`11/1993 Scully et al.
`395/161
`5,261,045
`5,861,883
`1/1999 Cuomo et al. ......
`... 345/326
`11/1993 Everson et al.
`... 395/600
`5,261,094
`5,911,141
`6/1999 Kelley et al. .......................... 707/10
`12/1993 Koss ............
`364/419.19
`5,272,628
`5,918,013
`6/1999 Mighdoll et al. ............... 393/200.47
`2/1994 Zachery ............................... 395/500
`5,283,887
`5.948,066
`9/1999 Whalen et al. ...................... 709/229
`4/1994 Terada et al. ........................ 395/600
`5,301,313
`6,006,258
`12/1999 Kalajan ................................ 709/219
`5/1994 Alston, Jr. et al.
`395/600
`5,315,709
`7/1994 Anderson ...........
`395/600
`5,327.555
`OTHER PUBLICATIONS
`7/1994 Brewer, III et al.
`395/148
`5,333,252
`66
`v rify r.
`8/1994 Rusis ..............
`395/700
`5,339,434
`Madnick, S. et al. Logical Connectivity: Applications,
`10/1994 Fukumura ...
`395/600
`5,355,476.
`Requirements, Architecture, and Research Agenda", IEEE
`1/1995 Clough et al. ....................... 345,173
`5,379,057
`(1991), pp. 142-153.
`2/1995 Crozier ................................. 395/161
`5,392,390
`“IntelliLink” The Intelligent Link, Microsoft Windows 3
`7/1995 Shaheen et al. ...
`395/500
`5,434,994
`Personal Information Managers, IntelliLink, Inc., (1990).
`10/1995 Thompson et al.
`395/600
`5,463,772
`Zahn, L. et al., “Network Computing Architecture', Prentice
`12/1995 Dauerer et al. ...
`395/600
`5,475,833
`Hall, New Jersey, pp. 1-209.
`1/1996 Palmer et al. .....
`395/157
`5,488,685
`552. 5,
`ENielsen et al.
`3. Cobb, D. et al., “Paradox 3.5 Handbook” Third Edition,
`2- -
`f
`ng et al..........................
`f
`Borland Bantam, New York, Oct. 1991, pp. 803-816.
`5,544,356
`8/1996 Robinson et al. ................... 395/600
`Alfieri, V., “The Best Book of WordPerfect Version 5.0
`5,546,539
`8/1996 Poling ............
`395/200.05
`eri, V, "The Best Book of WordPerfect version 5.0",
`5,572,528
`11/1996 Shuen ................................ 370'ssis
`Hayden Books, Indianapolis, IN (1988), pp. 151–165.
`5,574,859
`11/1996 Yeh ................
`... 395/200.01
`“PC-Link Release 2 for the Casio B.O.S.S. Business Orga
`5,592,669
`1/1997 Robinson et al. ................... 395/622
`nizer Scheduling System”, Travelling Software, Inc., (1989),
`5,598,536
`1/1997 Slaughter, III et al.
`395/200.16
`pp. 1-60.
`5,647,002
`7/1997 Brunson ................................. 380/49
`“I/O Applications Note” Serial Communications. Using the
`5,649,195
`7/1997 Scott et al. ........................... 395/617
`HP 95LX, Hewlett Packard, pp. 1-12.
`; 3. 3. al
`3.
`“Open Network Computing Technical Overview', Sun
`MicroSystems, Inc., pp. 1-32.
`f
`arket al. ..........................
`f
`2 - - -2
`5,673,322 * 9/1997 Pepe et al. ............................. 380/49
`“Sh
`O
`Link II. Model OZ-890’ O ti
`5,684,990
`11/1997 Boothby ............................... 395/619
`arp Organizer L1
`, MOCle.
`peration
`5,696.702
`12/1997 Skinner et al
`364/551.01
`Manual, pp. 1-105.
`5,699,513 * 12/1997 Feigen et al. ..
`... 713/201
`Dialog Search results for references generally related to
`5,704,029
`12/1997 Wright, Jr. ..
`395/149
`Palmtops, 15 pages.
`5,706.509
`1/1998 Tso ..............
`395/617
`Lamming, M., “Towards Future Personalised Information
`5,710,922
`1/1998 Alley et al. .......................... 395/617
`Environments”, Technical Report EPC-1994–104, Proc. of
`5,724,510
`3/1998 Arndt et al. ...................... 395/200.5
`FRIEND21, 94 Intl. Symp. on Next Generation Human
`5,727,159
`3/1998 Kikinis ...
`'S207
`Interface, Feb. 2–4, 1994, Japan, pp. 1–3.
`5,727,202
`3/1998 Kucala ................................. 395/610
`5,729,452
`3/1998 Smith et al. .................... 364/424.03
`* cited by examiner
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 2
`
`
`
`U.S. Patent
`
`Jun.26, 2001
`
`Sheet 1 of 14
`
`US 6,253,326 B1
`
`|oni
`
`
`
`eH6526-596(Sib)“DAISOOD
`#eCOGSZEKSID)—S,ONPOOSWmuonsvue
`.UONEDXSBaepooh#4VODMAT&
`pp)eedWH
`
`Zrh199
`
`
`youl9}O25UDAZUDGa280990907
`=061dilHrlasegeae)
`
`asuodseyditHewAap
`
`
`9¢fenesMeldenddossoAaMNngLYDVZiU9919S
`
`:wio4Auant)ajdwex3
`
`AsanouoneIsSSO|OIIM
`JaanenotuyneuennecpidHoeerTTTTThescostazecsin)—seweansy
`
`
`
`
`
`caetesioeGin)SORENTOantejdwiex3JMend9
`S061296(80%)SEFURHISGOL
`eamesUflfeeTT7-7EELbC9190(SIh)SOECOSTUBAGUBSUTBTjJ]*_cen6stecaw)_ewan|TasORSROOR
`
`
`
`
`08LiCGaalmeetsagus10\«OOSUYALOUINGBy,sspayy
`
`
`
`
`
`
`|eT
`
`tf:ES26596(Sih)“DIOLERYOO1)
`
`asuodsay
`
`LOL
`
`awa-—eeee
`
`
`
`
`
`velceasuodsay419asuodsey
`
`d1DSSdISIIM
`
`ovSUONEIIUNWWO?
`
`00}sonaq
`
`
`
`ZO}waysksBunesedo
`
`
`
`PO)Jasmolg
`
`UDYOY|a-PUESIRD
`
`aise
`
`
`
`
`
`90]uoneaiddyssajauia,
`
`isbezwongnedMd
`
`AGAINGLYOVZ
`
`wPOO)UyAODMA
`
`naworcearepoosastemensyyreajsaseekseverorentdJcosparergUNSUFWHT|asesersqeegm1orqnreae|Shanmes
`
`Petitioners Microsoft Corporation and HPInc.- Ex. 1025, p. 3
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 3
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 2 of 14
`
`US 6,253,326 B1
`
`Define Wireless Application
`210
`
`Create Server Web Site Content
`220
`
`Build Distributed
`Web Site
`Process 202
`
`
`
`LoadWireless Application onto Wireless Device
`230
`
`Filt in Wireless Application Query
`Form and Send CTP Query
`240
`
`
`
`Proxy Server Converts CTP Query to
`HTTP Request and Sends Request
`250
`
`Web Server Generates and Sends
`HTTP Response to ProxyServer
`260
`
`
`
`
`
`Proxy Server Converts HTTP
`Response to CTP Response and
`Sends CTP Response
`270
`
`Wireless Communications Device
`Displays Response from CTP
`Response
`280
`
`Query
`204
`
`Response
`206
`
`Figure 2
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 4
`
`
`
`U.S. Patent
`
`Jun.26, 2001
`
`Sheet 3 of 14
`
`US 6,253,326 B1
`
`¢eunbl4
`
`|IItI|I
`
`OLEJeqjoo)
`
`
`
`Auantajdwexy
`
`asuods
`
`01
`
`AeBea
`
`
`AdAINSLWOWZ
`201132129INOAJ33UdBSDI]J
`
`
`
`
`nPOOyUlAWOYRNDBYy,,
`O2S19UDAYUDGa-U01RDI07]
` ltIFieecguecaaxinnepeseIIpxee2be9196(SIP)SBSTSABIE
`
`ibe%C061926¢51h)—5,0BGDSUT|au0ydawoy!
`
` #eS06296(80h)SSiibsiID;ze£526596(51P)“D40NSIYODI,*€286526¢80b)
`
`ox=]Dgou!
`doeeweaeeeee
`quayjaoxe##epoohxxabpsaAd*|
`
` ODSIOVIETYWESUlWETS]|I739109SAO0]ULBIQDJIDAD32D|SABAING.Oho7a0uyHOApig|
`
`
`AsainsLYOVZdif
`
`
`IDLISPLIDANOA19303BSD3Ig
`Po,nen94g
`
`POO}ULAYAOYINDBYDy
`
`wJo4Auantyajdwexy
`
`3]0as]-wONDIO7
`spposoba,$Asayoaig@WNIAL
`ssaCCBRdog-eest)
`
`WOYZIONStfEmanS30UMfi
`SUOIIB4I>OpdoyAstayayDAodioyAs3aboydpBNUUDAGAY
`
`AA0iSIH&(6)>
`
`poo,puis
`
`AAOVSIH&(0)>
`
`poopul4
`
`
`
`Auant)pajajdwo9
`
`Jayoune
`
`€0€
`
`S7-01$&33d
`
`UDID}{#&TSUISIND
`
`USHA]&SPDAIIS
`
`dit
`
`STIPDABILSUIA
`
`UDI[D}|«“aUSIN>
`
`1SO7IAI3S
`
`AOAHE
`
`
`
`VORPOHGWIOgTSMBh][DIO]Be
`
`pooypuly[he
`
`Petitioners Microsoft Corporation and HPInc.- Ex. 1025, p. 5
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 5
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 4 of 14
`
`US 6,253,326 B1
`
`400
`
`420
`
`410
`
`
`
`
`
`Wireless
`Network
`Tunneler
`
`
`
`430
`
`405
`
`
`
`T
`
`Wireless
`Client
`
`Proxy Server
`
`
`
`Web/Mail
`Server
`
`
`
`
`
`(Internet
`
`18O
`
`190
`
`Figure 4- Wireless Network Topology
`Including Web/Mail Server
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 6
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 5 of 14
`
`US 6,253,326 B1
`
`500
`
`405
`
`50
`
`
`
`
`
`Wireless
`" a f"IP"
`i"UDP separvov
`
`Wireless
`Network
`Interface
`
`-
`
`- -
`
`- RVp":
`
`CTPMsg"
`
`410
`
`520
`
`Wireless
`Network
`Access Point
`
`
`
`
`
`170
`
`was assrooans a masam saasa
`
`
`
`530
`
`V.
`
`LAN
`
`Di Sp atcher
`
`sourvo poor was ansassius so
`
`TE,
`
`
`
`TCP
`port
`5001
`
`s
`
`Proxy Server
`
`18O
`
`Figure 5 - Wireless Network Topology Including a Wireless Network
`Interface, a Leased Line, and a Dispatcher
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 7
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 6 of 14
`
`US 6,253,326 B1
`
`600
`
`605
`
`Content Viewer User-Interface
`
`
`
`
`
`65
`
`
`
`625
`
`
`
`
`
`
`
`
`
`* |Application
`Format
`im.i
`
`E-mail Application
`User-Interface
`
`610
`
`... " Internal
`Application
`Format
`
`...' CML (Compact
`-
`Markup
`L
`anguage)
`
`L.
`
`
`
`620
`Message Formatting
`yer was
`.......... sove'''''''
`(Compact
`Markup
`Language) :
`
`630
`
`635
`
`
`
`Transfer
`Protocol)
`
`as
`
`a assassassessons assoeuvoos-ossus
`
`
`
`CTP stream
`(when wireline)
`
`...'
`
`...'
`
`(..." RMP Datagrams
`(when wireless)
`
`'''''''''''''''''''''''''""'''
`
`
`
`W.
`
`..................................s........
`
`Network IO Laver
`
`645
`
`Figure 6- Wireless Client Processing Resources Flow Diagram
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 8
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 7 of 14
`
`US 6,253,326 B1
`
`700
`
`70
`
`IP Header - - Provides source and destination machine addresses
`
`720
`
`730
`
`UDP Header - Provides source and destination port numbers and total
`length of datagram
`RMP Header - R index of message fragment relative to entire
`
`
`
`Message
`Fragment
`
`
`
`740
`
`Figure 7- RMP Packet Structure
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 9
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 8 of 14
`
`US 6,253,326 B1
`
`405
`N Wireless Client
`
`710
`
`800
`
`180
`/
`Proxy Server
`
`720
`
`\ P Header
`- - -
`UDP Header
`RMP Header
`1
`850 -- (Bit last Dg =
`810 - - --
`UIntV) dg Index = 0
`Request Message
`820 -- (40 bytes) Fragment
`
`710
`
`P Header
`
`UDP Header
`RMP Header
`1
`(Bit last Dg =
`UIntV) dig Index = 0
`Response Message
`(40 bytes) Fragment
`
`720
`- - 830
`860 :
`:
`
`
`
`840
`
`Figure 8 - Simple Exchange of a Single
`Request Packet and a Single Response Packet
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 10
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 9 of 14
`
`US 6,253,326 B1
`
`405
`
`Wireless Client
`
`
`
`810 -->
`
`
`
`
`
`
`
`
`
`900
`
`180
`/
`
`Proxy Server
`
`P Header
`UDP Header
`RMP Header
`1
`(Bit last Dg =
`UIntV) dg Index = 0
`RQMF
`(40 bytes)
`
`
`
`
`
`710
`
`720
`
`850
`
`710
`720
`920
`
`
`
`
`
`710
`720
`950
`
`P Header
`UDP Header
`RMP Header
`1
`(Bit last Dg =
`UIntV) dglindex = 0
`RSMF part 1
`(500 bytes)
`
`
`
`
`
`P Header
`UDP Header
`RMP Header
`1
`(Bit last Dg =
`UIntV) dig index = 0
`RSMF part 2
`(200 bytes)
`
`
`
`
`
`-- - 940
`
`Figure 9 - Exchange of messages comprising a
`single request packet and two response packets
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 11
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 10 of 14
`
`US 6,253,326 B1
`
`405
`
`N
`
`Wireless Client
`
`1000
`
`18O
`
`/
`
`Proxy Server
`
`P Header
`UDP Header
`RMP Header
`1
`(Bit last Dg =
`UIntV) dglindex = 0
`
`
`
`|- 710
`| - 720
`850
`
`820
`
`IP Header
`710 - -
`H
`720 -- UDP Header
`:
`RMP Header
`---910
`O
`920 - - (Bit last Dg =
`UntV) dg Index = 0
`RSMF Part 1
`(500 bytes)
`
`710
`720
`
`950
`
`|
`
`P Header
`UDP Header
`RMP Header
`(Bit last D- 1
`UIntV) dg index = 1
`RSMF part 2
`(200 bytes)
`
`- - - 940
`
`710
`
`P Header
`-
`UDP Header
`Bit last Dg = 1
`UIntV dglindex = OxFFFF
`Unt 16 num Segments = 1
`Unt 16 Start Dg = 1
`u- 5A 16 numdgs = 0xFFFF
`
`
`
`
`
`
`
`1010
`
`
`
`Rest of transaction not shown - Proxy
`Server re-sends second part of response
`
`Figure 10- Exchange of Messages
`including a Re-transmit Sequence
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 12
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 11 of 14
`
`US 6,253,326 B1
`
`1 100
`
`1130
`
`Application
`
`Preference
`Panel
`
`1140
`
`Sockets API
`calls to
`perform IO
`
`N /.
`66c 4-4----
`7
`N- Settings" calls to
`configure NetLib
`Net Library
`and Interfaces
`
`
`
`Packet
`read/write entry
`point to Network
`Interface
`
`/
`
`
`
`e
`C
`Network
`Interface
`
`
`
`1110
`
`6-4-4----
`Settings entry
`point to Network
`Interface
`
`Calls that control - ?
`Network
`Network
`hardware
`Hardware N
`1120
`
`510
`
`Figure 11- Lower Level Communications Layers
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 13
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 12 of 14
`
`US 6,253,326 B1
`
`1200
`
`1130
`
`Applications
`
`{..............sinessession ("Msg"
`
`1 1 l O
`
`635
`
`NetLib
`Reliable Message
`Layer
`
`
`
`Odose DOOOO
`
`-
`
`(m. CIP.
`"RMp"
`"Msg"
`i.e.i
`
`Network Interface
`
`510
`
`440
`
`Client Radio
`
`"RMP"
`"Msg";
`
`Figure 12 - Format of Data Passed Between Wireless
`Client Software Layers
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 14
`
`
`
`U.S. Patent
`
`Jun. 26, 2001
`
`Sheet 13 of 14
`
`US 6,253,326 B1
`
`1300
`
`O
`
`4
`
`8
`
`16
`
`19
`
`31
`
`Identification
`Time To Live
`
`Total Length
`FFlags Fragment Offset
`Header Checksum
`
`/
`
`IP Head
`
`CaOC
`
`710
`
`---
`
`
`
`
`
`
`
`Source IP Address
`Destination IP Address
`UDP Source Port
`UDP Dest Port
`UDP Message Length
`UDP Checksum
`
`
`
`/
`
`UDP Header
`
`720
`
`Figure 13 - IP and UDP Headers
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 15
`
`
`
`U.S. Patent
`
`Jun.26, 2001
`
`Sheet 14 of 14
`
`US 6,253,326 B1
`
`pLeunbl4
`
`ZrLIDO
`
`UOHEDXeTHEPookHeSEDIAD
`
`aewoqgome
`
`
`
`+eC061926(SIF)SOHPGOS
`
`
`
`##C526596(SIP)“DI0ISHYOPI
`
`
`
`Joussy}suOHeaUuNWWODoripunaguesa000207
`
`
`061987),wesbord(©an9007)
`asuodseyd]tH
`*awo-4Arantyajdwex3
`
`
`+e5061£96(80h)SENUBAGOL
`
`ID5med|sgmmensawmarel|Koning1vowzOM
`
`SKOAIMS10607BeuRNespi|owenaeon]
`in,oeoe0eeteeeeeeeTTTT]oncogssestsin) sperensy
`
`
`
`senspei96cen)SOE)Kantajdwex3JNaNOaI
`
`
`ODSEATALZUBSUlUPSETJ]&£20652s(on)omant-——
`
`
`
`
`abeQospPUrA,UPSUyUePOOsyA.ONNNO
`.asuodsay
`
`
`
`Z8y1JandwogJes/Aiand)ddSseleuiMKoningwowOhW9as9S
`
`
`
`pueSSO[SIIMcChwLFeUs>mnokseverviemtd
`
`JOua}U]St-01$=7d
`
`9¢
`
`OLr
`
`
`
`euuauyasuodsay
`
`dOSSa[AJIM
`
`wPOO4UEAQOIND*LO1
`
`i
`
`DSTAay(FOIAI8S
`
`SSOIOIIMA
`
`SUONe.IUNWWWOD
`
`00}891A9q
`
`
`
`ZO)wajsksBuyeredg
`
`70}Jasmolg
`
`
`
`SOELCS196(Sib)SOREN
`
`assicawods
`
`
`VFawearssoecsi)-o-0im0079
`
`eae
`
`
`
`1runyene449poohtevoomn|amseryinmeksareeorang
`
`201
`
`
`
`
`
`
`
`go]uoea|ddyssajaum
`
`Petitioners Microsoft Corporation and HPInc.- Ex. 1025, p. 16
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 16
`
`
`
`
`
`
`
`
`
`
`
`
`
`1
`METHOD AND SYSTEM FOR SECURE
`COMMUNICATIONS
`
`US 6,253,326 B1
`
`2
`Web). The following describes the usual techniques for Web
`browsing. A user Selects a web site associated with a URL
`(Uniform Resource Locator). The URL represents the
`address of the entry point to the web site (e.g., the home page
`for the web site). For example, the user may select a web site
`that Supplies restaurant reviews. The user's computer (the
`client) makes an HTTP (HyperText Transport Protocol)
`request to the web server hosting the web site. The client
`typically needs to make multiple HTTP requests of the web
`Server. For example, to load the restaurant locator home
`page, multiple HTTP requests are needed to download all the
`graphics, frame content, etc. Next, the user will typically
`need to browse through a number of linked pages to get to
`the page from which a Search for restaurants can be made.
`Even if the user is immediately presented with the desired
`page, a great deal of information has had to been down
`loaded from the web site (e.g., graphics, advertisements,
`etc.). This additional information makes for a visually rich
`browsing experience. The user fills in the information on this
`page and Selects a Search button. The client makes another
`series of HTTP requests of the web server. The web server
`Supplies the client with the requested information in an
`HTML formatted web page. The web page typically
`includes links to more graphics and advertisements that need
`to be accessed by the client.
`For low bandwidth networks this technique does not work
`well. Too much bandwidth is needed to download the
`images. Also, low bandwidth networks typically charge per
`byte transmitted and can be very expensive if large amounts
`of data are downloaded. Thus, low bandwidth networks are
`desirable to use for accessing information on the Web but
`only if the amount of data transferred over the network is
`Small. Specifically for packet data networks, the cost of
`transmitting messages increases with the number of packets
`transmitted. The cost of transmitting multiple packet mes
`Sages is therefore a formidable obstacle for packet data
`network customer use.
`One area in which Web access is becoming more desirable
`is in handheld devices. Handheld devices are emerging as
`important computer devices. Handheld devices typically
`implement a relatively Small, but important function Set.
`Examples of such handheld devices are the PalmPilot'TM
`handheld device available from 3COM Corporation, Inc. of
`Santa Clara, Calif. Examples of the function Set Supported
`are address books, calendars, and task lists.
`In the past, wireleSS communications with handheld
`devices have been performed using wireleSS modems, Such
`as are available from Novatel Communications, Inc. of
`Calgary, Alberta, or wireleSS transceivers for dedicated
`wireleSS data acceSS network. ESSentially a wireleSS modem
`operates in the cellular phone network and Supplies approxi
`mately 9600 baud bandwidth to the handheld device. This
`allows the user to access the web at a relatively low
`bandwidth.
`An issue with using handheld devices to access the Web
`is related to their capabilities. Even if connected to a high
`bandwidth network, most handheld devices do not have the
`Screen area or the processing power to display the graphics
`and large amounts of text in a typical web page. However,
`it is still desirable to Support the browsing of information on
`the Web using handheld devices. It is further desirable that
`the handheld devices be able to use networks that have
`relatively low bandwidths.
`Some of the methods by which previous systems
`addressed Some of the issues described above are now
`described.
`
`15
`
`CROSS REFERENCES TO RELATED
`APPLICATIONS
`This application relates to the following group of appli
`cations. Each application in the group relates to, and incor
`porates by reference, each other application in the group.
`The invention of each application is assigned to the assignee
`of this invention. The group of applications includes the
`following.
`U.S. patent application Ser. No. 09/087,515, entitled
`"Method and Apparatus for Communicating Information
`over Low Bandwidth Communications Networks, filed
`May 29, 1998, having inventors Jeffrey C. Hawkins, Joseph
`K. Sipher and Scott D. Lincke.
`U.S. patent application Ser. No. 09/087,563, entitled
`“Method, System and Apparatus for Packet Minimized
`Communications,” filed May 29, 1998, having inventors
`Ronald Marianetti II, Scott D. Lincke, and Jeffrey C. Hawk
`S.
`U.S. patent application Ser. No. 09/086,888, entitled
`“Method and System for Secure Communications, filed
`May 29, 1998, having inventors Ronald Marianetti II and
`Scott D. Lincke.
`U.S. patent application Ser. No. 09/087,552, entitled
`“Method and System for Wireless Internet Access, filed
`May 29, 1998, having inventor Jeffrey C. Hawkins.
`COPYRIGHT NOTICE
`A portion of the disclosure of this patent document
`contains material that is Subject to copyright protection. The
`copyright owner has no objection to the facsimile reproduc
`tion by anyone of the patent disclosures, as it appears in the
`Patent and Trademark Office patent files or records, but
`otherwise reserves all copyright rights whatsoever.
`THE FIELD OF THE INVENTION
`40
`This invention relates to the field of information commu
`nications. In particular, the invention relates to low band
`width network access to Internet based information.
`
`25
`
`35
`
`BACKGROUND OF THE INVENTION
`Wireless communications provides one method for
`mobile users to communicate to a wired network. In
`particular, wireleSS communications allows consumers to
`receive and Send information. Examples of Such wireleSS
`networks include cellular phones, pager Systems, and Satel
`lite Systems. The wireleSS network Systems can be broken
`into relatively high bandwidth and low bandwidth systems.
`High bandwidth Systems are for example Satellite Systems.
`Lower bandwidth Systems include cellular phones and
`mobile radio systems. Still lower bandwidth systems include
`pager networks and low bandwidth packet Switched radio
`systems (e.g., the BellSouth Mobile Data MobitexTM
`System).
`For users to access information on the Internet using
`wireleSS communications, the method in which they acceSS
`the information is highly dependent on the type of wireleSS
`communications available to the user. For example on a high
`bandwidth network Such as a wired network or a satellite
`System, the usual techniques for browsing data on the
`Internet are adequate.
`An important Source of Internet based data is the data
`accessible through the World Wide Web (referred to as the
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 17
`
`
`
`3
`One method of reducing the amount of data transferred
`from the web site to the client is to cache the web site data
`locally on the client. For example, the Netscape Communi
`cator" browser application caches web pages on the client.
`Each cached web page is associated with a URL. Thus, when
`the client requests a web page, the Netscape Communicator
`browser attempts to use previously cached web pages before
`downloading the pages from the web site. Another type of
`caching program is NetAttache", available from Tympany,
`Inc. of Mountain View, Calif. The NetAttache program
`downloads all the web pages from a given web site. The web
`pages are all cached on the client. A NetAttache Server runs
`locally on the client. A browser can then be used to browse
`through the local copy of the web pages. The problem
`caching is that the pages Still need to be retrieved from the
`server before they can be reused and there can still be a
`Significant number of connections made to the Web Server.
`Alternatively, Some programs are customized for access
`ing Specific information from particular web sites. Examples
`of these programs are Java applets that reside on the client
`or are served to the client by a server. The applets can then
`be reused to access information from a web site. An example
`of a specialized program for accessing Specific information
`is the RealVideo Player from RealNetworks, Inc. A problem
`with these types of programs is that they are very specific to
`a particular type of content. For example, they do not use
`Standard HTML (hypertext markup language) constructs.
`This means that web site developerS cannot use Standard
`Web Site development tools to create their Sites.
`Therefore what is desired is an improved System and
`method for handheld device to access Internet information
`over relative low bandwidth networks.
`
`15
`
`25
`
`SUMMARY OF THE INVENTION
`The following Summarizes various embodiments and
`aspects of the invention. Some embodiments of the inven
`tion include a method for Securely transmitting a message
`from a wireleSS client. The method for Securely transmitting
`a message from a wireleSS client comprises encrypting a data
`encryption key, encrypting the message using the data
`encryption key, and transmitting the encrypted message to a
`proxy server. The data encryption key is encrypted using a
`proxy Server public key to form an encrypted data encryp
`tion key. The message comprises at least one packet of data.
`Some embodiments of the invention include a method for
`Securely transmitting a message from a proxy server to a
`wireleSS client. The method for Securely transmitting a
`message from a proxy server comprises the following StepS.
`The wireleSS client encrypts a data encryption key using a
`proxy Server public key to form an encrypted data encryp
`tion key. The proxy Server receives the encrypted data
`encryption key. The proxy Server recovers the data encryp
`tion key using the proxy Server private key corresponding to
`the proxy Server public key. The proxy server encrypts the
`message using the data encryption key to form an encrypted
`message. The proxy server transmits the encrypted message
`to the wireleSS client. The message comprises at least one
`packet of data.
`Some embodiments of the invention comprise a System
`for Secure communications. The System comprises a Source
`of data, a wireleSS client, and a proxy server. The Source of
`data comprises means for transmitting an HTML message to
`the proxy server. The wireleSS client comprises means for
`eXchanging encrypted messages with the proxy server. Each
`message is encrypted using a data encryption key to form an
`encrypted message. Each encrypted message comprises at
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,253,326 B1
`
`4
`least one packet of data. Each encrypted request message
`corresponds to a hypertext document. Each encrypted
`request message comprises encrypted request parameters, an
`encrypted bit, an encryption Scheme field, an encrypted data
`encryption key, and encryption Scheme Specific parameters.
`The first portion of the encrypted request message corre
`sponds to fields in the hypertext document. The encrypted
`data encryption key is created using a proxy server public
`key. The proxy server is in communication with the wireleSS
`client and the Source of data. The proxy Server comprises
`means for exchanging messages with the wireleSS client,
`means for fetching HTML messages from the Source of data,
`and means for recovering the data encryption key using a
`proxy server private key corresponding to the proxy server
`public key.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The figures illustrate the invention by way of example,
`and not limitation. Like references indicate Similar elements.
`FIG. 1 illustrates a wireleSS communications device com
`municating with a web server.
`FIG. 2 illustrates a method of communicating between a
`wireleSS communications device and a web server.
`FIG. 3 illustrates an example user interface for a wireless
`communications device.
`FIG. 4 illustrates a wireless network topology.
`FIG. 5 illustrates a wireleSS network topology including a
`wireleSS network interface, a wireleSS network leased line,
`and a dispatcher.
`FIG. 6 illustrates an example of a wireleSS communica
`tions device exchanging messages in a communications
`System.
`FIG. 7 illustrates a reliable message protocol packet
`Structure.
`FIG. 8 illustrates an exchange of a single request packet
`and a single response packet using the reliable message
`protocol.
`FIG. 9 illustrates an exchange of messages comprising a
`Single request packet and two response packets using the
`reliable message protocol.
`FIG. 10 illustrates an exchange of messages including a
`retransmit Sequence using the reliable message protocol.
`FIG. 11 illustrates lower level communication layers.
`FIG. 12 illustrates the format of data passed between
`wireleSS client Software layers.
`FIG. 13 illustrates the format of an IP header and a UDP
`header.
`FIG. 14 illustrates an alternative system for communicat
`ing between a wireleSS communications device and a web
`SCWC.
`
`THE DESCRIPTION
`
`Table of Contents
`
`CROSS REFERENCES TO RELATED APPLICATIONS
`COPYRIGHT NOTICE
`THE FIELD OF THE INVENTION
`BACKGROUND OF THE INVENTION
`SUMMARY OF THE INVENTION
`BRIEF DESCRIPTION OF THE DRAWINGS
`THE DESCRIPTION
`TABLE OF CONTENTS
`OVERVIEW
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1025, p. 18
`
`
`
`US 6,253,326 B1
`
`S
`
`15
`
`25
`
`35
`
`40
`
`DEFINITIONS
`SYSTEM INTRODUCTION
`Browser
`Browser and HTML Compatibility
`Example Method of Communicating Between a Wire- 5
`less Communication Device and a Web Server
`Example User Interface
`WIRELESS NETWORK TOPOLOGY
`Intranet Topology
`CONTENT LAYER
`Compact Markup Language (CML)
`Compact Data Structure Notation
`CML Structure
`CML Tags
`Tag Definitions
`HTML Element Functionality
`The Head Elements
`The Body
`TRANSFER LAYER
`Wireless Client Software Block Diagram
`Compact Transfer Protocol
`CTP Structure
`CTP Requests
`CTP Responses
`CTP Data Types
`CTP Commands
`Hot Link Indices
`Encoding Indirect Hyperlinks
`Forms Processing
`Encoding Normal Form Submissions
`Encoding Server Dependent Form Submissions
`Secure Communications
`Security Requi