Patents by Inventor Brian Quentin Monahan

Brian Quentin Monahan 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: 11496317
    Abstract: A method of validating software including maintaining, in a trusted computing system, a copy of at least portions of data of the software, the software comprising data in an untrusted computing system. The method includes, with the trusted computing system, specifying selected data from data included in the copy as hash data, generating an executable file for generating a hash based on the specified hash data, executing the executable file to generate a check hash using the specified selected data from the copy as the hash data, and determining whether the software is valid based, at least in part, on a comparison of the check hash to an access hash generated by execution of the executable file by the untrusted computing system using the specified selected data from the untrusted computing system as the hash data.
    Type: Grant
    Filed: January 21, 2016
    Date of Patent: November 8, 2022
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Chris Tofts, Brian Quentin Monahan, Adrian John Baldwin
  • Patent number: 10686589
    Abstract: Example embodiments relate to combining hashes of data blocks. The examples disclosed herein calculate a hash value for each data block in a sequence of data blocks. The hash values are combined into a combined value, where the combined value has the same sequence as the sequence of data blocks. A master hash value is then calculated for the combined value.
    Type: Grant
    Filed: December 4, 2015
    Date of Patent: June 16, 2020
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Brian Quentin Monahan, Liqun Chen
  • Patent number: 10671668
    Abstract: Example embodiments relates to method and systems to infer graph topologies. A computing device for inferring a graph topology, comprises a physical processor that executes machine readable instructions that cause the computing device to process a set of unclassified tables. For each table the computing device determines a primary key comprising a set of columns of a table being analyzed, determines a set of foreign keys, each foreign key comprising a column of the analyzed table, and identifies a parameter based on the analyzed table, the primary key and the set of foreign keys. The parameter may comprise a node identification, a set of node attributes, a set of edges without attributes, a set of edges with attributes or a set of edge attributes. The computing device can cause the display of the graph topology based on the processed set of unclassified tables.
    Type: Grant
    Filed: July 11, 2016
    Date of Patent: June 2, 2020
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Luis Miguel Vaquero Gonzalez, Marco Aurelio Barbosa Fagnani Gomes Lotz, Brian Quentin Monahan
  • Patent number: 10572672
    Abstract: An apparatus comprises a memory to store data and a processor coupled to the memory. The processor may modify a plurality of data elements using a semantic relationship between the plurality of data elements and a pre-selected data security policy and to store data representing the modified plurality of data elements in the memory.
    Type: Grant
    Filed: August 14, 2015
    Date of Patent: February 25, 2020
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Adrian John Baldwin, Patrick Goldsack, Brian Quentin Monahan, Philipp Reinecke
  • Patent number: 10558500
    Abstract: An example computing device comprises a first processing unit having first capabilities, a second processing unit having second capabilities, and a shared memory accessible by the first processing unit and the second processing unit. The shared memory stores data objects in association with type information indicating the data type of the data objects. The example computing device further comprises an instruction set to, when executed by a processing unit of the computing device, select one of the first processing unit and the second processing unit to perform a computation of a particular type, using data of a particular type stored in the shared memory, wherein the selection is performed based on a predefined affinity of the first processing unit for the particular computation type and/or the particular data type and a predefined affinity of the second processing unit for the particular computation type and/or the particular data type.
    Type: Grant
    Filed: July 27, 2015
    Date of Patent: February 11, 2020
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Patrick Goldsack, Brian Quentin Monahan, Granville Barnett
  • Patent number: 10310877
    Abstract: Examples analyze source code of a task prior to compiling the source code to determine a static property of the task. Examples determine a category for the task based at least in part on the static property. Examples compile the source code to generate a binary of the task. Examples determine execution parameters for the task based at least in part on the category. Examples schedule the binary for execution based at least in part on the execution parameters.
    Type: Grant
    Filed: July 31, 2015
    Date of Patent: June 4, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Philipp Reinecke, Brian Quentin Monahan, Granville Barnett, Patrick Goldsack
  • Patent number: 10248814
    Abstract: In one example in accordance with the present disclosure, a system comprises a first memory module and a first memory integrity monitoring processor, embedded to the first memory module, to receive a second hash corresponding to a second memory module. The second hash includes a second sequence number for reconstruction of a final hash value and the second hash is not sequentially a first number in a sequence for reconstruction of the final hash value. The first processor may receive a third hash corresponding to a third memory module. The third hash includes a third sequence number for reconstruction of the final hash value and the third hash is received after the second hash. The first processor may determine if the second hash can be combined with the third hash, combine the second hash and third hash into a partial hash reconstruct the final hash value using the partial hash.
    Type: Grant
    Filed: January 25, 2017
    Date of Patent: April 2, 2019
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Geoffrey Ndu, Adrian Shaw, Brian Quentin Monahan
  • Publication number: 20180254888
    Abstract: Example embodiments relate to combining hashes of data blocks. The examples disclosed herein calculate a hash value for each data block in a sequence of data blocks. The hash values are combined into a combined value, where the combined value has the same sequence as the sequence of data blocks. A master hash value is then calculated for the combined value.
    Type: Application
    Filed: December 4, 2015
    Publication date: September 6, 2018
    Inventors: Brian Quentin Monahan, Liqun Chen
  • Publication number: 20180225150
    Abstract: An example computing device comprises a first processing unit having first capabilities, a second processing unit having second capabilities, and a shared memory accessible by the first processing unit and the second processing unit. The shared memory stores data objects in association with type information indicating the data type of the data objects. The example computing device further comprises an instruction set to, when executed by a processing unit of the computing device, select one of the first processing unit and the second processing unit to perform a computation of a particular type, using data of a particular type stored in the shared memory, wherein the selection is performed based on a predefined affinity of the first processing unit for the particular computation type and/or the particular data type and a predefined affinity of the second processing unit for the particular computation type and/or the particular data type.
    Type: Application
    Filed: July 27, 2015
    Publication date: August 9, 2018
    Inventors: Patrick Goldsack, Brian Quentin Monahan, Granville Barnett
  • Publication number: 20180211064
    Abstract: In one example in accordance with the present disclosure, a system comprises a first memory module and a first memory integrity monitoring processor, embedded to the first memory module, to receive a second hash corresponding to a second memory module. The second hash includes a second sequence number for reconstruction of a final hash value and the second hash is not sequentially a first number in a sequence for reconstruction of the final hash value. The first processor may receive a third hash corresponding to a third memory module. The third hash includes a third sequence number for reconstruction of the final hash value and the third hash is received after the second hash. The first processor may determine if the second hash can be combined with the third hash, combine the second hash and third hash into a partial hash reconstruct the final hash value using the partial hash.
    Type: Application
    Filed: January 25, 2017
    Publication date: July 26, 2018
    Inventors: Geoffrey Ndu, Adrian Shaw, Brian Quentin Monahan
  • Publication number: 20180165459
    Abstract: An apparatus comprises a memory to store data and a processor coupled to the memory. The processor may modify a plurality of data elements using a semantic relationship between the plurality of data elements and a pre-selected data security policy and to store data representing the modified plurality of data elements in the memory.
    Type: Application
    Filed: August 14, 2015
    Publication date: June 14, 2018
    Inventors: Adrian John Baldwin, Patrick Goldsack, Brian Quentin Monahan, Philipp Reinecke
  • Publication number: 20180150405
    Abstract: In one example in accordance with the present disclosure, a method for data type management may include adding a first data to a first data set. The first data set may belong to a plurality of data sets stored in a memory and each data set in the plurality may correspond to a type table defining data types in the corresponding data set. The method may further include determining that a first data type of the first data is not in a first type table corresponding to the first data set and generating an identifier corresponding to the first data type. The identifier may identify uses of the first data type within each data set in the plurality and may be a standardized value that is used by each data set in the plurality. The method may also include inserting the identifier into the first type table.
    Type: Application
    Filed: December 18, 2015
    Publication date: May 31, 2018
    Inventors: Patrick Goldsack, Brian Quentin Monahan, James Salter, Adrian John Baldwin
  • Publication number: 20180113729
    Abstract: Examples analyze source code of a task prior to compiling the source code to determine a static property of the task. Examples determine a category for the task based at least in part on the static property. Examples compile the source code to generate a binary of the task. Examples determine execution parameters for the task based at least in part on the category. Examples schedule the binary for execution based at least in part on the execution parameters.
    Type: Application
    Filed: July 31, 2015
    Publication date: April 26, 2018
    Inventors: Philipp Reinecke, Brian Quentin Monahan, Granville Barnett, Patrick Goldsack
  • Publication number: 20180011945
    Abstract: Example embodiments relates to method and systems to infer graph topologies. A computing device for inferring a graph topology, comprises a physical processor that executes machine readable instructions that cause the computing device to process a set of unclassified tables. For each table the computing device determines a primary key comprising a set of columns of a table being analyzed, determines a set of foreign keys, each foreign key comprising a column of the analyzed table, and identifies a parameter based on the analyzed table, the primary key and the set of foreign keys. The parameter may comprise a node identification, a set of node attributes, a set of edges without attributes, a set of edges with attributes or a set of edge attributes. The computing device can cause the display of the graph topology based on the processed set of unclassified tables.
    Type: Application
    Filed: July 11, 2016
    Publication date: January 11, 2018
    Inventors: Luis Miguel VAQUERO GONZALEZ, Marco Aurelio BARBOSA FAGNANI GOMEZ LOTZ, Brian Quentin MONAHAN
  • Publication number: 20170046629
    Abstract: According to an example, statistics-based data trace classification may include generating sets of training data traces from training data information by assigning a subset of the training data information that has a predetermined property with a first label and assigning another subset of the training data information that does not have the predetermined property with a second label. A trained trace classifier may be generated to detect whether or not a set of input data traces satisfies the predetermined property. The trace classifier may be trained to learn the predetermined property from a statistical data object determined from the sets of the training data traces, and the first and second labels related to the sets of the training data traces.
    Type: Application
    Filed: April 25, 2014
    Publication date: February 16, 2017
    Applicant: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Philipp REINECKE, Brian Quentin MONAHAN, Jonathan GRIFFIN
  • Patent number: 9558103
    Abstract: In one implementation, computer executable instructions are provided to identify a group of instructions corresponding to a code block for an executable module. The instructions increment a counter associated with the code block to indicate the code block has been tested.
    Type: Grant
    Filed: August 25, 2011
    Date of Patent: January 31, 2017
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Keith Harrison, Brian Quentin Monahan
  • Publication number: 20160344772
    Abstract: A method of assessing a network uses a model (450) having nodes (100, 110) to represent parts of the network infrastructure and the application services, and having links to represent how the nodes influence each other. Dependencies or effects of the application services are found by determining paths through the nodes and links of the model (530). Such assessment can be useful for design, test, operations, and diagnosis, and for assessment of which parts of the infrastructure are critical to given services, or which services are dependent on, or could have an effect on a given part of the infrastructure. The dependencies or effects can encompass reachability information. The use of a model having links and nodes can enable more efficient processing, to enable larger or richer models. What changes in the dependencies or effects result from a given change in the network can be determined (830).
    Type: Application
    Filed: May 22, 2015
    Publication date: November 24, 2016
    Inventors: Brian Quentin Monahan, Adrian Baldwin, Simon Shiu
  • Publication number: 20160210216
    Abstract: In one implementation, a processor-readable medium stores code representing instructions that when executed at a processor cause the processor to access a source-code representation of an application, to access a machine-code representation of the application, and to generate a control flow model of the application based on the source-code representation of the application. The processor-readable medium also stores code representing instructions that when executed at the processor cause the processor to store a representation of the control flow model within a file including the machine-code representation of the application.
    Type: Application
    Filed: September 27, 2013
    Publication date: July 21, 2016
    Inventors: Brian Quentin Monahan, Nigel Edwards, Mike Wray
  • Publication number: 20150294114
    Abstract: In one implementation, an application randomization system accesses an annotated intermediate representation of an application, identifies a first instruction block within the annotated intermediate representation, and randomly selects a first modification for the first instruction block. The application randomization system then identifies a second instruction block within the annotated intermediate representation and randomly selects a second modification different from the first modification for the second instruction block. The application randomization system then generates a native-code representation of the application in which the first modification is applied to the first instruction block and the second modification is applied to the second instruction block.
    Type: Application
    Filed: September 28, 2012
    Publication date: October 15, 2015
    Inventors: Brian Quentin Monahan, Keith Alexander Harrison
  • Patent number: 9083748
    Abstract: A method of assessing a network uses a model (450) having nodes (100, 110) to represent parts of the network infrastructure and the application services, and having links to represent how the nodes influence each other. Dependencies or effects of the application services are found by determining paths through the nodes and links of the model (530). Such assessment can be useful for design, test, operations, and diagnosis, and for assessment of which parts of the infrastructure are critical to given services, or which services are dependent on, or could have an effect on a given part of the infrastructure. The dependencies or effects can encompass reachability information. The use of a model having links and nodes can enable more efficient processing, to enable larger or richer models. What changes in the dependencies or effects result from a given change in the network can be determined (830).
    Type: Grant
    Filed: December 14, 2005
    Date of Patent: July 14, 2015
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Brian Quentin Monahan, Adrian John Baldwin, Simon Kai-Ying Shiu