1. A method for information flow tracking, the method comprising using a computing system executing a software program for: identifying a plurality of dimensions, each dimension quantifying a property associated with information flows, the information flows resulting from execution of computer programs; using the plurality of dimensions to express a plurality of information flow policies governing accesses to and uses of the information flows, the plurality of dimensions in each information flow policy comprising dimension values resulting from the information flows, the dimension values used to determine compliance with each information flow policy, and the plurality of dimensions in each information flow policy comprising interrelationships among dimensions, each interrelationship comprising a first dimension quantifying a property of a second dimension having an associated dimension value; arranging the plurality of policies into a plurality of domains based on common type of policy; tracking the information flows across all domains; accessing information flow data and associated information flow metadata for each tracked information flow, the information flow metadata comprising the dimension values for one or more of the plurality of identified dimensions and the interrelationships among dimensions, the dimension values associated with data values for data in each information data flow, each dimension value recording an influence on its associated data value by a given information flow control; assigning a multi-dimensional label to each tracked information flow, the multi-dimensional label comprising the data values derived from the information flow data and the associated dimension values derived from the information flow metadata; and propagating each tracked information flow with the assigned multi-dimensional label.
1. A method for information flow tracking, the method comprising using a computing system executing a software program for: identifying a plurality of dimensions, each dimension quantifying a property associated with information flows, the information flows resulting from execution of computer programs; using the plurality of dimensions to express a plurality of information flow policies governing accesses to and uses of the information flows, the plurality of dimensions in each information flow policy comprising dimension values resulting from the information flows, the dimension values used to determine compliance with each information flow policy, and the plurality of dimensions in each information flow policy comprising interrelationships among dimensions, each interrelationship comprising a first dimension quantifying a property of a second dimension having an associated dimension value; arranging the plurality of policies into a plurality of domains based on common type of policy; tracking the information flows across all domains; accessing information flow data and associated information flow metadata for each tracked information flow, the information flow metadata comprising the dimension values for one or more of the plurality of identified dimensions and the interrelationships among dimensions, the dimension values associated with data values for data in each information data flow, each dimension value recording an influence on its associated data value by a given information flow control; assigning a multi-dimensional label to each tracked information flow, the multi-dimensional label comprising the data values derived from the information flow data and the associated dimension values derived from the information flow metadata; and propagating each tracked information flow with the assigned multi-dimensional label. 9. The method of claim 1 , further comprising mediating all accesses to memory and maintaining information-flow metadata.