| Efficient type inference for secure information flow |
| Full text |
Pdf
(168 KB)
|
| Source
|
Conference on Programming Language Design and Implementation
archive
Proceedings of the 2006 workshop on Programming languages and analysis for security
table of contents
Ottawa, Ontario, Canada
SESSION: Secure information flow
table of contents
Pages: 85 - 94
Year of Publication: 2006
ISBN:1-59593-374-3
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 6, Downloads (12 Months): 50, Citation Count: 1
|
|
|
ABSTRACT
This paper describes the design, analysis, and implementation of an efficient algorithm for information flow analysis expressed using a type system. Given a program and an environment of security classes for information accessed by the program, the algorithm checks whether the program is well typed, i.e., there is no information of higher security classes flowing into places of lower security classes according to a lattice of security classes, by inferring the highest or lowest security class as appropriate for each program node. We express the analysis as a set of Datalog-like rules based on the typing and subtyping rules, and we use a systematic method to generate specialized algorithms and data structures directly from the Datalog-like rules. The generated implementation traverses the program multiple times and uses a combination of linked and indexed data structures to represent program nodes, environments, and types. The time complexity of the algorithm is linear in the size of the input program, times the height of the lattice of security classes, plus a small overhead for preprocessing the security classes. This complexity is confirmed through our prototype implementation and experimental evaluation on code generated from high-level specifications for real systems.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
|
 |
3
|
|
 |
4
|
|
| |
5
|
|
 |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
Z. Deng and G. Smith. Type inference and informative error reporting for secure information flow. In Proceedings of ACMSE 2006: 44th ACM Southeast Conference, Melbourne, Florida, 2006.
|
 |
10
|
|
 |
11
|
|
| |
12
|
|
 |
13
|
|
| |
14
|
|
 |
15
|
|
 |
16
|
|
| |
17
|
R. Paige. Real-time simulation of a set machine on a RAM. In Proceedings of the International Conference on Computing and Information, volume 2, pages 68--73, 1989.
|
 |
18
|
|
| |
19
|
|
 |
20
|
|
 |
21
|
Tom Rothamel , Yanhong A. Liu , Constance L. Heitmeyer , Elizabeth I. Leonard, Generating optimized code from SCR specifications, Proceedings of the 2006 ACM SIGPLAN/SIGBED conference on Language, compilers and tool support for embedded systems, June 14-16, 2006, Ottawa, Ontario, Canada
|
| |
22
|
A.Sabelfeld and A. C. Myers. Language-based information-flow security. IEEE Journal On Selected Areas in Communications, 21(1):5--19, January 2003.
|
| |
23
|
V. Simonet. Flow CAML in a nutshell. In G. Hutton, editor, Proceedings of the first APPSEM-II workshop, pages 152--165, 2003.
|
 |
24
|
|
| |
25
|
|
| |
26
|
Q. Sun, A. Banerjee, and D. A. Naumann. Modular and constraint-based information flow inference for an object-oriented language. In Proceedings of the 11th International Static Analysis Symposium, volume 3148 of Lecture Notes in Computer Science, pages 84--99, Aug. 2004.
|
| |
27
|
|
| |
28
|
|
|