Privacy-Preserving Script Sharing in GUI-based Programming-by-Demonstration Systems
This addresses privacy concerns that hinder script sharing in end-user development systems, particularly for GUI-based programming-by-demonstration, but is incremental as it builds on prior work to improve personal information handling.
The paper tackles the problem of accidentally embedding personal information in GUI-based programming-by-demonstration scripts when sharing them, by developing an approach that identifies and obfuscates such information based on uniqueness in GUI context, which accurately identifies personal information across apps and makes users comfortable sharing scripts.
An important concern in end user development (EUD) is accidentally embedding personal information in program artifacts when sharing them. This issue is particularly important in GUI-based programming-by-demonstration (PBD) systems due to the lack of direct developer control of script contents. Prior studies reported that these privacy concerns were the main barrier to script sharing in EUD. We present a new approach that can identify and obfuscate the potential personal information in GUI-based PBD scripts based on the uniqueness of information entries with respect to the corresponding app GUI context. Compared with the prior approaches, ours supports broader types of personal information beyond explicitly pre-specified ones, requires minimal user effort, addresses the threat of re-identification attacks, and can work with third-party apps from any task domain. Our approach also recovers obfuscated fields locally on the script consumer's side to preserve the shared scripts' transparency, readability, robustness, and generalizability. Our evaluation shows that our approach (1) accurately identifies the potential personal information in scripts across different apps in diverse task domains; (2) allows end-user developers to feel comfortable sharing their own scripts; and (3) enables script consumers to understand the operation of shared scripts despite the obfuscated fields.