Research Article Open Access

Proof-Carrying Code Based Tool for Secure Information Flow of Assembly Programs

Abdulrahman Muthana, Abdul Azim Abd Ghani, Ramlan Mahmod and Hasan Selamat


Problem statement: How a host (the code consumer) can determine with certainty that a downloaded program received from untrusted source (the code producer) will maintain the confidentiality of the data it manipulates and it is safe to install and execute. Approach: The approach adopted for verifying that a downloaded program will not leak confidential data to unauthorized parties was based on the concept of Proof-Carrying Code (PCC). A mobile program (in its assembly form) was analyzed for information flow security based on the concept of proof-carrying code. The security policy was centered on a type system for analyzing information flows within assembly programs based on the notion of noninterference. Results: A verification tool for verifying assembly programs for information flow security was built. The tool certifies SPARC assembly programs for secure information flow by statically analyzing the program based on the idea of Proof-Carrying Code (PCC). The tool operated directly on the machine-code requiring only the inputs and outputs of the code annotated with security levels. The tool provided a windows user interface enabling the users to control the verification process. The proofs that untrusted program did not leak sensitive information were generated and checked on the host machine and if they are valid, then the untrusted program can be installed and executed safely. Conclusion: By basing proof-carrying code infrastructure on information flow analysis type-system, a sufficient assurance of protecting confidential data manipulated by the mobile program can be obtained. This assurance was come due to the fact that type systems provide a sufficient guarantee of protecting confidentiality.

Journal of Computer Science
Volume 5 No. 2, 2009, 163-171


Submitted On: 24 February 2009 Published On: 28 February 2009

How to Cite: Muthana, A., Ghani, A. A. A., Mahmod, R. & Selamat, H. (2009). Proof-Carrying Code Based Tool for Secure Information Flow of Assembly Programs . Journal of Computer Science, 5(2), 163-171.

  • 0 Citations



  • Proof-carrying code
  • secure information flow
  • assembly language
  • non-interference