throbber

`Internet Society
`
`
`Symposium on
`Network and Distributed
`
`
`System Security
`
`
`
`r February 22-23, 1996
`
`San Diego,California
`
`
`
`
`Cfilfi/IPUTER SOCIETY PRESS @ THE INSTITDTEOF ELECTRICALAND
`SOYEARS OF SERVICE . 1946-1996
`ELECTRONICSENGINEERS,INC.
`
`Petitioner Apple Inc. - EX. 1041, p. 1
`
`Petitioner Apple Inc. - Ex. 1041, p. 1
`
`

`

`i;
`
`Pr0ceedings of the
`
`k.
`
`Symposium on @etwork and Distributefl
`System Security
`
`Petitioner Apple Inc. - EX. 1041, p. 2
`
`Petitioner Apple Inc. - Ex. 1041, p. 2
`
`

`

`Proceedings of the
`
`Symposium on Network and Distributed
`System Security
`
`February 22 - 23, 1996
`
`San Diego, California
`
`Sponsored by
`
`The Internet Society
`
`____________________._.____.__.
`
`@ Coli/IPUTER SOCIETY
`
`SOYEARS or SERVICE . 1946-1996
`
`Los Alamitos, California
`
`Tokyo
`.
`Brussels
`.
`Washington
`
`
`_‘
`
`.
`
`Petitioner Apple Inc. - EX. 1041, p. 3
`
`3
`
`1
`
`Petitioner Apple Inc. - Ex. 1041, p. 3
`
`

`

`
`
`w.r,t,.,nte..t.wmi
`
`
`
`IEEE Computer Society Press
`10662 Los Vaqueros Circle
`PO. Box 3014
`Los Alamitos, CA 90720-1264 "
`
`
`
`4",;
`K W »'
`
`
`Copyright © 1996 by The Institute of Electrical and Electronics Engineers, Inc.
`'
`All rights reserved.
`Eff r
`
`_.
`
`
`
`A
`I “”
`
`Copyright and Reprint Permissions: Abstracting is permitted with credit to the source. Libraries may
`photocopy beyond the limits of US copyright law, for private use of patrons, those articles in this volume that
`carry a code at the bottom of the first page, provided that the per—copy fee indicated in the code is paid through
`the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923.
`
`Other copying, reprint, or republication requests should be addressed to:
`Service Center, 445 Hoes Lane, PO. Box 1331, Piscataway, NJ 08855-1331.
`
`IEEE Copyrights Manager, IEEE
`
`The papers in this book comprise the proceedings of the meeting mentioned on the cover and title page. They
`reflect the authors’ opinions and, in the interests of timely dissemination, are published as presented and without
`change. Their inclusion in this publication does not necessarily constitute endorsement by the editors, the IEEE
`Computer Society Press, or the Institute ofElectrical and Electronics Engineers, Inc.
`
`IEEE Computer Society Press Order Number PRO7222
`Library of Congress Number 95-82021
`ISBN 0-8186-7222—6
`
`Additional copies may be orderedfrom:
`
`IEEE Computer Society Press
`Customer Service Center
`10662 Los Vaqueros Circle
`PO. Box 3014
`Los Alamitos, CA 90720—1264
`Tel: +1—714—821—8380
`Fax: +1~714~821~4641
`Email: cs.books@computer.org
`
`IEEE Computer Society
`13, Avenue de l’Aquilon
`B-1200 Brussels
`BELGIUM
`Tel: +32-2—770-2198
`Fax: +32-2—770-8505
`euro.ofc@computer.org
`
`IEEE Computer Society
`Ooshima Building
`2—19-1 Minami—Aoyama
`Minato-ku, Tokyo 107
`JAPAN
`Tel: +81-3-3408-3118
`Fax: +81-3-3408-3553
`tokyo.ofc@computer.org
`
`Editorial production by Mary E. Kavanaugh
`Cover design by Danny M. Nessett
`Cover production by Joseph Daigle
`Printed in the United States of America by KNI, Inc.
`
`© The Institute of Electrical and Electronics Engineers, inc.
`
`Petitioner Apple Inc. - EX. 1041, p. 4
`
`Petitioner Apple Inc. - Ex. 1041, p. 4
`
`

`

`Proceedings of the Symposium on Network and Distributed Systems Security
`
`Table of Contents
`
`General Chair’s Message ......................................................................................................... vii
`
`Program Chairs’ Message ....................................................................................................... viii
`
`Organizing Committee ........................................._ ...................................................................... ix
`
`Program Committee ..................................................................................................................... x
`
`Privacy and Security Research Group ..................................................................................... xi
`
`Session 1: Electronic Mail Security
`
`Chair: Stephen T. Kent — BBN Corporation
`
`Mixing Email with BABEL ....................................................................................................... 2
`C. Gillcu' and G. Tsudik
`
`An Integration of PGP and MIME ............................................................................................ 17
`K. Yamamoto
`
`Session 2: Distributed Object Systems
`
`Chair: Danny M. Nessett —- Sun Microsystems
`
`A Security Framework Supporting Domain-Based Access Control in
`Distributed Systems .................................................................................................................. 26
`N. Yialelis and M. Sloman
`
`Panel —— Scalability of Security in Distributed Object Systems ................................................. 40
`Moderator: Danny M. Nessett — Sun Microsystems
`Panelists: Bret Hartman — Odyssey Research Associates
`
`Danny M. Nessett — Sun Microsystems
`Nicholas Yialelis — Imperial College, London
`
`Session 3: Distributed System Security
`
`Chair: Michael Roe — University of Cambridge
`
`A Flexible Distributed Authorization Protocol .......................................................................... 43
`J.T. Trostle and B. C. Neuman
`
`Preserving Integrity in Remote File Location and Retrieval ....................................................... 53
`T. Jaeger and AD. Rubin
`.
`
`C—HTTP —— The Development of a Secure, Closed HTTP-Based Network on the Internet ......... 64
`T. Kiuchi and S. Kaihara
`.
`
`Petitioner Apple Inc. - Ex. 1041, p. 5
`
`t
`i
`
`Petitioner Apple Inc. - Ex. 1041, p. 5
`
`

`

`IEEEvComputer Society Press
`Press Activities Board
`Vice President: Joseph Boykin, GTE Laboratories
`Jon T. Butler, Naval Postgraduate School
`Elliot J. Chikofsky, Northeastern University
`James J. Farrell III, Motorola Corp.
`Mohammed E. Fayed, University of Nevada
`I. Mark Haas, Bell Northern Research, Inc.
`Ronald G. Hoelzeman, University of Pittsburgh
`Gene F. Hoffnagle, IBM Corporation
`John R. Nicol, GTE Laboratories
`Yale N. Patt, University of Michigan
`Benjamin W. Wah, University of Illinois
`
`Press Editorial Board
`
`Advances in Computer Science and Engineering
`Editor-in-Chief: Jon T. Butler, Naval Postgraduate School
`Assoc. EIC/Acquisitions: Pradip K. Srimani, Colorado State University
`Dharma P. Agrawal, North Carolina State University
`Ruud Bolle, IBM T.J: Watson Research Center
`Vijay K. Jain, University of South Florida
`Yutaka Kanayama, Naval Postgraduate School
`Gerald M. Masson, The Johns Hopkins University
`Sudha Ram, University of Arizona
`David C. Rine, George Mason University
`A.R.K. Sastry, Rockwell International Science Center
`Abhijit Sengupta, University of South Carolina
`Mukesh Singhal, Ohio State University- V
`Scott M. Stevens, Carnegie Mellon«University
`.wglgighael Roy Williams,” TheUnivei‘sity of Calgary
`Ronald D. Williams, University of Virginia
`Lotfi Zadeh, University of California, Berkeley
`
`,
`
`,.
`
`.
`
`‘
`
`‘
`
`
`
`Press Staff
`
`T. Michael Elliott, Executive Director
`H. True Seabom, Publisher
`Matthew S. Loeb, Assistant Publisher
`Catherine Harris, Manager, Press Product Development
`Mary E. Kavanaugh, Production Editor
`Lisa O’Conner, Production Editor
`Regina Spencer Sipple, Production Editor
`Penny Storms, Production Editor
`Robert Werner, Production Editor
`Frieda Koester, Marketing/Sales Manager
`Thomas Fink, Advertising/Promotions Manager
`
`Offices of the IEEE Computer Society
`Headquarters Office
`1730 Massachusetts Avenue, N.W.
`Washington, DC 20036-1903
`Phone: (202) 371-0101 —— Fax: (202) 728—9614
`E-mail: hq.ofc@computer.org
`
`‘
`
`Publications Office
`PO. Box 3014
`10662 Los Vaqueros Circle
`Los Alamitos, CA 90720-1264
`Membership and General Information: (714) 821-8380
`Publication Orders: (800) 272—6657 — Fax: (714) 821—4010
`E-mail: cs.books@computer.org
`
`European Office
`13, avenue de l’Aquilon
`B-1200 Brussels, BELGIUM
`Phone: 32-2-770-21-98 — Fax: 32-2—770—85—05
`E-mail: euro.ofc@computer.org
`
`Asian Office
`Ooshima Building
`249—1 Minami~Aoyama, Minato-ku
`Tokyo 107, JAPAN
`Phone: 81-3-408—3118 — Fax: 81-3—408—3553
`E—mail: tokyo.ofc@computer.org
`
`
`Revised 11/15/95
`
`
`
`@ IEEE Computer Society
`
`IEEE Computer Society Press Publications
`
`CS Press publishes, promotes, and distributes over 20 original and
`reprint computer science and engineering texts annually. Original
`books consist of 100 percent original material; reprint books contain
`a carefully selected group of previously published papers with
`accompanying original introductory and explanatory text.
`
`Submission of proposals: For guidelines on preparing CS Press
`books, write to Manager, Press Product Development, IEEE
`Computer Society Press, PO. Box 30 14, 10662 Los Vsqueros Circle,
`Los Alamitos, CA 90720-1264, or telephone (714) 821-8380.
`
`Purpose
`
`The IEEE Computer Society advances the theory and practice of
`computer science and engineering, promotes the exchange of tech-
`nical information among 100,000 members worldwide, and pro- .
`vides a wide range of services to members and nonmembers.
`
`- Membership
`
`All members receive the monthly magazine Computer, discounts,
`and opportunities to serve (all activities are led by volunteer
`members). Membership is open to all IEEE members, affiliate
`society members, and others interested in the computer field.
`
`Publications and Activities
`
`Computer Society On-Line: Provides electronic access to ab-
`stracts and tables of contents from society periodicals and confer-
`ence proceedings, plus information on membership and volunteer
`activities. To access, telnet to the Internet address info.computer.or
`(user id: guest).
`'
`
`Computer magazine: An authoritative, easyto-read maga-
`zine containing tutorial and in-depth articles on topics across the
`computer field, plus news, conferences, calendar, interviews, and
`product reviews.
`
`Periodicals: The society publishes 10 magazines and seven
`research transactions.
`
`Conference proceedings, tutorial texts, and standards
`documents: The Computer Society Press publishes more than 100
`titles every year.
`
`Standards working groups: Over 200 ofthese groups produce
`IEEE standards used throughout the industrial world.
`
`Technical committees: Over 29 T05 publish newsletters,
`provide interaction with peers in specialty areas, and directly
`influence standards, conferences, and education.
`
`Conferences/Education: The society holds about 100 coufer~
`ences each year and sponsors many educational activities, includ-
`ing computing science accreditation.
`
`Chapters: Regular and student chapters worldwide provide the
`opportunity to interact with colleagues, hear technical experts, and
`serve the local professional community.
`
`
`
`,,WAwwmwwuvwmwuouiw.w«wm.ne\mvuwm»mswmwmmk“WWWMac‘s“...nWW.wwnmw.anamwsw..W
`
`Wm‘
`
`Petitioner Apple Inc. - EX. 1041, p. 6
`
`Petitioner Apple Inc. - Ex. 1041, p. 6
`
`

`

`C-HTTP -- The Development of a Secure, Closed HTTP-based Network
`on the Internet
`
`Takahiro Kiuchi
`
`Department of Epidemiology and Biostatistics
`_ Faculty of Medicine, University of Tokyo
`7-3-1 Hongo, Bunkyozku, Tokyo 113, Japan-
`
`Shigekoto Kaihara
`Hospital Computer Center
`University of Tokyo Hospital
`7-3-1 Hongo, Bunkyo-ku, Tokyo 113, Japan
`
`Abstract
`
`We have designed "C-HTTP" which provides secure
`HTTP communication mechanisms within a closed group
`of institutions on the Internet, where each member is
`protected
`by
`its
`own
`firewall.
`C—HTTP-based
`communications are made possible by the following three
`components: a client-side proxy, a server-side proxy and
`a C—HTTP name server. A client—side proxy and server-
`side proxy communicate with each other using a secure,
`encrypted protocol while communications beIWeen a user
`agent and client—side proxy or an origin server and
`server-side proxy are performed using current HTTP/1.0.
`In a C—HTTP—based network, instead ofDNS, a C-HTTP—
`based secure, encrypted name and certification service is
`used. The aim of C-HTTP is to assure institutional level
`security and is different in scope/ram other secure HTTP
`protocols currently proposed which are oriented toward
`secure end-to-end HTTP communications
`in which
`
`security protection is dependent on each end—user.
`
`1. Introduction
`
`,
`
`In the medical community, there is a strong need for
`closed networks among hospitals and related institutions,
`such as coordinating centers for clinical trials or clinical
`laboratories. Secure transfer of patient information for
`clinical use is obviously essential.
`In addition, some
`medical
`information has to be shared among some
`hospitals, but it should not be made available to other
`sites. This includes, for example, information concerning
`multi-institutional clinical trials and documents for case
`
`conferences although patients' names are usually not
`specified in such information. In this paper, we discuss
`the design and implementation of a closed HTTP
`(Hypertext Transfer Protocol)-based network (C-HTTP)
`which can be built on the Internet.
`
`2. Design and specification of C-HTTP
`2.1 Overview
`
`C-HTTP is assumed to be used .in a closed group of
`institutions on the Internet,
`in which each member is
`protected
`by
`its
`own
`firewall.
`C-HTTP-based
`communication is made possible with the following three
`components: 1) a client—side proxy on the firewall of one
`institution, 2) a server-side proxy on the firewall of
`another institution and 3) a C-HTTP name server, which
`manages
`a given C-HTTP-based network and the
`information for its all proxies. A client-side proxy and
`server-side proxy communicate with each other using a
`secure, encrypted protocol (C-HTTP). Communications
`between two kinds of proxies and HTTP/ 1.0 compatible
`servers/user agents within the firewalls are performed
`based on HTTP/ 1.0 with current C-HTTP implementation
`under way[1]. The DNS name service is not used for
`hostname resolution as the original secure name service,
`including certification,
`is used for the C—HTTP-based
`network. A summary of the protocol specification is
`described in the Appendices.
`
`,
`
`,,
`
`2.2 Security technology and key information
`In C—HTTP, five kinds of security technologies are used.
`They are:
`l) asymmetric key encryption for the secure
`exchange of data encryption keys between two types of
`proxies and host information between a proxy and C-
`HTTP name server, 2) symmetric key encryption for the
`encryption of C-H'I‘TP encrypted headers and HTTP/ 1.0
`requests, 3) electronic signature for the request/response
`authentication, 4) a one-way hash function for checking
`data tampering and 5) random key generation technology.
`In the C-HTTP name service, symmetric encryption is not
`used because the amount of information transferred is
`small,
`
`server—side proxy has its own
`Each client-side or
`private and public asymmetric keys and the C-HTTP
`name server's public key. Proxies do not exchange their
`
`0—8186-7222—6/ 96 $5.00 © 1996 IEEE
`Proceedings of SNDSS ’96
`
`64
`
`Petitioner Apple Inc. - Ex. 1041, p. 7
`
`
`
`Petitioner Apple Inc. - Ex. 1041, p. 7
`
`

`

`public keys with each other directly. Instead, the C-HI‘TP
`name server provides both client-side and server-side
`
`proxies with each peer's public key. In addition, Nonce
`values for both request and response are also generated
`and provided by the C-HTTP name server, which will be
`specified
`as
`initial values
`in Request-Nonce
`and
`Response-Nonce headers contained in the first C-HTTP
`
`request dispatched by a client-side proxy and in the first
`C-HTTP response dispatched by a server-side proxy,
`respectively. The C-HTTP name server manages its own
`private and public asymmetric keys and the public keys of
`all proxies which participate in the closed network. Two
`data encryption keys (symmetric keys) for requests and
`responses respectively are generated randomly during
`each C-I-ITTP session.
`
`An origin server which is compatible with HTTP/1.0 is
`responsible for user authentication if necessary. It uses
`the
`built-in HTTP/ 1.0
`authentication mechanism;
`
`ID, password and
`Information concerning a user's
`security realm (HTTP/ 1.0) are encrypted by proxies and
`are transferred only in encrypted form through the
`Internet. Replay attacks are blocked by checking values of
`the Request-Nonce header field of each request.
`When a given institution wants to participate in a
`closed network,
`it must 1)
`install a client—side and/or
`server-side proxy on its firewall, 2) register an IP address
`( for a server-side proxy, 3 port number should also be
`registered) and hostname (which does not have to be the
`same as its DNS name) for a firewall gateway, 3) give the
`proxy's public key to the C-H'ITP name server, and 4)
`obtain the C-HTTP name server's public key.
`In the
`present C-HTTP specification,
`there is only one name
`server in a given C-HTTP network, although one can
`define any possible combination of closed subnetworks
`within the network.
`
`2.3 C—HTTP—based communication
`C-HTTP-based
`communication
`is
`follows:
`
`summarized
`
`as
`
`1) Connection of a client to a client-side proxy
`A client-side proxy behaves as an HTTP/ 1.0 compatible
`proxy, and it should be specified as a proxy server for
`external (outside the firewall) access in each user agent
`within the firewall.
`In C-HTTP, as different
`from
`ordinary HTTP, a session (virtual C-HTTP connection) is
`established between a client-side proxy and server-side
`proxy and, thus, it is not stateless. The session is finished
`when the client accesses another C-HTTP server or an
`
`ordinary WWW server or when the client-side or server-
`side proxy times out. The following ad-hoc mechanism is
`employed to define a session in stateless HTTP/1.0-based
`communication between a client-side proxy and user
`
`agent. Suppose that the HTML specified in Figure (a) is
`retrieved and sent to a client—side proxy after a C-HTTP
`session is established. In the client—side-proxy, the HTML
`document
`is rewritten as specified in Figure (b) and
`forwarded to a user agent. When one of these resource
`names with a connection ID, for example,
`,
`"http://server.in.currentconnection/sample.htrnl=@=62d
`DfldchLjSVli" in Figure (b), is selected and requested by
`an end—user, the client-side proxy takes off the connection
`ID and forwards the stripped, the original resource name
`to the server in its request as described in Figure (c).
`When the connection ID is not found
`in the current
`connection table in the client—side-proxy,
`the current
`connection is disconnected. Thus a new connection is
`established if the host is in the closed network and an
`ordinary HTTP/1.0 request is dispatched otherwise.
`
`2) Lookup of server-side proxy information (Appendix 3.
`a,b)
`
`A client-side proxy asks the C-HTTP name server
`whether it can communicate with the host specified in a
`given URL. If the name server confirms that the query is ,
`legitimate, it examines whether the requested server-side
`proxy is registered in the closed network and is permitted
`to accept the connection from the client—side proxy. If the
`connection is permitted, theC-HTTP name server sends
`the IP address and public key of the server-side proxy and
`both request and response Nonce values. If it
`is not
`permitted, it sends a status code which indicates an error.
`
`then it
`If a client-side proxy receives an error status,
`performs DNS lookup, behaving like
`an ordinary
`HTTP/ 1.0 proxy.
`Both the request to and response from the C-HTTP
`name
`server
`are
`encrypted
`and
`certified,
`using
`asymmetric
`key
`encryption
`and
`digital
`signature
`technology.
`
`for connection to the server-side proxy
`3) Request
`(Appendix 3. c)
`When the C-HTTP name server confirms that
`
`the
`
`specified server-side proxy is an appropriate closed
`network member, a client-side proxy sends a request for
`connection to the server-side proxy, which is encrypted
`using the server-side proxy's public key and contains the
`client—side proxy's IP address, hostname, request Nonce
`value and symmetric data exchange key for
`request
`encryption.
`
`4) Lookup of client-side proxy information (Appendix 3.
`d,e)
`
`for
`request
`server-side proxy accepts a
`When a
`connection from a client-side proxy, it asks the C-HTTP
`
`65
`
`Petitioner Apple Inc. - Ex. 1041, p. 8
`
`Petitioner Apple Inc. - Ex. 1041, p. 8
`
`

`

`Figure. Conversion of
`stateful C—HTFP
`
`stateless HTTP to
`
`a. The HTML document sent from a origin server to a
`client—side proxy
`
`<TlTLE>SAMPLE</TITLE>
`<BODY>
`<A HREF =
`
`
`
`"http://server.in.cu rrent.connection/sample.html">
`Please click here.</A>
`<A HREF =
`i
`,
`"http://another.server.in.closed.network/">
`Another server.</A>
`</ BODY>
`
`b. The HTML document rewritten and forwarded to a
`
`use agent by the client—side proxy. The string,
`"6defldchLj8V!i", attached to the end of the URLs
`is a connection lD
`
`<TlTLE>SAMPLE< /TlTLE>
`<BODY>
`
`
`
`w .
`<A HREF =
`"http://server.in.current.connection/sample.html=@
`=62deldchLj8V!i">
`Please click here.</A>
`<A HREF =
`
`"http://another.server.in.closed.network/=@=62d Dfl
`dchLj8V!i">
`Another server.</A>
`</BODY>
`
`c. HTTP/1.0 request from the user agent (i) and
`HTTP/1.0 request encrypted and wrapped in C—HTTP
`request dispatched by the client~side proxy (2)
`
`(1)
`GET "http://server.in.cu rrent.connection/
`sample.html=@=6zdDfldchLj8V!i"
`HTTP/l .O<CR><LF>
`
`
`
`(2)
`GET "http://server.in.cu rrent.connection/
`sample.html"
`
`VHTTP/l .O<CR><LF>
`
`66
`
`an
`client-side proxy is
`the
`server whether
`name
`appropriate member of the closed network. If the name
`
`then
`it
`the query is legitimate,
`server confirms that
`examines whether the client-side proxy is permitted to
`access to the server-side proxy. If access is permitted, the
`C-HTTP name server sends the IP address and public key
`of the client—side proxy and both request and response
`Notice values, which are the same as those sent to the
`client-side proxy. The C—HTTP name server keeps both of
`the Nonce values for thirty seconds. If not,
`it sends a
`status code which indicates an error and the server-side
`
`proxy refuses the connection from the client-side proxy.
`
`5) Connection establishment (Fig. 2f)
`When the sever-side proxy obtains the client-side
`proxy's
`IP address,
`hostname and public key,
`it
`authentiCates the client-side proxy, checks the integrity of
`the request and the request Nonce value and generates
`both a connection ID derived from the server-side proxy's
`name, date and random numbers (32 bits) using MDS,
`and also a second symmetric data exchange key for
`response encryption, which are sent to the client-side
`proxy. When the client-side proxy accepts and checks
`them, the connection is established.
`
`6) Sending C—HTTP requests to the server-side proxy (Fig.
`2g)
`Once the connection is established, a client-side proxy
`forwards HTTP/ 1.0 requests from the user agent
`in
`encrypted form using C-HTTP format.
`
`7) Forwarding requests to an origin server
`Using HTTP/1.0, a server-side proxy communicates
`with an origin server inside the firewall. From the view of
`the user agent or client-side proxy, all resources appear to
`be located in a server—side proxy on the firewall. In reality,
`however, the server—side proxy forwards requests to the
`origin server. It is possible to map any of the virtual
`directories on the server-side proxy to any of the
`directories in one or more origin servers inside the
`firewall.
`
`8) Origin server responses to the user agent through the
`server-side and client-side proxies (Fig. 2h)
`An HTTP/ 1.0 response sent from the origin server to
`the server-side proxy is encrypted in C-H'ITP format by
`the server-side proxy, and is forwarded to the client-side
`proxy. Then,
`in the client-side proxy,
`the C—HTTP
`response
`is decrypted and the HTTP/ 1.0 response
`extracted. Ifthe transferred object is in HTML format, the
`connection ID is attached to the anchor URLs contained
`
`in the document. The resulting HTTP/ 1.0 response is sent
`to the user agent.
`
`
`
`
`
`““43““.WWs,,,m...a..a.we»W..,....r.V”,t.....,,..,.
`
`Petitioner Apple Inc. - Ex. 1041,,p. 9j
`
`m
`
`Petitioner Apple Inc. - Ex. 1041, p. 9
`
`

`

`9) Request for closing the connection (Appendix 3. i,j)
`A client-side proxy can send a request for closing the
`connection. The server-side proxy returns a status which
`indicates the connection is closed. On the other hand, if
`the server-side proxy detects that a given connection
`times out,
`it deletes
`the connection ID from the
`
`connection list, informing the client-side proxy that the
`connection is closed when an error status is returned in
`
`response to the request
`
`3. Trial implementation
`Trial implementation is under way using 1) RSA as the
`asymmetric key encryption method (OSISEC RSA
`library)[2], 2) DES as the symmetric key encryption
`method (GNU DES library)[3], 3) RSA as the electronic
`signature method (OSISEC RSA library) and 4) a one—
`way hash fimction based on MDS[4]). As for random key
`generation, programs included in the OSISEC RSA
`library and GNU DES library are used for RSA
`asymmetric keys and DES symmetric keys, respectively.
`In the implementation, we employed the following
`methods to enhance security.
`
`1) Key protection
`In C-HTTP, keys are stored only on the firewall of a
`given institution. C-HTTP proxy software is provided as
`source code, and the keys are designed not to be stored in
`a separate "key file." A key generation program generates
`a C program file, which contains key information for
`proxies.
`It
`is more difficult
`to steal keys using this
`method than if they were stored in a separate file.
`
`2) No simultaneous data transfer to both sides
`
`Only after receiving all the data transferred from one
`side, does a proxy server begin to forward it to the other
`side, except for image and sound data. In this method, the
`performance of data transfer is not good, however, the
`data transfer
`is separated between the internal and
`external sides. For the secure implementation of this
`feature, the size of HTML documents and object bodies
`should be limited and checked by each proxy. We plan to
`implement routines which check the contents of object
`bodies (especially concerning form data used in POST
`method) in the future.
`
`3) Closure of TCP connection after each transaction
`C-HTTP itself is statefirl, but the TCP connection is
`
`closed after each transaction (request and response pair)
`in order to reduce the possibility of it being intercepted by
`attackers.
`
`4. Discussion
`
`4.1 Why HTTP?
`It
`is possible to develop a secure application level
`protocol available only to a closed group in the Internet,
`making use of cipher technology. The reasons we chose
`HTTP as
`the communication protocol
`for a closed
`network are as follows:
`V
`
`l) Flexibility of HTTP
`been
`have
`protocols
`level
`Different
`application
`developed for individual network services, such as FTP,
`. SMTP, NNTP or GOPHER[5],[6],[7],[8]. HTTP has the
`flexibility to be able to provide services similar to those
`which have been provided by these protocols
`. For
`example, file transfer by FTP is accomplished by the
`object
`transfer mechanism of HTTP and,
`from a
`functional viewpoint,
`the Gopher protocol
`can be
`considered a
`subset of HTTP.
`Internet news
`and
`electronic mail services are available with an HTTP—
`
`based graphical user interface via gateways for protocol
`conversions[9]. Electronic mail services withina given
`group of institutions can be also developed using HTTP
`and CGI (Common Gateway Interface)[10].
`
`2) Hypertext—based user-friendly graphical interface
`Using HTTP and the Hypertext Markup Language
`(HTML), distributed multimedia information systems
`with user-friendly graphical interfaces based on hypertext
`can be easily developed[11].
`
`3) User agents and servers available on almost all
`platforms
`HTTP has now gained widespread popularity and
`various kinds of user agents and servers are available on
`almost all platforms. Even if new protocols for closed
`networks are developed which are superior in function or
`flexibility, new clients and servers have to be developed
`for compatibility, which is costly and an obstacle to their
`universal acceptance.
`
`4.2 Proxy-proxy vs. end-to-end secure HTTP-
`based information exchange
`As for hospitals, from which the Internet is available,
`in-hospital networks are usually protected using a dual
`home gateway and packet filter (firewall) and the Internet
`can only be accessed through proxies on the firewalls.
`The role of proxies in HTTP communication has been
`considered as important in communicating over firewalls
`and transferring information efficiently by caching. Other
`secure HTTP protocols are designed to be implemented in
`origin servers and user agents in order to assure "end-to—
`end" security protection[12-15]. Our approach is aimed at
`
`67
`
`Petitioner Apple Inc. - Ex. 1041, p. 10
`
`Petitioner Apple Inc. - Ex. 1041, p. 10
`
`

`

`assuring proxy-proxy security and is
`different from theirs.
`'
`
`fundamentally
`
`All proposals for secure HTTP communications are
`designed to be secure against the following attacks: 1)
`network tampering, 2) replay attacks and 3) middle of the
`man attack[12-15]. C-HTTP is also designed to be secure
`against these attacks and, in addition, it has the following
`enhancements for security protection.
`
`i?
`
`1) No end-user has any chance to obtain keys for
`encryption or decryption.—
`Much cost and time are necessary to decode ciphers
`which have been used for a long time and are considered
`confidential, such as DES or RSA, so an easier and more
`practical way to obtain original
`information is not
`to
`decode them, but to "steal a key" instead. It is not realistic
`for hospital
`information managers to expect
`that all
`individual end-users, including those who connect their
`PCs to in-hospital LANs, manage their keys in a secure
`manner.
`
`As currently proposed secure HTTP protocols aim at
`providing end-to-end security mechanisms, responsibility
`for security is attributed to each individual user. Secure
`transfer of data
`exchange
`keys
`is performed by
`exchanging public keys (in most cases with certificates)
`between both parties. In this situation, once a private key
`is stolen, it is possible to obtain information from WWW
`servers outside the hospital.
`Undoubtedly,
`the purpose of security protection is
`secure
`commercial
`information services or
`on—line
`
`shopping services which are provided by profit-making
`companies for the masses. For commercial services, it is
`reasonable that individual users (payers) are responsible
`for "their own risks," but, as for patient information, it is
`each hospital
`that
`should be responsible for "their
`patients' risks.“ Each hospital should take measures to
`assure security at the institutional level.
`
`2) Name service
`
`As C-HTTP includes its own secure name service,
`which contains a certification mechanism, it is impossible
`to know the IP address of a server-side proxy even if its
`C-HTTP hostname (not necessarily the same as its DNS
`name )
`is known and vice versa. The C-HTTP name
`service is efficient because it can do name resolution and
`
`host certification simultaneously,
`
`3) Difficulty in accessing from outside the closed network
`It is difficult to access any servers in a closed network
`from outside. A cracker has to take the following steps:
`
`a) To find the IP address and port number of a server—side
`proxy
`
`b) To get the public key of the server-side proxy in order
`to send a valid C-H'ITP request for C-HTTP connection.
`c) To make a TCP connection to a target server-side
`proxy using a certain client-side proxy’s IP address
`d) To make the server—side proxy believe that request
`comes from a legitimate client-side proxy within the
`closed network. For this,
`it
`is necessary to know the
`private key and C-HTTP hostname of the client-side
`proxy.
`
`There are other merits in favor of C-HTTP over other
`
`secure HTTP protocols, although they are not the original
`purposes of the development.
`
`1) Easy installation
`A C-HTTP based network is made available simply by
`installing proxies on the fireWall and registering their
`information with the C-HTTP name server. Current
`HTTP/ 1.0 compatible servers and clients can be used as
`they are.
`
`2) Simplicity
`There are no negotiations concerning security options
`or type and representation of objects in C-HTTP because
`C-HTTP-based
`communication
`is
`performed
`only
`. between two types of C-H'I'TP proxies and between a C-
`HTTP proxy and C-HTTP name server. They do not
`communicate directly with various types of user agents
`and servers using C-HTTP. Negotiations concerning type
`and representation of objects are done between an origin
`server and user agent, using HTTP/1.0. As for these
`negotiations, C-HTTP is transparent
`to both of them.
`This makes the design and implementation of C-HTTP
`simple.
`
`3) Easy manipulation by end-users
`End-users do not have to employ security protection
`procedures. They do not even have to be conscious of
`using C-HTTP based communications.
`
`4.3 Disadvantages and limitations
`Our proposal has some disadvantages and limitations,
`and it should be used where its use is appropriate and
`suitable, taking them into account.
`The key technology used in the Internet is dedicated to
`assure
`connectivity between the
`huge number of
`computers, which may be added or removed at any time.
`Such connectivity is attractive to commercial companies
`and, in this con

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