throbber
(12) INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT)
`
`9
`
`(l
`
`1
`) Wo,ld
`
`",~::~:~0~n;:,::.:';;, o,....n;wtion •
`
`I IIII IIIIIII II IIIII IIIII IIIII IIIII IIII I II Ill lllll lllll lllll lllll lllll llll 1111111111111111111
`
`(43) International Publication Date
`26 April 2007 (26.04.2007)
`
`PCT
`
`(10) International Publication Number
`WO 2007/046706 Al
`
`(51) International Patent Classification:
`H04L 9100 (2006.01)
`G06F 21122 (2006.01)
`G06F 21100 (2006.01)
`H04L 9132 (2006.01)
`
`(21) International Application Number:
`PCT /N02006/0003 25
`
`(22) International Filing Date:
`22 September 2006 (22.09.2006)
`
`(25) Filing Language:
`
`(26) Publication Language:
`
`English
`
`English
`
`(30) Priority Data:
`20054840
`
`22 September 2005 (22.09.2005) NO
`
`(71) Applicant (for all designated States except US): BIRD(cid:173)
`STEP TECHNOLOGY ASA [NO/NO]; Bryggegata 7,
`N-0250 Oslo (NO).
`
`(72) Inventors; and
`(75) Inventors/Applicants (for US only): BECKMANN
`NILSEN, Frode [NO/NO]; Leil.3069, Assiden Terrasse
`18, N-1160 Oslo (NO). HORSTEN, Thomas [DK/GB];
`
`73 Church Lane, Girton, Cambridge CB3 OJW (GB).
`LUNDE, Trond [NO/NO]; Sannergata 19, N-0557 Oslo
`(NO). ROSTAND, Otto, Andreas [NO/NO]; Tordenski(cid:173)
`olds g 51 A, N-3044 Drammen (NO). BRYHNI, Haakon
`[NO/NO]; Skjerstadveien 4B, N-0378 Oslo (NO).
`(74) Agent: WESMANN, Johan, F.; Zacco Norway AS, P.O.
`Box 2003, Vika, N-0125 Oslo (NO).
`(81) Designated States (unless otherwise indicated, for every
`kind of national protection available): AE, AG, AL, AM,
`AT, AU, AZ, BA, BB, BG, BR, BW, BY, BZ, CA, CH, CN,
`CO, CR, CU, CZ, DE, DK, DM, DZ, EC, EE, EG, ES, Fl,
`GB, GD, GE, GH, GM, HN, HR, HU, ID, IL, IN, IS, JP,
`KE, KG, KM, KN, KP, KR, KZ, LA, LC, LK, LR, LS, LT,
`LU, LV, LY, MA, MD, MG, MK, MN, MW, MX, MY, MZ,
`NA, NG, NI, NO, NZ, OM, PG, PH, PL, PT, RO, RS, RU,
`SC, SD, SE, SG, SK, SL, SM, SV, SY, TJ, TM, TN, TR,
`TT, TZ, UA, UG, US, UZ, VC, VN, ZA, ZM, ZW.
`(84) Designated States (unless otherwise indicated, for every
`kind of regional protection available): ARIPO (BW, GH,
`GM, KE, LS, MW, MZ, NA, SD, SL, SZ, TZ, UG, ZM,
`ZW), Eurasian (AM, AZ, BY, KG, KZ, MD, RU, TJ, TM),
`European (AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, Fl,
`
`---iiiiiiii
`
`iiiiiiii
`iiiiiiii
`!!!!!!!!
`
`iiiiiiii
`!!!!!!!!
`
`iiiiiiii --
`
`[Continued on next page}
`----------------------------------------------
`(54) Title: METHOD AND ARRANGEMENT FOR AUTOMATIC PROVISIONING, LICENSING AND CONFIGURATION
`OF CLIENT SOFTWARE
`
`iiiiiiii
`!!!!!!!!
`
`!!!!!!!!
`iiiiiiii
`
`iiiiiiii ----
`
`10
`
`10
`
`102
`
`101
`
`15
`
`,///25
`
`,,,/';< 20
`
`100
`
`25
`
`20
`
`:
`
`:
`
`' ' G
`
`0 user may use the client together with any user specific ervice provider. The system is managed using a standard web interface
`
`: , available to a management PC (105). Note that the service concept can be considered in a generalized context. The client can
`;;, receive licenses from one entity and service from another entity. For an overview of the system, see the attached Figure 1.
`
`(57) Abstract: The present invention
`enables secure and automatic config(cid:173)
`uration of a user-specific service, such
`as a service built around the a mobile
`terminal (100) with a client software such
`as Mobile IP, to work specifically with
`a corresponding back-end infrastructure
`(101, 102) by means of a provisioning
`server (103). The overall design objective
`is ease-of-use.
`The secondary design
`objective is
`to minimize the required
`adaptions on the client leaving as much
`control as possible to the server side.
`The service is designed to work with any
`client-platform. The overall assumption
`is that the client is by default bound
`to the user spesific service at software
`installation.
`There is a configurable
`number of days free-of-charge trial period
`for this service after initial activation.
`After the trial period expires, the user is
`directed to a payment service (104) where
`he/she is given the option to continue the
`service by accepting a fee, paid by credit
`card or by other means. By paying the
`user also acquire a full software license.
`Equipped with a full software license the
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 1
`
`

`

`WO 2007 / 046 7 06 A 1
`
`I IIIIIIIIIIIII II IIIIII IIIII IIIII IIIII IIII I II Ill lllll llllllllll lllll lllllllll lllllll 111111111111
`
`FR, GB, GR, HU, IE, IS, IT, LT, LU, LV, MC, NL, PL, PT,
`RO, SE, SI, SK, TR), OAPI (BF, BJ, CF, CG, CI, CM, GA,
`GN, GQ, GW, ML, MR, NE, SN, TD, TG).
`
`before the expiration of the time limit for amending the
`claims and to be republished in the event of receipt of
`amendments
`
`Published:
`-
`with international search report
`
`For two-letter codes and other abbreviations, refer to the "Guid-
`ance Notes on Codes and Abbreviations" appearing at the begin-
`ning of each regular issue of the PCT Gazette.
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 2
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`Method and arrangement for automatic provisioning, licensing and configuration
`of client software
`
`1
`
`Introduction
`
`The present invention (see figure 1 for an overview) enables a user-spesific service,
`such as a service built around a mobile terminal (100) with a client software (such as
`Mobile IP), to work specifically with a corresponding back-end infrastructure (101,
`102) by means of a provisioning server (103). The overall design objective is ease-of(cid:173)
`use. The secondary design objective is to minimize the required adaptions on the client
`leaving as much control as possible to the server side. The service is designed to work
`with any client operating system platform.
`
`The overall assumption is that the client is by default bound to the user spesific service
`at software installation. There is a configurable number of days free-of-charge trial
`period for this service after initial activation. After the trial period expires, the user is
`directed to a payment service (104) where he/she is given the option to continue the
`service by accepting a fee, paid by credit card or by other means. By paying the user
`also acquire a full software license. Equipped with a full software license the user may
`use the client together with any user specific ervice provider.
`
`The system is managed using a standard web interface available to a management PC
`(105).
`
`Note that the service concept can be considered in a generalized context. The client can
`receive licenses from one entity and service provisioning from another entity.
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 3
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`License policy
`
`2
`
`The design of the user-specific service depends on the licensing policy for the service.
`The policy of choice is based on the following three fundamentals:
`
`1. A client software license is always associated with a service subscription. In the trial
`period there is a 1:1 correspondence, ie. the client can only be used with the User(cid:173)
`specific service. If the subscription is carried forward by payment, and a full
`software license is granted, there is a 1 :n correspondence. le. the client can be used
`with any service provider. However, the client is still linked to the user-specific
`service concerning license management. If the user re-installs the client software, on
`the same device or a different device, the locally stored license information will
`default to an unknown license. The user must in this case re-activate once with the
`user-specific service to unlock the client to restore the original configuration and
`regain his full license rights.
`
`2. A service subscription, and hence a software license, is registered with a unique
`device but may be moved between devices. The user may use the license from only
`one device at a time, however. The user-specific configuration system will
`automatically detect a license transfer and then change the registered device
`association accordingly. The software installation on the original device will still
`work according to the full license rights, however. Hence, the one-at-a-time
`restriction must be embedded as a legal provision in the license text.
`
`3. A service subscription, and hence a software license, can be activated for trial only
`once from a given device. The user may re-activate from the same device under the
`same account name in order to restore lost service configuration data. Any attempts
`to repeatedly sign up from the same device under a different account name will be
`blocked by the user-specific service system. Detection of abuse can be done on the
`server side by monitoring the number of license moves, which can then be
`subsequently blocked by the server.
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 4
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`System Overview
`
`3
`
`Using Mobile IP as the user-specific service example, called SmartRoaming for the
`remainder of the document, the system consists of five different components:
`
`100 Mobile IP Client
`101 Mobile IP Home Agent
`102 AAA server ( e.g. RADIUS based)
`103
`Provisioning server
`104 Credit card payment server (hosted by payment provider)
`
`Figure 1 describes the logics of the component interaction. The client interacts with the
`mobile IP agent according to the usual IETF standards over the standard interfaces
`marked with 10 in the figure. The key to system operation is how the client
`communicates with the provisioning server over the proprietary interfaces 20 described
`in the present disclosure. Note that the communication paths marked with 15
`corresponds to service traffic flow, and paths marked with 25 corresponds to service
`control flow.
`
`Communication between the client and the provisioning server is implemented as a
`proprietary interface over http(s). The native web-browser in the client terminal (100) is
`used to request, display and download information. All logic is implemented on the
`server side (103). Every transaction starts with the client sending a request to the server.
`The server determines the current status for the client and generates a series of re-directs
`corresponding to the different steps in each transaction that is scheduled for the client.
`Some transactions will trigger a http(s) download as the final step. The content is
`marked (using the Content-Type header) as a specific MIME application type
`(application/xxxx). The client software will register itself at installation to handle such
`content e.g. by means of a browser plugin to avoid the file download dialog for the
`configuration information, normally provided by the browser.
`
`The interaction between the client (100) and the provisioning server (103) depends on
`one or more of the following key conditions:
`
`1
`
`The client (100) initiates a request to the server (103) in situations such as i)
`If the client does not have a valid configuration, (ii) If the user selects "My
`Account" from the client user interface, or (iii) whenever the client
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 5
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`4
`
`experiences Mobile IP error 131 (authentication error) from the Home Agent
`(101). The latter can be provoked by the server to get the attention of the
`client. See section "Common aspects of the service" for a full list of
`situations that can trigger sending of the request.
`
`Note that the request always start with the client sending a solicit request
`message to the server and receive key information such as the address of the
`appropriate provisioning server, a security token (challenge) and a pre(cid:173)
`formulated request string to be used by the subsequent request. In this way,
`multiple provisioning servers can be hosted and server migration and load
`balancing can be obtained.
`
`A software lock in the client that can represent three states, (i) the initial state
`corresponding to a fresh installation and no previous activations attempts (ii)
`the locked state corresponding to the in-trial phase and (iii) the unlocked
`state corresponding to full license rights.
`
`A capability in the client to recognize SmartRoaming profiles among the set
`of all profiles. Morover, the ability to work specifically with the
`SmartRoaming service for such profiles. The profile is classified as a
`SmartRoaming profile if and only if the profile GUID matches the one stored
`in the provider account and its hash is stored in the Provider Account
`Information.
`
`The configuration sent from the server to the client is signed by the
`configuration server, to avoid wrong configuration information and Denial of
`Service attacks by bogus configuration information.
`
`2
`
`3
`
`4
`
`5
`
`The most important transactions over the provisioning interface are:
`
`1
`2
`3
`
`initial service activation
`license activation after expiring the trial-period
`service renewal at the end of every subscription period.
`
`Note that a service activation is a pre-requisite for a license activation. Moreover, the
`initial service activation must originate from the target device that will receive the
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 6
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`5
`
`configuration data and run the mobile IP client. Other service related tasks, like license
`activation, service renewal, etc. can originate either from the target device or from a
`different device (typically a PC) via the separate account management WEB interface.
`The interaction between the client and the provisioning server is further governed by a
`security model based on the following:
`
`1
`
`2
`
`3
`
`4
`
`Service configuration data stored on the client are signed by the provisioning
`server, hence making such data tamper-proof.
`Critical data (like user credentials and keys) are stored on the client in an
`encrypted format.
`The client-server communication is signed and encrypted, hence preventing
`spoofing attempts from malicious clients.
`Key management is secure, hence preventing key material to be
`compromised.
`
`Common aspects of the service
`
`The following sub-sections describe the system aspects that are common to both the
`client and the server. More detailed information on the client and the server-side
`components, respectively, are given in later sections.
`
`Command-loop
`
`The client must have as little embedded intelligence as possible. The overall control
`must be at the server side. The rationale is to simplify the client implementation and to
`have a design that is flexible for change also after client software deployment.
`
`The command-loop has two phases; the first phase (called solicit phase) is initiated
`directly by the client (not via the browser) and the returning document, having a very
`simple structure, as shown in the example in Table 1. This document is parsed by the
`client and the information is used in the subsequent phase that is executed via the
`browser. The solicit phase returns info like bypass addresses, URLs to used, and
`challenge values. Note that the challenge value is valid only for a short time, e.g. a few
`minutes to provide replay protection.
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 7
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`6
`
`\ip~bypass·~-. ·-··
`:so.239.s2.s2
`!80.239.52.103
`!service con url:
`lhttps://se~er.com/?device id=$DEV ID$&device model=$DEVICE MODEL$&cli
`;ent ver=$CLI VER$&os platform=$08 PLAT$&lang=$LANG$&reason=$REASON$
`
`Table 1: Example solicit response
`
`The solicit phase is done as the first transaction in the requests from the client to the
`provisioning server, and enable the service provider to control the IP addresses used by
`the service, and formulate the master URL used for subsequent requests. In this way,
`new servers can be introduced, and service migration can be performed with no changes
`to the client.
`
`Note that the client only opens one URL (termed the solicit URL), which can be opened
`in an named or unnamed mode. The server responds with a single URL (which contains
`tokens that the client will parse and replace, e.g. device id (320), usemame, challenge,
`signature, client version, reason for request), and then launches the browser with the
`resulting URL. From that point on the client does not interact with the server,
`everything is done in the browser (until the time that the browser, if required, receives a
`new configuration, or the Mobile IP connection is restarted).
`
`The http(s) interface between the client and the provisioning server is based on always
`requesting the same base URL. Two different sets of parameters can be appended
`depending on the type ofrequest, such as anonymous or named, as explained below).
`The server handles requests in a designated entry-point in the WEB server. The server
`will determine the current client state and schedule the appropriate transaction. The
`server will respond with (a series of) re-directs, each with a more specific URLs,
`depending on the derived transaction type. Every transaction may end with a http
`download if the client configuration needs to be updated. The client will issue a request
`again only at certain conditions as described below.
`
`A requests from a client can be either (i) anonymous or (ii) named. The former is used
`when the client has either no previous configuration data, typically at a fresh
`installation, or that the configuration data has been modified, e.g. in case of a failed
`signature check. In this case no account ids can be appended to the request (hence
`anonymous). The latter corresponds to the case when the client has a set of valid
`configuration data for a given SmartRoaming service account. In this case the ids
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 8
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`7
`
`associated with the account will be appended to the request (hence named). A named
`request will be triggered (i) If the client does not have a valid configuration, (ii) If the
`user selects "My Account" from the client user interface, (iii) the Client version is
`different than the configuration version, or (iv) whenever the client experiences Mobile
`IP error 131 (authentication error) which signals the client during operation to get its
`attention.
`
`The provisioning server will do this by temporarily invalidating the authentication
`credentials stored in the AAA server (102) for the user account in question. The server
`can schedule a set of actions for the client before the client is notified. Once notified, the
`client sends a request to the server, and executes the required transaction . The more
`detailed chain of events will be as follows:
`
`1. The server needs (wants) the attention of the client, eg. to notify about an
`expired trial period.
`2. The server temporarily changes the authentication credentials in the AAA server
`(102) to a bogus value that does not match with the corresponding profile setting
`at the client.
`3. At the next re-registration from the client an error code 131, according to the
`Mobile IP protocol defined in IETF RFC3344, is provoked
`4. The client takes an error 131 for a SmartRoaming profile to be a signal that the
`server wants its attention, hence the client sends a named request
`5. The server determines which transaction to start (eg. an expired trial-period) and
`send a chain of re-directs accordingly
`6. The transaction is completed.
`7. The client continues with normal Mobile IP operation.
`8. The client may itself initiate contact with the server upon certain criterias as
`previously described.
`
`To ensure timely response via the command loop in case of error 131 it is a key
`assumption that the agent does not cache credentials but always retrieve these directly
`from the AAA server (102). Moreover, the AAA server infrastructure must scale along
`with the agent infrastructure (101) to ensure rapid response in the communication
`between these two components.
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 9
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`Redirection to a service provider site
`
`8
`
`When the user starts a network-dependent application and selects the Mobile IP
`connection, the Mobile IP client may need to redirect the user to a Mobile IP service
`provider site. If so, the client displays a message, asking the user whether or not he
`wants to accept the redirection. The message to be displayed should vary according to
`the reason for redirection. The table below represents all the possible reasons for
`redirection.
`
`Provider License
`(account)
`
`Missing 1
`Invalid 2
`N/A
`Other
`
`3
`4
`N/A
`
`Version
`Error Wrong
`Profile
`(service) 131
`Device mismatc
`ID
`h
`N/A
`N/A
`N/A
`N/A
`8
`9
`
`N/A
`N/A
`7
`
`5
`6
`N/A
`
`Assistance
`needed
`
`N/A
`N/A
`10
`
`Table 2: Possible reasons for redirection
`
`The action taken by the client and the message displayed in each of the above cases is as
`follows. Note that these conditions should be handled by the client in the listed order.
`
`1. Client automatically creates a default provider entry. Therefore redirection is not
`required and no message is displayed.
`2. Client either automatically creates a default provider entry (when hard-coded) or
`displays the following redirection message:
`[The <provfder_>_ cont.a-ct .. data is invalid
`fDo you want to restore it?
`
`3. Client displays the following message:
`
`[Mobile IP is not acti vatecC on-your -device . -
`iDo you want to activate it at <default-provider>?
`
`4. Client displays the following message:
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 10
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`--~-- -----c--~---
`i Your Mobile IP license is invalid
`\Do you want to r~store it from <provide~>J
`
`9
`
`5. Client displays the following message:
`;You don It have a profile ..
`!Do you want to get one from_ <p!"oyicler>?.
`
`6. Client displays the following message:
`
`:Your active profile is invalid
`/Do you w~nt to restore it from <provider>?
`
`7. Client displays the following message:
`
`[Your <provider> account is suspended
`\r>o yo11_\'J.cl.I1t resume operc'l_t.:L_<:>ri?.
`
`8. Client displays the following message:
`
`/Your Mob.iiejp license is invalid
`'Do you want to r.estore it from <provid~r>?
`
`9. Client displays the following message:
`
`iYour account data does not match your Mobile IP client version
`!Do you want to upgrade your account to the correct version?
`
`10. Client displays the following message:
`
`iYou have a ·vailcf <provider> profile but the· terminal is unable to
`!reach the home agent. You are beging redirected to <provider> for
`/troubleshooting assistance.
`
`In all the above message texts <provider> is a placeholder for the provider name
`(SmartRoaming.com, for example).
`
`An important point about how to provoke 131; the sever must use a (bogus) key to
`provoke 131. However, this bogous key must also be known by the client. We simply
`uses the encrypted password as the bogus key. The rational here is that the client must
`be able to verify the MJP authenticator of the Mobile JP RRP message giving error code
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 11
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`131, hence to verify that it comes from the home agent as spected. This is to avoid that
`the client becomes vulnerable to DoS attacks.
`
`10
`
`Service activation
`
`Service activation refers to the process of creating a new subscription and starting a trial
`period. The sign-up is immediately followed by downloading SmartRoaming
`configuration data. The term re-activation is used when the configuration data from a
`previous activation has been lost or modified on the device. A request may then be sent
`to the server resulting in a re-download. The process of unlocking the client by
`continuing the service subscription beyond the trial phase is referred to as license
`activation and is discussed in a later section.
`
`When activation is started the client will launch the default browser in the terminal
`(100) and be directed to a sign-up page requesting (among other things) a
`usemame/password combination.
`
`If the provisioning server (103) determines that no account with the given device_id
`already exists, a new account must be created and a new set of configuration data must
`be downloaded. This corresponds to initial activation and starts the trial period. Account
`creation must however be conditioned on a check that the lock state of the requesting
`client does not indicate that the client is already in the trial-phase under a different
`name.
`
`The server side (103) must record the creation of each account and keep track of elapsed
`time subsequently. If the name exists and the password matches, a re-activation of an
`existing account is in progress. The same configuration data downloaded at the original
`activation must then be downloaded again and overwrite the local copy. This represents
`a continuation of the trial period. The initial activation time must be kept.
`
`If the user exists and the password does not match, it must be considered to be a non(cid:173)
`unique user name. The user must then be asked to select a different name. The server
`should offer some alternatives that are unique but still close to the user's original
`proposal.
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 12
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`11
`
`In the case of a SmartRoaming re-activation request the server must check if the user
`account in question is a trial account or a fully licensed service account. In the latter
`case the server must verify the lock state reported by the client. In case of a mismatch,
`the client must initiate a request to the server to change its lock state.
`
`Signaling for service activation via an anonymous request is described in the figure 2.
`Note that 200 denote the service provider responsibility, while 210 denote the credit
`card company. The initial request represents the solicitation phase, and enable the
`service provider to formulate the request URL subsequently used by the client, as well
`as server addresses and a token used to avoid Denial of Service attacs. When the solicit
`response is received, the client will generate a request to the server, which will provide
`a redirect to the trial activation page. After completing this page an account is created.
`Another redirect is then returned for the client to finally retrieve the resulting
`configuration data.
`
`The following sequence is illustrated in figure 2:
`
`201 Solicit request from the client software
`202 Solicit response to the client software
`203 Anonymous request from the client default browser
`204 Redirect
`205 Trial activation page
`206 Update AAA account
`207 Redirect
`208 Configuration request
`209 Configuration download (browser will automatically engage client software)
`
`License activation
`
`The command loop will catch the situation when an active SmartRoaming subscription
`has expired beyond its trial phase. When this happens the clientwill be re-directed to a
`licensing page. The already existing usemame values associated with the existing
`SmartRoaming profile will be sent directly in a named request. By accepting the terms
`and conditions and provide his payment details, the user can continue the service
`subscription and acquire a full software license. The usemame is the link between the
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 13
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`12
`
`payment transaction and the service subscription. After payment the server must be
`updated with the new account status and the new value of the license lock will be
`downloaded. Note that no new profile download need to happen at this point. The user
`may continue to use the already installed software and SmartRoaming profile.
`
`If the user rejects to pay he has no rights to continue to use the software and his service
`subscription will be invalidated. The service account will not be removed, however. The
`user may at any time trigger the license activation process to continue his service(cid:173)
`subscription and acquire a full software license.
`
`Signaling for license activation is described in figure 3. Assuming that this happens
`during Mobile IP operation, the provisioning server (103) will invalidate the account in
`the AAA a server (102) and at the next Mobile IP registration request the client will
`experience an error 131. In response to this the client will send a named request.
`Assuming that the server determines that the trial period has expired, the client (100)
`will be re-direct to a license activation page. After completing the credit card transaction
`with the credit card broker (104) and updating the account in the AAA server (102), a
`new re-direct is generated before the client downloads updated configuration data.
`
`The following sequence is illustrated in figure 3:
`
`220 MIP reg req
`221 AAAreq
`222 AAA resp
`223 MIP reg response (131)
`224 Solicit request from the client software
`225 Solicit response to the client software
`226 Named request from the default browser in the client
`227 Redirect
`228 License activation page
`229 Credit card transaction
`230 Transaction ok
`231 Update AAA account
`232 Redirect
`232 Configuration download request
`233 Configuration download (browser will automatically engage client software)
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 14
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`13
`
`Service renewal
`
`The command loop mechanism will catch the situation also when an active
`SmartRoaming subscription has expired. When this happens the client will experience
`an Mobile IP error 131, client request will be initiated and the terminal web browser
`will be re-directed to a payment page to continue his/her subscription. Note that this
`page will be different from the licensing activation page since the user has already
`acquired a license. The user will continue to use the same installed software and
`SmartRoaming configuration, hence no new data will be downloaded at this stage.
`The sequence diagram is very similar to the license activation transaction.
`
`Data-flow and security model
`
`The communication between the client (100) and the server (103) is secured by https.
`The provisioning server must install a WEB server certificate issued by a well-known
`certificate authority. The client must only communicate with the provisioning server if it
`holds a valid certificate for the name smartroaming.com.
`
`A device id (320) that uniquely identifies the client installation must always be added to
`the request. This applies to both anonymous and named requests. The device id can be
`taken from any source in the platform. For a Symbian device it might be the IMEi
`value. For a PC platform it may be the processor serial number. The formatting of the
`device id parameter must be completely open, ie. it must be considered as variable(cid:173)
`length text string. The Service Provider section is signed. T~e Service Activation URL
`is embedded in this section and hence signed. So it could be a non-HTTPS URL. If it is
`a https URL, however, it will get checked that it has a certificate that matches the URL
`requested (issued by a CA whose root certificate is present on the device). Other
`information elements that must be always appended as parameters in any request are:
`
`1. Client (Mobile IP) software version
`2. Client OS platform and version
`3. Client device id
`4. Client device_ model
`5. Preferred language
`6. Reason for the request
`
`Petitioners Amazon, Hulu, and Netflix
`Exhibit No. 1033, p. 15
`
`

`

`WO 2007/046706
`
`PCT/N02006/000325
`
`14
`
`The effect of passing the device id (320) in an anonymous request is that the server can
`determine the exact licensing state. By comparing the received device id with the
`database of registered device id, and in addition considering the usemame provided
`during the sub-sequent sign-up step, the server can distinguish between the most usual
`scenarios numbered 1 to 4 in the table below (see table 2 for a comprehensive
`overview):
`
`New user name (321)
`
`Existing user name (321)
`
`New device id (320)
`
`1: Initial activation
`
`3: License transfer (allow)
`
`Existing device id (320)
`
`2: Repeated sign-up (block) 4: client reinstall or
`configuration restore.
`
`Table 3: Most usual scenarios
`
`A named request always starts with the solicit phace, implementing a challenge(cid:173)
`response part of named request. A challenge from the solicit phase must be included in
`the subsequence http request, this preventing replay attacks
`
`A named request contains the user name in addition to the device id. In contrast to the
`anonymous case the request

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