Research Article

Improving an Anonymous and Provably Secure Authentication Protocol for a Mobile User

Algorithm 4

Role specification for session, goal, and environment.
role session (Ui, AS: agent,
SKuas: symmetric_key,
H, F: function)
def=
local H1, H2, R1, R2: channel (dy)
composition
user (Ui, AS, SKuas, H, F, H1, R1)
∧ applicationserver (Ui, AS, SKuas, H, F, H2, R2)
end role
role environment() def=
const ui, as: agent,
skuas: symmetric_key,
h, f: function,
cidi, yi, zi, t1, ys, zs, t3: text,
as_ui_y2,
sc1, sc2, sc3, sc4: protocol_id
intruder_knowledge = ui, as, h, f, cidi, yi, zi, t1, ys, zs, t3
composition
session(ui, as, skuas, h, f)
∧ session(i, as, skuas, h, f)
∧ session(ui, i, skuas, h, f)
end role
goal
secrecy_of sc1, sc2, sc3, sc4
authentication_on as_ui_y2
end goal
environment()