Cryptosystem

83
Key-Aggregate Cryptosystem For Data Sharing In Cloud Storage A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of Bachelor of Technology in Computer Science & Engineering by Navlok Mishra (20115039) Deepika Uttam (20114063) Satinjal Yadav (20114031) Rupendra Kumar (20114012) to the COMPUTER SCIENCE AND ENGINEERING DEPARTMENT MOTILAL NEHRU NATIONAL INSTITUTE OF TECHNOLOGY ALLAHABAD, U.P.(211004), India May, 2015

description

Aggregate Encryption System

Transcript of Cryptosystem

Key-Aggregate Cryptosystem For Data Sharing InCloud StorageA Thesis Submittedin Partial Fulllment of the Requirementsfor the Degree ofBachelor of TechnologyinComputer Science & EngineeringbyNavlok Mishra (20115039)Deepika Uttam (20114063)Satinjal Yadav (20114031)Rupendra Kumar (20114012)to theCOMPUTER SCIENCE AND ENGINEERING DEPARTMENTMOTILAL NEHRU NATIONAL INSTITUTE OF TECHNOLOGYALLAHABAD, U.P.(211004), IndiaMay, 2015UNDERTAKINGWe declare that the work presented in this thesis titled Key-AggregateCryptosystemFor DataSharingInCloudStorage, submitted to the Computer Science and Engineering Depart-ment, Motilal NehruNational Instituteof Technology, Alla-habad, U.P.(211004), India, for the award of the BachelorofTechnology degree in ComputerScience&Engineering,is my original work. We have not plagiarized or submitted thesame work for the award of any other degree. In case this un-dertaking is found incorrect, We accept that my degree may beunconditionally withdrawn.May, 2015Allahabad( Navlok Mishra (20115039)Deepika Uttam (20114063)Satinjal Yadav (20114031)Rupendra Kumar(20114012))iiCERTIFICATECertiedthat the workcontainedinthe thesis titledKey-Aggregate Cryptosystem For Data Sharing In Cloud Storage ,by Navlok Mishra (20115039), Deepika Uttam(20114063), Sat-injalYadav(20114031), RupendraKumar(20114012), hasbeencarriedoutundermysupervisionandthatthisworkhasnotbeen submitted elsewhere for a degree.May, 2015(Dr. Anoj Kumar)Computer Science and Engineering Dept.M.N.N.I.T,Allahabad,U.P.(211004),IndiaiiiPrefaceThe following project report describes the work done by us in the 8th semester onthe "Key-AggregateCryptosystemForDataSharingInCloudStorage",our nal year project for even semester. We have designed a asymmetric cryptosys-tem which is entirely dierent from traditional asymmetric cryptosystem to providesecurity to Cloud storage. In order to get the benets of Key-Aggregate Cryptosys-tem, users need to register on Key-Aggregate Cryptosystem application. Once usergets registered, he/she gets a Public Key that will be used in future for encryption.We have used NetBeans editor to write code in JAVA. Finally the snapshots, futureaspects and conclusion mark the end of the document.ivAcknowledgementsWe are extremely grateful to Dr. Anoj Kumar for his revered guidance and encour-agement, which led to the completion of this project till now. Without his constantappraisal and eorts, this task would have been merely dream. He was always thereto help us throughout this project. He provided us with all the necessary resourcesand guidance during the project which helped us to complete the project success-fully.Finally, we deem it a great pleasure to thank one and all that helped us directly orindirectly in carrying out this term paper project work. We are also thankful to ourcolleagues and friends for their support.vContentsPreface ivAcknowledgements vWorkload Distribution 1Targets Achieved 11 Introduction 11.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Framework of Key-Aggregate Cryptosystem . . . . . . . . . . . . . . 32 Cryptography and Cryptosystems 52.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Dierent types of cryptosystems. . . . . . . . . . . . . . . . . . . . . 62.2.1 Secret-key cryptosystem . . . . . . . . . . . . . . . . . . . . . 62.2.2 Public-key cryptosystem. . . . . . . . . . . . . . . . . . . . . 62.3 Key-aggregate Cryptosystem . . . . . . . . . . . . . . . . . . . . . . . 73 Cloud Storage 83.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.2 Types of Cloud Storage . . . . . . . . . . . . . . . . . . . . . . . . . . 83.3 Advantages of Cloud Storage Services. . . . . . . . . . . . . . . . . . 93.4 Disadvatanges of Cloud Storage Services . . . . . . . . . . . . . . . . 103.5 Examples of Cloud Storage Services. . . . . . . . . . . . . . . . . . . 10vi4 Proposed Approach 124.1 Existing System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.2 Proposed Approach. . . . . . . . . . . . . . . . . . . . . . . . . . . . 134.3 Disadvantages Of Existing System . . . . . . . . . . . . . . . . . . . . 134.4 Advantages of Proposed System. . . . . . . . . . . . . . . . . . . . . 134.5 Data Flow Diagram of Key-Aggregate Cryptosystem . . . . . . . . . 145 Implementation 155.1 Implementation Environment . . . . . . . . . . . . . . . . . . . . . . 155.2 Code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.2.1 Pseduo Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.2.2 JAVA Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185.3 Snapshots of Key-Aggregate Cryptosystem Application . . . . . . . . 275.3.1 Snapshots of Server Side . . . . . . . . . . . . . . . . . . . . . 275.3.2 Snapshots of Client Side . . . . . . . . . . . . . . . . . . . . . 315.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505.4.1 Result 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515.4.2 Result 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515.4.3 Result 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525.4.4 Result 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525.4.5 Result 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535.4.6 Result 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535.4.7 Result 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545.4.8 Result 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545.4.9 Result 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555.4.10 Result 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556 Software Tools Used 566.1 NetBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566.2 OwnCloud. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566.2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576.2.2 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 606.2.3 Hardware Requiremnts . . . . . . . . . . . . . . . . . . . . . . 60vii6.2.4 Software Requiremnts . . . . . . . . . . . . . . . . . . . . . . 607 Conclusion 617.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617.2 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617.3 Future Aspects of Key-Aggregate Cryptosystem. . . . . . . . . . . . 62References 63References 64viiiList of Figures1 Dierent devices connected to cloud or cloud storage [6] . . . . . . . . 22 Standard Frame Work . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Frame Work For Our Proposed Approach . . . . . . . . . . . . . . . . 44 Level 0 DFD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 Level 1 DFD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 Server is stopped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Server is started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 No user is currently connected to server . . . . . . . . . . . . . . . . . 299 Details of all current users . . . . . . . . . . . . . . . . . . . . . . . . 3010 User tries to register when server is oine . . . . . . . . . . . . . . . 3111 User is successfully registered with Key-Management Server . . . . . 3212 User has already registered with the same email-ID . . . . . . . . . . 3313 User tries to login when server is oine. . . . . . . . . . . . . . . . . 3414 User provides wrong credentials while login to key management server 3515 User login successfully and now can access all features . . . . . . . . . 3616 Prole page of user having the list of all features . . . . . . . . . . . . 3717 When "Emily" click on "Generate Key" button then an input dialogbox is opened to put the name of user whose Public Key is needed.Here "Emily" needs her own Public Key . . . . . . . . . . . . . . . . 3818 Emily Click on "OK" button then public key is recieved . . . . . . . 3919 Emily browse the le RSA.java whose content is showing on right sideand class index will be calculated for the selected le . . . . . . . . . 40ix20 WhenEmilyclickon"Encrypt"button, lewill beencyptedandstored in My Documents directory . . . . . . . . . . . . . . . . . . . . 4121 Emily logins in owncloud server . . . . . . . . . . . . . . . . . . . . . 4222 Emily uploads all encrypted les to owncloud server. . . . . . . . . . 4323 Emily shares all encrypted les with user Brandon . . . . . . . . . . . 4324 All encrypted les are listed in the list under "Aggregate-Key" section 4425 Emilyselects les andclickon"Master Key"buttontogenerateAggregate-key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4526 Brandon downloads all encrypted les from owncloud servers. . . . . 4627 Brandon opens all decrypted les shared by Emily . . . . . . . . . . . 4728 Brandon enters the senders username and aggregate-key given by Emil 4829 Invalid aggregate-key is entered . . . . . . . . . . . . . . . . . . . . . 4930 All les are decrypted succesfully and stored in My Documents directory5031 Click on the Finish setup button [10] . . . . . . . . . . . . . . . . . . 59xList of Tables1 Emily Posas les details . . . . . . . . . . . . . . . . . . . . . . . . . 512 Daniel Vettoris les details . . . . . . . . . . . . . . . . . . . . . . . 513 Navlok Mishras les details . . . . . . . . . . . . . . . . . . . . . . . 524 Satinjal Yadavs les details . . . . . . . . . . . . . . . . . . . . . . . 525 Rupendra Kumars les details . . . . . . . . . . . . . . . . . . . . . 536 Deepikas les details . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 Rutherfords les details . . . . . . . . . . . . . . . . . . . . . . . . . 548 Brandon Taylors les details . . . . . . . . . . . . . . . . . . . . . . . 549 Jamess les details . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5510 Jamess les details . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5511 Hardware Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 6012 Software Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 60xiWorkload DistributionName TasksNavlok Mishra(20115039) Coding (Server+encryption module), Report, InstallationDeepika Uttam(20114063) Coding(Aggregate key Generation module), Report, PPTSatinjal Yadav(20114031) Coding(GUI Design), DocumentationRupendra Kumar(20114012) Coding(Decryption Module), Documentation, Installation1Contents2List of Figures3List of Tables4Targets AchievedTARGET STATUSRequirement analysis and gathering DoneSelection of an asymmetric cryptosystem DoneDesigning of various algorithms based on selected cryptoysystem DoneImplementation of cryptosystem DoneAnalysis of cryptosystems results DoneTesting of cryptosystem on real cloud storage Done1Contents2List of Figures3List of Tables4Chapter 1Introduction1.1 IntroductionCloud storage is gaining popularity since last 5-6 years. Most of the online servicesare based on the cloud storage and anyone can access the online services from any-where and anytime. For example, Google oers an online service known as GoogleDrive, that enables an user to upload and download les from Google Drive at any-time and anywhere . So clearly,all the data of all customers around the world isstored in cloud storage.Nowthequestionarisesaboutthesecurityof dataprivacy. Traditional waytoprovide data security relies on servers which provides dierent restriction to dier-ent customers, which means any unexpected privilege will expose the data [14]. Inashared-tenancy cloud computingenvironment, things become even worse. Datafrom dierent clients can be hosted on separate virtual machines (VMs) but resideon a single physical machine. Data in a target VM could be stolen by instantiatinganother VM coresident with the target one [8].Customersmaynothavestrongbeliefthatcloudserverisdoingwellintermsofcondentiality or may not have trust on security of VM or on the honesty of tech-nical sta. In these situation, customers are motivated to encrypt their les beforeuploading to cloud servers. But the problem with this solution is in data sharing.1Figure 1: Dierent devices connected to cloud or cloud storage [6]1.2 MotivationData sharing is an important functionality in cloud storage. In this paper, we showhow to securely, eciently, and exibly share data with others in cloud storage. Wedescribe new public-key cryptosystems that produce constant-size cipher texts suchthat ecient delegation of decryption rights for any set of ciphertexts is possible.Thenovelty is that one can aggregate any set of secret keys and make them as compact asa single key, but encompassing the power of all the keys being aggregated. In otherwords, thesecretkeyholdercanreleaseaconstant-sizeaggregatekeyforexiblechoices of ciphertext set in cloud storage, but the other encrypted les outside thesetremaincondential. Thiscompactaggregatekeycanbeconvenientlysenttoothers or be stored in a smart card with very limited secure storage. We provideformal securityanalysisofourschemesinthestandardmodel. Wealsodescribeother application of our schemes. In particular, our schemes give the rst public-keypatient-controlled encryption for exible hierarchy, which was yet to be known. [14].21.3 Framework of Key-Aggregate CryptosystemStandard framework of key-aggregate cryptosystem.Figure 2: Standard Frame Work3Framework of our proposed approachFigure 3: Frame Work For Our Proposed Approach4Chapter 2Cryptography and Cryptosystems2.1 IntroductionIn cryptography cryptosystem refers to a suite of cryptographic algorithms needed toimplement a particular security service, most commonly for achieving condentiality(encryption).Typically, a cryptosystem consists of three algorithms: one for key generation, onefor encryption, and one for decryption. The term cipher (sometimes cypher) is oftenusedtorefertoapairof algorithms, oneforencryptionandonefordecryption.Therefore, theterm"cryptosystem"ismostoftenusedwhenthekeygenerationalgorithm is important. For this reason, the term "cryptosystem" is commonly usedtorefertopublickeytechniques; howeverboth"cipher"and"cryptosystem"areused for symmetric key techniques[16].52.2 Dierent types of cryptosystemsThere are two basic types of cryptosystems:2.2.1 Secret-key cryptosystemSecret-keycryptosystemortraditionalcryptographyisalsoreferredassymmetriccryptography. In this the sender and receiver of a message know and use the samesecret key; the sender uses the secret key to encrypt the message, and the receiveruses the same secret key to decrypt the message.Themainchallengeisgettingthesenderandreceivertoagreeonthesecretkeywithoutanyoneelsendingout. Anyonewhooverhearsorinterceptsthekeyintransitcanlaterread, modify, andforgeall messagesencryptedorauthenticatedusing that key. All cryptosystems must deal with key management issues. Becauseall keys in a secret-key cryptosystem must remain secret,secret-key cryptographyoften has diculty providing secure key management. The most popular secret-keycryptosystem in use today is the Data Encryption Standard (DES). Other examplesare IDEA, Blowsh, etc [2] .2.2.2 Public-key cryptosystemPublic-key cryptosystem is also referred as Asymmetric cryptography, in which eachuser has a pair of keys (1)apublickey and (2)aprivatekey. The public keyis made public while the private key remains secret. Encryption is performed withthe public key while decryption is done with the private key.The need for the sender and receiver to share secret information is eliminated;allcommunications involve only public keys, and no private key is ever transmitted orshared.In this system, it is no longer necessary to trust the security of some means ofcommunications. The only requirement is that public keys be associated with theirusersinatrusted(authenticated)manner(forinstance, inatrusteddirectory).Anyone can send a condential message by just using public information, but themessage can only be decrypted with a private key, which is in the sole possession ofthe intended recipient [2].62.3 Key-aggregate CryptosystemIt is a cryptosystem which is dierent from traditional cryptosystems in the sensethat a single constant size decryption key is needed which is sucient to decrypt asubset of les while remaining les undecryptable.Inkey-aggregatecryptosystem(KAC),usersencryptamessagenotonlyunderapublic-key, but also under an identier of ciphertext called class. That means theciphertextsarefurthercategorizedintodierentclasses. Thekeyownerholdsamaster-secret called master-secret key, which can be used to extract secret keys fordierent classes. More importantly, the extracted key have can be an aggregate keywhich is as compact as a secret key for a single class, but aggregates the power ofmany such keys, i.e., the decryption power for any subset of ciphertext classes.The sizes of ciphertext, public-key, master-secret key and aggregate key in our KACschemes are all of constant size. The public system parameter has size linear in thenumber of ciphertext classes, but only a small part of it is needed each time and itcan be fetched on demand from large (but non-condential) cloud storage.7Chapter 3Cloud Storage3.1 IntroductionCloud storage means "the storage of data online in the cloud," wherein a companysdata is stored in and accessible from multiple distributed and connected resourcesthat comprise a cloud.Cloud storage can provide the benets of greater accessibility and reliability; rapiddeployment; strong protection for data backup, archival and disaster recovery pur-poses; and lower overall storage costs as a result of not having to purchase, manageand maintain expensive hardware. However, cloud storage does have the potentialfor security and compliance concerns [3].3.2 Types of Cloud Storage1. PublicCloud: Publiccloudstorageiswheretheenterpriseandstorageserviceproviderareseparateandtherearentanycloudresourcesstoredintheenterprisesdatacenter. Thecloudstorageproviderfullymanagestheenterprises public cloud storage.2. PrivateCloud: A form of cloud storage where the enterprise and cloudstorage provider are integrated in the enterprises data center. In private cloudstorage, the storage provider has infrastructure in the enterprises data center8that is typically managed by the storage provider. Private cloud storage helpsresolve the potential for security and performance concerns while still oeringthe advantages of cloud storage.3. Hybrid Cloud : Hybrid cloud storage is a combination of public and privatecloud storage where some critical data resides in the enterprises private cloudwhile other data is stored and accessible from a public cloud storage provider.[3]3.3 Advantages of Cloud Storage Services1. Accessibility: With the advancement of technology, people now have ac-cess to dierent type of gadgets for work as well as recreational purpose. Withcloudstorageservices, peoplearenolongerrequiredtotogglelesbetweendierent gadgets which can prove to be complex and cumbersome. Files andinformation can be accessed from dierent places provided that, there is inter-net connection.2. Cost: When it comes to backing up data,backup tapes or external harddrives do not come for cheap prices. Apart from that, a lot of time is requiredfor manually completing routine backups. Cloud storage services do not re-quiretraditional backupmethodsandoersplentyof storagespaceatlowcosts.3. Security: Businesses can benet a lot by storing sensitive or condentialinformationoncloudstorageservices. Storinglesordatalocallypresentsbusinesses with more security concerns whereas encrypted data on online stor-age services prevents unauthorized use or access in an easy way.4. Sharing: Sharinganentirefolderorasinglelewithotheruserscanbe easily carried out with few clicks of the mouse which makes it absolutelyconvenient and easy for the users.5. Invisibility: Thefactthatdataoncloudstorageremainsinvisiblefrom9othersforall purposesandintentshelpstokeepvaluablespaceatoceorhome from getting occupied.6. Syncing: Automaticupdateof les across dierent devices is ensuredbysyncing. Asaresultof that, userscanhaveaccesstotheupdatedlesirrespective of the device being used. [7]3.4 Disadvatanges of Cloud Storage Services1. Technical Problems : There is no doubt that cloud storage services allowpeople to access information from any place with an internet connection but,technical problems canoccur at anytime. Chances of technical issues oroutages can never be disregarded when it comes to technology. Even the mosthighly ecient and quality cloud storage service providers run into such risksat dierent times.2. SecurityBreach: Eventhough, itisquitehardtobreakthesecuritymeasuresadoptedbycloudstorageserviceprovidersbut, itisnotimpossi-ble. For instance, a compromise within any of the servers where the personalinformation of millions of users is stored can expose it to the hackers.3. SpeedIssue: Therearetimeswhenusersofcloudstorageservicesfacea dicult time downloading and uploading large documents as they tend totake huge amounts of time. [7]3.5 Examples of Cloud Storage Services1. Dropbox2. Google Drive3. Mega4. Copy105. Microsoft oneDrive6. Tresorit7. Box8. Knowhow Cloud9. Mediare10. Apple icloud11. Mozy12. Spideroak13. Amazon Cloud Drive [4]11Chapter 4Proposed Approach4.1 Existing SystemTraditional way to provide data security relies on servers which provides dierentrestriction to dierent customers, which means any unexpected privilege will exposethedata[14]. Inashared-tenancycloudcomputingenvironment, thingsbecomeeven worse. Data from dierent clients can be hosted on separate virtual machines(VMs) but reside on a single physical machine. Data in a target VM could be stolenby instantiating another VM coresident with the target one [8] .Customersmaynothavestrongbeliefthatcloudserverisdoingwellintermsofcondentiality or may not have trust on security of VM or on the honesty of tech-nical sta. In these situation, customers are motivated to encrypt their les beforeuploading to cloud servers.So to provide the solution for above situations, 2 possiblities are there:-1. A can encrypt all les with an encryption key and send the secret key to B.Theproblem is that B can also decrypt the those les which A would not like toshare with B.2. A can encrypt each le with distinct encryption key and send all secret keysto B.The problem is need of large memory.124.2 Proposed ApproachIn this paper, we study how to make a decryption key more powerful in the sensethat it allows decryption of multiple ciphertexts, without increasing its size. Specif-ically, our problem statement is "To design an ecient public-key encryptionscheme which supports exible delegation in the sense that any subset ofthe ciphertexts (produced by the encryption scheme) is decryptable by aconstant-size decryption key (generated by the owner of the master-secretkey)". We solve this problem by introducing a special type of public-key encryp-tion which we call key-aggregate cryptosystem (KAC) [5]. In KAC, users encrypt amessage not only under a public-key, but also under an identier of ciphertext calledclass. That means the ciphertexts are further categorized into dierent classes. Thekey owner holds a master-secret called master-secret key, which can be used to ex-tractsecretkeysfordierentclasses. Moreimportantly, theextractedkeyhavecan be an aggregate key which is as compact as a secret key for a single class, butaggregates the power of many such keys, i.e., the decryption power for any subsetof ciphertext classes.4.3 Disadvantages Of Existing System1. In case of secret-key cryptosystem, the complexity and cost will be increasedwith the increase of decryption keys to be shared.2. In case of public-key cryptosystem, the encryption key and decryption key aredierent.4.4 Advantages of Proposed System1. Theextractedkeyhavecanbeanaggregatekeywhichisascompactasasecret key for a single class2. The delegation of decryption can be eciently implemented with the aggregatekey.134.5 Data FlowDiagramof Key-Aggregate Cryp-tosystemFigure 4: Level 0 DFDFigure 5: Level 1 DFD14Chapter 5Implementation5.1 Implementation EnvironmentThe proposed "Key-Aggregate Cryptosystem" has been implemented in NetBeans.Swing for GUI, JDBC for Database, Socket Programming for Networking are usedin the project. Following tools are required for proper implementation.1. JDK 40.02. Wamp Server3. Owncloud Server4. LAN or WIFI connection5.2 Code5.2.1 Pseduo CodesIntroductionOuralgorithmsforpublic/secret-keypairgeneration, encryptionanddecryptionare entirely based on RSA key public cryptosystem with some additions. In 1978,RSA [12] [17] developed a public key cryptosystem that is based on the diculty15ofintegerfactoring. TheRSApublickeyencryptionschemeistherstexampleof a provably secure public key encryption scheme against chosen message attacks.RSA involves too many mathematics concepts [15] like factorization,euler totientfunction denoted as phi(n). Assuming that the factoring problem is computationallyintractable and it is hard to nd the prime factors of n = p * q.Algorithm for public/private-key pair1. Randomly and secretly choose 2 large prime numbers, say p and q.2. Compute the value of n as n = p *q.3. Compute the value of Euler totient function for n as phi(n) = (p-1) *(q-1).4. Choose randomly the value of e such that 1