Patents by Inventor Shannon J. Chan

Shannon J. Chan 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: 8559350
    Abstract: Discovery of services between devices is provided prior to establishing a connection between devices, including wireless-enabled devices or devices that are communicatively coupled to wireless access points or other wireless communication devices. Discovering services prior to establishing a connection may facilitate finding a desired service. The services that may be discovered may be, for example, print services, camera services, PDA services or any other suitable services. Services may be discovered using 802.11, Bluetooth, UWB or any other suitable wireless technology. An information element is used to wirelessly convey information related to a service and/or information related to service discovery.
    Type: Grant
    Filed: May 15, 2006
    Date of Patent: October 15, 2013
    Assignee: Microsoft Corporation
    Inventors: Thomas W. Kuehnel, Amer A. Hassan, Christian Huitema, David Jones, Savas Guven, Shannon J. Chan, Srinivas R. Gatta, Yi Lu
  • Patent number: 8171534
    Abstract: An authentication process for a client and a target service to perform mutual authentication. A combined code is received that comprises a combined code hash of at least two sets of data from which an encoding scheme of the at least two sets of data can be determined. The two sets of data comprise a first set of data that includes a first hash of a public key associated with a certificate used to establish a secure channel with a target service, and a second set of data that includes a credential for authentication. The certificate can be validated with the first set of data included in the combined code. In response to a successful validation of the certificate, the credential from the second set of data can be provided to the target service for authentication.
    Type: Grant
    Filed: August 30, 2010
    Date of Patent: May 1, 2012
    Assignee: Microsoft Corporation
    Inventors: Shannon J. Chan, Thomas W. Kuehnel
  • Patent number: 8151280
    Abstract: The present invention relates to a system and method for configuring and managing network devices. The arrival (and departure) of devices on a network can be detected by a monitor. Upon detection, network devices can be simply and dynamically configured with little or no end-user intervention, for instance by automatically loading device drivers and allocating resources for the devices. Furthermore, network devices can be associated with other network devices such as a personal computer to facilitate seamless integration of network devices with a computer operating system.
    Type: Grant
    Filed: February 27, 2004
    Date of Patent: April 3, 2012
    Assignee: Microsoft Corporation
    Inventors: Dale A. Sather, Guillaume Simonnet, John M. Gehlsen, Kosar A. Jaff, Ralph A. Lipe, Roland J. Ayala, Shannon J. Chan, Thomas Kuehnel
  • Patent number: 8117340
    Abstract: Systems and methods are provided that facilitate automated network address determinations and communications between roaming peers. In one aspect, a network communications system is provided. The system includes methods for updating a resolution provider with a current host transport address and for determining a roaming hosts service address and port information. Other processes include opening and mapping ports through a traversal component which can include Network Address Translators and Firewalls and opening/mapping ports in conjunction with cascaded Network Address Translators.
    Type: Grant
    Filed: November 30, 2005
    Date of Patent: February 14, 2012
    Assignee: Microsoft Corporation
    Inventors: William R. Williams, Shannon J. Chan
  • Publication number: 20110289517
    Abstract: The present invention relates to a system and method for configuring and managing network devices. The arrival (and departure) of devices on a network can be detected by a monitor. Upon detection, network devices can be simply and dynamically configured with little or no end-user intervention, for instance by automatically loading device drivers and allocating resources for the devices. Furthermore, network devices can be associated with other network devices such as a personal computer to facilitate seamless integration of network devices with a computer operating system.
    Type: Application
    Filed: July 7, 2011
    Publication date: November 24, 2011
    Applicant: Microsoft Corporation
    Inventors: Dale A. Sather, Guillaume Simonnet, John M. Gehlsen, Kosar A. Jaff, Ralph A. Lipe, Roland J. Ayala, Shannon J. Chan, Thomas Kuehnel
  • Publication number: 20110264773
    Abstract: The present invention relates to a system and method for configuring and managing network devices. The arrival (and departure) of devices on a network can be detected by a monitor. Upon detection, network devices can be simply and dynamically configured with little or no end-user intervention, for instance by automatically loading device drivers and allocating resources for the devices. Furthermore, network devices can be associated with other network devices such as a personal computer to facilitate seamless integration of network devices with a computer operating system.
    Type: Application
    Filed: July 4, 2011
    Publication date: October 27, 2011
    Applicant: Microsoft Corporation
    Inventors: Dale A. Sather, Guillaume Simonnet, John M. Gehlsen, Kosar A. Jaff, Ralph A. Lipe, Roland J. Ayala, Shannon J. Chan, Thomas Kuehnel
  • Publication number: 20100333186
    Abstract: An authentication process for a client and a target service to perform mutual authentication. A combined code is received that comprises a combined code hash of at least two sets of data from which an encoding scheme of the at least two sets of data can be determined. The two sets of data comprise a first set of data that includes a first hash of a public key associated with a certificate used to establish a secure channel with a target service, and a second set of data that includes a credential for authentication. The certificate can be validated with the first set of data included in the combined code. In response to a successful validation of the certificate, the credential from the second set of data can be provided to the target service for authentication.
    Type: Application
    Filed: August 30, 2010
    Publication date: December 30, 2010
    Applicant: Microsoft Corporation
    Inventors: Shannon J. Chan, Thomas W. Kuehnel
  • Patent number: 7814538
    Abstract: An authentication process using a combined code as a shared secret between a client and target service is provided. The combined code is provided out-of-band and includes data to perform two-way authentication for both the client and the target service. The target service may provide the client with a certificate to establish a secure channel. The client may use the data in the combined code to validate the target service. When the target service is validated, the client may provide credentials in the combined code to the target service for authentication. In one example implementation, the combined code includes a hash of a public key. The client may compute another hash of another public key in the certificate provided by the target service and validate the service by comparing the hash in the combined code and the computed hash.
    Type: Grant
    Filed: December 13, 2005
    Date of Patent: October 12, 2010
    Assignee: Microsoft Corporation
    Inventors: Thomas W. Kuehnel, Shannon J. Chan
  • Patent number: 7735145
    Abstract: A timed erasure mechanism can be used with portable computer-readable media to ensure automatic erasure of secure information, minimizing the security risks in using such media to store and transport passwords, codes, keys and similar private setup information. The portable computer-readable media can comprise volatile memory and a timed erasure mechanism in the form of a power supply and discharging circuitry that discharges the power supply after a predetermined amount of time. Alternatively, the portable computer-readable media can comprise nonvolatile memory and a timed erasure mechanism in the form of a digital time and erasure algorithms that are initiated after a predetermined amount of time. Furthermore, such portable computer-readable media can comprise a container that bears unique physical properties that can alert users to the volatile nature of the media.
    Type: Grant
    Filed: February 18, 2005
    Date of Patent: June 8, 2010
    Assignee: Microsoft Corporation
    Inventors: Thomas W. Kuehnel, Shannon J. Chan, Dale A. Sather, Guillaume Simonnet
  • Patent number: 7600113
    Abstract: Methods and systems for establishing a secure network channel between two or more devices in a communication network are disclosed. In exemplary implementations the network may be a UPnP network. A first device passes authentication information to at least a second device to permit the second device to authenticate the first device. Optionally, the first device may request to authenticate the second device, in which authentication information associated with the second device is passed to the first device. The first device uses this information to authenticate the second device. At least one of the first and second device may store authentication information in an data store associated with the device.
    Type: Grant
    Filed: February 20, 2004
    Date of Patent: October 6, 2009
    Assignee: Microsoft Corporation
    Inventors: Thomas Kuehnel, Shannon J. Chan
  • Patent number: 7483958
    Abstract: Methods and systems suitable for sharing media content are provided. One system includes at least one media holder, at least one media cataloger, at least one user control point, at least one media player, and at least one network operatively connecting them. The media holder is configured to selectively output shared media metadata, media content and at least one corresponding media playing license over the network. The media cataloger is configured to receive the metadata identifying the shared media content that is available from the media holder(s). The media cataloger is configured to output at least one media catalog over the network. The media catalog identifies the shared media content that is available from the media holder(s). The user control point is configured to receive the media catalog(s) and request the shared media content as selected from the media catalog, for example, by a user.
    Type: Grant
    Filed: March 26, 2002
    Date of Patent: January 27, 2009
    Assignee: Microsoft Corporation
    Inventors: Tarek Z. Elabbady, Shannon J. Chan, James M. Alkove, Sandeep S. Sahasrabudhe
  • Patent number: 7467384
    Abstract: Data associated with a function instance corresponding to a resource on one computer system is published for use on another computer system. A function instance is created on the other computer system using the published data.
    Type: Grant
    Filed: May 2, 2005
    Date of Patent: December 16, 2008
    Assignee: Microsoft Corporation
    Inventors: Douglas K. Brubacher, Dale Alan Sather, John M. Gehlsen, Kenneth Cooper, Kosar Jaff, Gary P. Raden, Ralph Lipe, Roland Ayala, Shannon J. Chan
  • Patent number: 7155609
    Abstract: In accordance with a key exchange mechanism for streaming protected media content, key exchange components on both a client device and a server device communicate with one another to pass one or more keys from a removable storage medium (e.g., a DVD) on the server device to a media content player on the client device. The communications passed between the components allow keys used by the media content player to be transferred from the removable storage medium to the player so that the player can decode the content on the storage medium.
    Type: Grant
    Filed: June 14, 2001
    Date of Patent: December 26, 2006
    Assignee: Microsoft Corporation
    Inventors: Shannon J. Chan, David M. Maymudes
  • Patent number: 6754896
    Abstract: A method and system for installing software implementations such as applications and COM classes as they are needed from an external source, such as a centralized network store. When a software implementation is needed, the system and method first look to the local system (e.g., registry) for that software implementation, and if found, returns the information such as a local path needed to use the software implementation. If the implementation is not found locally, the present invention dynamically looks to a centralized class store of a network, to locate the needed implementation. When located, the implementation is downloaded and locally installed in a manner that is essentially transparent to the user. Software implementations such as application products may be divided into features and components to improve on-demand installation thereof.
    Type: Grant
    Filed: October 4, 2002
    Date of Patent: June 22, 2004
    Assignee: Microsoft Corporation
    Inventors: Debi P. Mishra, David E. Kays, Jr., Markus Horstmann, Mark H. Lucovsky, Shannon J. Chan, Bharat A. Shah, Gregory A. Jensenworth
  • Publication number: 20030126592
    Abstract: A method and system for installing software implementations such as applications and COM classes as they are needed from an external source, such as a centralized network store. When a software implementation is needed, the system and method first look to the local system (e.g., registry) for that software implementation, and if found, returns the information such as a local path needed to use the software implementation. If the implementation is not found locally, the present invention dynamically looks to a centralized class store of a network, to locate the needed implementation. When located, the implementation is downloaded and locally installed in a manner that is essentially transparent to the user. Software implementations such as application products may be divided into features and components to improve on-demand installation thereof.
    Type: Application
    Filed: October 4, 2002
    Publication date: July 3, 2003
    Inventors: Debi P. Mishra, David E. Kays, Markus Horstmann, Mark H. Lucovsky, Shannon J. Chan, Bharat A. Shah, Gregory A. Jensenworth
  • Patent number: 6523166
    Abstract: A method and system for installing software implementations such as applications and COM classes as they are needed from an external source, such as a centralized network store. When a software implementation is needed, the system and method first look to the local system (e.g., registry) for that software implementation, and if found, returns the information such as a local path needed to use the software implementation. If the implementation is not found locally, the present invention dynamically looks to a centralized class store of a network, to locate the needed implementation. When located, the implementation is downloaded and locally installed in a manner that is essentially transparent to the user. Software implementations such as application products may be divided into features and components to improve on-demand installation thereof.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: February 18, 2003
    Assignee: Microsoft Corporation
    Inventors: Debi P. Mishra, David E. Kays, Jr., Markus Horstmann, Mark H. Lucovsky, Shannon J. Chan, Bharat A. Shah, Gregory A. Jensenworth
  • Publication number: 20030009668
    Abstract: In accordance with a key exchange mechanism for streaming protected media content, key exchange components on both a client device and a server device communicate with one another to pass one or more keys from a removable storage medium (e.g., a DVD) on the server device to a media content player on the client device. The communications passed between the components allow keys used by the media content player to be transferred from the removable storage medium to the player so that the player can decode the content on the storage medium.
    Type: Application
    Filed: June 14, 2001
    Publication date: January 9, 2003
    Inventors: Shannon J. Chan, David M. Maymudes
  • Patent number: 6279111
    Abstract: A restrict ed access token is created from an existing token, and provides less access than that token. A restricted token may be created by changing an attribute of one or more security identifiers allowing access in the parent token to a setting that denies access in the restricted token and/or removing one or more privileges from the restricted token relative to the parent token. A restricted access token also may be created by adding restricted security identifiers thereto. Once created, a process associates another process with the restricted token to launch the other process in a restricted context that is a subset of its own rights and privileges. A kernel-mode security mechanism determines whether the restricted process has access to a resource by first comparing user-based security identifiers in the restricted token and the intended type of action against a list of identifiers and actions associated with the resource.
    Type: Grant
    Filed: June 12, 1998
    Date of Patent: August 21, 2001
    Assignee: Microsoft Corporation
    Inventors: Gregory Jensenworth, Praerit Garg, Michael M. Swift, Mario C. Goertzel, Shannon J. Chan
  • Patent number: 5511197
    Abstract: A computer method and system for passing a pointer to an interface from a server process to a client process. In a preferred embodiment, the server process instantiates an object that has multiple interfaces. The server process identifies an interface to pass to the client process and creates a stub object for receiving a request to invoke a function member of the interface and for invoking the requested function member upon receiving the request. The server process then sends an identifier of the stub to the client process. When the client process receives the identifier of the stub, it instantiates a proxy object for receiving requests to invoke a function member of the interface and for sending the request to the identified stub. The client process can then invoke the function members of the interface by invoking function members of the proxy object. The proxy object sends a request to the identified stub. The identified stub then invokes the corresponding function member of the interface.
    Type: Grant
    Filed: November 29, 1993
    Date of Patent: April 23, 1996
    Assignee: Microsoft Corporation
    Inventors: Richard D. Hill, Antony S. Williams, Robert G. Atkinson, Tom Corbett, Paul Leach, Shannon J. Chan, Alexander A. Mitchell, Edward K. Jung, Craig H. Wittenberg