Patents by Inventor Todd L. Carpenter

Todd L. Carpenter 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: 8839236
    Abstract: A virtual machine monitor provides a trusted operating environment for a software usage metering application when a qualified virtual machine monitor is loaded as part of trusted boot and when all other programs and operating systems run in containers managed by the virtual machine monitor. The virtual machine monitor may also host a locking application for limiting the functionality of the computer if contractual terms of use are not met. Both the metering and locking applications run at a higher privilege level than ring 0, at the same level as the virtual machine monitor.
    Type: Grant
    Filed: April 4, 2007
    Date of Patent: September 16, 2014
    Assignee: Microsoft Corp.
    Inventors: Todd L. Carpenter, William J. Westerinen, Thomas G. Phillips, Curt Andrew Steeb, Zhangwei Xu, Alexander Frank
  • Publication number: 20140229326
    Abstract: An accessory-specific user experience can be invoked at a mobile host device attached to an accessory device. The mobile device can receive accessory device information from the accessory and transmit the accessory device information to an online marketplace. The mobile device can receive information indicating accessory-specific goods or services available from the online marketplace and display the received information as part of the invoked user experience. The accessory device information can comprise accessory usage categories as well as additional information about the accessory. A marketplace can select accessory-specific goods or services based on the received accessory device information based on matching between accessory attribute values associated with the goods and services and accessory attributes values contained in the received accessory device information.
    Type: Application
    Filed: April 18, 2014
    Publication date: August 14, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Todd L. Carpenter, Andras Tantos, John H. Chiloyan
  • Patent number: 8806220
    Abstract: Described is a technology by which a transient storage device or secure execution environment-based (e.g., including an embedded processor) device validates a host computer system. The device compares hashes of host system data against valid hashes maintained in protected storage of the device. The host data may be a file, data block, and/or memory contents. The device takes action when the host system data does not match the information in protected storage, such as to log information about the mismatch and/or provide an indication of validation failure, e.g., via an LED and/or display screen output. Further, the comparison may be part of a boot process validation, and the action may prevent the boot process from continuing, or replace an invalid file. Alternatively, the validation may take place at anytime.
    Type: Grant
    Filed: January 7, 2009
    Date of Patent: August 12, 2014
    Assignee: Microsoft Corporation
    Inventors: David Abzarian, Todd L. Carpenter, Harish S. Kulkarni, Salahuddin J. Khan
  • Patent number: 8719112
    Abstract: An accessory-specific user experience can be invoked at a mobile host device attached to an accessory device. The mobile device can receive accessory device information from the accessory and transmit the accessory device information to an online marketplace. The mobile device can receive information indicating accessory-specific goods or services available from the online marketplace and display the received information as part of the invoked user experience. The accessory device information can comprise accessory usage categories as well as additional information about the accessory. A marketplace can select accessory-specific goods or services based on the received accessory device information based on matching between accessory attribute values associated with the goods and services and accessory attributes values contained in the received accessory device information.
    Type: Grant
    Filed: November 1, 2010
    Date of Patent: May 6, 2014
    Assignee: Microsoft Corporation
    Inventors: Todd L. Carpenter, Andras Tantos, John H. Chiloyan
  • Patent number: 8676714
    Abstract: Server-side validation of hardware specific software product licenses is described herein.
    Type: Grant
    Filed: June 11, 2009
    Date of Patent: March 18, 2014
    Assignee: Microsoft Corporation
    Inventors: David Abzarian, Todd L Carpenter
  • Patent number: 8590021
    Abstract: Technology is described for enabling passive enforcement of security at computing systems. A component of a computing system can passively authenticate or authorize a user based on observations of the user's interactions with the computing system. The technology may increase or decrease an authentication or authorization level based on the observations. The level can indicate what level of access the user should be granted. When the user or a component of the computing device initiates a request, an application or service can determine whether the level is sufficient to satisfy the request. If the level is insufficient, the application or service can prompt the user for credentials so that the user is actively authenticated. The technology may enable computing systems to “trust” authentication so that two proximate devices can share authentication levels.
    Type: Grant
    Filed: January 23, 2009
    Date of Patent: November 19, 2013
    Assignee: Microsoft Corporation
    Inventors: David J. Steeves, Kim Cameron, Todd L. Carpenter, David Foster, Quentin S. Miller
  • Patent number: 8504823
    Abstract: A host device comprises a configurable connector. The host device connector can be connected to a configurable connector of an accessory device. The host device can select connector functions to be enabled for connecting to the accessory device connector. The selection of connector functions can be based on accessory device information such as accessory device power consumption, power configuration and application information. The accessory device can exclude connector functions supported by the accessory device from the list of accessory device functions sent to the host device. The accessory device can exclude connector functions based on information about the host and connector devices. Single or mutual authentication can be performed before connection functions are enabled at either device. Host and accessory devices can require that a host device be licensed to use an accessory device connector function or to gain access to accessory device resources. Tiered licensing policies can be supported.
    Type: Grant
    Filed: June 29, 2010
    Date of Patent: August 6, 2013
    Assignee: Microsoft Corporation
    Inventors: Todd L. Carpenter, Andras Tantos, John Chiloyan
  • Patent number: 8375219
    Abstract: A security module may be used to verify integrity of an executable program and may also be used to verify execution of the executable program on a computer. The security module may directly read a computer memory by asserting bus master control of a system bus. The executable program may be directly verified by calculating a hash or may be indirectly verified by an intermediate program that calculates the hash and passes it to the security module. To verify operation, the executable program may cause an interrupt to be generated when the executable program is in a known state. An interrupt service routine may trigger the security module to read registers in the computer processor via a debug port. If either the verification of the executable program fails or the register values are inconsistent with operation of the executable program, the security module may interrupt operation of the computer.
    Type: Grant
    Filed: October 24, 2007
    Date of Patent: February 12, 2013
    Assignee: Microsoft Corporation
    Inventors: William J. Westerinen, Hanumant Kumar Yadav, Todd L. Carpenter
  • Patent number: 8353015
    Abstract: A token or other storage device uses Internet identities to set file access attribute rights. Subsequently, requests to access a file can be controlled by confirming the Internet identity of the requester by either validating the request with a known public key or retrieving the public key from an Internet identity provider. Files may be stored encrypted and may be re-encrypted with the public key associated with Internet identity making the request.
    Type: Grant
    Filed: January 9, 2008
    Date of Patent: January 8, 2013
    Assignee: Microsoft Corporation
    Inventors: Todd L. Carpenter, David Steeves, David Abzarian
  • Patent number: 8255988
    Abstract: A computer that self-administers operating in restricted and unrestricted operating modes boots from a main processor and operates normally in the unrestricted operating mode and operates from an alternate processor in a security module in the restricted operating mode. The alternate processor may communicate directly with peripheral devices such as a display controller and keyboard. Because the main processor is not used and may not even be started in the restricted operating mode, viruses, shims, and other related attacks are virtually eliminated. In one embodiment, the security module may operate as a PCI bus master when in the restricted operating mode.
    Type: Grant
    Filed: March 28, 2007
    Date of Patent: August 28, 2012
    Assignee: Microsoft Corporation
    Inventor: Todd L. Carpenter
  • Patent number: 8250375
    Abstract: Providing for analysis of artifacts of electronic devices to generate data that is substantially unique to a particular device or to a class of devices is described herein. In some aspects, analyzed artifacts are chosen based on reliable reproducibility of such data over many analyses. The substantially unique data can be associated with a particular electronic device(s) to distinguish such devices from other devices. In some aspects, the generated data is first transformed into an identifier, such as a number, word, string of data, etc., to distinguish the electronic device in remote communication, to provide a key in an encryption/decryption algorithm, and so on. The data can be reproduced by reanalyzing the artifacts, and thus need not be stored for future consumption, mitigating risks involved in storing sensitive data.
    Type: Grant
    Filed: April 25, 2008
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Todd L. Carpenter, William J. Westerinen, Vladimir Sadovsky
  • Patent number: 8239466
    Abstract: Techniques described herein describe a proxy used in an instant messaging system. The proxy, upon receiving an instant message (IM) from a first mobile device and addressed to a second mobile device, dynamically determines whether, and for how long to store the IM on a local proxy. Otherwise the IM is forwarded to a server.
    Type: Grant
    Filed: June 15, 2009
    Date of Patent: August 7, 2012
    Assignee: Microsoft Corporation
    Inventors: Severan Rault, Lawrence Ripsher, David Abzarian, Todd L Carpenter
  • Patent number: 8209501
    Abstract: Operating system states capture and loading technique embodiments are presented that involve the capture and loading of baseline system states. This is accomplished, in one embodiment, by storing the states of a computer's operating system memory that it is desired to restore at a future time. No changes are permitted to the persisted storage associated with the computer. Instead, changes that would have been made to the persisted storage during an ensuing computing session, had they not been prevented, are stored in a separate computing session file. Whenever it is desired to return the operating system to its baseline condition, the stored baseline system memory states are loaded into the operating system memory, in lieu of the operating system memory's current states.
    Type: Grant
    Filed: May 5, 2009
    Date of Patent: June 26, 2012
    Assignee: Microsoft Corporation
    Inventors: David Abzarian, Todd L. Carpenter, Harish S. Kulkarni
  • Patent number: 8209469
    Abstract: Described is a technology by which a single physical storage device such as a USB flash memory device is able to boot different computing devices via corresponding different operating systems. The storage device includes a selection mechanism that determines which virtual disk (corresponding to a LUN) is seen by the host as the currently active LUN having sector 0, and therefore is the boot disk. The selection mechanism also may select which (if any) other LUNs are visible to the host. The selection mechanism and accompanying indicator may be operated when the storage device is disconnected, e.g., via manual switches and/or LEDs, buttons and/or a display (e.g., via internal power). Also described is allowing each LUN to have a user-friendly name.
    Type: Grant
    Filed: March 10, 2009
    Date of Patent: June 26, 2012
    Assignee: Microsoft Corporation
    Inventors: Todd L. Carpenter, David Abzarian, Mark Myers, David J. Steeves, Jr.
  • Patent number: 8195852
    Abstract: A host device comprises a controller and a connector. The host connector comprises fixed-function and multi-function pins. A first group of host connector pins comprises one or more of the fixed-function pins and a second group of pins comprises the remainder of the fixed-function pins and the multi-function pins. The host connector can be releasably attached to a connector of an accessory device. The first group of host connector pins can be used to discover the functions of the accessory connector. The host device can select functions to be enabled at the host and accessory connectors from among the functions mutually supported by the two connectors. The host can enable the selected functions at the host connector and can instruct the accessory to enable the selected functions at the accessory connector. The host can reconfigure host connector functions in response to a different accessory being attached to the host.
    Type: Grant
    Filed: November 23, 2010
    Date of Patent: June 5, 2012
    Assignee: Microsoft Corporation
    Inventors: Andras Tantos, Todd L. Carpenter
  • Patent number: 8151118
    Abstract: A computer or other electronic device requiring physical integrity of its components, for example, a pay-per-use computer may use a master security device in communication with a plurality of slave security devices, known as security beans. Each security bean may be given a cryptographic key or keys for use in authenticating communication with the master security device. Each security bean may be coupled to an associated component and may have the ability to disable that associated component. In one embodiment, security bean has an analog switch that may be configured to block or attenuate a critical signal used by the associated component. The security bean may start up in the disable mode and respond to a verified signal from the master security device to enable its corresponding component.
    Type: Grant
    Filed: January 29, 2007
    Date of Patent: April 3, 2012
    Assignee: Microsoft Corporation
    Inventors: David James Foster, Shon Schmidt, David Jaroslav Sebesta, Curt Andrew Steeb, William J. Westerinen, Zhangwei Xu, Todd L. Carpenter
  • Patent number: 8099324
    Abstract: A method and apparatus for assuring delivery of paid advertising to a user may involve asking a question about an advertisement or requiring data about the advertisement to be entered. In one embodiment, a human presence indicator, such as stylized letters, may be displayed during or after the presentation of an advertisement to be copied by a user to indicate presence during the advertisement. When the challenge relating to ad viewing is correctly answered, a value associated with viewing the ad may be credited to a user account, either locally or at a clearinghouse or other repository.
    Type: Grant
    Filed: June 20, 2007
    Date of Patent: January 17, 2012
    Assignee: Microsoft Corporation
    Inventors: William J. Westerinen, Hanumant Kumar Yadav, James S. Duffus, Todd L. Carpenter
  • Patent number: 8091115
    Abstract: Inline pattern matching and policy enforcement may be implemented by a memory storage device. In an example embodiment, a device-implemented method includes acts of receiving, intercepting, and performing and conditional acts of invoking or permitting. A request from a host to perform a memory access operation is received at a memory storage device. Data flowing between an I/O channel and physical storage of the memory storage device is intercepted. A pattern matching procedure is performed on the data with reference to multiple target patterns in real-time while the data is being intercepted. If a pattern match is detected between the data and a target pattern, a policy enforcement mechanism is invoked. If a pattern match is not detected between the data and the multiple target patterns, the request from the host to perform the memory access operation is permitted.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: January 3, 2012
    Assignee: Microsoft Corporation
    Inventors: David Abzarian, Todd L. Carpenter, Harish S. Kulkarni, Mark A. Myers, David J. Steeves
  • Patent number: 8014976
    Abstract: A security module is used to perform an audit of both a computer memory and the computer's processor status. The security module may assert itself as a bus master to read the computer memory without dependence on a program running on the computer. In addition, using a separate hardware path, the security module may access processor register data using a debug port. The security module may collect both memory and processor status information without the use of any of the computer resources being measured, avoiding either alteration of the data by the measurement tool or tampering with the data while being collected.
    Type: Grant
    Filed: October 24, 2007
    Date of Patent: September 6, 2011
    Assignee: Microsoft Corporation
    Inventors: Todd L. Carpenter, William J. Westerinen
  • Patent number: 8001357
    Abstract: A method and a storage device may be provided. The storage device may include physical storage subdivided into a number of regions. The regions may start and end based on logical block addresses specified in a region table. At least one of the regions may be mapped to a logical drive letter. One or more others of the regions may be mapped to a subfolder with respect to the logical drive letter. The storage device may include an access control table. Each entry of the access control table may correspond to a respective region of the physical storage. Each of the entries of the access control table may indicate whether the respective region is protected and whether at least one entity is permitted protected access to the respective region after being successfully authenticated.
    Type: Grant
    Filed: April 30, 2008
    Date of Patent: August 16, 2011
    Assignee: Microsoft Corporation
    Inventors: David Abzarian, Todd L Carpenter, Harish S Kulkarni