const pk: Function; secret sk: Function; inversekeys (pk,sk); protocol r5bound(I,R) { role R { var k1: Nonce; var ni: Nonce; fresh k2: Nonce; recv_!1 (I,R, ni ); send_!2 (R,I, { ni }sk(R) ); recv_!3 (I,R, {{{ {k1}pk(R) }sk(I)}sk(I)}sk(I) ); send_!4 (R,I, {k2}k1 ); claim_6 (R, Secret, k2); } }