Table of Contents

GCEvaluate

This is a task that evaluates a garbled circuit. The inputs are the garbled circuit and the encodings of the input wires. The output is the public output of the circuit.

Required input objects

2 data objects (garbled circuit, input encodings), circuit from GCGarble task

Required input parameters

group (with GCGarble task)

Required output objects

1 data object (computation output)

Restrictions

Restriction: task must have exactly two input and one output data objects
Error: exactly 2 inputs and 1 output are required

Restriction: “groupId” property must exist under stereotype details object - group must have been selected and saved and “groupId” information must not have been deleted from model’s file
Error: groupId is undefined

Restriction: “inputScript” property must exist under stereotype details object and must not have been deleted from model’s file
Error: inputScript is undefined

Restriction: “garbledCircuit” property must exist under stereotype details object - “garbledCircuit” must have been selected and saved and “garbledCircuit” information must not have been deleted from model’s file
Error: garbledCircuit is undefined

Restriction: “inputEncoding” property must exist under stereotype details object - “inputEncoding” must have been selected and saved and “inputEncoding” information must not have been deleted from model’s file
Error: inputEncoding is undefined

Restriction: input data object fixed (by its id) in “garbledCircuit” property must exist also on model
Error: garbledCircuit object is missing

Restriction: input data object fixed (by its id) in “inputEncoding” property must exist also on model
Error: inputEncoding object is missing

Restriction: garbled circuit and input encoding objects must be different data objects - they must have different ids
Error: garbledCircuit and inputEncoding must be different objects

Group specific restrictions

Restriction: there must be exactly one GCEvaluate and one GCGarble task in a stereotype group
Error: element with GCGarble stereotype is missing from the group

Restriction: both stereotype group tasks must have the same garbled circuit data object - garbled circuit data object must be with the same name for both tasks
Error: garbledCircuit objects must be same for both group members

Restriction: input data object fixed (by its id) in “garbledCircuit” property must be an output element of a GCGarble task from the same stereotype group
Error: garbledCircuit object must originate from the element with GCEvaluate stereotype of this group

Restriction: both group tasks from the same stereotype group must be on different lanes
Error: both group tasks must be on separate lane

Restriction: GCGarble task from the stereotype group must be in incoming path, but not in outgoing path of GCEvaluate task from the same stereotype group
Error: element with GCGarble stereotype in this group must be before element with GCEvaluate stereotype