• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 5
    • 下载费用:30 金币  

    重庆时时彩亚都国际: 一种基于C语言的形式验证方法.pdf

    摘要
    申请专利号:

    重庆时时彩单双窍门 www.4mum.com.cn CN201510643554.8

    申请日:

    2015.10.08

    公开号:

    CN106569866A

    公开日:

    2017.04.19

    当前法律状态:

    公开

    有效性:

    审中

    法律详情: 公开
    IPC分类号: G06F9/45 主分类号: G06F9/45
    申请人: 镇江鼎拓科技信息有限公司
    发明人: 不公告发明人
    地址: 212009 江苏省镇江市镇江新区智慧大道689号亚太国际1516室
    优先权:
    专利代理机构: 代理人:
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201510643554.8

    授权公告号:

    法律状态公告日:

    2017.04.19

    法律状态类型:

    公开

    摘要

    一种基于C#语言的形式验证方法基于Intel?x86目标机器模型TM,支持Hoare风格的推理.通过出具证明编译器的一个原型,在该汇编程序验证框架上生成了有关单链表和二叉树的一些函数的携带证明的代码。

    权利要求书

    1.一种基于C#语言的形式验证方法其特征主要包括断言与规范语言、合式公式、推理规则和可靠性证明。2.根据权利要求1中的断言与规范语言则是直接使用元逻辑, 断言的类型是State—State—Prop,即断言是以两个状态为参数的谓词.它们分别是所在函数的初始状态和当前状态.使用函数初始状态便于表达函数返回值和参数初值之间的联系,也便于表达汇编程序的一些特定性质。3.根据权利要求1中合式公式则是断言加到代码块、函数和程序上,形成5个层次的合式公式:合式代码块、合式函数体、合式函数、合式代码堆和合式程序。4.根据权利要求1中推理规则和可靠性证明则是定义了推理规则之后,要证明这些静态推理规则对TM操作语义的可靠性,它保证良形的程序可以在目标机器上一直安全执行。

    说明书

    一种基于C#语言的形式验证方法

    技术领域

    一种基于C#语言的形式验证方法主要涉及计算机语言方面领域。

    背景技术

    随着国家和社会对软件的依赖程度日益增长,关键软件的高可信性质显得越来越重要,其中安全性(包括可靠安全性和保密安全性)是关注的重点??煽堪踩允侵溉砑诵惺辈灰鹞O?、灾难的能力,而保密安全性是指软件系统对数据和信息提供保密性、完整性、可用性、真实性保障的能力。本文所,讲的安全性主要是指可靠安全性.但是两者也是紧密相连的,提高可靠安全性有助于保证保密安全性。

    提高软件安全性的目标是所有的程序错误在程序运行前被发现或者在程序运行时被温和地捕获,以保证程序不会导致不可预测的系统行为。而软件安全性研究主要是探索如何建立一个管理安全性的健全的科学和技术基础,其中软件满足安全策略的程序性质证明方法是研究的热点之一。

    分析当前研究现状,程序性质证明采用类型方法和逻辑方法相结合方式可以兼得两种方法的长处.而ATS的类型系统过于复杂,以致普通程序员难以掌握;CAP方式的验证需要程序员进行繁复的汇编程序手工证明,不适合用于大规???。

    因此,我们选择采用一个简单的类型系统结合一个自动的逻辑推理系统的方法来证明程序满足安全策略.对那些有高安全要求的关键软件、程序设计及安全性证明可以在一种新的编程和编译框架下进行。

    该框架包括断言与规范语言、合式公式、推理规则和可靠性定理.此外,本文还将介绍一个汇编语言指针逻辑系统,它保证通过验证的程序不存在悬空指针引用,或对动态分配存储的访问越界等.部分内容限于篇幅只做简要叙述。

    发明内容

    通过国家专利检索没有发现关于此系统方面的申请资料。

    该框架主要包括断言与规范语言、合式公式、推理规则和可靠性证明。在目标机器TM上对程序进行Hoare风格的推理,程序员首先要使用断言与规范语言对代码堆(程序)进行标注,然后使用合适的推理规则进行程序良形性(well-formedness)的定理证明。

    1)断言与规范语言。断言语言直接使用元逻辑。断言的类型是State—State—Prop,即断言是以两个状态为参数的谓词.它们分别是所在函数的初始状态和当前状态.使用函数初始状态便于表达函数返回值和参数初值之间的联系,也便于表达汇编程序的一些特定性质.例如在一个函数运行时,当前活动记录中保存的返回地址和上一个活动记录的基地址都没有被修改,其他活动记录的内容也没有被修改等.元逻辑中的Prop在此没有被进一步描述,这是为了便于定制不同的逻辑,使该验证框架能被用于不同场合。

    函数规范中的P和q分别对应函数前后条件。指令块规范只需要前条件P,而省略了后条件,这是因为可以使用后继指令块的前条件来进行推理(一个指令块的后断言应该蕴涵它后继指令块的前断言)。

    使用断言与规范语言对代码堆的每个指令块、函数进行标注,即定义代码堆规范环境寥和函数规范环境三。由于一个函数满足规范的证明和被调用函数的规范有关,三同时也包含被调函数的规范。

    断青和规范的语法如下:

    (CdHpSpecCntxt) Ψ∷={f->l->a};

    (FunSpecntxt) ∑∷={f->b};

    (Assertion) p,q∈State->State->Prop;

    (CmdSpec) a∷=p;

    (FunSpec) b∷=(p,q)。

    2)合式公式.它本质上和Hoare逻辑的合式公式是一致的.断言加到代码块、函数和程序上,形成5个层次的合式公式:合式代码块、合式函数体、合式函数、合式代码堆和合式程序,下面使用这些合式公式来定义推理规则:

    (Well-formed InstrBlock) Ψ(f); ∑|-{a}I;

    (Well-formed FuncBody) Ψ(f); ∑|-C(f): Ψ(f);

    (Well-formed Function) Ψ(f); ∑|-{(p,q)}C(f);

    (Well-formed CodeHeap) Ψ; ∑|-C: ∑;

    (Well-formed Program) Ψ; ∑|-{a}P。

    3)推理规则。一个程序(C,S,(F,I)是合式的(规则PROG),仅当存在规范环境Ψ和∑,使得代码堆C是合式代码堆,a在当前状态S下为真,并且I是合式指令块。

    规则FBLK是指若一个函数的每个指令块是合式的,则该函数所有指令块构成的函数体是合式的.规则FUNC是指若函数体是合式的,函数前断言蕴涵函数人口块的前断言,并且出口块以ret指令结尾,则该函数是合式的(函数出口点状态满足函数后断言的要求体现在ret指令规则的前提中).同样,规则CDHP是指若构成代码堆的每个函数是合式的,则代码堆是合式的。

    合式指令块保证了在满足断言a的状态下执行指令块J是安全的.对于指令块c,f,在满足口的状态下执行c,若得到的状态能使断言a'为真,而且a'使得I为合式的,那么c,J是合式指令块(SEQ规则).SEQ规则的前提使用了操作语义函数Next

    ,这表明合式指令块的定义依赖于操作语义而不像Hoare逻辑那样使用代换.一个直接跳转是合式的指令块(JMP规则),仅当当前断言a蕴含跳转目的指令块对应的断言a'.其他跳转和分支指令的规则类似JMP规则,不再一一列出。

    因此,可以看出要证明一个指令块的良形性,需要应用相应的规则,并且给出正确的中间断言。

    CALL和RET这两条规则反映了Intel x86机器上函数调用和返回之间的约定.例如RET规则的前提要求在本函数的执行过程中,除了当前活动记录外栈的其他地方没有修改,并且当前活动记录中保存的上一个活动记录基地址和返回地址没有被

    修改。

    4)可靠性定理.定义了推理规则之后,要证明这些静态推理规则对TM操作语义的可靠性,见定理1.它保证良形的程序可以在目标机器上一直安全执行。

    定理1.可靠性(soundness).如果Ψ;∑|-{a}P,那么对任何自然数n存在程序P',使得P|-P'.简单地说,Ψ;∑|-{a}P是合式的,则P可以一直安全执行.TM操作语义使用小步归约语义,根据基于语法的方法(syntactic approach)[163证明该定理只需要先证明如下两个引理。

    引理1.前进性(progress).如果∑|-{a}P,那么存在P',使得P|->P'。

    引理2.保持性(preservation).如果∑|-{a}P并且存在P',使得P|->P',那么存在a',使得∑|-{a'}P'。

    关 键 词:
    一种 基于 语言 形式 验证 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:一种基于C语言的形式验证方法.pdf
    链接地址://www.4mum.com.cn/p-6092802.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03