From Languages to Systems: Understanding Practical Application Development in Security-typed Languages

  • Authors:
  • Boniface Hicks;Kiyan Ahmadizadeh;Patrick McDaniel

  • Affiliations:
  • Pennsylvania State University, USA;Pennsylvania State University, USA;Pennsylvania State University, USA

  • Venue:
  • ACSAC '06 Proceedings of the 22nd Annual Computer Security Applications Conference
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Security-typed languages are an evolving tool for implementing systems with provable security guarantees. However, to date, these tools have only been used to build simple "toy” programs. As described in this paper, we have developed the first real-world, security-typed application: a secure email system written in the Java language variant Jif. Real-world policies are mapped onto the information flows controlled by the language primitives, and we consider the process and tractability of broadly enforcing security policy in commodity applications. We find that while the language provided the rudimentary tools to achieve low-level security goals, additional tools, services, and language extensions were necessary to formulate and enforce application policy. We detail the design and use of these tools. We also show how the strong guarantees of Jif in conjunction with our policy tools can be used to evaluate security. This work serves as a starting point--we have demonstrated that it is possible to implement real-world systems and policy using security-typed languages. However, further investigation of the developer tools and supporting policy infrastructure is necessary before they can fulfill their considerable promise of enabling more secure systems.