throbber
rid
`
`J
`
`0
`
`u
`
`• I
`
`R
`
`N
`
`A
`
`l
`
`Fourth International
`World Wide Web Conference
`The Web Revolution
`
`December 11-14, 1995
`Boston, Massachusetts, USA
`
`Conference Proceedings
`http:j jwww. w3.orgjWWW4/
`
`O'Reilly & Associates, Inc.
`
`PayPal Ex.1013, p.1
`
`

`
`WORLD WIDE WEB jOURNAL
`~~8IsSUE ONE: CONFERENCE PROCEEDINGS, FOURTH INTERNATIONAL WORLD WIDE WEB CONFERENCE
`
`Copyright Information:
`
`The individual contributions are copyrighted by the authors or their respective employers.
`The print compilation is Copyright © 1995 O'Reilly & Associates, Inc. All rights reserved.
`Printed in the U.S.A.
`
`Printing History:
`
`November 1995: First Edition
`
`Many of the designations used by manufacturers and sellers to distinguish their products are
`claimed as trademarks. Where those designations appear in this book, and O'Reilly & Associates,
`Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps.
`
`While every precaution has been taken in the preparation of this book, the publisher assumes no
`responsibility for errors or omissions, or for damages resulting from the use of the information
`contained herein.
`W
`This book is printed on acid-free paper with 85% recycled content, 15% post-consumer
`f).- -:\) waste. O'Reilly & Associates is committed to using paper with the highest recycled content
`'CJ<;:J available consistent with high quality.
`
`ISSN: 1085-2301
`
`ISBN: 1-56592-169-0
`
`PayPal Ex.1013, p.2
`
`

`
`T H E
`
`W 0 R L D
`
`w
`
`D E
`
`W E 8
`
`J 0 U R N A L
`
`C 0 N T E N T S
`
`SURVEY
`
`Results from the Third WWW User Survey ................................................................. l
`James E. Pitkow, Colleen M. Kehoe
`
`COLLABORATIVE SYSTEMS
`
`The Open Meeting: A Web-Based System for Conferencing and Collaboration ... 15
`Roger Hurwitz, John C. Mallery
`
`Using Versioning to Provide Collaboration on the WWW ....................................... 37
`Fabio Vitali, David G. Durand
`
`Group Asynchronous Browsing on the World Wide Web ........................................ 51
`Kent Wittenburg, Duco Das, Will Hill, Larry Stead
`
`Supporting Collaborative Information Sharing with the vVWW:
`The BSCW Shared Workspace System ....................................................................... 63
`Richard Bentley, Thilo Horstmann, Klaas Sikkel, Jonathan Trevor
`
`OBJECTS ON W3
`
`A Web of Distributed Objects ..................................................................................... 75
`Owen Rees, Nigel Edwards, Mark Madsen, Mike Beasley, Ashley McClenaghan
`
`W30bjects: Bringing Object-Oriented Technology to the Web .............................. 89
`David Ingham, Mark Little, Steve Caughey, Santosh Shrivastava
`
`CACHING
`
`Making World Wide Web Caching Servers Cooperate ........................................... 1 07
`Radhika Malpani, Jacob Lorch, David Berger
`
`Caching Proxies: Limitations and Potentials .......................................................... 119
`Marc Abrams, Charles R. Standridge, Ghaleb Abdulla, Stephen Williams, Edward A. Fox
`
`RESOURCE DISCOVERY
`
`IAFA Templates in Use as Internet Metadata ......................................................... 135
`Dave Beckett
`
`vii
`
`PayPal Ex.1013, p.3
`
`

`
`A World Wide Web Resource Discovery System ..................................................... 145
`Budi Yuwono, Savio L. Y. Lam, Jerry H. Ying, Dik L. Lee
`
`The Krakatoa Chronicle: An Interactive Personalized Newspaper
`on the Web ................................................................................................................ 159
`Tomonari Kamba, Krishna Bharat, Michael C. Albers
`
`Web Map: Concept Mapping on the Web ............................................................... 171
`Brian R. Gaines, Mildred L. G. Shaw
`
`TOOLS FOR BUILDING WEBS OVER DATABASES
`
`Swoop: An Application Generator for ORACLE/WWW Systems .......................... 185
`Andrew Hunter, Jan Ferguson, Steven Hedges
`
`Multi-Engine Search and Comparison Using the MetaCrawler ............................ 195
`Erik Selberg, Oren Etzioni
`
`DB: Browsing Object-Oriented Databases over the Web ........................................ 209
`C. Varela, D. Nekhayev, P. Chandrasekharan, C. Krishnan, V. Govindan, D. Modgi/,
`S. Siddiqui, D. Lebedenko, M. Winslett
`
`W3 APPLIED TO EDUCATION
`
`Toward a New Educational Environment ............................................................... 221
`Ming-Chih Lai, Bih-Horng Chen, Shyan-Ming Yuan
`
`CyberProf: An Intelligent Human-Computer Interface for Asynchronous
`Wide Area Training and Teaching .......................................................................... 231
`Alfred W. Hubler, Andrew M. Assad
`
`A Modular Training System for Education in the WWW Environment.. .............. 239
`U. Schroeder, B. Tritsch, A. Ktjerriem-Jasnoch
`
`A WWW Learning Environment for Mathematics .................................................. 251
`Kostadin Antchev, Markku Luhtalahti, Jari Multisilta, Seppo Pohjolainen, Kari Suomela
`
`W3 SOFTWARE DESIGN TECHNIQUES
`
`WWW Meets Linda: Linda for Global WWW-Based Transaction
`Processing Systems .................................................................................................... 259
`Werner J. Schoenfeldinger
`
`Interface-Parasite Gateways ...................................................................................... 277
`Robert A. Barta, Manfred Hauswirth
`
`viii
`
`World Wide Web Journal
`
`PayPal Ex.1013, p.4
`
`

`
`MEDIA
`
`Not Just Decoration: Quality Graphics for the Web ............................................... 291
`Chris Lilley
`
`Bringing Music to the Web ....................................................................................... 309
`Jacco van Ossenbruggen, Anton Eliens
`
`Polymap: A Versatile Client-Side Image Map for the Web ..................................... 315
`Cheong S. Ang, Michael D. Doyle, Peter Brantley
`
`Translating ISO 12083 Mathematical Markup for Electronic Documents ........... 323
`Roger Thompson, Keith Shafer
`
`Real-Time Video and Audio in the World Wide Web ............................................. 333
`Zhigang Chen, See-Mong Tan, Roy H. Campbell, Yongcheng Li
`
`Lessons for the World Wide Web from the Text Encoding Initiative .................... 349
`David T. Barnard, Lou Burnard, Steven J. DeRose, David G. Durand,
`C. M. Sperberg-McQueen
`
`MOBILE CODE
`
`Omniware: A Universal Substrate for Web Programming ..................................... 359
`Steven Lucca, Oliver Sharp, Robert Wahbe
`
`Low Level Security injava ........................................................................................ 369
`Frank Yellin
`
`SECURITY
`
`CCI-Based Web Security: A Design Using PGP ....................................................... 381
`Judson D. Weeks, Adam Cain, Briand Sanderson
`
`Securing the World Wide Web: Smart Tokens and Their Implementation .......... 397
`Michael F. Jones, Bruce Schneier
`
`CLIENT-SIDE TECHNIQUES
`Introducing Candleweb and A (awe), Bringing Animation Power
`to the World Wide Web ............................................................................................ 411
`Kjell ffystein Arisland, Svein Arne Johansen, Gunnar RRJnning
`
`Local Control over Filtered WWW Access .............................................................. .423
`Brenda S. Baker, Eric Grosse
`
`World Wide Web Journal
`
`ix
`
`PayPal Ex.1013, p.5
`
`

`
`Multi-Head Multi-Tail Mosaic .................................................................................. 433
`Brian C. Ladd, Michael V. Capps, P. David Stotts, Rick Furuta
`
`Mobile GUIon the Web ........................................................................................... 441
`Daniel Dardailler
`
`Using Graphic History in Browsing the World Wide Web .................................... .451
`Eric Z. Ayers, John T. Stasko
`
`AGENTS
`
`An HTTP-Based Infrastructure for Mobile Agents ................................................ .461
`Anselm Lingnau, Oswald Drobnik, Peter Dome/
`
`Jasper: Communicating Information Agents for WWW ........................................ 473
`John Davies, Richard Weeks, Mike Revett
`
`Constellation: A Web-Based Design Framework for Developing
`Network Applications ............................................................................................... 483
`Nino Vidovic, Dalibor F. Vrsalovic
`
`HYPERTEXT AND LINKING
`
`Linking in a Global Information Architecture ...................................................... .493
`Karen R. Sol/ins, Jeffrey R. Van Dyke
`
`Commercial Hypertext Publishing: Electronic Books Using Trails
`and the Author-Publisher-Reader Model ............................................................... 509
`Leslie D. Cuff
`
`Ingrid: A Self-Configuring Information Navigation Infrastructure ...................... 519
`Paul Francis, Takashi Kambayashi, Shin-ya Sato, Susumu Shimizu
`
`APPLICATION BUILDING TOOLS
`
`Application-Specific Proxy Servers as HTTP Stream Transducers ........................ 539
`Charles Brooks, Murray S. Mazer, Scott Meeks, Jim Miller
`
`Dyna Web: Integrating Large SGML Repositories and the WWW ......................... 549
`Gavin Thomas Nicol
`
`RMC: A Tool to Design WWW Applications ........................................................... 559
`Alicia DTaz, Tomas lsakowitz, Vanesa Maiorana, Gabriel Gilabert
`
`X
`
`World Wide Web Journal
`
`PayPal Ex.1013, p.6
`
`

`
`Programming the Web: An Application-Oriented Language
`for Hypermedia Service Programming ................................................................... 567
`David A. Ladd, Christopher Ramming
`
`PAYMENT
`
`Scalable, Secure, Cash Payment for WWW Resources
`with the Pay Me Protocol Set .................................................................................... 587
`Michael Peirce, Donal O'Mahony
`
`The Millicent Protocol for Inexpensive Electronic Commerce ............................. 603
`Steve Glassman, Mark Manasse, Martin Abadi, Paul Gauthier, Patrick Sobalvarro
`
`AUTHORING TOOLS
`
`A Schema-Based Approach to HTML Authoring ................................................... 619
`Marcus Kesseler
`
`Rules for Extending a WWW Client: The Symposia API.. ...................................... 633
`Jean Paoli
`
`The Distributed Link Service: A Tool for Publishers, Authors, and Readers ....... 647
`Leslie Carr, David De Roure, Wendy Hall, Gary Hill
`
`Structured Cooperative Authoring on the World Wide Web ................................ 657
`Dominique Decouchant, Vincent Quint, Manuel Romero Salcedo
`
`The Boomerang White Paper: A Page as You Like It ............................................. 667
`Curtis E. Dyreson, Anthony M. Sloane
`
`NOVEL APPLICATIONS FOR W3
`
`A World Wide Web Telerobotic Remote Environment Browser ............................ 677
`Eric Paulos, John Canny
`
`Data Transport Within the Distributed Oceanographic Data System ................... 691
`James Gallagher, George Milkowski
`
`Requirements for Taking Applications Beyond the Enterprise ............................. 703
`Graeme Port, Clifford Heath, Tim Segall, Phillip Merrick
`
`World Wide Web Journal
`
`xi
`
`PayPal Ex.1013, p.7
`
`

`
`BEST PAPERS FROM REGIONAL CONFERENCES
`
`Classifying Internet Objects ..................................................................................... 711
`F. Luis Neves, Jose N. Oliveira
`
`A Generic Map Interface to Query Geographic Information Using
`the World Wide Web ................................................................................................. 723
`David Crossley, Tony Boston
`
`xii
`
`World Wide Web Journal
`
`PayPal Ex.1013, p.8
`
`

`
`SCALABLE, SECURE CASH PAYMENT
`FOR WWW RESOURCES WITH THE
`FAYME PROTOCOL SET
`
`Michael Peirce, Donal OMahony
`
`Abstract
`Tbe use of the W1VW as an electronic marketplace is increasing, and there is a need for a cash payment
`system that is scalable, anonymous, and secure. In this paper we examine two existing systems, Ecash
`and NetCash, discuss their strengths and weaknesses and propose a new system called the FayMe
`Tran~fer Protocol (PMTP). We show how it improves on existing systems and illustrate its use with an
`example based on purchase of goods across the W1VW. Keywords: Web payment, electronic cash,
`secure payment, scalable payment, Internet payment mechanism~~ security
`
`Introduction
`The World Wiele Web has potential to become a
`highly efficient electronic marketplace for goods
`and services. When payments are effected elec(cid:173)
`tronically, there is always a risk that organizations
`may resort to gathering information relating indi(cid:173)
`viduals with the amounts that they have spent,
`locations involved, and types of good purchased.
`Misuse of such information can give rise to seri(cid:173)
`ous breaches of personal privacy [18]. If a pay(cid:173)
`ment system for the WWW is to receive wide(cid:173)
`spread support, it must offer its users some form
`of protection against the gathering of such infor(cid:173)
`mation. The most effective method of achieving
`this is to implement a form of electronic cash,
`where the coins being spent cannot be linked
`with their owner. This gives rise to a secondary
`problem in that since the coin is an electronic
`quality that is easily duplicated, such a payment
`system must guard against the coin being spent
`more than once. It should not be possible for an
`attacker to bypass the system or to falsely obtain
`monetary value from it.
`
`At the time of writing, it has been estimated that
`there may be over 30 million users of the Internet
`spread across 96 different countries [12] using
`over 6.6 million host computers [15], and these
`figures are rising very rapidly. This means that an
`
`effective electronic payment system must be
`highly scalable. In practice, the system must sup(cid:173)
`port large numbers of buyers and sellers affiliated
`to many different banks. The problem of detec(cid:173)
`tion of double spending is particularly acute, and
`solutions must be found that allow for large num(cid:173)
`bers of payments to take place without requiring
`unreasonably large databases to be maintained.
`In the following section, we discuss related work
`on two systems for electronic payment and go on
`to propose a new set of protocols that surmounts
`some of their inherent problems.
`
`Related Work
`Recently, two electronic cash systems, requiring
`no additional hardware such as smart cards,
`which can be used to make payments for WWW
`resources have been published.
`
`The first, Ecash, is a fully anonymous electronic
`cash system, using numbered bank accounts and
`blind signatures. The second, NetCash, uses iden(cid:173)
`tified electronic cash giving a more scalable but
`less anonymous system.
`
`Electronic cash is the electronic equivalent of real
`paper cash, and can be implemented using pub(cid:173)
`lic-key cryptography, digital signatures, and blind
`signatures. In an electronic cash system there is
`
`World Wide Web Journal
`
`587
`
`PayPal Ex.1013, p.9
`
`

`
`usually a bank, responsible for issuing currency,
`customers who have accounts at the bank and
`can withdraw and deposit currency, and mer(cid:173)
`chants who will accept currency in exchange for
`goods or a service. Evety customer, merchant,
`and bank has its own public/private key pair.
`The keys are used to encrypt, for security, and to
`digitally sign, for authentication, blocks of data
`that represent coins. A bank digitally signs coins
`using its private key. Customers and merchants
`verify the coins using the bank's widely available
`public key. Customers sign bank deposits and
`withdrawals with their private key, and the bank
`uses the customer's public key to verify the sig(cid:173)
`nature.
`
`Ecash from DigiCash
`Ecash [9, 10) is a fully anonymous electronic cash
`system, from a company called Digicash, whose
`managing director is David Chaum, the inventor
`of blind signatures and many electronic cash pro(cid:173)
`tocols[l, 2, 3, 4, 5, 61. It is an online software
`solution that implements fully anonymous elec(cid:173)
`tronic cash using blind signature techniques.
`
`The Ecash system consists of three main entities:
`
`• Banks who mint coins, validate existing
`coins and exchange real money for Ecash
`
`• Buyers who have accounts with a bank,
`from which they can withdraw and deposit
`Ecash coins
`
`• Merchants who can accept Ecash coins in
`payment for information or hard goods. It is
`also possible for merchants to run a pay-out
`service where they can pay a client Ecash
`coins.
`
`Ecash is implemented using RSA public-key ctyp(cid:173)
`tography. Every user in the system has their own
`public/private key pair. Special client and mer(cid:173)
`chant software is required to use the Ecash sys(cid:173)
`tem. The client software is called a "cyberwallet"
`and is responsible for withdrawing and deposit(cid:173)
`ing coins from a bank and paying or receiving
`coins from a merchant.
`
`Withdrawing Ecash Coins
`To make a withdrawal from the bank, the user's
`cyberwallet software calculates how many digital
`coins of what denominations are needed to with(cid:173)
`draw the requested amount. The software then
`generates random serial numbers for these coins.
`The serial numbers are large enough so that
`there is very little chance that anyone else will
`ever generate the same serial numbers. Using a
`100-digit serial number usually guarantees this.
`The serial numbers are then blinded using the
`blind signature technique [3). This is clone by
`multiplying the coins by a random factor. The
`blinded coins are then packaged into a message,
`digitally signed with
`the user's private key,
`encrypted with the bank's public key, and then
`sent to
`the bank. The message cannot be
`decrypted by anyone but the bank.
`
`When the bank receives the message, it checks
`the signature. The withdrawal amount can then
`be debited from the signature owner's account.
`The bank signs the coins with a private key.
`
`After signing the blind coins, the bank returns
`them to the user, encrypted with the user's public
`key. The user can then decrypt the message and
`unblind the coins by dividing out the blinding
`factor. Since the bank couldn't see the serial
`numbers on the coins it was signing there is no
`way to now trace these coins back to the user
`who withdrew them. In this way the cash is fully
`anonymous.
`
`Spending Ecash
`To spend Ecash coins, the user starts up their
`cyberwallet software and a normal Web client
`and then browses the Web until they find a mer(cid:173)
`chant shop selling goods. The Ecash software can
`be used with any existing Web client and Web
`server software. A merchant shop is simply an
`HTML document with URLs representing the
`items for sale. To buy an item the user selects the
`URL representing that item. The following steps
`then occur as shown in Figure 1.
`
`588
`
`Fourth International World Wide Web Conference Proceedings
`
`PayPal Ex.1013, p.10
`
`

`
`0 Send Coins
`Cyberwallet
`'--~~~--------------0 Receipt
`0 Merchant
`invoked
`
`0 Goods
`
`O Request URL - - - - - - - - - - - - - -+1
`Jlr-1---------- 0 Goods returned by Web Server
`
`Figure 1:
`
`Making a purchase with Ecash
`
`The numbered items in Figure 1 are explained in
`more detail here:
`
`1. The user's Web client sends an HTTP mes(cid:173)
`sage requesting the URL to the Merchant's
`normal Web server. This URL will invoke a
`Common Gateway Interface (CGI) program
`[19).
`
`2. The CGI program invoked will be the mer(cid:173)
`chant Ecash software, and it will be passed
`details of the item selected encoded in the
`URL. The
`location of the buyer's host
`machine will also be passed in an environ(cid:173)
`ment variable from the server to the mer(cid:173)
`chant Ecash software.
`
`3. The merchant software now contacts the
`buyer's wallet using a TCP/IP connection,
`asking it for payment.
`
`4. When the cyberwallet receives this request,
`it will prompt the user, asking them if they
`wish to make the payment. If they agree, the
`cybe1wallet will gather together the exact
`amount of coins and send this as payment to
`
`the merchant. The coins will be encrypted
`with the merchant's public key so that only
`the merchant can decrypt them:
`
`{Coins}K[public,Merchant]
`
`If they disagree or do not have the exact
`denominations necessary to make a correct
`payment, the merchant is sent a payment
`refusal message.
`
`5. When the merchant receives the coins in
`payment, he must verify that they are valid
`coins, and have not been double spent. To
`do this he must contact the bank, as only the
`minting bank can tell whether coins have
`been spent before or not. Thus the merchant
`packages the coins, signs the message with
`his private key, encrypts the message with
`the bank's public key, and sends it to the
`bank.
`
`{{Coins}K[private,Merchant]}K[public,Bank)
`
`6. The bank validates the coins by checking
`the serial numbers with the large online
`database of all the serial numbers ever spent
`
`World Wide Web Journal
`
`589
`
`PayPal Ex.1013, p.11
`
`

`
`and returned to the bank. If the numbers
`appear in the database then they are not
`valid, since they have been spent before. If
`the serial numbers don't appear in the data(cid:173)
`base, and have the bank's signature on
`them, then they are valid. The value of the
`coins are credited to the merchant's account.
`The coins are destroyed, and the serial num(cid:173)
`bers added to the database of spent coins.
`Thus coins are good for one transaction
`only. The bank notifies the merchant of the
`successful deposit.
`
`7. Since the deposit was successful, the mer(cid:173)
`chant was paid, and a signed receipt is
`returned to the buyer's cyberwallet.
`
`8. The purchased item, or an indication of suc(cid:173)
`cessful purchase of hard goods, is then sent
`from the merchant Ecash software to the
`Web Server.
`
`9. The Web server forwards this information to
`the buyer's Web client.
`
`Ecash client and merchant software is available
`for many platforms. Currently no real money is
`used in the system, but an Ecash trial [11] with
`10,000 participants, each being given 100 "cyber(cid:173)
`bucks" for free has been running since late 1994.
`There are many sample Web shops at which to
`spend cyberbucks.
`
`Advantages and Failings
`The strengths of Ecash are its full anonymity and
`security. The electronic cash used is untraceable,
`due to the blind signatures used when generating
`coins.
`
`By employing secure protocols using RSA public(cid:173)
`key cryptography, the Ecash system is safe from
`eavesdropping, and message tampering. Coins
`cannot be stolen while they are in transit. How(cid:173)
`ever,
`the protection of coins on the
`local
`machine could be strengthened by password
`protection and encryption.
`
`people start using the system, the size of this
`database could become very large and unman(cid:173)
`ageable. Keeping a database of the serial number
`of evety coin ever spent in the system is not a
`scalable solution. Digicash plans to use multiple
`banks each minting and managing their own cur(cid:173)
`rency with interbank clearing to handle the prob(cid:173)
`lems of scalability. It seems likely that the bank
`host machine has an internal scalable structure so
`that it can be set up not only for a 10,000 user
`bank, but also for a 1,000,000 user bank. Under
`the circumstances, the task of maintaining and
`querying a database of spent coins is probably
`beyond today's state-of-the-art database systems.
`
`NetCash
`NetCash [13, 14] is a framework for electronic
`cash developed at the Information Sciences Insti(cid:173)
`tute of the University of Southern California.
`Many of the ideas used in PayMe came from the
`NetCash proposal. It uses identified online elec(cid:173)
`tronic cash. Although the cash is identified there
`are mechanisms whereby
`coins
`can be
`exchanged to allow some anonymity. The system
`is based on distributed currency setvers where
`electronic checks, such as NetCheque [16, 22] can
`be exchanged for electronic cash. The use of
`multiple currency servers allows the system to
`scale well.
`
`The NetCash system consists of buyers, mer(cid:173)
`chants, and currency servers. An organization
`wishing to set up and manage a currency server
`obtains insurance for the new currency from a
`central certification authority. The currency
`server generates a public/private key pair. The
`public key is then certified by being signed by
`the central authority. This certificate contains a
`certificate ID, name of the currency server, cur(cid:173)
`rency server's public key, issue date, and an
`expiry date, all signed by the central authority:
`
`{Certif_id,CS_name,K[public,CS],issue_date,exp_
`date}K[private,Auth]
`
`The main problem with Ecash may be the size of
`the database of spent coins. If a large number of
`
`The currency server mints electronic coins, which
`consist of:
`
`590
`
`Fourth International World Wide Web Conference Proceedings
`
`PayPal Ex.1013, p.12
`
`

`
`0 {Coins, SKBuy Kauy S_id}KM
`
`0 {Coins, SKM, transJKcs
`
`Currency Server
`cs
`
`O {{amount, tr_id, date}KM- 1JSK8uy
`
`f) {new_coins}SKM
`
`Figure 2:
`
`Purchasing from a merchant using NetCash
`
`• Currency server name. Identifies a currency
`server.
`
`• Currency server network address. Where the
`currency server can be found; if this address
`is no longer in use, a name server can be
`queried to find the current address.
`
`• Expiry date. Limits the state that must be
`maintained by each currency server.
`
`• Serial number. Uniquely identifies the coin.
`
`• Coin value. Amount coin is worth. The coin
`is signed with the currency server's private
`key:
`{CS_name,CS_addr,exp_date,serial_
`num,coin_ va!lK[private, CS]
`
`The currency server keeps track of the serial
`numbers of all outstanding coins. In this way
`double spending can be prevented by checking a
`coin's serial number with the currency server at
`the time of purchase (or exchange). If the coin's
`serial number is in the database, it has not been
`spent already and is valid. When the coin is
`checked the serial number is then removed from
`the database. The coin is then replaced with a
`new coin (coin exchange).
`
`An electronic check can be exchanged with a
`currency server for electronic coins. The currency
`server is trusted not to record to whom the coins
`are issued. To further aid anonymity a holder of
`coins can go
`to any currency server and
`exchange valid coins for new ones. The currency
`server does not know who is exchanging coins,
`
`only the network address of where they are com(cid:173)
`ing from. By performing the exchange and by
`choosing any currency server to do this with, it
`becomes dift1cult to track the path of the coins. If
`a currency server receives coins that were not
`minted by it, it will contact the minting currency
`server to validate those coins.
`
`Figure 2 shows how a buyer uses NetCash coins
`to purchase an item from a merchant. In this
`transaction the buyer remains anonymous since
`the network
`the merchant will only know
`address of where the buyer is coming from. Net(cid:173)
`Cash assumes that the buyer has or can obtain
`the public key of the merchant, and that the mer(cid:173)
`chant has the public key of the currency server.
`
`Implementation details of how the NetCash pro(cid:173)
`tocols might be linked with applications such as
`the Web are not available, but it could be done
`in a similar fashion to Ecash using an out-of-band
`communications channel. The transaction con(cid:173)
`sists of the following four steps, starting from
`when the buyer attempts to pay the merchant:
`
`1. The buyer sends the electronic coins in pay(cid:173)
`ment, the identifier of the purchased ser(cid:173)
`vice(S_id), a freshly generated secret key
`(SK[Buyer]), and a public session key
`(K[public,Buyer]), all encrypted with
`the
`Merchant's public key, to the merchant.
`
`{Coins,SK[Buyer],K[public,Buyer],S_id}K[pub(cid:173)
`lic,Merchant]
`
`The message can't be eavesdropped on or
`tampered with. The secret key is used by the
`
`World Wide Web Journal
`
`591
`
`PayPal Ex.1013, p.13
`
`

`
`merchant to establish a secure channel with
`the buyer later. The public session key is
`later used to verify that subsequent requests
`originate from the buyer who paid for the
`service.
`
`the
`that
`to check
`2. The Merchant needs
`received coins are valid. To do this he sends
`them to the currency server to be exchanged
`for new coins or for a check. The merchant
`generates a new symmetric session key
`SK[Merchant] and sends this along with the
`coins and the chosen transaction type to the
`currency se1ver. The whole message
`is
`encrypted with the server's public key so
`that only it can see the contents:
`
`(Coins,SK[Merchant],transaction_typelK[pub(cid:173)
`lic,CS]
`
`3. The Currency server checks that the coins
`are valid by checking its database. A valid
`coin is one whose serial number appears in
`the database. The server will then return
`new coins or a check to the merchant,
`encrypted with the merchant's session key:
`
`(New _coinslSK[Merchant]
`
`4. Having received new coins (or a check) the
`merchant knows that he has been properly
`paid by the buyer. He now returns a receipt,
`signed with his private key and encrypted
`with the buyer's secret key:
`
`((Amount, transaction_id, date l K[private,Mer(cid:173)
`chantllSK[Buyer]
`
`The buyer can then use the transaction iden(cid:173)
`tifier and the public session key to obtain
`the service purchased.
`
`This is the basic purchase protocol used in Net(cid:173)
`Cash. While it prevents double spending it does
`not protect the buyer from fraud. There is noth(cid:173)
`ing to stop the merchant spending the buyer's
`coins without providing a receipt.
`
`Extensions to the protocol are detailed in [14].
`These are more complex and give protection
`against fraud for both the merchant and buyer.
`
`There are also mechanisms to allow the merchant
`to be fully anonymous to the buyer. Partially
`offline protocols where the bank does not need
`to be contacted during a purchase are also
`described. These, however, rely on the buyer
`contacting the currency server beforehand, and
`knowing who the merchant is at that time. They
`use a time window in which the coins are only
`valid for certain short lengths of time. Full techni(cid:173)
`cal details are given in [14].
`
`The advantages of NetCash are that it is scalable
`and secure. It is scalable since multiple currency
`servers are present and security is provided by
`the cryptographic protocols used. Possible disad(cid:173)
`vantages of the system are that it uses many ses(cid:173)
`sion keys and in particular public key session
`keys. To generate a public key of suitable length
`to be secure takes a very large amount of time
`compared with that involved in generating a
`symmetric session key. This could compromise
`the performance of the system as a whole.
`
`NetCash is not fully anonymous, unlike Ecash. It
`is difficult but not impossible for a currency
`server to keep records of who it issues coins to
`and who it receives them back from. The ability
`to exchange coins and use any or multiple cur(cid:173)
`rency servers increases the anonymity of the sys(cid:173)
`tem.
`
`A NetCash system is currently being imple(cid:173)
`mented, but no details are given as to how it will
`be linked with applications such as the Web.
`NetCheque will be used to provide checks that
`can be used to buy coins or that can be issued
`when coins are traded in.
`
`Discussion
`The two payment systems outlined each have
`their strengths and weaknesses. Ecash is a fully
`secure system that provides for very strong ano(cid:173)
`nymity. The use of banks within the system
`reflects current practice in nonelectronic payment
`systems. Successful operation of the Ecash sys(cid:173)
`tem depends on the maintenance of a central
`database of all coins ever issued within the sys-
`
`592
`
`Fourth International World Wide Web Conference Proceedings
`
`PayPal Ex.1013, p.14
`
`

`
`tern. If it were to become accepted as a global
`payment system, this would quickly become a
`major problem.
`
`NetCash uses identified coins with multiple cur(cid:173)
`rency servers, and thus, while anonymity is main(cid:173)
`tained, there is only a requirement to keep track
`of all currency currently in circulation. This
`makes for a much more scalable solution to the
`payment problem. NetCash is also fully secure,
`and achieves this using protocols that are quite
`complex in nature.
`
`The PayMe Protocol Set
`In an attempt to combine the best features of the
`two systems described, a new payment system
`called the FayMe Protocol Set was devised. A
`major goal was to preserve as much of the ano(cid:173)
`nymity provided by Ecash while adopting many
`of the features of NetCash that allow it to scale to
`large numbers of users with multiple banks. In
`the following sections, we will discuss the overall
`design of the protoc

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