/* * Athena breaker protocol */ // PKI infrastructure const pk: Function; secret sk: Function; inversekeys (pk,sk); // The protocol description protocol abreaker(I,R) { role I { fresh ni: Nonce; send_!1(I,R, {{I,ni}pk(R)}pk(R) ); claim_i1(I,Secret,ni); } role R { var T:Ticket; recv_!1(I,R, {T}pk(R) ); send_!2(R,I, T ); } } // The agents in the system // An untrusted agent, with leaked information