Citation
Albert Albiol, Elvira and Hermenegildo, Manuel V. and Puebla Sánchez, Alvaro Germán
(2008).
Abstraction-carrying code: a model for mobile code safety.
"New generation computing", v. 26
(n. 2);
pp. 171-204.
ISSN 0288-3635.
https://doi.org/10.1007/s00354-008-0039-7.
Abstract
Proof-Carrying Code (PCC) is a general approach to mobile
code safety in which programs are augmented with a certificate (or proof).
The intended benefit is that the program consumer can locally validate the
certificate w.r.t. the "untrustcd" program by means of a certificate checker a
process which should be much simpler, efficient, and automatic than generating
the original proof. The practical uptake of PCC greatly depends on the
existence of a variety of enabling technologies which allow both proving programs
correct and replacing a costly verification process by an efficient checking
proceduri on th( consumer side. In this work we propose Abstraction-
Carrying Code (ACC), a novel approach which uses abstract interpretation
as enabling technology. We argue that the large body of applications of abstract
interpretation to program verification is amenable to the overall PCC
scheme. In particular, we rely on an expressive class of safely policies which
can be defined over different abstract domains. We use an abstraction (or
abstract model) of the program computed by standard static analyzers as a
certificate. The validity of the abstraction on ihe consumer side is checked
in a single pass by a very efficient and specialized abstract-interpreter. We
believe that ACC brings the expressiveness, flexibility and automation which
is inherent in abstract interpretation techniques to the area of mobile code
safety.