# US 10,373,139 B2 · Java store television

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,373,139 B2
- Document ID: US10373139B2
- Status: Granted
- Kind: B2
- Application number: 15/462,915
- Filed: 2017-03-20
- Published: 2017-07-06
- Granted: 2019-08-06
- Earliest claimed: 2010-10-15
- Assignees: Oracle America, Inc.
- Applicants: Oracle America, Inc.
- Inventors: Bernard A. Traversat; Mohamed M. Abdelaziz; Michael J. Duigou; Henry Jen; Brian Goetz
- Web page: https://patentgrep.com/patent/US10373139B2

## CPC

- G06Q 20/1235: {with control of digital rights management [DRM]}
- G06Q 20/306: {using TV related infrastructures (external card used for payment with client device H04N21/4185)}
- G06F 8/60: Software deployment
- G06F 21/105: {Arrangements for software license management or administration, e.g. for managing licenses at corporate level}
- H04L 9/32: including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials}
- H04L 63/0442: {wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for public-key encryption H04L9/30)}
- G06F 21/1015: {to users}
- G06Q 2220/18: Licensing
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 2209/603: Digital right managament [DRM]
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A non-transitory computer readable storage medium including computer readable code that, when executed by a processor, is configured to receive, from a user network device, a first request to execute an application on the user network device. The first request includes a user identification, routing information, and requested application information, encrypted using a public key. The user network device is configured to display the application on a television display device. The code is further configured to decrypt the routing information and requested application information using a private key, send a second request for subscription information to a service provider, receive the subscription information from the service provider, and determine that a license corresponding to the application is associated with the user. The code is further configured to generate and send an application package configured to deploy the application using a Java Runtime Environment on the user network device.

## Claims

### Claim 1

A system comprising:
a warehouse comprising a non-transitory computer-readable storage medium comprising computer-readable code that, when executed by a processor, causes the processor to:
receive, from a user network device, a first request to execute an application on the user network device, wherein the first request comprises a user identification, routing information, and requested application information, and wherein the user network device is configured to display the application on a display device;
determine that subscription information mapped to the user identification does not comprise a license corresponding to the application;
send a second request to the user network device, the second request comprising a request for license purchase data;
receive, from the user network device, the license purchase data in response to the second request;
obtain, from a service provider and on behalf of a user and using the license purchase data received from the user network device, a license corresponding to the application, wherein the license corresponding to the application provides access to the application;
associate the license corresponding to the application with the user identification;
generate, based on the association of the license corresponding to the application with the user identification, an application package, wherein the application package is configured to deploy the application using a runtime environment on the user network device; and
send the application package to the user network device.

### Claim 2 (depends on 1)

The system of claim 1, wherein the computer-executable code, when executed by the processor, is further configured to:
prior to receiving the first request, receive a private key and the user identification from the service provider; and
generate a mapping between the received private key and the user identification.

### Claim 3 (depends on 2)

The system of claim 2, wherein the routing information and requested application information in the first request are encrypted by a public key, and the computer-readable code, when executed by the processor, further causes the processor to:
determine the private key based on the user identification in the first request and the mapping of the private key to the user identification; and
decrypt the routing information and requested application information using the private key.

### Claim 4 (depends on 1)

The system of claim 1, wherein the user network device comprises a first portion of the application, and wherein the application package comprises a second portion of the application.

### Claim 5 (depends on 4)

The system of claim 4, wherein the first portion of the application comprises a preview of the application having greater usage restrictions than a full version of the application.

### Claim 6 (depends on 1)

The system of claim 1, wherein the user network device is one selected from a group consisting of a smart television and a set top box.

### Claim 7 (depends on 1)

The system of claim 1, wherein the first request to execute the application is in response to a signal from a remote control.

### Claim 8 (depends on 1)

The system of claim 1, wherein the computer-readable code, when executed by the processor, further causes the processor to generate the application package by setting a digital rights management (DRM) setting for the application, wherein the DRM setting is enforced by the runtime environment.

### Claim 9 (depends on 1)

The system of claim 1, wherein the application package is generated in accordance with a network launch protocol.

### Claim 10 (depends on 1)

The system of claim 1, wherein the computer-readable code, when executed by the processor, further causes the processor to generate the application package using an access privilege, wherein the access privilege is one selected from a group consisting of sandbox-only execution, limited access execution outside a sandbox on the user network device, and full access execution on the user network device.

### Claim 11 (depends on 1)

The system of claim 1, wherein the application is a JAVA application.

### Claim 12 (depends on 1)

The system of claim 1, wherein the service provider comprises:
a service provider memory, comprising instructions, which when executed by a service provider processor, cause the service provider processor to:
receive, from the warehouse, a third request, the third request comprising a request for subscription information and including the user identification;
identify the subscription information mapped to the user identification; and
send the subscription information mapped to the user identification to the warehouse.

### Claim 13 (depends on 12)

The system of claim 12, the service provider further comprising computer-readable code, when executed by the service provider processor, causes the service provider processor to:
receive license data from the warehouse; and
associate the license with the user identification.

### Claim 14 (depends on 12)

The system of claim 12, the service provider further comprising computer-readable code, when executed by the service provider processor, further causes the service provider processor to:
prior to receiving the third request, receive a public key request from the user network device;
generate a public key and a private key;
send the public key to the user network device; and
send the private key and the user identification to the warehouse.

### Claim 15 (depends on 1)

The system of claim 1, wherein the user network device comprises a non-transitory computer-readable storage medium comprising computer-readable code that, when executed by a user network device processor, causes the user network device processor to:
send, the first request to the warehouse;
receive the application package from the warehouse;
execute the application package; and
display the application on the display device.

### Claim 16 (depends on 15)

The system of claim 15, wherein the user network device further comprises computer-readable code that, when executed by the user network device processor, causes the user network device processor to:
prior to sending the first request to the warehouse, send a key request for a public key to the service provider;
receive the public key from the service provider; and
encrypt the routing information and requested application information of the first request with the public key.
