尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。
We present efficient algorithms for time-sensitive control dependencies (CDs). If statement y is time-sensitively control dependent on statement x , then x decides not only whether y is executed but also how many timesteps after x . If y is not standard control dependent on x , but time-sensitively control dependent, then y will always be executed after x , but the execution time between x and y varies. This allows us to discover, e.g., timing leaks in security-critical software. We systematically develop properties and algorithms for time-sensitive CDs, as well as for nontermination-sensitive CDs. These work not only for standard control flow graphs (CFGs) but also for CFGs lacking a unique exit node (e.g., reactive systems). We show that Cytron’s efficient algorithm for dominance frontiers [ 10 ] can be generalized to allow efficient computation not just of classical CDs but also of time-sensitive and nontermination-sensitive CDs. We then use time-sensitive CDs and time-sensitive slicing to discover cache timing leaks in an AES implementation. Performance measurements demonstrate scalability of the approach.
DOI 原文 ·
@article{paperbot1206,
title = {On Time-sensitive Control Dependencies},
author = {Martin Hecker and Simon Bischof and Gregor Snelting},
journal = {ACM Transactions on Programming Languages and Systems},
volume = {44},
number = {1},
year = {2021},
doi = {10.1145/3486003}
}