Jump to : Download | Abstract | Contact | BibTex reference | EndNote reference |
Download paper Adobe portable document format (pdf)
Copyright noticeThis material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. These works may not be reposted without the explicit permission of the copyright holder.
In the field of computer security, a problem that received little attention so far is the enforcement of confidentiality properties by supervisory control. Given a critical system G that may leak confidential information, the problem consists in designing a controller C, possibly disabling occurrences of a fixed subset of events of G, so that the closed-loop system G/C does not leak confidential information. We consider this problem in the case where G is a finite transition system with set of events A and an inquisitive user, called the adversary, observes a subset Aa of A. The confidential information is the fact (when it is true) that the trace of the execution of G on A* belongs to a regular set S in A, called the secret. The secret S is said to be opaque w.r.t. G (resp. G/C) and Aa if the adversary cannot safely infer this fact from the trace of the execution of G (resp. G/C) on Aa*. In the converse case, the secret can be disclosed. We present an effective algorithm for computing the most permissive controller C such that S is opaque w.r.t. G/C and Aa. This algorithm subsumes two earlier algorithms working under the strong assumption that the alphabet Aa of the adversary and the set of events that the controller can disable are comparable.
Jérémy Dubreil
jeremy.dubreil@irisa.fr
Hervé Marchand
hmarchan@irisa.fr
@TechReport{PI-1921,
Author = {Dubreil, J. and Darondeau, Ph. and Marchand, H.},
Title = {Supervisory Control for Opacity},
Number = {1921},
Institution = {IRISA},
Month = {February},
Year = {2009}
}
Get EndNote Reference (.ref)