Patents by Inventor Robert Ian Oliver

Robert Ian Oliver 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: 8239274
    Abstract: In various embodiments, a user may, via a processing device, indicate a desire to purchase a feature of an installed software product. A purchase request may be sent to an e-commerce server, or other server. The purchase request may be validated and information concerning the software product, the feature of the software product, and the processing device may be stored. Enabling information may be sent to the processing device to enable the feature of the software product. In some embodiments, the user may request a trial of a feature of a software product before purchasing the feature. In other embodiments, the user may deactivate a purchased feature of a software product on one processing device and may activate the purchased feature of the software product on a different processing device.
    Type: Grant
    Filed: January 11, 2007
    Date of Patent: August 7, 2012
    Assignee: Microsoft Corporation
    Inventors: Mukesh Karki, Mohammed Zubair Ansari, Yusuf Atas, Robert Ian Oliver, Serdar Unal
  • Patent number: 8170020
    Abstract: A computer network firewall or network filter functions normally to pass data on open ports to a respective service or data source associated with an open port. In addition, traffic arriving on closed ports may be directed to a handler for analysis and response. The handler may analyze and catalog the source and type of traffic arriving on the closed ports. The handler may then send a response with either a fixed response or data tailored to the type and nature of the traffic. The handler may respond slowly to cause the source of the traffic to wait for the response, thereby slowing the speed at which a potential attacker can identify valid targets and proceed past non-valid targets.
    Type: Grant
    Filed: December 8, 2005
    Date of Patent: May 1, 2012
    Assignee: Microsoft Corporation
    Inventors: Robert Ian Oliver, Alexander Frank
  • Patent number: 7979806
    Abstract: A method and user interface permits the display of objects in a portion of a display. The objects may initial be a first size, then shrink to a smaller size after a period of time. The objects may stack on top of each other. In addition, the objects may disappear all together after a further amount of time.
    Type: Grant
    Filed: December 15, 2006
    Date of Patent: July 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Krista L. Johnson, Garrett R. Vargas, Robert Ian Oliver, Bradley L. Carpenter, Daniel Makoski
  • Patent number: 7739516
    Abstract: The import address table of a software module is verified in order to prevent detouring attacks. A determination is made regarding which entries in the IAT must be verified; all of the entries may be verified or some subset of the entries that are critical may be verified. For each external function, the external module containing the external function is loaded, if it is not already loaded. The function address in the exported function table is found. That address is compared to the address for the function in the IAT. Additionally, the external module, in one embodiment, is verified to ensure that it has not been modified. For a delay load IAT, a similar procedure is followed; however the delay load IAT may be periodically checked to ensure that the delay load IAT entries are either valid (indicating that the external function has been bound) or in their initial state (indicating that no binding has yet occurred).
    Type: Grant
    Filed: March 5, 2004
    Date of Patent: June 15, 2010
    Assignee: Microsoft Corporation
    Inventors: Scott A. Brender, Philip J. Lafornara, Michael David Marr, Robert Ian Oliver
  • Patent number: 7644287
    Abstract: Dynamic run-time verification of a module which is loaded in memory (in whole or in part) for execution is enabled by using pre-computed portion-level verification data for portions of the module smaller than the whole (e.g. at the page-level). A portion of the module as loaded into memory for execution can be verified. Pre-computed portion-level verification data is retrieved from storage and used to verify the loaded portions of the executable. Verification data may be, for example, a digitally signed hash of the portion. Where the operating system loader has modified the portion for execution, the modifications are reversed, removing any changes performed by the operating system. If the portion has not been tampered, this will return the portion to its original pre-loaded state. This version is then used to determine validity using the pre-computed portion-level verification.
    Type: Grant
    Filed: July 29, 2004
    Date of Patent: January 5, 2010
    Assignee: Microsoft Corporation
    Inventors: Timothy J. Oerting, Philip J. Lafornara, Robert Ian Oliver, Scott A. Brender, Michael David Marr
  • Publication number: 20080319841
    Abstract: A per-machine based owner compensation advertising delivery systems targets advertising content to individual computer machines. Computer owners are compensated by receiving a portion of the per-machine advertising revenue, obtaining subsidized ad software, or by other financial agreements corresponding to ad delivery to a specific computer. The client software responsible for showing the ad content is also responsible for requesting ads from a server of an ad delivery service provider based on a deterministic combination of sequence and timing information that is also known by the server. The server may detect potential client fraud based on the comparing the pattern, frequency, and content of received ad requests to the expected behavior of the client machine, and then take action to mitigate the fraud through various strategies.
    Type: Application
    Filed: June 21, 2007
    Publication date: December 25, 2008
    Inventors: Robert Ian Oliver, Krista L. Johnson, Garrett R. Vargas
  • Publication number: 20080172300
    Abstract: In various embodiments, a user may, via a processing device, indicate a desire to purchase a feature of an installed software product. A purchase request may be sent to an e-commerce server, or other server. The purchase request may be validated and information concerning the software product, the feature of the software product, and the processing device may be stored. Enabling information may be sent to the processing device to enable the feature of the software product. In some embodiments, the user may request a trial of a feature of a software product before purchasing the feature. In other embodiments, the user may deactivate a purchased feature of a software product on one processing device and may activate the purchased feature of the software product on a different processing device.
    Type: Application
    Filed: January 11, 2007
    Publication date: July 17, 2008
    Applicant: Microsoft Corporation
    Inventors: Mukesh Karki, Mohammed Zubair Ansari, Yusuf Atas, Robert Ian Oliver, Serdar Unal
  • Publication number: 20080148173
    Abstract: A method and user interface permits the display of objects in a portion of a display. The objects may initial be a first size, then shrink to a smaller size after a period of time. The objects may stack on top of each other. In addition, the objects may disappear all together after a further amount of time.
    Type: Application
    Filed: December 15, 2006
    Publication date: June 19, 2008
    Inventors: Krista L. Johnson, Garrett R. Vargas, Robert Ian Oliver, Bradley L. Carpenter, Daniel Makoski