We present an efficient protocol for privacy-preserving evaluation of diagnostic programs, represented as binary decision trees or branching programs. The protocol applies a branching diagnostic program with classification labels in the leaves to the user’s attribute vector. The user learns only the label assigned by the program to his vector; the diagnostic program itself remains secret. The program’s owner does not learn anything. Our construction is significantly more efficient than those obtained by direct application of generic secure multi-party computation techniques. We use our protocol to implement a privacy-preserving version of the Clarify system for software fault diagnosis, and demonstrate that its performance is acceptable for many practical scenarios. Categories and Subject Descriptors E.3 [Data]: Data Encryption; I.2.1 [Artificial Intelligence]: Applications and Expert Systems General Terms Algorithms, Security, Performance Keywords Privacy, Data Mining, Diagn...
Justin Brickell, Donald E. Porter, Vitaly Shmatiko