From b416908edeee2712311496e1db7e86906dbc50d8 Mon Sep 17 00:00:00 2001 From: mwh1g17 <mwh1g17@soton.ac.uk> Date: Thu, 7 May 2020 12:51:49 +0100 Subject: [PATCH] Upload New File --- Scyther Files/MutualAuthentication.spdl | 56 +++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Scyther Files/MutualAuthentication.spdl diff --git a/Scyther Files/MutualAuthentication.spdl b/Scyther Files/MutualAuthentication.spdl new file mode 100644 index 0000000..4906eec --- /dev/null +++ b/Scyther Files/MutualAuthentication.spdl @@ -0,0 +1,56 @@ + +hashfunction hashed; +hashfunction sharedkey; +usertype Message; +usertype SessionKey; + +protocol MutualAuthentication(Monitor,CloudServer) +{ + role Monitor + + { + + fresh MonitorValue : Nonce; + var CloudServerValue : Nonce; + + fresh MonitorInformation : Message; + var CloudServerInformation: Message; + fresh sharedkey: SessionKey; + + + send_1(Monitor,CloudServer,{Monitor,MonitorValue}pk(CloudServer)); + recv_2(CloudServer,Monitor, {CloudServerValue,hashed(MonitorValue),CloudServer}pk(Monitor)); + send_3(Monitor,CloudServer,{CloudServerValue, MonitorInformation} sharedkey ); + recv_4(CloudServer,Monitor,{MonitorValue,CloudServerInformation} sharedkey); + + claim_Monitor1(Monitor,Niagree); + claim_Monitor2(Monitor,Nisynch); + claim_Monitor3(Monitor, Secret, CloudServerInformation); + claim_Monitor4(Monitor,Alive); + + + } + + role CloudServer + + { + + var MonitorValue: Nonce; + fresh CloudServerValue: Nonce; + + fresh CloudServerInformation: Message; + var MonitorInformation: Message; + var sharedkey: SessionKey; + + recv_1(Monitor,CloudServer,{Monitor,MonitorValue}pk(CloudServer)); + send_2(CloudServer,Monitor, {CloudServerValue,hashed(MonitorValue),CloudServer}pk(Monitor)); + recv_3(Monitor,CloudServer, {CloudServerValue, MonitorInformation} sharedkey ); + send_4(CloudServer,Monitor,{MonitorValue,CloudServerInformation} sharedkey); + + claim_CloudServer1(CloudServer,Niagree); + claim_CloudServer2(CloudServer,Nisynch); + claim_CloudServer3(CloudServer, Secret, MonitorInformation); + claim_CloudServer4(CloudServer,Alive); + + } +} -- GitLab