Patents by Inventor Justin David Brown
Justin David Brown 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).
-
Publication number: 20240211573Abstract: A software-based authentication protocol enables a client to be authenticated by a server through a host. The authentication protocol involves using mutable authentication data that changes to deter counterfeiters from making clones of authentic clients. The host requests a token from the client as proof of authenticity. The client establishes a communication channel to the server using the host as a communication proxy. The client presents mutable authentication data to the server. If the server determines that the mutable authentication data is outdated, then the client is deemed a counterfeit. If the server determined that the mutable authentication data is the latest version, then the client is deemed authentic and a token is issued to the client. Depending on a set of policies, the server changes the mutable authentication data and sends the new mutable authentication data to the client but not to counterfeit clients.Type: ApplicationFiled: December 24, 2022Publication date: June 27, 2024Applicant: Microsoft Technology Licensing, LLCInventors: Justin David BROWN, Luke J. LENHART, Chong HE, Kedar HIRVE, Ankur CHOUDHARY
-
Publication number: 20230418926Abstract: Software-based authentication techniques may use mutable authentication data that changes to deter counterfeiters from making clones of authentic clients. An authentication service may issue mutable authentication data to a client and store the mutable authentication data in association with an identifier of the client. The client may authenticate by presenting the most recently issued mutable authentication data to the authentication service. Upon successful authentication, the authentication service may issue updated mutable authentication data to the client. Any clones that cannot present the most recent mutable authentication data may be rejected by the authentication service. By changing the mutable authentication data, counterfeiters cannot make a large number of clones that all work at the same time.Type: ApplicationFiled: June 23, 2022Publication date: December 28, 2023Applicant: Microsoft Technology Licensing, LLCInventors: Jonathan J. CARUANA, Kedar HIRVE, Justin David BROWN
-
Patent number: 10478732Abstract: An arbitration system is configured to receive, as a set of results data, separate instances of results data from corresponding client computing devices being used to participate in a multiplayer game session. In some examples, an instance of results data comprises input representing an indication or a selection of an identity associated with an outcome of the multiplayer game session. For instance, the input can indicate a participant identity that won the multiplayer game session. In some examples, an instance of results data comprises game data describing the overall activity in a multiplayer game session from a perspective of a player's client computing device, the game data indicating a particular participant identity as a winner of the multiplayer game session. The arbitration system is configured to use the set of results data to determine an arbitrated outcome for the multiplayer game session.Type: GrantFiled: December 22, 2016Date of Patent: November 19, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Wisgary F. Torres, Justin David Brown, Michael A. Siebert, Keith R. Kline
-
Publication number: 20180126282Abstract: An arbitration system is configured to receive, as a set of results data, separate instances of results data from corresponding client computing devices being used to participate in a multiplayer game session. In some examples, an instance of results data comprises input representing an indication or a selection of an identity associated with an outcome of the multiplayer game session. For instance, the input can indicate a participant identity that won the multiplayer game session. In some examples, an instance of results data comprises game data describing the overall activity in a multiplayer game session from a perspective of a player's client computing device, the game data indicating a particular participant identity as a winner of the multiplayer game session. The arbitration system is configured to use the set of results data to determine an arbitrated outcome for the multiplayer game session.Type: ApplicationFiled: December 22, 2016Publication date: May 10, 2018Inventors: Wisgary F. Torres, Justin David Brown, Michael A. Siebert, Keith R. Kline
-
Patent number: 9304888Abstract: Embodiments are directed to executing a workflow using a virtualized clock and to ensuring idempotency and correctness among workflow processes. In one scenario, a computer system a computer system determines that a workflow session has been initialized. The workflow session runs as a set of episodes, where each episode includes one or more pulses of work that are performed when triggered by an event. Each workflow session is processed according to a virtualized clock that keeps a virtual session time for the workflow session. The computer system receives an event that includes an indication of the time the event was generated, and then accesses the received event to determine which pulses of work are to be performed as part of a workflow session episode. The computer system then executes the determined pulses of work according to the virtual session time indicated by the virtualized clock.Type: GrantFiled: June 25, 2013Date of Patent: April 5, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Kenneth David Wolf, Justin David Brown, Edmund Samuel Victor Pinto, Nathan Christopher Talbert
-
Publication number: 20150143334Abstract: A rendezvous abstraction that is used to correlate messages within message exchange. The rendezvous abstraction may be instantiated to correlate messages regardless of the type of message exchange pattern, and regardless of the underlying protocols used to communication message. Messages exchanges of primitive protocols are modeled as unilateral message exchanges. The rendezvous abstraction is used to correlate messages of the unilateral message exchange, and serves as an abstraction that is used to represented the rendezvous point where the message of the message exchange pattern are handled. Accordingly, instead of focusing on the protocol-specific mechanisms for correlation, if even available, the application author may simply work with a standard rendezvous abstraction.Type: ApplicationFiled: October 20, 2014Publication date: May 21, 2015Inventors: Edmund Samuel Victor Pinto, Kenneth D. Wolf, Nicholas A. Allen, Stefan Batres, Justin David Brown, Donald F. Box
-
Publication number: 20140380323Abstract: Embodiments are directed to executing a workflow using a virtualized clock and to ensuring idempotency and correctness among workflow processes. In one scenario, a computer system a computer system determines that a workflow session has been initialized. The workflow session runs as a set of episodes, where each episode includes one or more pulses of work that are performed when triggered by an event. Each workflow session is processed according to a virtualized clock that keeps a virtual session time for the workflow session. The computer system receives an event that includes an indication of the time the event was generated, and then accesses the received event to determine which pulses of work are to be performed as part of a workflow session episode. The computer system then executes the determined pulses of work according to the virtual session time indicated by the virtualized clock.Type: ApplicationFiled: June 25, 2013Publication date: December 25, 2014Inventors: Kenneth David Wolf, Justin David Brown, Edmund Samuel Victor Pinto, Nathan Christopher Talbert
-
Patent number: 8868532Abstract: A rendezvous abstraction that is used to correlate messages within message exchange. The rendezvous abstraction may be instantiated to correlate messages regardless of the type of message exchange pattern, and regardless of the underlying protocols used to communication message. Messages exchanges of primitive protocols are modeled as unilateral message exchanges. The rendezvous abstraction is used to correlate messages of the unilateral message exchange, and serves as an abstraction that is used to represented the rendezvous point where the message of the message exchange pattern are handled. Accordingly, instead of focusing on the protocol-specific mechanisms for correlation, if even available, the application author may simply work with a standard rendezvous abstraction.Type: GrantFiled: August 8, 2008Date of Patent: October 21, 2014Assignee: Microsoft CorporationInventors: Edmund Samuel Victor Pinto, Kenneth D. Wolf, Nicholas A. Allen, Stefan Batres, Justin David Brown
-
Patent number: 8707249Abstract: A generalized workflow execution model is configured to provide access to workflow elements. A computer system instantiates a generalized workflow execution model that provides access to workflow elements stored in a database that is connected to the workflow execution model. The workflow execution model includes the following: activity models that include both agents which are configured to express the control flow of the activity models and symbols which represent values usable by the activity models and metadata configured to identify the workflow execution model. The computer system also receives user input requesting workflow elements and accesses the database to provide the requested workflow elements using the generalized workflow execution model.Type: GrantFiled: June 19, 2013Date of Patent: April 22, 2014Assignee: Microsoft CorporationInventors: Stephen Jared Maine, Justin David Brown, Edmund Samuel Victor Pinto
-
Patent number: 8620991Abstract: Technologies for enabling a continuation based runtime to accept or reject external stimulus and, in addition, to determine if an external stimulus may be valid for processing at a later point in execution.Type: GrantFiled: August 1, 2012Date of Patent: December 31, 2013Assignee: Microsoft CorporationInventors: Kenneth David Wolf, Justin David Brown, Karthik Raman, Nathan Christopher Talbert, Edmund Samuel Victor Pinto
-
Publication number: 20130282681Abstract: A generalized workflow execution model is configured to provide access to workflow elements. A computer system instantiates a generalized workflow execution model that provides access to workflow elements stored in a database that is connected to the workflow execution model. The workflow execution model includes the following: activity models that include both agents which are configured to express the control flow of the activity models and symbols which represent values usable by the activity models and metadata configured to identify the workflow execution model. The computer system also receives user input requesting workflow elements and accesses the database to provide the requested workflow elements using the generalized workflow execution model.Type: ApplicationFiled: June 19, 2013Publication date: October 24, 2013Inventors: Stephen Jared Maine, Justin David Brown, Edmund Samuel Victor Pinto
-
Patent number: 8484610Abstract: Embodiments are directed to implementing a generalized workflow execution model configured to provide access to workflow elements. A computer system instantiates a generalized workflow execution model that provides access to workflow elements stored in a database that is connected to the workflow execution model. The workflow execution model includes the following: activity models that include both agents which are configured to express the control flow of the activity models and symbols which represent values usable by the activity models and metadata configured to identify the workflow execution model. The computer system also receives user input requesting workflow elements and accesses the database to provide the requested workflow elements using the generalized workflow execution model.Type: GrantFiled: March 17, 2010Date of Patent: July 9, 2013Assignee: Microsoft CorporationInventors: Stephen Jared Maine, Justin David Brown, Edmund Samuel Victor Pinto
-
Publication number: 20120297077Abstract: Technologies for enabling a continuation based runtime to accept or reject external stimulus and, in addition, to determine if an external stimulus may be valid for processing at a later point in execution.Type: ApplicationFiled: August 1, 2012Publication date: November 22, 2012Applicant: Microsoft CorporationInventors: Kenneth David Wolf, Justin David Brown, Karthik Raman, Nathan Christopher Talbert, Edmund Samuel Victor Pinto
-
Patent number: 8307368Abstract: A computer system establishes an execution environment for executing activities in a continuation based runtime including instantiating an activity scheduler configured to perform the following: scheduling activities for execution in the CBR. The activity scheduler resolves the scheduled activity's arguments and variables prior to invoking the scheduled activity using the activity's unique context. The activity scheduler also determines, based on the activity's unique context, whether the scheduled activity comprises a work item that is to be queued at the top of the execution stack and, based on the determination, queues the work item to the execution stack. The computer system executes the work items of the scheduled activity as queued in the execution stack of the established execution environment in the CBR.Type: GrantFiled: May 26, 2009Date of Patent: November 6, 2012Assignee: Microsoft CorporationInventors: Kenneth D. Wolf, Nathan C. Talbert, Edmund Samuel Victor Pinto, Justin David Brown
-
Patent number: 8255451Abstract: Technologies for enabling a continuation based runtime to accept or reject external stimulus and, in addition, to determine if an external stimulus may be valid for processing at a later point in execution.Type: GrantFiled: September 17, 2008Date of Patent: August 28, 2012Assignee: Microsoft CorporationInventors: Kenneth David Wolf, Justin David Brown, Karthik Raman, Nathan Christopher Talbert, Edmund Samuel Victor Pinto
-
Patent number: 8239562Abstract: A system for aggregating context information for messages includes a context container that associates names with context values and metadata for context entries. The system further includes a network protocol component configured to read messages from a network transport, an encoder component configured translate messages from a raw format into a canonical message format. The canonical message format is an enveloped message containing an application payload and message metadata. The context container is associated with a message in the canonical format. The system further includes an extraction component configured to retrieve context from a native network transport protocol and insert the context values and metadata into the context container, a plurality of additional protocol components configured to add, remove, or modify entries in the context container, and one or more higher level application components configured to operate on the canonical message using the context entries.Type: GrantFiled: January 10, 2012Date of Patent: August 7, 2012Assignee: Microsoft CorporationInventors: Nicholas A. Allen, Justin David Brown, Stephen Jared Maine, Stephen J. Millet, Edmund Samuel Victor Pinto, Tirunelveli R. Vishwanath
-
Publication number: 20120110204Abstract: A system for aggregating context information for messages includes a context container that associates names with context values and metadata for context entries. The system further includes a network protocol component configured to read messages from a network transport, an encoder component configured translate messages from a raw format into a canonical message format. The canonical message format is an enveloped message containing an application payload and message metadata. The context container is associated with a message in the canonical format. The system further includes an extraction component configured to retrieve context from a native network transport protocol and insert the context values and metadata into the context container, a plurality of additional protocol components configured to add, remove, or modify entries in the context container, and one or more higher level application components configured to operate on the canonical message using the context entries.Type: ApplicationFiled: January 10, 2012Publication date: May 3, 2012Applicant: Microsoft CorporationInventors: Nicholas A. Allen, Justin David Brown, Stephen Jared Maine, Stephan J. Millet, Edmund Samuel Victor Pinto, Tirunelveli R. Vishwanath
-
Patent number: 8108540Abstract: A system for aggregating context information for messages. The system includes a context container. The context container associates names with context values and metadata for context entries. The system further includes a network protocol component configured to read messages from a network transport, an encoder component configured translate messages from a raw format into a canonical message format. The canonical message format is an enveloped message containing an application payload and message metadata. The context container is associated with a message in the canonical format.Type: GrantFiled: December 12, 2008Date of Patent: January 31, 2012Assignee: Microsoft CorporationInventors: Nicholas A. Allen, Justin David Brown, Stephen Jared Maine, Stephen J. Millet, Edmund Samuel Victor Pinto, Tirunelveli R. Vishwanath
-
Publication number: 20110231812Abstract: Embodiments are directed to implementing a generalized workflow execution model configured to provide access to workflow elements. A computer system instantiates a generalized workflow execution model that provides access to workflow elements stored in a database that is connected to the workflow execution model. The workflow execution model includes the following: activity models that include both agents which are configured to express the control flow of the activity models and symbols which represent values usable by the activity models and metadata configured to identify the workflow execution model. The computer system also receives user input requesting workflow elements and accesses the database to provide the requested workflow elements using the generalized workflow execution model.Type: ApplicationFiled: March 17, 2010Publication date: September 22, 2011Applicant: Microsoft CorporationInventors: Stephen Jared Maine, Justin David Brown, Edmund Samuel Victor Pinto
-
Publication number: 20100306778Abstract: A computer system establishes an execution environment for executing activities in a continuation based runtime including instantiating an activity scheduler configured to perform the following: scheduling activities for execution in the CBR. The activity scheduler resolves the scheduled activity's arguments and variables prior to invoking the scheduled activity using the activity's unique context. The activity scheduler also determines, based on the activity's unique context, whether the scheduled activity comprises a work item that is to be queued at the top of the execution stack and, based on the determination, queues the work item to the execution stack. The computer system executes the work items of the scheduled activity as queued in the execution stack of the established execution environment in the CBR.Type: ApplicationFiled: May 26, 2009Publication date: December 2, 2010Applicant: MICROSOFT CORPORATIONInventors: Kenneth D. Wolf, Nathan C. Talbert, Justin David Brown, Edmund Samuel Victor Pinto