Patents by Inventor Philippe Suter
Philippe Suter 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: 11200291Abstract: A computer-implemented method for creating a web programming interface (API) description may include parsing an API usage dataset with a processor to identify a plurality of nodes in each of a plurality of uniform resource locators (URLs), and tagging path parameters for the plurality of nodes. Tagging the path parameters may include identifying, with the processor, which nodes are static parts of the URLs, and identifying, with the processor, which of the nodes are path parameters for the URLs. The method may further include aggregating, with the processor, a plurality of node types based on the tagged path parameters and the static parts of the URLs, and outputting, via the processor, an API description based on the aggregated plurality of node types.Type: GrantFiled: November 2, 2015Date of Patent: December 14, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Philippe Suter, John E. Wittern
-
Patent number: 11182451Abstract: A computer-implemented method for creating a web programming interface (API) description may include parsing an API usage dataset with a processor to identify a plurality of nodes in each of a plurality of uniform resource locators (URLs), and tagging path parameters for the plurality of nodes. Tagging the path parameters may include identifying, with the processor, which nodes are static parts of the URLs, and identifying, with the processor, which of the nodes are path parameters for the URLs. The method may further include aggregating, with the processor, a plurality of node types based on the tagged path parameters and the static parts of the URLs, and outputting, via the processor, an API description based on the aggregated plurality of node types.Type: GrantFiled: December 10, 2015Date of Patent: November 23, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Philippe Suter, John E. Wittern
-
Patent number: 10691881Abstract: A method, system and computer readable program product are disclosed for compiling a spreadsheet to execute stream processing in a computing system. In an embodiment, the method comprises extracting a function from the spreadsheet, said function supporting data windows and stream partitioning in the computing system; and identifying input cells of the spreadsheet for holding input values for the function, and identifying output cells of the spreadsheet for holding output values of the function. In embodiments of the invention, a data stream is partitioned into a plurality of data stream partitions, and the extracted function is applied to the stream partitions in parallel. In embodiments of the invention, the extracted function is applied to the data stream partitions in series. The windows may be time based windows, and may be count based windows, and the windows may have variable sizes.Type: GrantFiled: February 8, 2016Date of Patent: June 23, 2020Assignee: International Business Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Patent number: 10445507Abstract: Techniques that facilitate automated security testing of one or more mobile applications and/or one or more backend servers for the one or more mobile applications are provided. In one example, a system includes an analysis component and a security component. The analysis component can analyze computer instructions of a mobile application. The analysis component can also determine an identifier pattern comprising an application programming interface for one or more server endpoints associated with the mobile application. The security component can perform a security test for a server device based on the identifier pattern for the one or more server endpoints.Type: GrantFiled: September 23, 2016Date of Patent: October 15, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Salman Abdul Baset, Julian Timothy Dolby, Marianna Rapoport, Philippe Suter
-
Patent number: 10423408Abstract: A computer system, method, and computer readable product are provided for identifying and isolating library code that has been obfuscated in software applications. A call graph is created for the execution of at least one module of preexisting library code within a bundle of software modules through either static analysis of the software code or dynamic analysis of the executing code, and then one or more anchor points are devised based upon the call graph that are indicative of the preexisting library code. Then a bundle of software modules can be analyzed or its execution monitored to determine if a discrete module of library code is present in the executing bundle based upon the modules' interaction with the one or more anchor points, and the discrete module of library code in the executing bundle can be identified as a module of preexisting library code.Type: GrantFiled: June 2, 2016Date of Patent: September 24, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Salman A. Baset, Shih-Wei Li, Omer Tripp, Philippe Suter
-
Patent number: 10360087Abstract: A method for recommending a web application programming interface (API) includes: a cloud computing service retrieving test source code from a remote computer of the developer; the cloud computing service determining whether a call to a first web API among a plurality of web APIs is present in the test source code; and when it is determined that the call is present, the cloud computing service reading at least one log file to extract information about at least one application that has used the first web API; the cloud computing service determining a first quality of the first web API from the log file; and the cloud computing service sending a message to the remote computer recommending a second web API among the web APIs having a second quality higher than the first quality.Type: GrantFiled: October 27, 2017Date of Patent: July 23, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Philippe Suter, Salman A. Baset, John E. Wittern
-
Patent number: 10296745Abstract: A method and system of determining a vulnerability of software. Libraries are downloaded and stored in a database. For each library, a set of features are extracted and stored in a library index table of the database. For each library, it is determined whether it poses a security concern and flagged accordingly in the library index table. Applications are downloaded and stored in the database. For each application a set of features are extracted and stored in an application index table of the database. For each application, the set of features of the application of the application are compared to the set of features of each of the libraries in the library index table to identify which libraries in the library index table are associated with the application. For each application, a name of the application and names of the associated libraries are stored in a vulnerability reference table in the database.Type: GrantFiled: June 23, 2016Date of Patent: May 21, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Salman A. Baset, Philippe Suter, Omer Tripp
-
Publication number: 20190129773Abstract: A method for recommending a web application programming interface (API) includes: a cloud computing service retrieving test source code from a remote computer of the developer; the cloud computing service determining whether a call to a first web API among a plurality of web APIs is present in the test source code; and when it is determined that the call is present, the cloud computing service reading at least one log file to extract information about at least one application that has used the first web API; the cloud computing service determining a first quality of the first web API from the log file; and the cloud computing service sending a message to the remote computer recommending a second web API among the web APIs having a second quality higher than the first quality.Type: ApplicationFiled: October 27, 2017Publication date: May 2, 2019Inventors: PHILIPPE SUTER, Salman A. Baset, John E. Wittern
-
Patent number: 10255262Abstract: A method, system and computer readable program product are disclosed for encoding a function in a spreadsheet program to execute stream processing on a computing system. In embodiments of the invention, the method comprises encoding one or more formulas in one or more cells of the spreadsheet program, each of the formulas supporting data windows and stream partitioning; designating a first group of cells of the spreadsheet program as input cells for holding input values for the one or more formulas; and designating a second group of cells of the spreadsheet program as output cells for holding output values of the one or more formulas. In embodiments of the invention, the stream partitioning includes partitioning a defined stream of data into a plurality of data stream partitions, and the one or more formulas are encoded to operate on the plurality of data stream partitions.Type: GrantFiled: February 8, 2016Date of Patent: April 9, 2019Assignee: International Business Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Patent number: 10176160Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: GrantFiled: December 21, 2016Date of Patent: January 8, 2019Assignee: International Business Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri
-
Publication number: 20180089437Abstract: Techniques that facilitate automated security testing of one or more mobile applications and/or one or more backend servers for the one or more mobile applications are provided. In one example, a system includes an analysis component and a security component. The analysis component can analyze computer instructions of a mobile application. The analysis component can also determine an identifier pattern comprising an application programming interface for one or more server endpoints associated with the mobile application. The security component can perform a security test for a server device based on the identifier pattern for the one or more server endpoints.Type: ApplicationFiled: September 23, 2016Publication date: March 29, 2018Inventors: Salman Abdul Baset, Julian Timothy Dolby, Marianna Rapoport, Philippe Suter
-
Publication number: 20170372072Abstract: A method and system of determining a vulnerability of software. Libraries are downloaded and stored in a database. For each library, a set of features are extracted and stored in a library index table of the database. For each library, it is determined whether it poses a security concern and flagged accordingly in the library index table. Applications are downloaded and stored in the database. For each application a set of features are extracted and stored in an application index table of the database. For each application, the set of features of the application of the application are compared to the set of features of each of the libraries in the library index table to identify which libraries in the library index table are associated with the application. For each application, a name of the application and names of the associated libraries are stored in a vulnerability reference table in the database.Type: ApplicationFiled: June 23, 2016Publication date: December 28, 2017Inventors: Salman A. Baset, Philippe Suter, Omer Tripp
-
Publication number: 20170351597Abstract: A computer system, method, and computer readable product are provided for identifying and isolating library code that has been obfuscated in software applications. A call graph is created for the execution of at least one module of preexisting library code within a bundle of software modules through either static analysis of the software code or dynamic analysis of the executing code, and then one or more anchor points are devised based upon the call graph that are indicative of the preexisting library code. Then a bundle of software modules can be analyzed or its execution monitored to determine if a discrete module of library code is present in the executing bundle based upon the modules' interaction with the one or more anchor points, and the discrete module of library code in the executing bundle can be identified as a module of preexisting library code.Type: ApplicationFiled: June 2, 2016Publication date: December 7, 2017Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Salman A. Baset, Shih-Wei Li, Omer Tripp, Philippe Suter
-
Publication number: 20170228357Abstract: A method, system and computer readable program product are disclosed for compiling a spreadsheet to execute stream processing in a computing system. In an embodiment, the method comprises extracting a function from the spreadsheet, said function supporting data windows and stream partitioning in the computing system; and identifying input cells of the spreadsheet for holding input values for the function, and identifying output cells of the spreadsheet for holding output values of the function. In embodiments of the invention, a data stream is partitioned into a plurality of data stream partitions, and the extracted function is applied to the stream partitions in parallel. In embodiments of the invention, the extracted function is applied to the data stream partitions in series. The windows may be time based windows, and may be count based windows, and the windows may have variable sizes.Type: ApplicationFiled: February 8, 2016Publication date: August 10, 2017Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Publication number: 20170228358Abstract: A method, system and computer readable program product are disclosed for encoding a function in a spreadsheet program to execute stream processing on a computing system. In embodiments of the invention, the method comprises encoding one or more formulas in one or more cells of the spreadsheet program, each of the formulas supporting data windows and stream partitioning; designating a first group of cells of the spreadsheet program as input cells for holding input values for the one or more formulas; and designating a second group of cells of the spreadsheet program as output cells for holding output values of the one or more formulas. In embodiments of the invention, the stream partitioning includes partitioning a defined stream of data into a plurality of data stream partitions, and the one or more formulas are encoded to operate on the plurality of data stream partitions.Type: ApplicationFiled: February 8, 2016Publication date: August 10, 2017Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Publication number: 20170124210Abstract: A computer-implemented method for creating a web programming interface (API) description may include parsing an API usage dataset with a processor to identify a plurality of nodes in each of a plurality of uniform resource locators (URLs), and tagging path parameters for the plurality of nodes. Tagging the path parameters may include identifying, with the processor, which nodes are static parts of the URLs, and identifying, with the processor, which of the nodes are path parameters for the URLs. The method may further include aggregating, with the processor, a plurality of node types based on the tagged path parameters and the static parts of the URLs, and outputting, via the processor, an API description based on the aggregated plurality of node types.Type: ApplicationFiled: November 2, 2015Publication date: May 4, 2017Inventors: Philippe Suter, John E. Wittern
-
Publication number: 20170124211Abstract: A computer-implemented method for creating a web programming interface (API) description may include parsing an API usage dataset with a processor to identify a plurality of nodes in each of a plurality of uniform resource locators (URLs), and tagging path parameters for the plurality of nodes. Tagging the path parameters may include identifying, with the processor, which nodes are static parts of the URLs, and identifying, with the processor, which of the nodes are path parameters for the URLs. The method may further include aggregating, with the processor, a plurality of node types based on the tagged path parameters and the static parts of the URLs, and outputting, via the processor, an API description based on the aggregated plurality of node types.Type: ApplicationFiled: December 10, 2015Publication date: May 4, 2017Inventors: Philippe Suter, John E. Wittern
-
Publication number: 20170097925Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: ApplicationFiled: December 21, 2016Publication date: April 6, 2017Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri
-
Patent number: 9569418Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: GrantFiled: June 27, 2014Date of Patent: February 14, 2017Assignee: International Busines Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri
-
Publication number: 20150378979Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: ApplicationFiled: June 27, 2014Publication date: December 31, 2015Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri