arXivDaily arXiv每日学术速递 周一至周五更新
arXiv cs/0701111cs.PL
收藏

增量式抽象携带代码的若干问题

Some Issues on Incremental Abstraction-Carrying Code

Elvira Albert, Puri Arenas, German Puebla

摘要:

抽象承载代码(ACC)最近被提出作为用于证明承载代码(PCC)的框架,其中代码供应商提供程序连同抽象(或程序的抽象模型),其有效性需要遵守预定义的安全策略。因此,抽象起到了安全证书的作用,其生成(和验证)由定点分析器自动执行。PCC的现有方法是在消费者读取并验证整个程序w.r.t.以非增量的方式一次获得完整的证书。在这篇摘要中,我们概述了增量ACC的主要问题。特别是,在逻辑编程的背景下,我们讨论了增量证书的生成和(可信)程序的不可信更新的增量检查算法的设计,即,当生产者提供先前验证的程序的修改版本时。通过更新,我们指的是对程序的任何任意更改,即,用新谓词扩展程序,删除现有谓词,并用新版本替换现有谓词。我们还讨论了每种更新如何影响增量扩展的准确性和正确性。

英文摘要:

Abstraction-Carrying Code (ACC) has recently been proposed as a framework for proof-carrying code (PCC) in which the code supplier provides a program together with an abstraction (or abstract model of the program) whose validity entails compliance with a predefined safety policy. The abstraction thus plays the role of safety certificate and its generation (and validation) is carried out automatically by a fixed-point analyzer. Existing approaches for PCC are developed under the assumption that the consumer reads and validates the entire program w.r.t. the full certificate at once, in a non incremental way. In this abstract, we overview the main issues on incremental ACC. In particular, in the context of logic programming, we discuss both the generation of incremental certificates and the design of an incremental checking algorithm for untrusted updates of a (trusted) program, i.e., when a producer provides a modified version of a previously validated program. By update, we refer to any arbitrary change on a program, i.e., the extension of the program with new predicates, the deletion of existing predicates and the replacement of existing predicates by new versions for them. We also discuss how each kind of update affects the incremental extension in terms of accuracy and correctness.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑