Migrating Patient Health Record (PHR) to the cloud plays an essential role in the healthcare field. The patient has become able to maintain, access and share his health record among different specialists anywhere and anytime. However, he still suffers from security issues related to storing PHR in the cloud. Giving security to an immense volume of patient's confidential data with high proficiency is necessary. PHR needs to be anonymized or encrypted before being moved to the cloud due to the sensitivity of these medical data. This paper introduces an encryption based framework for storing and maintaining unstructured PHRs by patients and retrieving them by the authorized users. The contents of the PHR are encrypted with two different techniques. The encrypted files are partitioned into a random number of files. These files are of variable number and variable size. After that, the files are stored in a secured cloud storage. When a user requests to access a PHR from the cloud, the proposed framework first controls access of this user before merging the partitioned files. The decryption of these files is performed on the client side not on the cloud using the secret key, which is owned by authorized user only. Finally, extensive analytical and experimental results are presented. It shows the security, scalability, and efficiency of the proposed framework. |