pith. sign in

arxiv: 1702.07103 · v1 · pith:N2BGSVXAnew · submitted 2017-02-23 · 💻 cs.PL · cs.CR· cs.FL· cs.LG· cs.SE

Discriminating Traces with Time

classification 💻 cs.PL cs.CRcs.FLcs.LGcs.SE
keywords discriminantsdecisioninternalslikelihoodmaximumprogramscalablytime
0
0 comments X
read the original abstract

What properties about the internals of a program explain the possible differences in its overall running time for different inputs? In this paper, we propose a formal framework for considering this question we dub trace-set discrimination. We show that even though the algorithmic problem of computing maximum likelihood discriminants is NP-hard, approaches based on integer linear programming (ILP) and decision tree learning can be useful in zeroing-in on the program internals. On a set of Java benchmarks, we find that compactly-represented decision trees scalably discriminate with high accuracy---more scalably than maximum likelihood discriminants and with comparable accuracy. We demonstrate on three larger case studies how decision-tree discriminants produced by our tool are useful for debugging timing side-channel vulnerabilities (i.e., where a malicious observer infers secrets simply from passively watching execution times) and availability vulnerabilities.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.