Interactive protocols

A two-party protocol consists of:

  • a randomized algorithm generating public parameters,
  • two stateful interactive algorithms (the parties).

Each party has private inputs and private random coins . The parties exchange messages in sequence according to the protocol specification until both halt.

When is trivial (no public parameters are needed), we write and omit it.

Execution

The joint execution of with input against with input is written

where is the output of . When we wish to make randomness explicit, we write .

View

The view of party in an execution captures everything observed:

where is the ordered sequence of messages received. The view determines ‘s behavior completely: given , one can recompute all messages sent and its final output.

Transcript

The transcript of an execution is the ordered sequence of all messages exchanged by both parties. The views and together determine the transcript (and vice versa, up to each party’s private randomness and inputs).

Adversary models

Security of a protocol is analyzed under one of two standard adversary models:

  • Semi-honest (honest-but-curious): the adversary follows the protocol specification exactly but tries to learn additional information from its view alone.
  • Malicious: the adversary may deviate from the protocol arbitrarily, sending any messages it chooses.

Note: A protocol secure against malicious parties implies security against semi-honest parties.