1. A method for static detection and categorization of information-flow downgraders, comprising: transforming a program stored in a memory device by statically analyzing program variables to yield a single assignment for each variable in an instruction set; translating the instruction set to production rules with string operations to identify a finite set of strings; generating a context-free grammar from the production rules; and identifying an information-flow downgrader function by checking the finite set of strings against one or more function specifications, wherein the information-flow downgrader function downgrades input information by endorsing integrity and declassifying confidentiality of the information to enable high input information to flow to low program points.
1. A method for static detection and categorization of information-flow downgraders, comprising: transforming a program stored in a memory device by statically analyzing program variables to yield a single assignment for each variable in an instruction set; translating the instruction set to production rules with string operations to identify a finite set of strings; generating a context-free grammar from the production rules; and identifying an information-flow downgrader function by checking the finite set of strings against one or more function specifications, wherein the information-flow downgrader function downgrades input information by endorsing integrity and declassifying confidentiality of the information to enable high input information to flow to low program points. 8. The method as recited in claim 1 , wherein the downgrader function is generated by a Web application.