Modular Information Flow through Ownership

被引:3
作者
Crichton, Will [1 ]
Patrignani, Marco [2 ]
Agrawala, Maneesh [1 ]
Hanrahan, Pat [1 ]
机构
[1] Stanford Univ, Stanford, CA 94305 USA
[2] Univ Trento, Trento, Italy
来源
PROCEEDINGS OF THE 43RD ACM SIGPLAN INTERNATIONAL CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '22) | 2022年
关键词
information flow; ownership types; rust;
D O I
10.1145/3519939.3523445
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Statically analyzing information flow, or how data influences other data within a program, is a challenging task in imperative languages. Analyzing pointers and mutations requires access to a program's complete source. However, programs often use pre-compiled dependencies where only type signatures are available. We demonstrate that ownership types can be used to soundly and precisely analyze information flow through function calls given only their type signature. From this insight, we built Flowistry, a system for analyzing information flow in Rust, an ownership-based language. We prove the system's soundness as a form of noninterference using the Oxide formal model of Rust. Then we empirically evaluate the precision of Flowistry, showing that modular flows are identical to whole-program flows in 94% of cases drawn from large Rust codebases. We illustrate the applicability of Flowistry by using it to implement prototypes of a program slicer and an information flow control system.
引用
收藏
页码:1 / 14
页数:14
相关论文
共 50 条
  • [41] RFID-BASED SYNCHRONIZATION OF INFORMATION FLOW AND MATERIAL FLOW
    Hua-Lin, Zheng
    Yue-Pai, Wang
    Xi-Yuan, Wan
    JOURNAL OF ADVANCED MANUFACTURING SYSTEMS, 2008, 7 (02) : 271 - 274
  • [42] Information flow molding technology of GBIM
    Yang, Mingyu
    Chen, Siyuan
    Xu, Jianying
    ADVANCES IN INDUSTRIAL AND CIVIL ENGINEERING, PTS 1-4, 2012, 594-597 : 2886 - 2892
  • [43] Information flow based ontology mapping
    Liang, Ye
    Bao, Hong
    Liu, Hong-Zhe
    PROCEEDINGS OF NINTH ACIS INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ARTIFICIAL INTELLIGENCE, NETWORKING AND PARALLEL/DISTRIBUTED COMPUTING, 2008, : 580 - 585
  • [44] Information flow decomposition for network coding
    Fragouli, C
    Soijanin, E
    IEEE TRANSACTIONS ON INFORMATION THEORY, 2006, 52 (03) : 829 - 848
  • [45] Modeling Information Flow Properties with UML
    Katkalov, Kuzman
    Stenzel, Kurt
    Borek, Marian
    Reif, Wolfgang
    2015 7TH INTERNATIONAL CONFERENCE ON NEW TECHNOLOGIES, MOBILITY AND SECURITY (NTMS), 2015,
  • [46] Program algebra for quantitative information flow
    McIver, A. K.
    Morgan, C. C.
    Rabehaja, T.
    JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING, 2019, 106 : 55 - 77
  • [47] Quantification of Information Flow in a Smart Grid
    Feng, Li
    McMillin, Bruce
    2014 38TH ANNUAL IEEE INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE WORKSHOPS (COMPSACW 2014), 2014, : 140 - 145
  • [48] Reconciling Belief and Vulnerability in Information Flow
    Hamadou, Sardaouna
    Sassone, Vladimiro
    Palamidessi, Catuscia
    2010 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, 2010, : 79 - 92
  • [49] Fairness of Information Flow in Social Networks
    Jalali, Zeinab S.
    Chen, Qilan
    Srikanta, Shwetha M.
    Wang, Weixiang
    Kim, Myunghwan
    Raghavan, Hema
    Soundarajan, Sucheta
    ACM TRANSACTIONS ON KNOWLEDGE DISCOVERY FROM DATA, 2023, 17 (06)
  • [50] Information flow and price discovery dynamics
    Wu, Lei
    Xu, Kuan
    Meng, Qingbin
    REVIEW OF QUANTITATIVE FINANCE AND ACCOUNTING, 2021, 56 (01) : 329 - 367