会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明申请
    • METHOD AND SYSTEM FOR PERFORMING BACKWARD-DRIVEN PATH-SENSITIVE DATAFLOW ANALYSIS
    • 用于执行后向驱动路径敏感数据流分析的方法和系统
    • US20130031531A1
    • 2013-01-31
    • US13192349
    • 2011-07-27
    • Nathan Robert Albert KeynesCristina N. CifuentesLian Li
    • Nathan Robert Albert KeynesCristina N. CifuentesLian Li
    • G06F9/44
    • G06F8/74G06F8/427
    • In general, in one aspect, the invention relates to a method for static analysis. The method includes: obtaining source code; constructing a control flow graph (CFG) corresponding to the source code, by identifying control structures within the source code, creating a set of graph nodes of the CFG, and creating a set of directed graph edges of the CFG connecting the set of graph nodes; assigning a first Boolean flow value to a selected node of the set of graph nodes; backward traversing the CFG from the selected node to a target node; computing, by a computer processor and while backward traversing the CFG, disjoint predicate expressions representing flow values at the set of directed graph edges; computing, based on the disjoint predicate expressions, a resulting disjoint predicate expression; and identifying, based on the resulting disjoint predicate expression, a potential program property in the source code.
    • 通常,一方面,本发明涉及静态分析方法。 该方法包括:获取源代码; 通过识别源代码中的控制结构,创建一组CFG的图形节点,以及创建连接该图形节点组的CFG的一组有向图边缘来构建与源代码相对应的控制流程图(CFG) ; 向所述一组图形节点的所选节点分配第一布尔流值; 从选择的节点向目标节点反向遍历CFG; 通过计算机处理器进行计算,并且在向后遍历CFG时,分离表示在有向图边缘集合处的流量值的谓词表达式; 基于不相交的谓词表达式计算所得到的不相交谓词表达式; 并且基于所得到的不相交谓词表达来识别源代码中的潜在程序属性。
    • 2. 发明申请
    • CONTEXT-SENSITIVE ANALYSIS FRAMEWORK USING VALUE FLOWS
    • 使用价值流的语境敏感分析框架
    • US20120304153A1
    • 2012-11-29
    • US13117078
    • 2011-05-26
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • G06F9/44
    • G06F8/75G06F11/3604
    • In general, in one aspect, the invention relates to a method for identifying program properties in source code. The method includes: identifying a set of program objects corresponding to a potential program property within the source code; identifying a function associated with the set of program objects in the source code; identifying an input and an output of the function in the source code; creating a value flow graph by: creating a function input node representing the input; creating a function output node representing the output; identifying value flow functions, where each value flow function defines a conditional dependency between a pair of graph nodes, and creating, based on the value flow functions, directed graph edges modeling a potential flow of data through the value flow graph; and identifying a feasible path in the value flow graph depicting an occurrence of the potential program property in the source code.
    • 通常,一方面,本发明涉及用于识别源代码中的程序属性的方法。 该方法包括:识别与源代码内的潜在程序属性相对应的一组程序对象; 识别与所述源代码中的所述一组程序对象相关联的功能; 识别源代码中的功能的输入和输出; 通过以下方式创建价值流程图:创建表示输入的函数输入节点; 创建表示输出的功能输出节点; 识别价值流函数,其中每个价值流函数定义一对图形节点之间的条件依赖关系,并且基于所述价值流函数创建通过所述价值流图对潜在数据流建模的有向图边缘; 并且在所述值流程图中识别描绘所述源代码中的潜在程序属性的发生的可行路径。
    • 3. 发明授权
    • Points-to analysis using value flow
    • 使用价值流分析点分析
    • US08473927B2
    • 2013-06-25
    • US13117058
    • 2011-05-26
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • G06F9/44G06F9/45
    • G06F8/75G06F8/434G06F11/3604
    • In general, in one aspect, the invention relates to a method for performing points-to analysis by generating a value flow graph for source code. The method steps include: initializing the value flow graph including a set of memory objects and a set of edges based on Base and Assignment instructions, where the set of edges represents inclusion constraints between the set of memory objects and a set of pointer variables; determining a pointed-to-by set including at least one pointer variable of the set of pointer variables; updating the value flow graph by introducing a flow edge based on an indirect reference, where the flow edge is related to a memory object of the set of memory objects that is added to a working list; updating the pointed-to-by set based on the memory object in the working list; and analyzing the source code using the pointed-to-by set.
    • 一般来说,一方面,本发明涉及通过生成源代码的值流程图来执行点分析的方法。 所述方法步骤包括:基于基本和分配指令来初始化包括一组存储器对象和一组边的值流图,其中所述边集合表示所述一组存储器对象与一组指针变量之间的包含约束; 确定包括所述指针变量集合中的至少一个指针变量的指向对象集合; 通过引入基于间接引用的流边来更新值流图,其中流边缘与添加到工作列表的一组存储器对象的存储器对象相关; 基于工作列表中的存储器对象来更新指向性集合; 并使用尖括号分析源代码。
    • 5. 发明授权
    • Method and system for performing backward-driven path-sensitive dataflow analysis
    • 执行反向驱动的路径敏感数据流分析的方法和系统
    • US08893102B2
    • 2014-11-18
    • US13192349
    • 2011-07-27
    • Nathan Robert Albert KeynesCristina N. CifuentesLian Li
    • Nathan Robert Albert KeynesCristina N. CifuentesLian Li
    • G06F9/45
    • G06F8/74G06F8/427
    • In general, in one aspect, the invention relates to a method for static analysis. The method includes: obtaining source code; constructing a control flow graph (CFG) corresponding to the source code, by identifying control structures within the source code, creating a set of graph nodes of the CFG, and creating a set of directed graph edges of the CFG connecting the set of graph nodes; assigning a first Boolean flow value to a selected node of the set of graph nodes; backward traversing the CFG from the selected node to a target node; computing, by a computer processor and while backward traversing the CFG, disjoint predicate expressions representing flow values at the set of directed graph edges; computing, based on the disjoint predicate expressions, a resulting disjoint predicate expression; and identifying, based on the resulting disjoint predicate expression, a potential program property in the source code.
    • 通常,一方面,本发明涉及静态分析方法。 该方法包括:获取源代码; 通过识别源代码中的控制结构,创建一组CFG的图形节点,以及创建连接该图形节点组的CFG的一组有向图边缘来构建与源代码相对应的控制流程图(CFG) ; 向所述一组图形节点的所选节点分配第一布尔流值; 从选择的节点向目标节点反向遍历CFG; 通过计算机处理器进行计算,并且在向后遍历CFG时,分离表示在有向图边缘集合处的流量值的谓词表达式; 基于不相交的谓词表达式计算所得到的不相交谓词表达式; 并且基于所得到的不相交谓词表达来识别源代码中的潜在程序属性。
    • 6. 发明申请
    • POINTS-TO ANALYSIS AS VALUE FLOW
    • 要点分析作为价值流
    • US20120304158A1
    • 2012-11-29
    • US13117058
    • 2011-05-26
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • G06F9/44
    • G06F8/75G06F8/434G06F11/3604
    • In general, in one aspect, the invention relates to a method for performing points-to analysis by generating a value flow graph for source code. The method steps include: initializing the value flow graph including a set of memory objects and a set of edges based on Base and Assignment instructions, where the set of edges represents inclusion constraints between the set of memory objects and a set of pointer variables; determining a pointed-to-by set including at least one pointer variable of the set of pointer variables; updating the value flow graph by introducing a flow edge based on an indirect reference, where the flow edge is related to a memory object of the set of memory objects that is added to a working list; updating the pointed-to-by set based on the memory object in the working list; and analyzing the source code using the pointed-to-by set.
    • 一般来说,一方面,本发明涉及通过生成源代码的值流程图来执行点分析的方法。 所述方法步骤包括:基于基本和分配指令来初始化包括一组存储器对象和一组边的值流图,其中所述边集合表示所述一组存储器对象与一组指针变量之间的包含约束; 确定包括所述指针变量集合中的至少一个指针变量的指向对象集合; 通过引入基于间接引用的流边来更新值流图,其中流边缘与添加到工作列表的一组存储器对象的存储器对象相关; 基于工作列表中的存储器对象来更新指向性集合; 并使用尖括号分析源代码。
    • 8. 发明授权
    • Context-sensitive analysis framework using value flows
    • 使用价值流的上下文敏感分析框架
    • US08516443B2
    • 2013-08-20
    • US13117078
    • 2011-05-26
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • Lian LiCristina N. CifuentesNathan Robert Albert Keynes
    • G06F9/44
    • G06F8/75G06F11/3604
    • In general, in one aspect, the invention relates to a method for identifying program properties in source code. The method includes: identifying a set of program objects corresponding to a potential program property within the source code; identifying a function associated with the set of program objects in the source code; identifying an input and an output of the function in the source code; creating a value flow graph by: creating a function input node representing the input; creating a function output node representing the output; identifying value flow functions, where each value flow function defines a conditional dependency between a pair of graph nodes, and creating, based on the value flow functions, directed graph edges modeling a potential flow of data through the value flow graph; and identifying a feasible path in the value flow graph depicting an occurrence of the potential program property in the source code.
    • 通常,一方面,本发明涉及用于识别源代码中的程序属性的方法。 该方法包括:识别与源代码内的潜在程序属性相对应的一组程序对象; 识别与所述源代码中的所述一组程序对象相关联的功能; 识别源代码中的功能的输入和输出; 通过以下方式创建价值流程图:创建表示输入的函数输入节点; 创建表示输出的功能输出节点; 识别价值流函数,其中每个价值流函数定义一对图形节点之间的条件依赖关系,并且基于所述价值流函数创建通过所述价值流图对潜在数据流建模的有向图边缘; 并且在所述值流程图中识别描绘所述源代码中的潜在程序属性的发生的可行路径。
    • 10. 发明授权
    • System and method for overflow detection using partial evaluations
    • 使用部分评估进行溢出检测的系统和方法
    • US08578343B2
    • 2013-11-05
    • US12688078
    • 2010-01-15
    • Bernhard F. ScholzCristina N. CifuentesNathan Robert Albert Keynes
    • Bernhard F. ScholzCristina N. CifuentesNathan Robert Albert Keynes
    • G06F9/44
    • G06F11/3624G06F11/3612G06F21/577
    • A method for overflow detection using partial evaluations. The method includes obtaining a section of code from a source code file stored on a storage device, analyzing the section of code to identify a buffer with an index, determining a plurality of statements that are statically-computable and dependent on the index of the buffer, and generating a code segment including the plurality of statements. The method further includes replacing an access statement of the plurality of statements with a conditional statement returning true when bounds of the buffer are exceeded, where the access statement uses the index to access the buffer, adding an unconditional statement returning false to the code segment, and executing the code segment on a computer processor to obtain a determination of whether the bounds of the buffer are exceeded.
    • 一种使用部分评估的溢出检测方法。 该方法包括从存储在存储设备上的源代码文件中获取一段代码,分析代码段以识别具有索引的缓冲区,确定可静态计算并依赖于缓冲区索引的多个语句 ,以及生成包括所述多个语句的代码段。 该方法进一步包括:当条件语句在超出缓冲区的边界时返回true,替换多个语句的访问语句,访问语句使用索引访问缓冲区,向代码段添加返回false的无条件语句, 以及在计算机处理器上执行代码段以获得是否超过了缓冲区的范围的确定。