| Listing 2. CAS+ definition for data retrieval process (with consent). |
| protocol data_retrieval_consent; |
| identifiers |
| VO, B, A : user; |
| Data : number; |
| Ks : symmetric_key; |
| Kp : public_key; |
| messages |
| 1. B -> VO : {Ks}Kp |
| 2. B -> VO : {Data}Ks |
| 3. VO-> A : Data |
| knowledge |
| B : Data,Kp,Ks; |
| session_instances |
| [VO:vo,B:b,A:a,Data:d,Ks:ks,Kp:kp]; |
| intruder_knowledge |
| vo,b,kp; |
| goals |
| secrecy_of Data |