[Soot-list] Search for information flow tracking tool

Richard L. Halpert richard.halpert at mail.mcgill.ca
Mon Jan 28 16:16:41 EST 2008


FYI: Implicit information flow can come from any source, not just control
flow... for example, if the value of y causes some calculation to take a
very long time, which causes x not to be set until much longer, then there
is implicit information flow from y to x because you can determine something
about y by watching the value of x.

On Jan 28, 2008 1:14 PM, Richard L. Halpert <richard.halpert at mail.mcgill.ca>
wrote:

> Explicit Information Flow: Information stored in y is propagated directly
> to x.
>
> Implicit Information Flow: Information about y can be inferred by the
> value of x (as a result of some control flow depending on y which affects
> the value of x).
>
> Both of these things are information flow.  My information flow analysis
> only tracks the explicit type.
>
> -Rich
>
>
> On Jan 28, 2008 1:07 PM, Chris Pickett <chris.pickett at mail.mcgill.ca>
> wrote:
>
> > Hi Sunny,
> >
> > I have three recommendations:
> >
> > 1) Look at Ahmer Ahmedani's M.Sc. thesis (Sable website), he has both
> > implicit (control-flow dependent) and explicit information flow
> > analyses.
> >
> > 2) Look at Richard Halpert's information flow analysis described in our
> > PACT'07 paper (Sable website) -- however, it only accounts for explicit
> > information flow, so no control flow.
> >
> > 3) Look at Indus for program slicing (Google it...)
> >
> > Eric, I think Sunny is right, information flow analysis does generally
> > include a control flow analysis.  A post-dominator analysis is probably
> > the building block you want for it.
> >
> > Cheers,
> > Chris
> >
> > Eric Bodden wrote:
> > > To my best knowledge, information flow analysis only tracks data flow
> > > and not control flow. In your example, there is no data flowing from x
> > > to y. That's why I believe that an information flow analysis could not
> > > give you the answers you need. (There *may* be information flow
> > > analyses which do what you need, though.)
> > >
> > > Slicing definitely takes control flow dependencies into account and
> > > hence would point to x, when being queried on y.
> > >
> > > Eric
> > >
> > > On 28/01/2008, Sunny <sunfire001 at gmail.com> wrote:
> > >> Hello Eric and Alvin.
> > >>
> > >> Thanks for your quick responses!
> > >>
> > >> Actually I am not quite sure whether this analysis belongs to
> > information
> > >> flow tracking or slicing. But I read WASSIM A. MASRI's dissertation
> > which
> > >> has the following definitions for the two cocepts:
> > >>
> > >>
> > >> Information flow: Information flow occurs from object y (source) to
> > object x
> > >> (target or sink) whenever information stored in y is propagated
> > directly or
> > >> indirectly to object x, .i.e., if information about y can be inferred
> > by
> > >> examining x.
> > >> Program Slicing: Program Slicing is concerned with finding all
> > statements in
> > >> a program that directly or indirectly influence another statement in
> > a
> > >> program.
> > >>
> > >> So I think this analysis is closer to the information flow tracking.
> > >> Anyways, they are closely related to each other and I will certainly
> > take a
> > >> look at those tools you mentioned. Thank you for your time!
> > >>
> > >> Cheers,
> > >>
> > >> Sunny
> > >>
> > >>
> > >> On Jan 28, 2008 2:30 PM, Alvin Yan <feiya200 at cs.uregina.ca> wrote:
> > >>
> > >>>
> > >>> It sounds like a forward data flow analysis to me. You can take a
> > look at
> > >> the package soot.jimple.toolkits there're all kinds of analysis,
> > >>> or extend Soot's flow analysis to write your own. There's a good
> > example
> > >> in the Soot's survivor's guide.
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>
> > >>> From: Sunny
> > >>> Sent: Monday, January 28, 2008 9:41 AM
> > >>> To: soot-list at sable.mcgill.ca
> > >>> Subject: [Soot-list] Search for information flow tracking tool
> > >>>
> > >>>
> > >>>
> > >>> Dear All,
> > >>>
> > >>>
> > >>> I am new in the field of data/control flow analysis, and my current
> > >> project
> > >>> requires me to find the set of variables that can affect the value
> > of
> > >> another
> > >>> variable. For instance...
> > >>>
> > >>>
> > >>>
> > >>>
> > >>
> > >
> > >
> > _______________________________________________
> > Soot-list mailing list
> > Soot-list at sable.mcgill.ca
> > http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20080128/8694374b/attachment.htm


More information about the Soot-list mailing list