Design and implementation of a secure file storage on cloud using hybrid cryptography PDF
Cloud computing as a concept has grown and has come to stay. It is a concept that can be applied to any business organization that has large chunks of data to store and maintain. These data equally need some form of encryption in order to preserve their integrity and sensitivity.
Hybrid cryptography seeks to do just that. In this study/project, we explored the various methods of data encryption strategies and the cryptosystems that have been developed earlier through this knowledge. We have been able to come up with a secure way of storing files on the cloud systems so as to save resources and also maintain trust in the system.
In order to achieve the earlier points, we have gone through in an indepth manner, the field of cloud computing, the research work made to come up with certain cryptographic algorithms and also merged the various algorithms to form a new and improved hybrid cryptosystem.
BACKGROUND OF THE STUDY
This study derives its inspiration from the ever evolving field of cloud computing and the practice of hybrid cryptography.
Cloud computing is a data storage technique that involves the use of elaborate resources such as data storage and computing power. The cloud refers to various data centers which are available to uses across the internet. The clouds may be limited to single organization also referred to as enterprise clouds or can also be expanded to multiple organizations referred to as public clouds. Cloud hosting of web applications is also a form of cloud computing and that would be implemented in this project.
File storage in a cloud has to be safe and secure which brings us now to hybrid cryptography.
Cryptography generally refers to a method of protecting information through the use of codes so as to guarantee only authorized access to that information. Cryptography employs a group of rule based algorithms to encrypt and decrypt data and information. In cryptography, we want to achieve the following:
To achieve these we use either of the symmetric key algorithms or the asymmetric key algorithm.
Hybrid cryptography is the merger of multiple encryption algorithms so as to benefit from the strengths of each algorithms. It is a secure encryption method as song a s both the public and private keys are fully secure.
STATEMENT OF THE PROBLEM
This study seeks to merge the hybrid cryptography algorithm with files stored on the cloud systems. We want to create a system that would store files in form of text, images, audio and video.
Taking security seriously is the main theme of this project. The files stored would be stored and encrypted to as to preserve the security and then can only be retrieved with the use of the decryption key.
MOTIVATION OF THE STUDY
The study is motivated by the issues of data and information security that plague the use of the internet. This study then presents a simple method to address those issues.
AIMS OF THE STUDY
The aims of this study include:
- Creating a functioning web application capable of storing files and encrypting them in a cloud database.
- Test the web application using a cloud service for its hosting and the data storage.
- Deploy the web application and come up with strategies to improve it.
OBJECTIVES OF THE STUDY
The objectives of the study include:
- Examining previous studies in the field of hybrid cryptography and cloud computing.
- Studying in detail he various encryption techniques.
- Figuring out a system that can effectively store, encrypt and decrypt data using the encryption keys.
OUTLINE OF METHODOLOGY
SCOPE OF THE STUDY
The scope of the study would be contained and limited to relatively smaller file formats like texts, images, some small sized audio and videos. The reason for these limits placed on them is to ensure that the small cloud space budgeted is not exhausted in the course of testing and deployment. Large cloud space for storage also correlates with a large fee for the cloud service.
SIGNIFICANCE OF THE STUDY
This study brings out the academic and theoretical aspect of data encryption and confidentiality into a real life working software. This project would result in the building of a software that can be further used for research purposed for the function of improvement in data security.
OPERATIONAL DEFINITION OF TERMS
- CLOUD: “The cloud” refers to servers that are accessed over the Internet, and the software and databases that run on those servers.
- CRYPTOGRAPHY: Cryptography refers to secure information and communication techniques derived from mathematical concepts and a set of rule-based calculations called algorithms, to transform messages in ways that are hard to decipher.
- ENCRYPTION: Data encryption translates data into another form, or code, so that only people with access to a secret key (formally called a decryption key) or password can read it. Encrypted data is commonly referred to as cipher text, while non encrypted data is called plain text.
- SYMMETRIC ENCRYPTION: Symmetric encryption which is also known as symmetric key cryptography uses one single key to encrypt and decrypt data. You have to share this key with the recipient in order for that recipient to interpret the data.
- ASYMMETRIC ENCRYPTION: Asymmetric encryption uses two distinct, yet related, keys. One key, the Public Key, is used for encryption, and the other, the Private Key, is for decryption. As implied in the name, the Private Key is intended to be private so that only the authenticated recipient can decrypt the message.
- HYBRID ENCRYPTION: Hybrid encryption is a mode of encryption that merges two or more encryption systems. It incorporates a combination of asymmetric and symmetric encryption to benefit from the strengths of each form of encryption. These strengths are respectively defined as speed and security.
- PUBLIC KEY: This is a cryptographic key that can be obtained and used by anyone to encrypt messages intended for a particular recipient, such that the encrypted messages can be deciphered only by using a second key(the private key) that is known only to the recipient
- PRIVATE KEY: A private key, also known as a secret key, is a variable in cryptography that is used with an algorithm to encrypt and decrypt code. Private keys are only shared with the key’s generator, making it highly secure.
ORGANISATION OF THE PROJECT
The project is organized such that; Chapter One gives a brief introduction in form of the Background of the Study of a general overview of the concept of cloud computing and the filed of cryptography and more specifically a hybrid implementation of algorithms. In Chapter Two, we have a broad look at the related implementations of hybrid cryptography systems. Chapter Three examines the System Architecture, the system design and analysis. Chapter Four presents the implementation of the project using necessary programming languages and development models. It also presents the result of testing carried out. Chapter Five rounds off the project work with the summary, conclusions and recommendations for future works.