Patent attributes
A method for enabling a client in a user device to securely evaluate a linear branching program. The program may include decision nodes and end-labels. A decision node is associated with a comparison computation for comparing a first value with a second value and a decision rule that links the outcome of the comparison computation to a further decision node or end-label. The method includes transforming the comparison computation into encrypted evaluation sequences on the basis of an additive homomorphic cryptosystem. An evaluation sequence of a decision node includes a sequence of numbers in which the outcome of a comparison computation at a node is embedded; and, evaluating evaluation sequences, evaluating including detecting presence of a predetermine value in an evaluation sequence of a node and determining an evaluation sequence of a further node or an end-label on the basis of the detection of the predetermined value.