US8561151B2 - Mobile software entitlements manager - Google Patents
Mobile software entitlements manager Download PDFInfo
- Publication number
- US8561151B2 US8561151B2 US13/070,951 US201113070951A US8561151B2 US 8561151 B2 US8561151 B2 US 8561151B2 US 201113070951 A US201113070951 A US 201113070951A US 8561151 B2 US8561151 B2 US 8561151B2
- Authority
- US
- United States
- Prior art keywords
- mobile device
- software application
- entitlement
- client computer
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
- 230000004913 activation Effects 0.000 claims abstract description 24
- 238000013475 authorization Methods 0.000 claims description 38
- 238000000034 method Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 11
- 230000009849 deactivation Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 230000001413 cellular effect Effects 0.000 claims 12
- 238000004891 communication Methods 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 6
- 230000000737 periodic effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000002779 inactivation Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
- G06F21/1077—Recurrent authorisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/109—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by using specially-adapted hardware at the client
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
Definitions
- Manufacturers of software applications use various methods of managing their customers' access to their software based on the presence and nature of a valid customer software license.
- Software-based methods involve periodic communication between the client system running the application and a remote server that checks to see whether the client has a valid license to the software. If the remote server determines that a license is in effect, the functionality corresponding to that license is enabled. Conversely, if a license is not in effect, some or all of the application's functionality is disabled, or remains deactivated on the client.
- the license may be tied to a particular client system, or to a particular user.
- User-based licensing has the advantage of enabling a user to access the application from more than one client system.
- Such software-based methods require a connection to the remote server that stores the licensing information. This can pose a problem for applications running on clients with no Internet or other remote connection, a situation that commonly arises for clients requiring a high degree of network security.
- a hardware key is a small device, such as a flash memory stick, that permits a software application on a client to run when it is plugged into the client.
- Hardware keys have the advantage of portability and transferability, enabling any user in possession of the key to run the licensed application on any client that has the requisite software loaded onto it, while still enabling the manufacturer to limit the license to a single active instance of the software application.
- Hardware keys can be inconvenient, however, when users lose or damage them, with attendant delays before receiving a replacement.
- a mobile device serves as a mobile entitlement server for a software application running on a client that is in communication with the mobile device.
- the mobile device maintains current entitlement information via communication with a remote entitlement server.
- a method of controlling usage of a software application running on a client computer includes: receiving at a mobile device a request from the client computer to authorize the running of the software application on the client computer, wherein the request includes identification information; comparing the identification information with entitlement information stored on the mobile device; and if the entitlement information stored on the mobile device includes a valid entitlement corresponding to the identification information, sending to the client computer an authorization message, wherein the authorization message, when received by the client computer, enables the client computer to continue running the software application on the client computer.
- Various embodiments include one or more of the following features. Repeating the actions described in the previous paragraph at pre-specified intervals. If the entitlement information stored on the mobile device does not include a valid entitlement corresponding to the identification information, sending a deactivation message to the client computer to deactivate the software application. The deactivation message causes the software application to become at least partially inoperative on the client computer after a predetermined time interval after receipt of the deactivation message by the client computer. If the entitlement information stored on the mobile device includes a valid entitlement corresponding to the identification information, sending to a remote entitlement server over a wide area network an indication that a copy of the software application is running under the valid entitlement corresponding to the identification information.
- the comparing step In response to receiving the authorization request from the client and prior to the comparing step: requesting updated entitlement information from a remote entitlement server; receiving from the remote entitlement server, updated entitlement information; and updating the stored entitlement information with the updated entitlement information.
- the identification information identifies a user of the client computer, and/or the client computer.
- the receiving and sending steps are implemented via a wireless or a wired connection between the mobile device and the client computer.
- Entitlement information for a plurality of software applications including the first-mentioned software application, is stored on the mobile device, and the mobile device receives authorization requests for each of the plurality of software applications and responds by sending one of an authorization message and a deactivation message directed to each of the plurality of software applications.
- the software application is rendered at least partially inoperative on the client computer after a predetermined time interval after the request from the client computer to authorize the running of the software application was sent.
- the mobile device is a smart phone, tablet computer, netbook computer, or other mobile system.
- a method of controlling activation of a software application on a client computer includes: receiving at a mobile device an activation request from the client computer to activate the software application, wherein the activation request includes identification information, and wherein the client computer sends the activation request to the mobile device in response to a request from a user of the client computer to activate the software application on the client computer; comparing the identification information with entitlement information stored on the mobile device; and if the entitlement information stored on the mobile device includes a valid entitlement corresponding to the identification information, sending an activation message to the client, wherein receipt of the activation message enables the user to activate the software application on the client.
- Various embodiments include one or more of the following features. Outputting on the mobile device a notification of receipt of the activation request and a request for permission from a user of the mobile device to activate the software application on the client computer, and only sending the activation message if permission from the user of the mobile device is received.
- the valid entitlement information corresponding to the identification information includes entitlements for a licensed number of copies of the software application, and sending the activation message is conditional upon a number of currently activated copies of the software application being less than the licensed number.
- the mobile device maintains a record of the number of currently activated copies of the software application.
- the mobile device updates a remote entitlement server when the number of currently activated copies of the software application changes. Enabling a user of the mobile device to purchase an entitlement for the software application by executing an electronic transaction with a remote entitlement server, and updating the entitlement information stored on the mobile device to reflect the purchase.
- a computer program product comprises: storage including instructions for a processor to execute, such that when the processor executes the instructions a process for controlling usage of a software application running on a client computer is performed, the process comprising: receiving at a mobile device a request from the client computer to authorize the running of the software application on the client computer, wherein the request includes identification information; comparing the identification information with entitlement information stored on the mobile device; and if the entitlement information stored on the mobile device includes a valid entitlement corresponding to the identification information, sending to the client computer an authorization message, wherein the authorization message, when received by the client computer, enables the client computer to continue running the software application on the client computer.
- a mobile device comprises: a processor for executing instructions; a wireless network interface connected to the processor; a memory connected to the processor, the memory including instructions which, when executed by the processor, cause the portable device to implement a process for controlling usage of a software application running on a client computer is performed, the process including: receiving via the wireless network interface a request from the client computer to authorize the running of the software application on the client computer, wherein the request includes identification information; comparing the identification information with entitlement information stored in the memory; and if the entitlement information stored on the mobile device includes a valid entitlement corresponding to the identification information, sending to the client computer via the wireless network interface an authorization message, wherein the authorization message, when received by the client computer, enables the client computer to continue running the software application on the client computer.
- FIG. 1 is a high level flow diagram of the steps involved in purchasing entitlements and launching a client application enabled by a virtual hardware key.
- FIG. 2 is a high level flow diagram illustrating the communication between the client and the virtual hardware key while the application is running on the client.
- FIG. 3 is a high level block diagram showing components of a system for implementing a mobile entitlements manager.
- FIG. 4 is illustrates a user interface of a mobile entitlements manager.
- the methods and systems described herein provide a distinct, additional functionality to a mobile device user through an entitlements application on the mobile device that receives, manages, and stores software entitlement information. Such functionality in effect turns a mobile device into a virtual hardware key, and eliminates the need for a licensed software application user to carry a separate licensing repository device.
- virtual hardware key refers to an entitlements manager application running on a mobile device. Elimination of hardware-based repositories reduces the risk of losing entitlements by losing or damaging a hardware key.
- a virtual hardware key can handle entitlements for multiple different software applications and software plug-ins, as well as entitlements that permit more than a single copy of a licensed application to run at the same time on different clients.
- FIG. 1 is a high level flow diagram of the steps involved in purchasing entitlements and launching a client application enabled by a virtual hardware key.
- a high level block diagram of the components involved in a virtual hardware key software authorization scheme is shown in FIG. 3 .
- the customer Before being able to run a software application, the customer needs a valid entitlement, such as an individual or a site license. This can be obtained, for example, by purchasing it from entitlement server 302 using any Internet-connected client, such as a thin client connected to the Internet ( 304 ), client 308 that is to run the software application (if it has Internet connectivity), or virtual hardware key mobile device 306 , via an e-commerce transaction (step 102 ).
- the remote entitlement server maintains a complete and up-to-date record of each customer's entitlements.
- the virtual hardware key includes an entitlements manager software application that runs on mobile device 306 , and enables the mobile device to manage some or all of the entitlements to which the mobile device user has access. These may be individual client licenses, site licenses, corporate client licenses, or involve other licensing entities or licensing schemes.
- the mobile device is able to communicate with the remote entitlement server via the cell network to receive current entitlement status from the remote server, and report to the server the activation status of the various software applications in communication with the mobile entitlements server. This synchronization may be initiated by the mobile device user at any time (as long as the mobile device has connectivity), or occur in accordance with a predetermined schedule of update requests, e.g., periodic, such as once a day or once a week.
- the virtual hardware key may also receive update transmissions initiated by the entitlements server when entitlement changes occur. Such changes include the purchase of new entitlements, the expiration or cancellation of entitlements, or a change in licensing terms and conditions.
- the virtual hardware key receives a notification of the updated entitlement status of the customer (step 104 ), either as a result of a notification message initiated by the remote server, or in response to a user-initiated, periodic or prescheduled update request from the virtual hardware key.
- the software application may offer various authorization options, such as a hardware key, direct communication with the remote entitlement server via the Internet, or by virtual hardware key.
- the client may automatically default to the virtual hardware key option if an applicable virtual key is detected, or the choice may require user input.
- the client sends out a request for authorization over a local network via a wireless connection (step 108 ).
- the request includes information that identifies the entity seeking authorization, which includes one or more of a user, customer, client, and site identification.
- the request also specifies the software application for which authorization is being sought, and optionally additional details pertaining to the user, the client computer, and the software application.
- the virtual hardware key receives the request (step 110 ), and checks to see if its entitlement data includes a valid entitlement for the requested software application for the requesting entity (step 112 ).
- the virtual hardware key does not send activation information (step 114 ), optionally sending instead a message that no valid entitlement was found together with an invitation to acquire an entitlement, or authorization that permits the software application to run with limited functionality or for a limited time period (trial entitlement).
- the virtual hardware key sends authorization for the application to be activated (step 116 ), and after the client receives authorization, the user is able to launch the application (step 118 ).
- FIG. 2 is a high level flow diagram illustrating the communication between the client and the virtual hardware key after initial activation of an application, i.e., when the application is already running on the client.
- ongoing authorization checks FIG. 2 , step 202
- publishers may stipulate periodic authorization checks for security or user survey reasons.
- the next step depends on whether or not the mobile device receives the request ( 204 ). If the mobile device is still within range of the client computer running the software application (or if it is physically connected, e.g., via a USB port), the message is received by the mobile device. However, if the mobile device is no longer able to receive messages from the client because it has moved out of range, been switched off, or run out of batteries, the message will not be received. In this case, the client will not receive a reply at all from the mobile device, and ongoing authorization to keep the application running is unavailable.
- the software application is then deactivated ( 206 ) according to a schedule determined by the software vendor or licensing entity. The user of the application is notified of the lack of authorization, and may be given a fixed time before inactivation of the application in which either to retrieve the virtual hardware key, or seek another means of authorization. Failing that, the application becomes partially or fully inoperative.
- the mobile device If the ongoing authorization request message is received by the mobile device, it checks to see if it still has a valid entitlement for the requesting entity ( 208 ). If no valid entitlement exists, a deactivation message is sent back to the client ( 210 ), which then initiates the deactivation procedure ( 212 ). On the other hand, if a valid authorization is found, a confirmation message is sent to the client ( 214 ). Receipt of a confirmation message enables the software application to continue to run without any interruption ( 216 ). If the application is still running ( 218 ), the authorization check cycle then repeats, and after an interval of time, another ongoing authorization request message is sent.
- the client Upon ending the software application session, or when the next periodic check cycle discovers that the application is no longer running, the client sends a message to the mobile device to notify it that the session has ended ( 220 ).
- the entitlements manager then updates its record of the application's status, and relays it to the remote entitlement server, either in response to receiving the session ended message, or as part of a regularly scheduled entitlement status update.
- the mobile device can support multiple processes, as described above, entitling multiple applications or sub-components (e.g., plug-ins) consecutively.
- the communication between the mobile device, the client, and the remote entitlement server is encrypted, using wireless encryption algorithms and methods well known in the art.
- the mobile entitlement manager software application includes a user interface, such as that shown in FIG. 4 , which lists all the entitlements available to the user of the mobile device, along with temporal data, such as renewal dates, initial activation dates, and any relevant temporal restrictions or parameters.
- the application may sort the entitlements by product manufacturer, or according to the multiple accounts to which the user has access, or may show a consolidated alphabetically arranged list by company or by client application product name.
- the entitlements manager may also highlight, or list separately the licensed applications that are currently activated.
- updates or upgrades of the user's entitlements become available, the user is notified, for example, by displaying a corresponding icon.
- a “sync entitlements” button enables the user to request updated entitlement information from the remote entitlement server. This action may also cause the mobile device to send to the server updated activation status information.
- a mobile entitlements manager as described herein may be implemented as a computer program using a general-purpose computer system.
- a computer system may be an integrated portable system, which typically includes an integrated processing unit connected to both an integrated output that displays information to a user and an input that receives input from a user.
- the processing unit generally includes a processor connected to a memory system via an interconnection mechanism. The input and output are also connected to the processor and memory system via the interconnection mechanism.
- Example output devices include, but are not limited to, liquid crystal displays (LCD), touch screens, plasma displays, OLED displays, video projection systems and other video output devices, loudspeakers and other audio output devices; printers, devices for communicating over a low or high bandwidth network, including network interface devices, cable modems, and storage devices including solid state devices such as flash memory, or magnetic media such as disk or tape.
- One or more input devices may be connected to the computer system.
- Example input devices include, but are not limited to, a touch screen, keyboard, keypad, track ball, mouse, pen and tablet, communication device, and data input devices. The invention is not limited to the particular input or output devices used in combination with the computer system or to those described herein.
- the computer system may be a general purpose computer system which is programmable using a computer programming language, a scripting language or even assembly language.
- the computer system may also be specially programmed, special purpose hardware.
- the processor is typically a commercially available processor.
- the general-purpose computer also typically has an operating system, which controls the execution of other computer programs and provides scheduling, debugging, input/output control, accounting, compilation, storage assignment, data management and memory management, and communication control and related services.
- the computer system may be connected to a local network and/or to a wide area network, such as the Internet.
- the connection may be via a fixed connection, such as via an Ethernet network, or via a wireless connection, such as Wi-Fi or Bluetooth.
- the connected network may transfer to and from the computer system program instructions for execution on the computer, audio and video media data, metadata, media annotations, and other data.
- a memory system typically includes a computer readable medium.
- the medium may be volatile or nonvolatile, writeable or nonwriteable, and/or rewriteable or not rewriteable.
- a memory system typically stores data in binary form. Such data may define an application program to be executed by the microprocessor, or information stored on a storage medium to be processed by the application program.
- the invention is not limited to a particular memory system.
- Time-based media may be stored on and input from magnetic or optical discs, which may include an array of local or network attached discs, or via local or wide area networks via network interfaces.
- a system such as described herein may be implemented in software or hardware or firmware, or a combination of the three.
- the various elements of the system either individually or in combination may be implemented as one or more computer program products in which computer program instructions are stored on as computer readable storage medium for execution by a computer, or transferred to a computer system via a connected local area or wide area network.
- computer readable storage medium is of a non-transitory nature.
- steps of a process may be performed by a computer executing such computer program instructions.
- the computer system may be a multiprocessor computer system or may include multiple computers connected over a computer network.
- the components described herein may be separate modules of a computer program, or may be separate computer programs, which may be operable on separate computers.
- the data produced by these components may be stored in a memory system or transmitted between computer systems.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/070,951 US8561151B2 (en) | 2011-03-24 | 2011-03-24 | Mobile software entitlements manager |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/070,951 US8561151B2 (en) | 2011-03-24 | 2011-03-24 | Mobile software entitlements manager |
Publications (2)
Publication Number | Publication Date |
---|---|
US20120246704A1 US20120246704A1 (en) | 2012-09-27 |
US8561151B2 true US8561151B2 (en) | 2013-10-15 |
Family
ID=46878456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/070,951 Active 2031-07-26 US8561151B2 (en) | 2011-03-24 | 2011-03-24 | Mobile software entitlements manager |
Country Status (1)
Country | Link |
---|---|
US (1) | US8561151B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9325836B2 (en) | 2014-05-02 | 2016-04-26 | Anthony Cerda | Learning guard system |
US9985992B1 (en) * | 2014-09-19 | 2018-05-29 | Jpmorgan Chase Bank, N.A. | Entitlement system and method |
US10503879B1 (en) * | 2019-03-19 | 2019-12-10 | Servicenow, Inc. | Systems and methods for transaction-based licensing |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8800058B2 (en) * | 2011-07-27 | 2014-08-05 | Microsoft Corporation | Licensing verification for application use |
US9509601B2 (en) * | 2012-11-01 | 2016-11-29 | Cisco Technology, Inc. | Device driver for a software router |
CN104182661A (en) * | 2013-05-24 | 2014-12-03 | 富泰华工业(深圳)有限公司 | Software protection system |
US20150142679A1 (en) * | 2013-11-15 | 2015-05-21 | Adobe Systems Incorporated | Provisioning rules to manage user entitlements |
CN104573414A (en) * | 2015-01-06 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | Verification control method for ensuring software activation |
US9923929B2 (en) * | 2015-11-20 | 2018-03-20 | Nasdaq, Inc. | Systems and methods for in-session refresh of entitlements associated with web applications |
US20180260539A1 (en) * | 2017-03-08 | 2018-09-13 | Microsoft Technology Licensing, Llc | Device specific identity linked to user account |
CN110333888B (en) * | 2019-07-10 | 2023-10-13 | 广州酷狗计算机科技有限公司 | Function updating method, device, equipment and storage medium |
CN112883341B (en) * | 2019-11-29 | 2023-08-04 | 杭州海康威视数字技术股份有限公司 | Software authorization method, system, electronic equipment and storage medium |
CN112929165B (en) * | 2021-01-29 | 2024-04-30 | 中汽创智科技有限公司 | Dynamic authorization system and method based on remote vehicle |
CN113837828A (en) * | 2021-09-07 | 2021-12-24 | 芜湖雄狮汽车科技有限公司 | Vehicle-mounted software selling method and device, vehicle and storage medium |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040039916A1 (en) * | 2002-05-10 | 2004-02-26 | David Aldis | System and method for multi-tiered license management and distribution using networked clearinghouses |
US20050076208A1 (en) * | 2000-11-24 | 2005-04-07 | Yoshihiro Hori | Data terminal capable of transferring ciphered content data and license acquired by software |
US20050132347A1 (en) * | 2003-12-15 | 2005-06-16 | Harper Eric D. | System for controlling the use of a software application on a plurality of computers |
US20050289072A1 (en) * | 2004-06-29 | 2005-12-29 | Vinay Sabharwal | System for automatic, secure and large scale software license management over any computer network |
US20060122940A1 (en) * | 1996-02-26 | 2006-06-08 | Coley Christopher D | Regional network licensing system |
US20080155144A1 (en) * | 2006-12-19 | 2008-06-26 | Sven Helmecke | Control of a peripheral apparatus via a canopen interface |
US20080262968A1 (en) * | 2007-03-26 | 2008-10-23 | Infosys Technologies Ltd. | Software licensing control via mobile devices |
US20100107258A1 (en) * | 2008-10-29 | 2010-04-29 | Samsung Electronics Co., Ltd. | Method and apparatus for managing contents in mobile device |
US20100138305A1 (en) * | 2008-12-01 | 2010-06-03 | International Business Machines Corporation | System and method for product trials in a simulated environment |
US20100280892A1 (en) * | 2009-04-30 | 2010-11-04 | Alcatel-Lucent Usa Inc. | Method and system for targeted offers to mobile users |
US20120079577A1 (en) * | 2010-09-29 | 2012-03-29 | Verizon Patent And Licensing Inc. | Video broadcasting to mobile communication devices |
US20120147824A1 (en) * | 2010-12-13 | 2012-06-14 | Jacobus Van Der Merwe | Methods and apparatus to configure virtual private mobile networks |
-
2011
- 2011-03-24 US US13/070,951 patent/US8561151B2/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060122940A1 (en) * | 1996-02-26 | 2006-06-08 | Coley Christopher D | Regional network licensing system |
US20050076208A1 (en) * | 2000-11-24 | 2005-04-07 | Yoshihiro Hori | Data terminal capable of transferring ciphered content data and license acquired by software |
US20040039916A1 (en) * | 2002-05-10 | 2004-02-26 | David Aldis | System and method for multi-tiered license management and distribution using networked clearinghouses |
US20050132347A1 (en) * | 2003-12-15 | 2005-06-16 | Harper Eric D. | System for controlling the use of a software application on a plurality of computers |
US20050289072A1 (en) * | 2004-06-29 | 2005-12-29 | Vinay Sabharwal | System for automatic, secure and large scale software license management over any computer network |
US20080155144A1 (en) * | 2006-12-19 | 2008-06-26 | Sven Helmecke | Control of a peripheral apparatus via a canopen interface |
US20080262968A1 (en) * | 2007-03-26 | 2008-10-23 | Infosys Technologies Ltd. | Software licensing control via mobile devices |
US20100107258A1 (en) * | 2008-10-29 | 2010-04-29 | Samsung Electronics Co., Ltd. | Method and apparatus for managing contents in mobile device |
US20100138305A1 (en) * | 2008-12-01 | 2010-06-03 | International Business Machines Corporation | System and method for product trials in a simulated environment |
US20100280892A1 (en) * | 2009-04-30 | 2010-11-04 | Alcatel-Lucent Usa Inc. | Method and system for targeted offers to mobile users |
US20120079577A1 (en) * | 2010-09-29 | 2012-03-29 | Verizon Patent And Licensing Inc. | Video broadcasting to mobile communication devices |
US20120147824A1 (en) * | 2010-12-13 | 2012-06-14 | Jacobus Van Der Merwe | Methods and apparatus to configure virtual private mobile networks |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9325836B2 (en) | 2014-05-02 | 2016-04-26 | Anthony Cerda | Learning guard system |
US9985992B1 (en) * | 2014-09-19 | 2018-05-29 | Jpmorgan Chase Bank, N.A. | Entitlement system and method |
US10503879B1 (en) * | 2019-03-19 | 2019-12-10 | Servicenow, Inc. | Systems and methods for transaction-based licensing |
US11106763B2 (en) | 2019-03-19 | 2021-08-31 | Servicenow, Inc. | Systems and methods for transaction-based licensing |
Also Published As
Publication number | Publication date |
---|---|
US20120246704A1 (en) | 2012-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8561151B2 (en) | Mobile software entitlements manager | |
US12019750B2 (en) | Authentication and notification heuristics | |
TWI387898B (en) | Programmatically transferring applications between handsets based on license information | |
CN106203001B (en) | Use the application license for the person of simultaneously providing | |
KR101187178B1 (en) | Open market content distribution | |
US9026804B2 (en) | Methods and apparatus for protected distribution of applications and media content | |
KR101584643B1 (en) | Apparatus and method of managing a licensable item | |
US20120090034A1 (en) | Method and apparatus for downloading drm module | |
EP2715591B1 (en) | Apparatus and method of in-application licensing | |
US20140122645A1 (en) | Method and system for automatic agnostic provisioning of a computing device | |
US10355927B2 (en) | Device management service | |
US20160335421A1 (en) | Information Handling System License Management Through NFC | |
JP6133310B2 (en) | Time-based control of access to software assets on user devices | |
CA2855308A1 (en) | Method and system for digital rights enforcement | |
JP4931554B2 (en) | License management system, license management method, and license management program | |
US20180260539A1 (en) | Device specific identity linked to user account | |
US9363081B2 (en) | License administration device and license administration method | |
US9424405B2 (en) | Using receipts to control assignments of items of content to users | |
KR20090089756A (en) | Method and system of license notify consignment for portable device | |
JP5687264B2 (en) | Terminal device, method, program, and system | |
TWI479446B (en) | Apparatus and method of managing a licensable item and non-transitory computer-readable storage medium | |
KR20140033545A (en) | Method for protecting and managing a digital contents and device thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: AVID TECHNOLOGY, INC., MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DORSEY, JAMES CHRISTOPHER;GIANATTASIO, RICHARD;PHILLIPS, MICHAEL E.;SIGNING DATES FROM 20110324 TO 20110328;REEL/FRAME:026030/0287 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: KEYBANK NATIONAL ASSOCIATION, AS THE ADMINISTRATIV Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:AVID TECHNOLOGY, INC.;REEL/FRAME:036008/0824 Effective date: 20150622 |
|
AS | Assignment |
Owner name: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGEN Free format text: ASSIGNMENT FOR SECURITY -- PATENTS;ASSIGNOR:AVID TECHNOLOGY, INC.;REEL/FRAME:037939/0958 Effective date: 20160226 |
|
AS | Assignment |
Owner name: AVID TECHNOLOGY, INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST IN UNITED STATES PATENTS;ASSIGNOR:KEYBANK NATIONAL ASSOCIATION;REEL/FRAME:037970/0201 Effective date: 20160226 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT, ILLINOIS Free format text: SECURITY INTEREST;ASSIGNOR:AVID TECHNOLOGY, INC.;REEL/FRAME:054900/0716 Effective date: 20210105 Owner name: AVID TECHNOLOGY, INC., MASSACHUSETTS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CERBERUS BUSINESS FINANCE, LLC;REEL/FRAME:055731/0019 Effective date: 20210105 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FEPP | Fee payment procedure |
Free format text: 7.5 YR SURCHARGE - LATE PMT W/IN 6 MO, LARGE ENTITY (ORIGINAL EVENT CODE: M1555); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
AS | Assignment |
Owner name: SIXTH STREET LENDING PARTNERS, AS ADMINISTRATIVE AGENT, TEXAS Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:AVID TECHNOLOGY, INC.;REEL/FRAME:065523/0194 Effective date: 20231107 Owner name: AVID TECHNOLOGY, INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 054900/0716);ASSIGNOR:JPMORGAN CHASE BANK, N.A.;REEL/FRAME:065523/0146 Effective date: 20231107 |