# Privacy-Aware Cloud Architecture for Collaborative Use of Patients' Health Information
## 3 Proposed Architecture
### System Instantiation
#### 3.3.1 Protocol to Access Information Stored in the Cloud  
The process of accessing [PERSON]'s information comprises the following four stages:  
**Stage 1**: Generating user request The nurse enters [PERSON]'s basic information into the user application and clicks on the **REQUEST** button to generate a user request that is forwarded to the RA. The user request includes information about both [PERSON] and the nurse. Figure 2: [PERSON]’s information stored in the proposed architecture. **Stage 2:** Authentication and Authorization  
When the RA receives the request from the user (nurse), it authenticates the user and forwards the request to the CSR for authorization. For this, the RA takes the following actions:  
1. It searches for [PERSON]'s information using his basic information and finds his system ID. 2. It sends a request for authorization to the CSR. The request includes the following information:  
* Information that is required to identify the nurse (user ID);
* List of users who have permanent consent to access [PERSON]'s information;
* [PERSON]'s mobile number for requesting his consent if required in this particular instance. When the CSR receives the request from the RA, it takes the following actions:  
1. It searches for the nurse's information to identify her access rights to patient information. This happens by searching through the list of users that is stored locally on the CSR. 2. It checks if the nurse is permanently consented to access [PERSON]'s information using the list of users who have permanent consent to access [PERSON]'s information. 3. The CSR finds out that the nurse is allowed access doc-1 and doc-2 (Em_V) of patients' information, but she is not permanently consented to access [PERSON]'s information, therefore, [PERSON]'s consent is required. 4. The SCR sends a request of consent to [PERSON] in the form of a text message. The content of the message includes:  
_Please reply \"Yes\" to temporarily authorize (**nurse name**) at (**organization name**) to access your health information._  
Upon receiving a YES from [PERSON], the nurse becomes temporarily authorized to access [PERSON]'s information. The CSR sends a confirmation of authorization to the RA. The confirmation of authorization includes the information categories that the nurse can access (doc-1 and doc-2), and confirmation of obtaining [PERSON]'s consent to access his information. The nurse is then temporarily added to the list of authorized users (stored on the RA) as a temporarily authorized user. However, any authorization granted by the CSR remains valid for 1 h; after that, it is automatically deleted from the list of authorized users. **Stage 3:** Releasing Information  
Upon receiving confirmation of authorization from the CSR, the RA forwards requests to both the CSP and the SKA to send [PERSON]'s information to the nurse. As illustrated in Figure 3, the request to the CSP includes:  
* [PERSON]'s system ID
* Indexes of doc-1 and doc-2
* The nurse's application address  
While the information included in the request to the SKA includes:  
* [PERSON]'s system ID and  
Figure 3: Requesting information from CSP and SKA. * Trapdoor-1 and trapdoor-2 tags
* The nurse's application address  
As illustrated in Figure 4, when the RA requests are received by the CSP and the SKA, they take the following actions:  
The CSP:  
1. Searches for [PERSON]'s information using [PERSON]'s system ID. 2. Searches for the doc-1 and doc-2 using their indexes. 3. Sends the identified documents (doc-1 and doc-2) to the nurse using her application physical address. The SKA:  
1. Searches for the encrypted trapdoors using [PERSON]'s system ID. 2. Decrypts the trapdoors using [PERSON]'s S\({}_{\text{KR}}\). 3. Sends trapdoors for doc-1 and doc-2 to the nurse application using her physical address. 4. Re-encrypts the trapdoors using the same S\({}_{\text{KR}}\) and drops the S\({}_{\text{KR}}\) (deletes it).