Our GSFS book published by LAMBERT Academic Publishing.
By boosting the processors speed via increasing the number of cores, we need operating systems that use all cores to carry processes in parallel. The presence of GPUs with a lot of cores enables OS to send massive computations of processes to them and therefore, to increase the performance of OS. On the other hand, for many years, users turned to the security of their information and because of the vast amount of computation required in cryptography, we can use GPUs.
In this thesis, we design and implement a secure file system that uses GPUs, GPGPII based Secure File System (GSFS) provides integrity and confidentiality of data. This file system enables information sharing for users by making inodes accessible for different users and also enabling users to expand/shrink the access level in each point of tree structure of inodes.
GSFS uses Crust key revocation method for effective user revocation and Cryptographic Links of Cryptree to decrease the usage of time-consuming public key cryptography algorithm. It uses Galois Counter Mode(GCM) to provide integrity and confidentiality services for regular secure inodes.
GSFS uses root user public key to make file system integrated and employs users public key for confidentiality. In this way it differentiates confidentiality and integrity.
GSFS is implemented as a Linux kernel module and in the current version it uses one OpenCL user level program to encrypt/decrypt data in parallel with CPU and GPU. We map kernel memory pages on this process virtual memory and after the completion of the work we use the results in kernel.
Our examinations show that GSFS provides these properties with no fewer rates in comparison with ext3 for insecure inodes but GSFS rate is less than eCryptfs rate because of its security algorithms. Using GPU in our OpenCL program doubles the rate of GSFS in comparison to CPU. Using one independent process for our parallel cryptographic computations decreases our performance because of the cost of context switch; therefore, we need to use OpenCL in kernel mode in future versions to improve the performance of GSFS.