Preserving Privacy in Software Composition Analysis: A Study of Technical Solutions and Enhancements
Software composition analysis (SCA) denotes the process of identifying open-source software components in an input software application. SCA has been extensively developed and adopted by academia and industry. However, we notice that the modern SCA techniques in industry scenarios still need to be improved due to privacy concerns. Overall, SCA requires the users to upload their applications’ source code to a remote SCA server, which then deeply inspects the applications and reports the component usage to users. This process is privacy-sensitive since the applications may contain sensitive information, such as proprietary algorithms, trade secrets, and user data. Moreover, applications’ source code is generally deemed proprietary, and users do not want to share it with the SCA vendor. To protect customers’ privacy, contemporary SCA vendors often propose to deploy a “lite” version of SCA service on the customer side. To avoid the leakage of SCA vendors’ valuable assets (e.g., code, model, and data), the “lite” SCA usually only performs a shallow analysis with limited accuracy.
Privacy concerns have prevented the SCA technology from being used in real-world scenarios. Therefore, academia and the industry demand privacy-preserving SCA solutions. For the first time, we analyze the privacy requirements of SCA and provide a landscape depicting possible technical solutions with varying privacy gains and overheads. In particular, given that de facto SCA frameworks are primarily driven by code similarity-based techniques, we explore combining several privacy-preserving protocols to encapsulate the similarity-based SCA framework. Among all viable solutions, we find that multi-party computation (MPC) offers the strongest privacy guarantee and plausible accuracy; it, however, incurs high overhead ($184\times$). We optimize the MPC-based SCA framework by reducing the amount of crypto protocol transactions using program analysis techniques. The evaluation results show that our proposed optimizations can reduce the MPC-based SCA overhead to only 8.5% without sacrificing SCA’s privacy guarantee or accuracy.
Fri 2 MayDisplayed time zone: Eastern Time (US & Canada) change
14:00 - 15:30 | |||
14:00 15mTalk | Decoding the Issue Resolution Process In Practice via Issue Report Analysis: A Case Study of Firefox Research Track Pre-print | ||
14:15 15mTalk | Preserving Privacy in Software Composition Analysis: A Study of Technical Solutions and Enhancements Research Track Huaijin Wang Ohio State University, Zhibo Liu Hong Kong University of Science and Technology, Yanbo Dai The Hong Kong University of Science and Technology (Guangzhou), Shuai Wang Hong Kong University of Science and Technology, Qiyi Tang Tencent Security Keen Lab, Sen Nie Tencent Security Keen Lab, Shi Wu Tencent Security Keen Lab | ||
14:30 15mTalk | UML is Back. Or is it? Investigating the Past, Present, and Future of UML in Open Source Software Research Track Joseph Romeo Software Institute - USI, Lugano, Switzerland, Marco Raglianti Software Institute - USI, Lugano, Csaba Nagy , Michele Lanza Software Institute - USI, Lugano Pre-print | ||
14:45 15mTalk | Understanding the Response to Open-Source Dependency Abandonment in the npm EcosystemAward Winner Research Track Courtney Miller Carnegie Mellon University, Mahmoud Jahanshahi University of Tennessee, Audris Mockus University of Tennessee, Bogdan Vasilescu Raj Reddy Associate Professor of Software and Societal Systems, Carnegie Mellon University, USA, Christian Kästner Carnegie Mellon University | ||
15:00 15mTalk | Understanding Compiler Bugs in Real Development Research Track Hao Zhong Shanghai Jiao Tong University | ||
15:15 15mTalk | Studying Programmers Without Programming: Investigating Expertise Using Resting State fMRI Research Track Zachary Karas Vanderbilt University, Benjamin Gold Vanderbilt University, Violet Zhou University of Michigan, Noah Reardon University of Michigan, Thad Polk University of Michigan, Catie Chang Vanderbilt University, Yu Huang Vanderbilt University |