There is always a dire need for security in software systems. In the late 80s’, there was a demand rising for safety-critical software in both the military and civil industries that contingent on compile-time code analysis. This includes control-flow, data-flow, and information-flow analysis — collectively, we can call this Language-based Security (LBS). Our work primarily concerned with the information-flow analysis within an imperative program and facilitate or restrict information flow as per the information flow policy.
Where Public-key Infrastructure (PKI) helps to provide information security over network communication, access control, on the other hand, is a tool for the singletons. The Discretionary Access Control (DAC) implemented using an Access Control Matrix (ACM) or Access Capability List (ACL) prevents an unauthorized entity from accessing the secret information. However, an authorized entity might disseminate the secret information to other unauthorized entities. Mandatory Access Control (MAC) comes forward in this particular context, that imposes a security policy that information adheres throughout the system. Implementing MAC through programming languages provide finer-grained access control rather than the granularity yielded by a system specific implementation when information-flow is considered.