throbber
EWS-001118
`
`Early Warning Services 1011
`IPR of U.S. Pat. No. 8,887,308
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 1 of 15
`
`US 7,769,998 B2
`
`100
`
`—\
`
`102
`
`PROCESSOR
`
`INSTRUCTIONS
`
`
`
`
`
`104
`
`124
`
`
`
`
`1 h
`
`STATIC MENDRY
`
`120
`
`NETWORK
`INTERFACE
`
`DEVICE
`
`126
`
`1 10
`
`VIDEO
`DISPLAY
`
`108
`
`112
`
`ALPHA-NUMERIC
`INPUT
`
`DEVICE
`
`114
`
`CURSOR CONTROL
`
`DEVICE
`
`116
`
`MEDIUM
`
`
`
`
`122
`
`124
`
`118
`
`SIGNAL GENERATION
`
`DEVICE
`
`FIG. 1
`
`EWS—OO1 1 19
`
`EWS-001119
`
`

`

`US. Patent
`
`Aug. 3, 2010
`
`Sheet 2 of 15
`
`US 7,769,998 B2
`
`212
`
`208
`
`CLIENT
`
`210
`
`206
`
`I wasCLIENT I
`
`3RD PARTY
`
` 3RD PARTY SERVER
`
`APPLICATION I
`
`228
`
`200
`
`126 \
`
`202
`
`/
`
`
`NETWORK (E.G., INTERNET)
`
`
`
`
`ORK—BASED TRADI
`
`N-
`
`
`
`* 214
`”@15an
`
`f 216 l—
`
`
`CGI SERVER
`CGI SERVER
`WEB SERVER
`API SERVER
`
`
`
`AUTHENTICATION
`(WEB
`(PROGRAMMATIC
`AUTHORIZATION
`
`
` MODULE
`
`INTERFACE)
`INTERFACE)
`MODULE
`
`
`
`
`APPLICATION SERVER(S)
`
`PAYMENT
`APPLICATION(S)
`
`
`MARKETPLACE
`APPLICATION(S)
`
`
`
`222
`
`
`
`21 8
`
`DATABASES)
`
`ADMINISTRATIVE
`APPUCATIONS/
`FUNCTIONS
`
`DATABASE SERVER(S)
`
`EWS-OO1 120
`
`EWS-001120
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 3 of 15
`
`US 7,769,998 B2
`
`
`
`MARKETPLACE AND PAYMENT APPLICA110NS
`
`302
`
`304
`
`220-
`
`/—
`FIXED-PRICE
`AUCTION
`APPLICATION(S)
`APPLICATION(S)
`
`
`STORE
`APPLICATION(S)
`
`
`
`APPLICATION(S)
`
`REPUTATION
`APPLICATION(S)
`
`PERSONALIZATION
`APPLICATION(S)
`
`INTERNATIONALIATION
`APPLICATION(S)
`
`NAVIGATION
`APPLICATION(S)
`
`IMAGING
`APPLICATION(S)
`
`LISTING CREATION
`(SELLER)
`APPLICATION(S)
`
`
`
`LISTING MANAGEMENT
`(SELLER)
`APPLICATION(S)
`
`POST-LISTING
`MANAGEMENT
`APPLICATION(S)
`
`DISPUTE RESOLUTION
`APPLICATION(S)
`
`
`
`FRAUD PREVENTION
`APPLICATION(S)
`
`MESSAGING
`APPLICATION(S)
`
`ME RCHANDIZING
`APPLICATION(S)
`
`/_
`LOYALTY/
`PROMOTION
`APPLICATION(S)
`
`AUTHORIZATION AND
`AUTH ENTI CATI ON
`APPLICATION(S)
`
`PUBLICATION
`
`FIG. 3
`
`EWS-OO1 121
`
`EWS-001121
`
`

`

`US. Patent
`
`Aug. 3, 2010
`
`Sheet 4 of 15
`
`US 7,769,998 B2
`
`418
`
`40)
`
`\
`
`‘m
`
`FPMLYTPBE
`
`m-
`
`QFFENLY
`
`TABE
`
`
`
`[BERT/ABE
`
`4C2
`
`BEST/BE
`
`412
`
`414
`
`[TB/STARE
`
`FEEDBACK
`TAB_E
`
`HSTCRYTAE E
`
`410
`
`42
`
`INIEFESTRATE
`TABE
`
`416
`
`4%
`
`403
`
`ATIFIBJIES
`
`TAELE(S)
`
`TPAASOCHCN
`
`FIG4
`
`EWS—OO1 122
`
`EWS-001122
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 5 of 15
`
`US 7,769,998 B2
`
`amhum>¢<S=~E
`
`m.mva
`
`-filmmqio:2
`
`3mE<mmmUU<
`
`>K<QZOUHm
`
`aarr—w
`
`EWS—OO1 123
`
`aZO—Eéflbm—Omm
`
`
`E
`
`HZHmZOU
`
`72.205
`
`
`
`a.Him>m<u>=¢mOH.HUE—Qflfl
`
`9:.20—9
`
`fl
`
`SE:Ea532085Ohpom—Emmy.
`
`NW
`
`COI
`
`n L
`
`/‘I
`
`EWS-001123
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Aug. 3, 2010
`
`Sheet 6 of 15
`
`US 7,769,998 B2
`
`A USER TO ACCESS A PRIMARY SITE VIA A SECONDARY SITE
`602
`
`REDIRECT THE USER To
`THE PRIMARY SITE FOR
`ADMINISTRATIVE TAKS
`(E.G., SIGN-IN,
`REGISTRATION, AND/OR
`CONSENT AGREEMENT
`SIGNING)
`616
`
`‘ARTIAL TOKEN AT T ‘
`SECONDARY SITE
`ASSOCIATED WITH
`THE USER?
`604
`
`622
`
`THE SECONDARY SITE TO ACCESS APPLICATION PROGRAMMING INTERFACE (API) AT
`THE PRIMARY SITE ON BEHALF OF THE USER TO REQUEST USER ACCESS BY PROVIDING
`THE PARTIAL TOKEN TO THE SECONDARY SITE FOR MATCHING
`606
`
`I OES THE PARTI -
`I KEN FROM THE SECONDA '
`SITE MATCH THE PARTIAL TOKEN
`AT THE PRIMARY SITE?
`608
`
`AUTHENTICATE THE USER TO ACCESS THE PRIMARY SITE VIA THE SECONDARY SITEBY
`RETURNING AN API CALL FROM THE PRIMARY SITE TO THE SECONDARY SITE
`610
`
`AUTHORIZE THE USER TO ACCESS THE PRIMARY SITE VIA THE SECONDARY SITE BY
`RETURNING AN API CALL FROM THE PRIMARY SITE TO THE SECONDARY SITE
`612
`
`ACCESS THE PRIMARY SITE VIA THE SECONDARY SITE
`614
`
`GENERATE A TOKEN, ASSOCIATED WITH THE USER, AT THE PRIMARY STE
`618
`
`SPLIT THE TOKEN INTO TWO (OR MORE) PARTS
`620
`
`TRANSMIT A PART OF THE TOKEN (PARTIAL TOKEN) TO THE SECONDARY SITE VIA AN A '
`CALL
`
`FIG. 6
`
`EWS-OO1 124
`
`EWS-001124
`
`

`

`US. Patent
`
`Aug. 3, 2010
`
`Sheet 7 of 15
`
`US 7,769,998 B2
`
`PARTNERS 71
`
`
`
`GENERAL
`SPECIAL
`
`
`
`SECONDARY SITES
`SECONDARY SITES
`
`
`
`(e.g., MSN, PSP)
`
`
`m
`
`
`
`
`(e.g., PAYPAL)
`m
`
`
` PRIMARY SITE 7 4 U
`
`API/PLATFORM
`
`7.0.6.
`
`SIGN-IN SITE
`
`
`
`- FEDERATED
`(COMMUNITY
`ADAPTERS
`
`
`
`SITE)
`
`
`
`
`m F
`
`EDERATED
`MECHANISM
`CU
`
`m
`ADAPTER
`
`m
`
`
`
` TRANSACTION PLATFORM m
`
`CORPORATE
`TRUST
`
`SOUD
`ENVIRONMENT
`
`
`ADAPTER
`m
`
`
`
`CUSTOMER
`
`SUPPORT 726
`
`ACCOUNTING
`
`
`
`DEPT. m
`
`
`FINANCE
`
`
`DEPT.
`730
`
`
`PLATFORM SERVICES 724
`
`
`FIG. 7
`
`EWS-OO1 125
`
`EWS-001125
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 8 of 15
`
`US 7,769,998 B2
`
`
`
`mAASPZm—me—UDMH<_UOmm<
`
`EKOKE<AEE<
`
`an
`
`Ea7:205
`
`w.Uhm
`
`
`
`2m—Z4EUw—ZOmaha—mafia
`
`gm
`
`EWS—OO1 126
`
`Ma
`
`EWS-001126
`
`
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 9 of 15
`
`US 7,769,998 B2
`
`205550th00
`
`>E~50mmQ+ZV>EEOFS<
`
`A<~HZQQM¢U
`
`a
`
`@1590:EN
`QZHFZOME
`
`
`
`alga.mmzwfloafiz
`
`a.0:
`
`EWS—OO1 127
`
`Hm<m<h<d
`
`yum—N555
`
`A<~hzmnm~mo
`
`AZV>HEOEHD<
`
`9Ge
`
`x [
`
`/1
`
`EWS-001127
`
`
`
`
`

`

`U
`
`t
`
`f
`
`999,6
`
`
`
`0IIm8:983295»
`
`_mFor
`
`_5_11_
`
`IIII{02669;"£58m
`
`0_m_t_muE2&9S_:2E23_
`
`
`S.c225zmxokA265:588
`
`7,III.III7vmorNNo—W838$838$
`m28SS9932t2285.a2:822:8253223P.2585
`
`3,855200zwxob
`8:385@385868
`0.5moorM.£08
`
`
`23939:|cozwozcmgioomow
`
`
`
`
`83833528;062352
`
`mmm:
`
`mooF
`
`mIs29m
`
`EWS—OO1 128
`
`EWS-001128
`
`
`
`
`

`

`US. Patent
`
`Aug. 3, 2010
`
`Sheet 11 of 15
`
`US 7,769,998 B2
`
`
` RECEIVE A REQUEST FOR USER ACCESS AUTHENTICATION
`1102
`
`
`
`
`RUN THE AUTHENTICATION AUCTION TO PERFORM A CHECK ON
`THE USER
`
`1104
`
`
`
`CHECK WAS SUCCESSFUL?
`1 106
`
`
`
`
`
`STOP AUTHENTICATION
`
`
`AUTHENTICATE THE USER
`
`(AUTHENTICATION FAILED)
`1112
`1 108
`
`
`
`
`
`
`
`
`
`SEND AUTHENTICATION ERROR
`AUTHORIZE THE USER
`
`
`
`1110
`1114
`
`
`
`
`
`
`1116
`
`GENERATE A TOKEN ASSOCIATE WITH THE USER AT THE
`TRANSACTION PLATFORM OF THE PRIMARY SITE
`
`
`TRANSMIT THE TOKEN OR PARTIAL TOKEN TO THE SECONDARY
`
`
`SITE
`
`
`1118
`
`
`
`FIG. 11
`
`EWS-OO1 129
`
`EWS-001129
`
`

`

`U.S. Patent
`
`A
`
`1
`
`9,9679
`
`2B00
`
`So:92$255Rama9:mmwv.Uu83EMEoiwmmm50“0Euuwoe/HNEaanmmmmmis:saaA5m_9vS99hmfimm.8:gm.3flcozgmaom
`mbNOS
`72_5mSanmméU6238332.82:was:5can.6.6369.83c820>
`
`3,«ms:.22eA.555
`mwamiamuca>3225Emma2so
`0A99.$3me.5:thE2208:N;tomsv:33.5Cam2Eng30>=
`
`
`
`
`
`38205:05mu5.8mg_GG399D680EEEQSE5m5288833053£3353223Q_mu_
`
`
`
`9.9555:83D
`
`
`
`4mm5c_m958m"ma8:029.E282
`
`
`
`.74:.929:93w:
`
`SN—
`
`EWS—OO1 130
`
`
`
`
`
`gm:£02.8:85...39>gumgr.5:maSumoD
`
`<2.GE82
`
`EWS-001130
`
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 13 of 15
`
`US 7,769,998 B2
`
`
`
`mm.“.GE
`
`
`
`_mm5331.932.mmE_8.5;
`
`@19—382033.393“.E:23me_GG@v9bscam-6
`
`
`
`_ez._§=§=_Emg32a0883333330533353:$232
`
`
`
`22..was.mgcgmu—39>:32:.
`
`332358
`
`mcoznrommu3:33::588D
`635562.8330>.omEmENmm.mcozm3fiacoo
`
`NNNF
`
`cozgmaum>33D 8.9
`.82:EsD!
`
`«>83.3Ema.2m:>2uwusoa8.5.83529.:30>2323as;$323:39m>9:2;>36£3385562So:2330>85w
`
`
`>|Imm332<_162830233”._wamwmmsmsea:33__|m|:m_m_I:358.50E
`mana.So55205meEmQ.3326:50>£3353%gmamaca:9:coucm3288:3333:389:36:03823
`
`
`
`
`
`new:new230:
`
`>33vcmEnSo:can30>
`
`
`
`|E308m{3:33286238:39>«3552.8:32.53
`
`>mmmco
`
`$71]
`
`EWS—OO1 131
`
`EWS-001131
`
`
`
`

`

`U.S. Patent
`
`A
`
`m
`
`0
`
`51f041
`
`U
`
`9,9
`
`2B00
`
`3,ilfiEfilMySoEu_.5:2m_mmmE_95:
`
`1NVNF
`"mmvw_.mvmFmE35:60new354.
`t.%mum:udmsmmumm93«o353momHm
`
`«\huszé;Emeeé26200
`
`
`
`9BEES38..U
`
`EWS—OO1 132
`
`
`
`
`
`.3202SEE9:is69%30>tucmEmEmEmmEmmcou332.29:23m
`
`
`
`
`
`89:Emma.2ms.E8868._.oz=§EozmmmmEma.5m:Ema59
`
`
`
`
`
`“:0099‘wcwmcooSugar—
`
`
`
`
`
`gum—20$5.9m...Eseamwg_GGen.9Dxommfly_5245282.35£2889«Egaoafiasmzag9.22;@_mv_
`
`
`
`
`
`9m:$08$62832>:82E
`
`03GE2%
`
`
`
`
`
`
`
`E0802?Ewmcoo26:5:">mmoE
`
`EWS-001132
`
`
`

`

`U.S. Patent
`
`Aug. 3, 2010
`
`Sheet 15 of 15
`
`US 7,769,998 B2
`
`
`.55Ea|oncm>hamEmv2539.
`.202350>0.200—>mm03:050“00>6:50:000:0022m0.,_0>m000:an:3.cozmctsg05.90%3:000:05.>wmm0200.305E8502ecu—00>>tmn_Emv0.00:02580000:0_00500:00:25
`
`
`
`
`
`
`
`
`
`
`as:082e:0:5.053.Couco>Ban.Emv
`
`
`
`
`
`
`
`0.00:08.25$00900>00.920:5;9s0.200€028“5:00350>09509>8050:85.050.0".
`
`
`:050:03:00>0m>_._Couco>>201Emv05263288E.Aouco>250%.?:2850>coE020002A0000>50Emv=an00>:2:5:20:82>80:02;28658«980m5x0050
`
`
`
`
`90:000:200:80...a9.0:..6.080:5:87=8.25:«0:9..200.82:2.30:.0:8>30>_2>000:08a,mm05E30:90
`
`
`
`
`
`
`
`
`
`103.0000?>032“.Lo0.080030:302mm5000=28>E:020:80.02.000088:00
`
`.60.0308.253E.EE.50>33$.2.0.EW:28>E:0352E0:20005000.00:06:000:25;
`
`
`§>mm005mm:03mm>0__00502.0010055>50Emv5E8:00.800:_
`
`.20....80E0:832.00020:0000Eu:8REm.20.E2_50>__0m200:55£02@500=28>8:00:260057.:E0:E0050
`
`0:12.0068>80>2*000:000.05:20:35qu055030.8%>_E250m_.0500:05.25
`
`>==0§0m_:2:00:00:85
`
`
`
`0502002:90...Icemwmg_GU@D9b0.036.220:3:82000520088203200903053....3202a_nu_
`
`_mm500.6_.mE2.meE_0E0;
`
`mmmF
`
`ON“GE00$
`
`
`
`0.0:$0809:26“.33>gum0E
`
`
`
`2ch>5:00E0:000:330:09:33Eaton.
`
`60020.503%30.0.00020N.
`
`x0380.>5>033“.
`
`ommr
`
`39.60
`A03:500:0023
`
`.5;.0.0020£803_080:.00330055005E
`
`.__$_2:0:.00207.
`
`EWS—OO1 133
`
`EWS-001133
`
`
`
`
`

`

`US 7,769,998 B2
`
`1
`METHOD AND APPARATUS TO
`AUTHENTICATE AND AUTHORIZE USER
`ACCESS TO A SYSTEM
`
`RELATED APPLICATIONS
`
`This application claims the priority benefits of US. Provi-
`sional Applications No. 60/482,963 and 60/482,971, filed
`Jun. 26, 2003, which are incorporated herein by reference.
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`
`Exemplary embodiments of the present invention relate
`generally to the technical field of commerce automation and,
`in one exemplary embodiment, to methods and systems to
`authenticate and authorize user access to a system.
`2. Description of Related Art
`The Internet and the World Wide Web (“Web”) have
`changed the landscape of information delivery and affected
`numerous faculties of life, including electronic commerce
`and entertainment. One area that has benefited from this
`
`technological development is the ability for individuals to buy
`and sell products over the Internet. The growing electronic
`commerce has encouraged many businesses to join hands in
`doing business and in sharing customers and their informa-
`tion. The overlapping businesses, partnerships in conducting
`business, referrals, mutual distribution ofresources, and shar-
`ing of users and user information has created a network of
`applications, servers, and Websites which has created various
`technical challenges, complexities, and insecurities.
`A number of technical challenges exist with respect to
`authorization and authentication ofusers and/or systems. For
`example, conventionally, when a user accesses the primary
`system via a secondary system, much of sensitive and per-
`sonal user information, ranging from passwords to profiles, is
`directly transmitted between the primary and secondary sys-
`tems. Such transmission of data is not only inherently inse-
`cure, but also it is cumbersome, at least, in that it requires a
`separate transmission for each of the secondary systems that
`the user accesses, even if it is to ultimately access the same
`primary system. Furthermore, this and other technological
`challenges also limit the performance of system network
`between primary and secondary systems, in general, and the
`ability of the user to access multiple systems, in particular.
`SUMMARY
`
`A method, apparatus, and system are provided for authen-
`ticating and authorizing user access to a system. According to
`one embodiment, a request for authentication and authoriza-
`tion of a user is received from a secondary site on behalfofthe
`user who is seeking to access a primary site via the secondary
`site via a computer network. The request includes informa-
`tion relating to the user. The user information is then verified
`for authenticity, including determining whether the user sat-
`isfies the criteria for obtaining authentication and authoriza-
`tion as defined by the primary site. If the criteria are satisfied,
`a token, associated with the user, is generated at the primary
`site. A portion ofthe token is transmitted from the primary site
`to the secondary site on behalf ofthe user to permit the user to
`access the primary site via the secondary site, via the com-
`puter network.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The appended claims set forth the embodiments of the
`present invention with particularity. The embodiments of the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`present invention, together with its advantages, may be best
`understood from the following detailed description taken in
`conjunction with the accompanying drawings of which:
`FIG. 1 is a block diagram illustrating an embodiment of a
`computer system;
`FIG. 2 is a block diagram illustrating an embodiment of a
`network;
`FIG. 3 is a block diagram illustrating an embodiment of
`marketplace and payment applications;
`FIG. 4 is a block diagram illustrating an embodiment of a
`high-level entity-relationship;
`FIG. 5 is a block diagram illustrating an embodiment of an
`authentication and authorization mechanism;
`FIG. 6 is a flow diagram illustrating an embodiment of a
`process for providing user access to a primary site via a
`secondary site;
`FIG. 7 is a flow diagram illustrating an embodiment of an
`authentication and authorization architecture having a trans-
`action platform with a federated mechanism;
`FIG. 8 is a block diagram illustrating an embodiment of a
`federated model;
`FIG. 9 is a block diagram illustrating an embodiment of a
`credential authority system based on a federated mechanism;
`FIG. 10 is a transaction sequence diagram illustrating an
`embodiment of a sequence for determining whether to gen-
`erate a common cookie or a token;
`FIG. 11 is flow diagram illustrating an embodiment of a
`process for generating a token;
`FIG. 12A is an exemplary illustration of a primary site
`sign-in page;
`FIG. 12B is an exemplary illustration of a primary site
`registration completion page;
`FIG. 12C is an exemplary illustration of a primary site
`consent agreement page; and
`FIG. 12D is an exemplary illustration of a primary site
`authorization page for secondary sites.
`
`DETAILED DESCRIPTION
`
`Described below is a system and method for authenticating
`and authorizing user access to a system. Throughout the
`description, for the purposes of explanation, numerous spe-
`cific details are set forth in order to provide a thorough under-
`standing of the embodiments of the present invention. It will
`be apparent, however, to one skilled in the art that the present
`invention may be practiced without some of these specific
`details. In other instances, well-known structures and devices
`are shown in block diagram form to avoid obscuring the
`underlying principles of the present invention.
`In the following description, numerous specific details
`such as logic implementations, opcodes, resource partition-
`ing, resource sharing, and resource duplication implementa-
`tions, types and interrelationships of system components, and
`logic partitioning/integration choices may be set forth in
`order to provide a more thorough understanding of various
`embodiments of the present invention. It will be appreciated,
`however, to one skilled in the art that the embodiments of the
`present invention may be practiced without such specific
`details, based on the disclosure provided. In other instances,
`control structures, gate level circuits and full software instruc-
`tion sequences have not been shown in detail in order not to
`obscure the invention. Those of ordinary skill in the art, with
`the included descriptions, will be able to implement appro-
`priate functionality without undue experimentation.
`Various embodiments of the present invention will be
`described below. The various embodiments may be per-
`formed by hardware components or may be embodied in
`
`EWS-OO1 134
`
`EWS-001134
`
`

`

`US 7,769,998 B2
`
`3
`machine-executable instructions, which may be used to cause
`a general-purpose or special-purpose processor or a machine
`or logic circuits programmed with the instructions to perform
`the various embodiments. Alternatively, the various embodi-
`ments may be performed by a combination of hardware and
`software.
`
`Various embodiments of the present invention may be pro-
`vided as a computer program product, which may include a
`machine-readable medium having stored thereon instruc-
`tions, which may be used to program a computer (or other
`electronic devices) to perform a process according to various
`embodiments ofthe present invention. The machine-readable
`medium may include, but is not limited to, floppy diskette,
`optical disk, compact disk-read-only memory (CD-ROM),
`magneto-optical disk, read-only memory (ROM) random
`access memory (RAM), erasable programmable read-only
`memory (EPROM), electrically erasable programmable
`read-only memory (EEPROM), magnetic or optical card,
`flash memory, or another type of media/machine-readable
`medium suitable for storing electronic instructions. More-
`over, various embodiments of the present invention may also
`be downloaded as a computer program product, wherein the
`program may be transferred from a remote computer to a
`requesting computer.
`FIG. 1 is a block diagram illustrating an embodiment of a
`computer system (system) 100. As illustrated, the system 100
`includes an exemplary machine within which a set of instruc-
`tions, for causing the machine to perform any one or more of
`the methodologies discussed herein, may be executed. The
`system 100 may operate as a standalone device or may be
`connected (e.g., networked) to other machines or systems. In
`a networked deployment, the system 100 could operate in the
`capacity of a server or a client machine in server-client net-
`work environment, or as a peer machine in a peer-to-peer (or
`distributed) network environment. The system 100 may
`include a server computer, a client computer, a personal com-
`puter (PC), a tablet PC, a set-top box (STB), a Personal
`Digital Assistant (PDA), a cellular telephone, a Web appli-
`ance, a network router, switch or bridge, or any machine
`capable of executing a set of instructions (sequential or oth-
`erwise) that specify actions to be taken by that machine.
`Further, while only a single system 100 is illustrated, the term
`“machine” or “system” shall also be taken to include any
`collection of systems or machines that individually or jointly
`execute a set (or multiple sets) of instructions to perform any
`one or more of the methodologies discussed herein.
`The system 100 includes a processor 102 (e.g., a central
`processing unit (CPU), a graphics processing unit (GPU), or
`both), a main memory (memory) 104 and a static memory
`106, which communicate with each other via a bus 108. The
`system 100 further includes a video display unit 110 (e.g., a
`liquid crystal display (LCD) or a cathode ray tube (CRT)).
`The system 100 also includes an alphanumeric input device
`112 (e.g., a keyboard), a cursor control device 114 (e.g., a
`mouse), a disk drive unit 116, a signal generation device 118
`(e. g., a speaker) and a network interface device 120 to connect
`the system 100 with other systems or machines via a network
`(e.g., the Internet) 126.
`The processor 102 may include multiple processors includ-
`ing one or more multi-threaded processors having multiple
`threads or logical processors, and may be capable of process-
`ing multiple instruction sequences concurrently using its
`multiple threads. The processor 102 further includes one or
`more microprocessors, microcontrollers, field programmable
`gate arrays (FPGA), application specific integrated circuits
`(ASIC), central processing units (CPU), programmable logic
`devices (PLD), and similar devices that access instructions
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`
`from system storage (e.g., main memory 104), decode them,
`and execute those instructions by performing arithmetic and
`logical operations. The processor 102 may also include one or
`more internal caches (not shown).
`The bus 108 is known as the host bus or the front side bus,
`and may be used to couple the processors 102 with the system
`interface. The bus 108 may also be coupled with a control bus,
`an address bus, and/or a data bus (not shown). The control
`bus, the address bus, and the data bus may be multidrop
`bi-directional buses, e.g., connected to three or more bus
`agents, as opposed to a point-to-point bus, which may be
`connected only between two bus agents.
`The memory 104 may include a dynamic storage device, a
`random access memory (RAM), or other storage device
`coupled with the bus 108 for storing information and instruc-
`tions 124 to be executed by the processor 102. The memory
`104 is also used for storing temporary variables or other
`intermediate information during execution of instructions
`124 by the processors 102. The static memory 106 may
`include a read only memory (ROM) and/or other static stor-
`age device coupled with the processor 102 via the bus 108 for
`storing static information and instructions for the processor
`102.
`
`The memory 104 includes a wide variety of memory
`devices including read-only memory (ROM), erasable pro-
`grammable read-only memory (EPROM), electrically eras-
`able programmable read-only memory (EEPROM), random
`access memory (RAM), non-volatile random access memory
`(NVRAM), cache memory, flash memory, and other memory
`devices. The memory 104 may also include one or more hard
`disks,
`floppy disks, ZIP disks,
`compact disks
`(e.g.,
`CD-ROM), digital versatile/video disks (DVD), magnetic
`random access memory (MRAM) devices, and other system-
`readable media that store instructions and/or data. The
`
`memory 104 is used to store program modules, such as rou-
`tines, programs, objects, images, data structures, program
`data, and other program modules that perform particular tasks
`or implement particular abstract data types that facilitate sys-
`tem use.
`
`The network interface device 120 may include a modem, a
`network interface card, or other well-known interface
`devices, such as those used for coupling with Ethernet, token
`ring, or other types of physical attachment for purposes of
`providing a communication link to support a local or wide
`area network 126, for example. Stated differently, the system
`100 may be coupled with a number of clients and/or servers
`via a conventional network infrastructure 126, such as a com-
`pany’s Intranet and/or the Internet, for example.
`The disk drive unit 116 may include a machine-readable
`medium 122 on which may be stored one or more sets of
`instructions (e.g., software 124) embodying any one or more
`ofthe methodologies or functions described herein. The soft-
`ware 124 may also reside, completely or at least partially,
`within the memory 104 and/or within the processor 102 dur-
`ing execution thereof by the computer system 100,
`the
`memory 104 and the processor 102 also constituting
`machine-readable media. The software 124 may further be
`transmitted or received over a network 126 via the network
`interface device 120. While the machine-readable medium
`
`122 is illustrated in an exemplary embodiment to be a single
`medium, the term “machine-readable medium” should be
`taken to include a single medium or multiple media (e.g., a
`centralized or distributed database, and/or associated caches
`and servers) that store the one or more sets of instructions.
`The term “machine-readable medium” shall also be taken to
`
`include any medium that is capable of storing, encoding or
`carrying a set of instructions for execution by the machine of
`
`EWS—OO1 135
`
`EWS-001135
`
`

`

`US 7,769,998 B2
`
`5
`the system 100 and that causes the machine to perform any
`one or more of the methodologies of the present invention.
`The term “machine-readable medium” shall accordingly be
`taken to include, but not be limited to, solid-state memories,
`optical and magnetic media.
`While the machine-readable medium 122 is illustrated in
`
`an exemplary embodiment to be a single medium, the term
`“machine-readable medium” should be taken to include a
`
`single medium or multiple media (e.g., a centralized or dis-
`tributed database, and/or associated caches and servers) that
`store the one or more sets of instructions. The term “machine-
`
`readable medium” shall also be taken to include any medium
`that is capable of storing, encoding or carrying a set ofinstruc-
`tions for execution by the machine of the system 100 and that
`causes the machine to perform any one or more of the meth-
`odologies of the present invention. The term “machine-read-
`able medium” shall accordingly be taken to include, but not
`be limited to, solid-state memories, optical and magnetic
`media, and carrier wave signals.
`Furthermore,
`it
`is appreciated that a lesser or more
`equipped computer system than the example described above
`may be desirable for certain implementations. Therefore, the
`configuration of system 100 may vary from implementation
`to implementation depending upon numerous factors, such as
`price constraints, performance requirements, technological
`improvements, and/or other circumstances.
`It should be noted that, while the embodiments described
`herein may be performed under the control of a programmed
`processor, such as the processor 102, in alternative embodi-
`ments, the embodiments may be fully or partially imple-
`mented by any programmable or hardcoded logic, such as
`field programmable gate arrays (FPGAs), Transistor Transis-
`tor Logic (TTL), and application specific integrated circuits
`(ASICs).Additionally, the embodiments ofthe present inven-
`tion may be performed by any combination of programmed
`general-purpose computer components and/or custom hard-
`ware components. Therefore, nothing disclosed herein
`should be construed as limiting the various embodiments of
`the present invention to a particular embodiment wherein the
`recited embodiments may be performed by a specific combi-
`nation of hardware components.
`FIG. 2 is a block diagram illustrating an embodiment of a
`network 200. As illustrated, the network (or architecture) 200
`includes a commerce platform, such as a network-based mar-
`ketplace or trading platform 202, to provide server-side func-
`tionality, via a network 126 (e.g., the Internet) to one or more
`clients, such as client machines 210-212. As illustrated, for
`example, a web client 206 (e. g., a browser, such as the Internet
`Explorer or the Netscape Navigator), and a programmatic
`client 208 may execute on their respective client machines
`210 and 212.
`
`Turning specifically to the network-based marketplace
`202, an application program interface (API) server 214 and a
`web server 21 6 may be coupled to, and provide programmatic
`and web interfaces respectively to, one or more application
`servers 218. The application servers 218 may host one or
`more marketplace applications 220 and payment applications
`222. Furthermore, the application servers 218 are coupled to
`one or more databases servers 224 to facilitate access to one
`or more databases 226.
`
`The marketplace applications 220 provide a number of
`marketplace functions and services to users that access the
`marketplace 202. The payment applications 222, likewise,
`may provide a number of payment services and functions to
`users. The payment applications 222 may allow users to quan-
`tify for, and accumulate, value (e.g., in a commercial cur-
`rency, such as the US. dollar, or a proprietary currency, such
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`as “points”) in accounts, and then to redeem the accumulated
`value for products (e.g., goods or services) that are made
`available via the marketplace applications 220. While the
`marketplace and payment applications 220 and 222, as illus-
`trated, both form part of the network-based marketplace 202,
`it will be appreciated that, in alternative embodiments of the
`present invention, the payment applications 222 may form
`part of a payment service that is separate and distinct from the
`marketplace 202.
`Further, while the network 200, as illustrated, may employ
`a client-server architecture, embodiments of the present
`invention are not limited to it, and may equally find applica-
`tions in a distributed, or peer-to-peer, architectures. The vari-
`ous marketplace and payment applications 220 and 222 may
`also be implemented as standalone software programs, which
`do not necessarily have networking capabilities.
`The web client 206, it will be appreciated, may access the
`various marketplace and payment applications 220 and 222
`via the web interface supported by the web server 216. Simi-
`larly, the programmatic client 208 may access the various
`services and functions provided by the marketplace and pay-
`ment applications 220 and 222 via the programmatic inter-
`face provided by the API server 214. The programmatic client
`208 may, for example, be a seller application (e.g., the Tur-
`boLister application developed by eBay Inc., of San Jose,
`Calif.) to enable sellers to author and manage listings on the
`marketplace 202 in an off-line manner, and to perform batch-
`mode communications between the programmatic client 208
`and the network-based marketplace 202.
`The architecture 200 further includes Common Gateway
`Interface (CGI) servers associated with the authorization
`module 232 and the authentication module 234. The authori-
`
`zation module 232 is to perform authorization-related func-
`tions for authorizing users accessing a primary system (e. g., a
`platform-related Website, application, platform, device, tool,
`and site) from a secondary system (e.g., Website, application,
`platform, device, tool, and site). The authorization module
`232 is also for facilitating the user to authorize the secondary
`system to access the primary system and act or perform on
`behalf of the user. The authentication module 234 is to per-
`form authentication-related functions
`for authenticating
`users, prior to authorizing them, to access the primary system
`via the secondary system. Administrative applications/func-
`tions 236 of the architecture 200 are utilized to help perform
`some of the authorization and authentication functions as
`necessitated or desired.
`
`FIG. 3 is a block diagram illustrating an embodiment of
`marketplace and payment applications 220-222. Multiple
`marketplace and payment applications 220-222 are provided
`as part of the network-based marketplace or trading platform
`202, as illustrated and described with respect to FIG. 2. The
`network-based marketplace 202 may provide a number of
`listing and price-setting mechanisms whereby a seller may
`list goods or services for sale, a buyer may express interest in
`or indicate a desire to purchase such goods or services, and a
`price may be set for a transaction pertaining to the goods or
`services. To this end, the marketplace applications 220 may
`include one or more auction applications 302 to support auc-
`tion-format
`listing and price setting mechanisms (e. g.,
`English, Dutch, Vickrey, Chinese, Double, Ascending,
`Reverse and Declining auctions etc.). The various auction
`applications 302 also provide a number of features in support
`of such auction-format listings, such as a reserve price feature
`whereby a seller may specify a reserve price in connection
`with a listing and a proxy-bidding feature whereby a bidder
`may invoke automated proxy bidding.
`
`EWS—OO1 136
`
`EWS-001136
`
`

`

`US 7,769,998 B2
`
`7
`One or more fixed-price applications 304 may support
`fixed-price listing formats (e.g.,
`the traditional classified
`advertisement-type listing or a catalogue listing) and buyout-
`type listings. Specifically, buyout-type listings (e.g., includ-
`ing the Buy-lt-Now (BIN) technology developed by eBay
`lnc., of San Jose, Calif.) may be offered in conjunction with
`an auction-format (or other dynamic pricing format) listing,
`and allow a buyer to purchase goods or services, which are
`also being offered for sale Via an auction, for a fixed-price that
`is typically higher than the starting price of the auction.
`In one embodiment, one or more authorization and authen-
`tication applications 334 are provided to help support the
`authorization and authentication mechanism to authenticate
`
`and authorize users and various systems, applications, and
`tools. The authorization and authentication applications 334
`also perform certain administrative functions to ensure cred-
`ibility, security, reliability, scalability, and availability of the
`system, as a whole, and the process of authorization and
`authentication.
`
`One or more publishing applications 336 are used to pub-
`lish the information relating to auctions, such as the declining
`price auction. For example, in an embodiment where the
`financial instruments are offered for sale over the lntemet, the
`publishing applications 336 may format information about
`the financial instruments in a web page and provide that web
`page over the lntemet to potential buyers. The publishing
`applications 336 may also update the current offer price (e.g.,
`$100) or interest rate (e.g., 10%), as necessary, when the
`current offer price or interest rate is changed using the auction
`applications 302.
`The store applications 306 allow sellers to group their
`listings within a “virtual” store (e.g., a virtual bank), which
`are branded and otherwise personalized by and for the sellers.
`Such a virtual store also offers promotions, incentives and
`features that are specific and personalized to a relevant seller.
`The reputation applications 308 allow parties that transact
`utilizing the network-based marketplace 202 to establish,
`build, and maintain reputations, which are made available and
`published to potential trading partners. Consider that where,
`for example, the network-based marketplace 202 may sup-
`port

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