Patents by Inventor Aidan Hughes

Aidan Hughes has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8392713
    Abstract: A computer readable medium for activating a software application for execution on a designated computer, where the computer readable medium has stored thereon computer executable instructions for performing the following steps: computing an installation identifier reflective of the software application and the designated computer; receiving an activation code generated in accordance with the installation identifier and a blinding factor value; computing a first verification code as a function of the installation identifier; computing a trial blinding factor value; computing a decryption key as a function of the trial blinding factor value and the activation code; using the decryption key to decrypt a second verification code; verifying that the first verification code matches the second verification code; and, activating the software application for execution on the designated computer.
    Type: Grant
    Filed: June 1, 2007
    Date of Patent: March 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Aidan Hughes, Douglas R. de la Torre
  • Patent number: 8224750
    Abstract: The invention may be considered a method and a system for changing license rights to a software product installed on a computer without reinstalling the software product. A first license and a second license to the software product are stored on the computer along with code for the software product. Subsequent to the installation, a change license module receives a command to change the license to the software product. In response to the command, the configuration data is changed to associate the software product with the second license and limit use of the software product to uses consistent with the second set of rights.
    Type: Grant
    Filed: October 7, 2003
    Date of Patent: July 17, 2012
    Assignee: Microsoft Corporation
    Inventors: Jim Bennett, Peter Oosterhof, Aidan Hughes, Anzhelika Nishanova
  • Patent number: 7734550
    Abstract: In accordance with other aspects, the present invention relates to a system for identifying a license for a first software product of a first type installed on a computer system having at least one other software product of the first type installed on the computer system. The system includes a first license associated with the first software product; at least one second license associated with the at least one other software product installed on the computer; and a license module that compares the first license and the at least one second license and selects one of the first and second licenses based on predetermined criteria. Methods for identifying and displaying a license for a first software product of a first type installed on a computer system are also disclosed.
    Type: Grant
    Filed: October 7, 2003
    Date of Patent: June 8, 2010
    Assignee: Microsoft Corporation
    Inventors: Jim Bennett, Peter Oosterhof, Aidan Hughes, Anzhelika Nishanova
  • Publication number: 20080301447
    Abstract: A computer readable medium for activating a software application for execution on a designated computer, where the computer readable medium has stored thereon computer executable instructions for performing the following steps: computing an installation identifier reflective of the software application and the designated computer; receiving an activation code generated in accordance with the installation identifier and a blinding factor value; computing a first verification code as a function of the installation identifier; computing a trial blinding factor value; computing a decryption key as a function of the trial blinding factor value and the activation code; using the decryption key to decrypt a second verification code; verifying that the first verification code matches the second verification code; and, activating the software application for execution on the designated computer.
    Type: Application
    Filed: June 1, 2007
    Publication date: December 4, 2008
    Applicant: Microsoft Corporation
    Inventors: Aidan Hughes, Douglas R. de la Torre
  • Publication number: 20080104710
    Abstract: A grace period is provided during which the features of a software application may be fully utilized and appreciated without requiring entry of a product identification key code or other authorization code. After loading a software application onto a user's computer, a grace period is provided during which the software application may be booted and used with all its associated features and functionalities before requiring entry of a product identification key code or other authorization code. At the end of the grace period, entry of the appropriate product identification key code or other authorization code is required, followed by activation of the software application.
    Type: Application
    Filed: September 29, 2006
    Publication date: May 1, 2008
    Applicant: Microsoft Corporation
    Inventors: Michael Jorden, Aidan Hughes, John Jennings
  • Publication number: 20080098482
    Abstract: Systems and methods for binding a secret to a computer system are disclosed. Systems and methods for generating a strong hardware identification (SHWID) for a given computer system are also disclosed. The strong hardware identification (SHWID) is coupled to a bound secret. The strong hardware identification (SHWID) may be used to control the use of software on the given computer system depending on the degree of hardware changes to the computer system.
    Type: Application
    Filed: October 22, 2007
    Publication date: April 24, 2008
    Applicant: Microsoft Corporation
    Inventor: Aidan Hughes
  • Publication number: 20080040619
    Abstract: Systems and methods for implementing a hardware ID with time- and weight-based flexibility use a hardware ID (HWID) including identifying information about hardware components. When software is run, a current HWID is generated. When the current HWID is compared to a stored HWID to determine if the two HWIDs match, a time vector and a weight vector are used in the comparison. A running matching score is kept of matches. For each hardware component, the weight vector indicates the weight given to a correct match of the hashed value for the hardware component. For example, if the weight value for the hardware component is three and there is a match, then the running total is increased by three. For each hardware component, the time vector may indicate an expiration period after which a change in the component may be allowed.
    Type: Application
    Filed: October 17, 2007
    Publication date: February 14, 2008
    Applicant: Microsoft Corporation
    Inventors: Pratul Dublish, Caglar Gunyakti, Aidan Hughes
  • Publication number: 20070255978
    Abstract: Retroactive verbose error logging may be provided. Loggable event entries associated with software installation during installation may be saved. Each of the loggable event entries may have a first level or a second level. In addition, the loggable event entries associated with the first level and the second level may be saved to a log file if an error occurs during the software installation. Furthermore, the loggable event entries associated only with the first level may be saved to the log file if a milestone occurs during the software installation and the error has not occurred before the milestone occurs. The software installation may be stopped if the error occurs during the software installation and the software installation may continue if the milestone occurs during the software installation.
    Type: Application
    Filed: March 28, 2006
    Publication date: November 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Scott Kurtzeborn, Mark Epstein, Aidan Hughes
  • Publication number: 20070143228
    Abstract: A licensing system provides for enabling and disabling features based on the product key included with a software product. A distribution channel associated with the software product is identified. The distribution channel is identified according to a channel ID obtained from the product key. A set of default features associated with the application is also identified. The set of default features are modified to produce a new set of features for the application when the channel ID is associated with a modifier. The new set of features is applied to the software product such that a use experience and features of the software product is controlled by the product key.
    Type: Application
    Filed: December 15, 2005
    Publication date: June 21, 2007
    Applicant: Microsoft Corporation
    Inventors: Michael Jorden, Aidan Hughes, R. Chicks
  • Publication number: 20070143222
    Abstract: A licensing system provides for various versions of an application within a software product. A license type is identified from a product key that is associated with the software product. The license type may correspond to a hybrid license. When the license type is a hybrid license, an application state is determined for any applications included in the software product. A use experience for the applications is provided according to the application state when the application state is determined. For applications that are provided as upgradeable versions, an upgrade may be obtained by simply obtaining a new product key that is associated with the upgraded versions of the applications.
    Type: Application
    Filed: December 15, 2005
    Publication date: June 21, 2007
    Applicant: Microsoft Corporation
    Inventors: R. Chicks, Aidan Hughes, Michael Jorden
  • Publication number: 20070136241
    Abstract: This document describes techniques that enable an application to operate as if the application were running on its native computing system when it is actually running on another computing system. The techniques may do so by building a portable registry having metadata particular to the application, which can be stored in a portable device along with that application. When that portable device is connected to another computing system, the portable registry may be used to supplement or supplant the other computing system's registry to enable the application to operate with its particular functionality.
    Type: Application
    Filed: December 13, 2005
    Publication date: June 14, 2007
    Applicant: Microsoft Corporation
    Inventors: Aidan Hughes, David Yalovsky, Anzhelika Nishanova
  • Publication number: 20060150182
    Abstract: A metadata-based application model for software systems provides for the integration and storing of application metadata with the application itself effectively replacing the system registry. In calling or updating the application components or modules, queries to the metadata within the application folders returns references to the files with metadata that matches the query. The component or modules are called or updated within the file using the returned reference. The present invention also provides a data structure comprising a data field for the application code and another field for the metadata.
    Type: Application
    Filed: December 30, 2004
    Publication date: July 6, 2006
    Applicant: Microsoft Corporation
    Inventors: Aidan Hughes, J. East, James Bennett, Paul Barr
  • Publication number: 20060136872
    Abstract: An integrated application setup enables the generation and expression of application customization intent in a generic manner that is indifferent to the way in which the customization intent is implemented. A customization application integrates the process of customizing a target application with the standard setup process for the target application. The customization application allows a user to review customization options for the target application and to specify customization intent through an application configuration user interface (UI). The customization application then generates customization XML that expresses the user's customization intent.
    Type: Application
    Filed: December 20, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Paul Barr, John Jennings, Aidan Hughes
  • Publication number: 20060136895
    Abstract: An integrated application setup enables the implementation of application customizations through patch technology. A customization patch extends a typical patch file format such that the customization patch serves as a container for application customization data useful for customizing an application using different underlying technologies. The contents of the customization patch can include transforms, cabinet files, and XML content containing customization information.
    Type: Application
    Filed: December 20, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Paul Barr, Aidan Hughes, John Jennings, Shane Morrison
  • Publication number: 20060136446
    Abstract: An entry for a file to be stored in a file system can be created. A priority is assigned to the file that indicates an importance of the file relative to a plurality of additional files stored in the file system, the priority being one of three or more priorities available to files in the file system. Additionally, one or more of the files that are associated with the lowest priority values can be automatically deleted.
    Type: Application
    Filed: December 17, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Aidan Hughes, Paul Barr
  • Publication number: 20060136907
    Abstract: A first installation package for a first group of files is created for a program. The first group of files include language-neutral files for the program but no language-specific files for the program. A second installation package for a second group of files is also created for the program. The second group of files includes language-specific files for the program.
    Type: Application
    Filed: December 20, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: James Bennett, Terri Cheff-Goldade, Paul Barr, Aidan Hughes, Scott Kurtzeborn, Jeffrey James
  • Publication number: 20060136906
    Abstract: Described herein are one or more implementations for facilitating installation of software products. In at least one implementation, one or more installation databases (e.g., MSI databases) are stored on the computer-readable media (e.g., a CD-ROM or hard disk). The installation databases include data configured to be loaded onto a computing system when a software product is installed onto that computing system. Also stored on that media is one or more executable installation components (e.g., MSI installer) that, when executed, directs installation of the software product from the one or more installation databases.
    Type: Application
    Filed: December 20, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Aidan Hughes, James Bennett, Scott Kurtzeborn, Terri Cheff-Goldade
  • Publication number: 20060130004
    Abstract: A portable storage device includes an interface and one or more flash memories. The one or more flash memories store one or more executable files that can be executed by a host computer to which the device is coupled without altering any environment settings on the host computer even though the one or more executable files include instructions to access environment settings. Additionally, the application is bound to the portable storage device during an activation process.
    Type: Application
    Filed: December 15, 2004
    Publication date: June 15, 2006
    Applicant: Microsoft Corporation
    Inventors: Aidan Hughes, Paul Barr, Anzhelika Nishanova, David Yalovsky, J. East
  • Publication number: 20060026604
    Abstract: A method for reactivation of software products includes activating a first software product associated with a reactivation policy group. A hardware identifier derived from the computer hardware configuration is bound with the first software product activation. A second software product is activated having an associated reactivation binding list. Reactivation is requested for the first software product and an updated hardware identifier is associated with a reactivation policy group of the first software product. The second software product may be spared the request for reactivation if the second product can be associated with the reactivation of the first software product given the binding list is compatible with the reactivation policy group.
    Type: Application
    Filed: July 30, 2004
    Publication date: February 2, 2006
    Applicant: Microsoft Corporation
    Inventors: Xiaoxi Tan, Caglar Gunyakti, Ravindra Pandya, Aidan Hughes, Kristjan Hatlelid, Yue Liu
  • Patent number: 6243468
    Abstract: An anti-piracy system reduces the opportunity for piracy and illicit use of software products by requiring each software product to be registered for a single computer. If a user attempts to install the software product on another computer, the software product will recognize a different hardware composition and disable itself. During installation, the software product generates a hardware ID that identifies the set of hardware components and sends it and a product ID to a registration authority. The registration authority computes a registration ID from the product ID and the hardware ID and sends the registration ID back to the software product. Each time the software product is subsequently launched, the software product computes its own test ID from the product ID and hardware ID using the same algorithm employed by the registration authority. The software product then compares the test ID to the registration ID.
    Type: Grant
    Filed: April 29, 1998
    Date of Patent: June 5, 2001
    Assignee: Microsoft Corporation
    Inventors: David B. Pearce, Aidan Hughes