SlideShare uma empresa Scribd logo
1 de 44
Netaji Institute of Engineering & Technology
Dept of Computer Science and Engineering
A Project on
A Secure Erasure Code-based Cloud Storage
System with Secure Data Forwarding
By Under The Guidance of
SRIHARI KADALI Mr.P.Darshan (H.O.D & professor)
Content
Abstract
Existing System
Demerits
Proposed System
Architecture
Merits
Functional Requirements
Non Functional Requirements
System Design
Screen Shots
References
Abstract
The main technical contribution is that the proxy re-encryption
scheme supports encoding operations over encrypted messages as well
as forwarding operations over encoded and encrypted messages. Our
method fully integrates encrypting, encoding, and forwarding.
Implementing threshold proxy re-encryption and decentralized erasure
code.
Distributed storage System used for distribution purpose, and it
depends on the secure storage system.
Storage server and key server are used.
Parameters are more flexible adjustment between servers(storage and
key).
Existing System
General encryption schemes protect data confidentiality, but also limit
the functionality of the storage system because a few operations are
supported over encrypted data. Storing data in a third party’s cloud
system causes serious concern on data confidentiality.
General encryption scheme for storing data.
DES algorithm is used for key generation.
For the storage data ,user has to manage his keys .
Single storage server for whole file.
Existing System
Disadvantages Of Existing System
There are three problems in the above straightforward integration of
encryption and encoding. First, the user has to do most computation
and the communication traffic between the user and storage servers
is high. Second, the user has to manage his cryptographic keys.
Communication traffic between the user and storage servers.
User’s device of storing the keys is lost.
Storing and retrieving, it is hard for storage servers .
Only one time encryption using general encryption schemes.
Proposed System
The method of threshold proxy re-encryption.
Decentralized erasure code method can be used for distributed
storage system.
Distributed storage system depends on the secure cloud
storage.
Storage server and key server those two systems used for
storage system.
Encryption using Blowfish algorithm.
Architecture
Advantages Of Proposed System
By using the threshold proxy re-encryption scheme, we present a
secure cloud storage system that provides secure data storage and
secure data forwarding functionality in a decentralized structure
Data is more confidential.
Highly protected by an security mechanism of the Server
Easy distribution and data forwarding.
Less Time consuming.
Functional Requirement
Encryption
Re-encryption
Storage
Decryption
Non Functional Requirement
Privacy
Reliability
Scalability
Performance
Security
System Design
Workflow Diagram
A workflow diagram visually represents the movement and transfer
of resources, documents, data and tasks through the entire work process for
a given product or service.
Use case Diagram
Use case diagrams are used to describe a set of actions use cases that
some system or systems subject should or can perform in collaboration
with one or more external users of the system actors.
Sequence Diagram
A sequence diagram is a kind of interaction diagram that shows how
processes operate with one another and in what order.
Workflow Diagram
Use Case Diagram
Sequence Diagram
Login Register Home File select
jButtonActionPerformed
Register to
cloud
jButtonActionPerformed
Select file for encryption
Encryption
jButtonActionPerformed
jButtonActionPerformed
jButtonActionPerformed
Continue…
Re-encryptionSplitting
Select No. of tokens
jButtonActionPerformed
Upload file
jButtonActionPerformed
Select VM1 and VM2
Retrieve
jButtonActionPerformed
Receiving from
VM1 and VM2
Decryption
jButtonActionPerformed
Modules
Process Encryption
Threshold-Proxy Function
Secure Cloud Storage
Data Forwarding
Data Retrieval
Login and Registration
Encryption Process
// Creation of Secret key
byte key[] = "HUFEdcba".getBytes();
String k = key.toString();
SecretKeySpec secretKey = new SecretKeySpec(key, "Blowfish");
// Creation of Cipher objects
Cipher encrypt = Cipher.getInstance("Blowfish");
encrypt.init(Cipher.ENCRYPT_MODE, secretKey);
// Open the Plaintext file
cis = new CipherInputStream(fis, encrypt);
// Write to the Encrypted file
byte[] b = new byte[1024];
int i = cis.read(b);
while (i != -1) {
fos.write(b, 0, i);
i = cis.read(b); }
fos.flush();
fos.close();
cis.close();
fis.close();
String fenc = " File Encrypted ";
JOptionPane.showMessageDialog(null, fenc);
count++;
Coding
Splitting Process
Threshold Proxy Re-encryption Scheme
// Creation of Secret key
byte key[] = "abcdEFUH".getBytes();
SecretKeySpec secretKey = new
SecretKeySpec(key,"Blowfish");
// Creation of Cipher objects
Cipher encrypt = Cipher.getInstance("Blowfish");
encrypt.init(Cipher.ENCRYPT_MODE,
secretKey);
Selecting Servers For Files
Secure Cloud Storage
Server Side File Receiving
int bytesRead;
int current = 0;
ServerSocket serverSocket = null;
serverSocket = new ServerSocket(7777);
while(true) {
Socket clientSocket = null;
clientSocket = serverSocket.accept();
InputStream in = clientSocket.getInputStream();
OutputStream output = new
FileOutputStream("C:/"+filename+".zip");
byte[] buffer = new byte[1024];
while ((bytesRead = in.read(buffer)) != -1) {
output.write(buffer, 0, bytesRead);
}
Coding
try
{
Socket sock1 = new Socket("192.168.0.154", 7777);
// sendfile
File myFile = zipFile1;
System.out.println(zipFile1);
byte[] mybytearray = new byte[(int) myFile.length()];
FileInputStream fis = new FileInputStream(myFile);
BufferedInputStream bis = new BufferedInputStream(fis);
bis.read(mybytearray, 0, mybytearray.length);
OutputStream os = sock1.getOutputStream();
os.write(mybytearray, 0, mybytearray.length);
os.flush();
sock1.close();
String sen="Files are forwarded to cloud Storage server 1 !!!";
JOptionPane.showMessageDialog(null,sen);
jTextArea1.append("Sending File:"+z1);
jTextArea1.append("Files are forwarded to cloud Storage server 1 !!!");
}
catch(Exception e)
{
System.out.println("Exception : "+e);
}
Coding
File Retrieval Process
try
{
int bytesRead;
int current = 0;
ServerSocket serverSocket1 = new
ServerSocket(4000);
while(true) {
Socket clientSocket = serverSocket1.accept();
InputStream in = clientSocket.getInputStream();
String op="D:/secure/server1/server1.zip";
OutputStream output = new
FileOutputStream(op);
//jTextArea1.append("Received File Location from
Server1:"+output);
byte[] buffer = new byte[1024];
while ((bytesRead = in.read(buffer)) != -1) {
output.write(buffer, 0, bytesRead);
}
in.close();
output.close();
String ip2="192.168.1.2";
jTextArea1.append(" Server1 IP Address:"+ip2);
jTextArea1.append("Received File Location from
Server 2:"+op);
String fr=" File can be Received from Server1.";
JOptionPane.showConfirmDialog(null,fr);
serverSocket1.close();
}
Client Sending Filename
Cipher
Cipher Cipher
try
{
Socket sock = new Socket("192.168.1.2",4000); //client IP address
jTextArea1.append("n Client IP :"+sock);
// sendfile
String fn= "D:"+reqfile1+".zip";
File myFile = new File(fn);
jTextArea1.append("n File location :"+myFile);
byte[] mybytearray = new byte[(int) myFile.length()];
jTextArea1.append("n File Length :"+mybytearray);
FileInputStream fis = new FileInputStream(myFile);
BufferedInputStream bis = new BufferedInputStream(fis);
bis.read(mybytearray, 0, mybytearray.length);
OutputStream os = sock.getOutputStream();
os.write(mybytearray, 0, mybytearray.length);
os.flush();
String sen="Files are forwarded to Client !!!";
JOptionPane.showMessageDialog(null,sen);
os.close();
sock.close();
}
Coding
Cipher
Server Sending Files to Client
try
{ Socket sock = new Socket("192.168.1.2",4000); //client IP
address
jTextArea1.append("n Client IP :"+sock);
// sendfile
String fn= "D:"+reqfile1+".zip";
File myFile = new File(fn);
jTextArea1.append("n File location :"+myFile);
byte[] mybytearray = new byte[(int) myFile.length()];
jTextArea1.append("n File Length :"+mybytearray);
FileInputStream fis = new FileInputStream(myFile);
BufferedInputStream bis = new BufferedInputStream(fis);
bis.read(mybytearray, 0, mybytearray.length);
OutputStream os = sock.getOutputStream();
os.write(mybytearray, 0, mybytearray.length);
os.flush();
String sen="Files are forwarded to Client !!!";
JOptionPane.showMessageDialog(null,sen);
os.close();
sock.close();
}
catch(Exception e)
{
System.out.println("Exception : "+e);
Coding
try {
String sourcefile = "D:/secure/server1/server1.zip";
File sf=new File(sourcefile);
if (!sourcefile.endsWith(".zip")) {
System.out.println("Invalid file name!");
System.exit(0);
} else if (!new File(sourcefile).exists()) {
System.out.println("File not exist!");
System.exit(0);
}
ZipInputStream in =new ZipInputStream(new
FileInputStream(sourcefile));
ZipFile zf = new ZipFile(sourcefile);
int a = 0;
for (Enumeration em = zf.entries(); em.hasMoreElements();) {
String targetfile = em.nextElement().toString();
ZipEntry ze = in.getNextEntry();
out = new FileOutputStream("D:/secure/EXTRACT/" + targetfile);
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
} a = a + 1;
}
if (a > 0) {
JOptionPane.showMessageDialog(null, "Files are unzipped, click
NEXT");
jTextArea1.append("nServer1 Files can be Extractedn");
jTextArea1.append("ZipFile Name:"+sf.getName()+"n");
jTextArea1.append("ZipFile size :"+sf.length()+"n");
String fol="D:/secure/EXTRACT";
File folder=new File(fol);
jTextArea1.append("n Files in the Path:n"+folder.getAbsolutePath());
}
out.close();
in.close();
try { String p=a;
String s11="plaintxt"+l;
String s12="des"+l;
String key1 ="AbCd124"+l;
l++;
File kkk=new File(p);
BufferedReader br=new BufferedReader(new FileReader(kkk));
jTextArea1.append("nnGiven File Name is:"+kkk.getName()+"
System.out.println("Given File Name is:"+kkk.getName()+"n");
jTextArea1.append("Given File size is:"+kkk.length()+"n");
System.out.println("Given File size is:"+kkk.length()+"n");
File dec= new File("D:/secure/firstDEcryption/"+s11+".txt");
FileInputStream fis = new FileInputStream(p);
FileOutputStream fos = new FileOutputStream(dec);
CipherOutputStream cos = null;
jTextArea1.append("Decrypted File Name is:"+dec.getName()+"n");
System.out.println("Decrypted File Name is:"+dec.getName()+"n");
jTextArea1.append("Decrypted File Path is:"+dec.getAbsolutePath()+"
jTextArea1.append("Key To Decrypt the cipher Text:"+key1);
System.out.println("Decrypted File Path is:"+dec.getAbsolutePath()+"n"
// Creation of Secret key
byte key[] = "abcdEFUH".getBytes();
SecretKeySpec secretKey = new SecretKeySpec(key,”Blowfish");
// Creation of plain objects
Cipher decrypt = Cipher.getInstance("DES");
decrypt.init(Cipher.DECRYPT_MODE, secretKey);
// Open the ciphert file
CipherInputStream cis=new CipherInputStream(fis, decrypt);
// Write to the decrypted file
byte[] b = new byte[1024];
int i = cis.read(b);
while (i != -1) {
fos.write(b, 0, i);
i = cis.read(b);
}
fos.flush();
fos.close();
cos.close();
fis.close();
}
try{
int j;
/** Takes all files in a specified directory and merge
them together...*/
File firstDEcryption = new
File("D:/secure/firstDEcryption/");
listOfFiles = firstDEcryption.listFiles();
for( j=0; j<listOfFiles.length; j++){
String lines;
String srcFile = listOfFiles[j].getPath();
outFile = "D:/secure/merging.txt";
of=new File(outFile);
BufferedReader inFile=new BufferedReader(new
FileReader(new File(srcFile)));
BufferedWriter outPut=new BufferedWriter(new
FileWriter(outFile, true));
String fil=listOfFiles.toString();
jTextArea1.append("Files to be Merged:"+fil);
jTextArea1.append("Merged File Path:"+outFile);
while((lines=inFile.readLine()) != null) {
outPut.write(lines);
outPut.newLine();
}
String fenc=" Files can be Merged ";
JOptionPane.showMessageDialog(null, fenc);
outPut.flush();
outPut.close();
inFile.close();
} }
Re-Decryption Process
Integrated a newly proposed threshold proxy re-encryption
scheme and erasure codes over exponents.
The threshold proxy Re-encryption scheme supports
encoding, forwarding, and partial decryption operations in a
distributed way.
By using the threshold proxy re-encryption scheme, we
present a secure cloud storage system that provides secure
data storage and secure data forwarding functionality in a
decentralized structure.
key servers act as access nodes for providing a front-end layer
such as a traditional file system interface.
Conclusion
References
IEEE 2012 paper on Distributed and Parallel systems, “A secure
Erasure code based Cloud storage System with Secure Data
forwarding”.
Swings (second Edition) By Matthew robinson and Pavel
vorobiev.
www.youtube.com
Fast Software Encryption, Cambridge Security Workshop
Proceedings (December 1993), Springer-Verlag, 1994, pp. 191-
204. IEEE Paper.
Secureerasurecodebasedcloudstoragesystemwithsecuredataforwarding
Secureerasurecodebasedcloudstoragesystemwithsecuredataforwarding

Mais conteúdo relacionado

Mais procurados

A Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized DeduplicationA Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized Deduplication
1crore projects
 
Decentralized access control with anonymous authentication of data stored in ...
Decentralized access control with anonymous authentication of data stored in ...Decentralized access control with anonymous authentication of data stored in ...
Decentralized access control with anonymous authentication of data stored in ...
Vasanth Mca
 
BSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopBSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming Workshop
Ajay Choudhary
 

Mais procurados (16)

A hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplicationA hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplication
 
A Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized DeduplicationA Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized Deduplication
 
A hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplicationA hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplication
 
Decentralized access control with anonymous authentication of data stored in ...
Decentralized access control with anonymous authentication of data stored in ...Decentralized access control with anonymous authentication of data stored in ...
Decentralized access control with anonymous authentication of data stored in ...
 
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
 
IEEE paper 2014 abstract
IEEE paper 2014 abstractIEEE paper 2014 abstract
IEEE paper 2014 abstract
 
BSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopBSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming Workshop
 
Secure distributed deduplication systems with improved reliability
Secure distributed deduplication systems with improved reliabilitySecure distributed deduplication systems with improved reliability
Secure distributed deduplication systems with improved reliability
 
SECRY - Secure file storage on cloud using hybrid cryptography
SECRY - Secure file storage on cloud using hybrid cryptographySECRY - Secure file storage on cloud using hybrid cryptography
SECRY - Secure file storage on cloud using hybrid cryptography
 
Dear Hacker: Infrastructure Security Reality Check
Dear Hacker: Infrastructure Security Reality CheckDear Hacker: Infrastructure Security Reality Check
Dear Hacker: Infrastructure Security Reality Check
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
Windows Server2008 Overview
Windows Server2008 OverviewWindows Server2008 Overview
Windows Server2008 Overview
 
Key aggregate searchable encryption (kase) for group data sharing via cloud s...
Key aggregate searchable encryption (kase) for group data sharing via cloud s...Key aggregate searchable encryption (kase) for group data sharing via cloud s...
Key aggregate searchable encryption (kase) for group data sharing via cloud s...
 
Blockchain Based Decentralized Cloud System
Blockchain Based Decentralized Cloud SystemBlockchain Based Decentralized Cloud System
Blockchain Based Decentralized Cloud System
 
Secure distributed deduplication systems with improved reliability 2
Secure distributed deduplication systems with improved reliability 2Secure distributed deduplication systems with improved reliability 2
Secure distributed deduplication systems with improved reliability 2
 
Adventures in Underland: Is encryption solid as a rock or a handful of dust?
Adventures in Underland: Is encryption solid as a rock or a handful of dust?Adventures in Underland: Is encryption solid as a rock or a handful of dust?
Adventures in Underland: Is encryption solid as a rock or a handful of dust?
 

Destaque (8)

Secure erasure code based cloud storage system with secure data forwarding
Secure erasure code based cloud storage system with secure data forwardingSecure erasure code based cloud storage system with secure data forwarding
Secure erasure code based cloud storage system with secure data forwarding
 
Secure erasure code based distributed storage system with secure data forwarding
Secure erasure code based distributed storage system with secure data forwardingSecure erasure code based distributed storage system with secure data forwarding
Secure erasure code based distributed storage system with secure data forwarding
 
Cloud Encryption
Cloud EncryptionCloud Encryption
Cloud Encryption
 
Final review presentation
Final review presentationFinal review presentation
Final review presentation
 
cloud computing preservity
cloud computing preservitycloud computing preservity
cloud computing preservity
 
Cloud Security - Security Aspects of Cloud Computing
Cloud Security - Security Aspects of Cloud ComputingCloud Security - Security Aspects of Cloud Computing
Cloud Security - Security Aspects of Cloud Computing
 
Cloud security and security architecture
Cloud security and security architectureCloud security and security architecture
Cloud security and security architecture
 
Data security in cloud computing
Data security in cloud computingData security in cloud computing
Data security in cloud computing
 

Semelhante a Secureerasurecodebasedcloudstoragesystemwithsecuredataforwarding

The Time-Consuming Task Of Preparing A Data Set For...
The Time-Consuming Task Of Preparing A Data Set For...The Time-Consuming Task Of Preparing A Data Set For...
The Time-Consuming Task Of Preparing A Data Set For...
Kimberly Thomas
 
Psdot 12 a secure erasure code-based cloud storage
Psdot 12 a secure erasure code-based cloud storagePsdot 12 a secure erasure code-based cloud storage
Psdot 12 a secure erasure code-based cloud storage
ZTech Proje
 
Wireless Network Security Architecture with Blowfish Encryption Model
Wireless Network Security Architecture with Blowfish Encryption ModelWireless Network Security Architecture with Blowfish Encryption Model
Wireless Network Security Architecture with Blowfish Encryption Model
IOSR Journals
 
Java Symmetric
Java SymmetricJava Symmetric
Java Symmetric
phanleson
 

Semelhante a Secureerasurecodebasedcloudstoragesystemwithsecuredataforwarding (20)

IJSRED-V2I2P10
IJSRED-V2I2P10IJSRED-V2I2P10
IJSRED-V2I2P10
 
The Time-Consuming Task Of Preparing A Data Set For...
The Time-Consuming Task Of Preparing A Data Set For...The Time-Consuming Task Of Preparing A Data Set For...
The Time-Consuming Task Of Preparing A Data Set For...
 
IRJET-Block-Level Message Encryption for Secure Large File to Avoid De-Duplic...
IRJET-Block-Level Message Encryption for Secure Large File to Avoid De-Duplic...IRJET-Block-Level Message Encryption for Secure Large File to Avoid De-Duplic...
IRJET-Block-Level Message Encryption for Secure Large File to Avoid De-Duplic...
 
IRJET- A Survey on File Storage and Retrieval using Blockchain Technology
IRJET- A Survey on File Storage and Retrieval using Blockchain TechnologyIRJET- A Survey on File Storage and Retrieval using Blockchain Technology
IRJET- A Survey on File Storage and Retrieval using Blockchain Technology
 
A Survey Paper On Data Confidentiatity And Security in Cloud Computing Using ...
A Survey Paper On Data Confidentiatity And Security in Cloud Computing Using ...A Survey Paper On Data Confidentiatity And Security in Cloud Computing Using ...
A Survey Paper On Data Confidentiatity And Security in Cloud Computing Using ...
 
Security via Java
Security via JavaSecurity via Java
Security via Java
 
Psdot 12 a secure erasure code-based cloud storage
Psdot 12 a secure erasure code-based cloud storagePsdot 12 a secure erasure code-based cloud storage
Psdot 12 a secure erasure code-based cloud storage
 
Access control in decentralized online social networks applying a policy hidi...
Access control in decentralized online social networks applying a policy hidi...Access control in decentralized online social networks applying a policy hidi...
Access control in decentralized online social networks applying a policy hidi...
 
Access control in decentralized online social networks applying a policy hidi...
Access control in decentralized online social networks applying a policy hidi...Access control in decentralized online social networks applying a policy hidi...
Access control in decentralized online social networks applying a policy hidi...
 
IRJET - Multi Authority based Integrity Auditing and Proof of Storage wit...
IRJET -  	  Multi Authority based Integrity Auditing and Proof of Storage wit...IRJET -  	  Multi Authority based Integrity Auditing and Proof of Storage wit...
IRJET - Multi Authority based Integrity Auditing and Proof of Storage wit...
 
Wireless Network Security Architecture with Blowfish Encryption Model
Wireless Network Security Architecture with Blowfish Encryption ModelWireless Network Security Architecture with Blowfish Encryption Model
Wireless Network Security Architecture with Blowfish Encryption Model
 
A hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplicationA hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplication
 
12
1212
12
 
12
1212
12
 
Hybrid Cryptography security in public cloud using TwoFish and ECC algorithm
Hybrid Cryptography security in public cloud using TwoFish and ECC algorithmHybrid Cryptography security in public cloud using TwoFish and ECC algorithm
Hybrid Cryptography security in public cloud using TwoFish and ECC algorithm
 
NetExplorer security leaflet
NetExplorer security leafletNetExplorer security leaflet
NetExplorer security leaflet
 
Java Symmetric
Java SymmetricJava Symmetric
Java Symmetric
 
Websecurity
Websecurity Websecurity
Websecurity
 
Linux for Cybersecurity CYB110 - Unit 7.ppsx
Linux for Cybersecurity CYB110 - Unit 7.ppsxLinux for Cybersecurity CYB110 - Unit 7.ppsx
Linux for Cybersecurity CYB110 - Unit 7.ppsx
 
Comparison of Various Encryption Algorithms and Techniques for improving secu...
Comparison of Various Encryption Algorithms and Techniques for improving secu...Comparison of Various Encryption Algorithms and Techniques for improving secu...
Comparison of Various Encryption Algorithms and Techniques for improving secu...
 

Último

Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 

Último (20)

Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 

Secureerasurecodebasedcloudstoragesystemwithsecuredataforwarding

  • 1. Netaji Institute of Engineering & Technology Dept of Computer Science and Engineering A Project on A Secure Erasure Code-based Cloud Storage System with Secure Data Forwarding By Under The Guidance of SRIHARI KADALI Mr.P.Darshan (H.O.D & professor)
  • 2. Content Abstract Existing System Demerits Proposed System Architecture Merits Functional Requirements Non Functional Requirements System Design Screen Shots References
  • 3. Abstract The main technical contribution is that the proxy re-encryption scheme supports encoding operations over encrypted messages as well as forwarding operations over encoded and encrypted messages. Our method fully integrates encrypting, encoding, and forwarding. Implementing threshold proxy re-encryption and decentralized erasure code. Distributed storage System used for distribution purpose, and it depends on the secure storage system. Storage server and key server are used. Parameters are more flexible adjustment between servers(storage and key).
  • 4. Existing System General encryption schemes protect data confidentiality, but also limit the functionality of the storage system because a few operations are supported over encrypted data. Storing data in a third party’s cloud system causes serious concern on data confidentiality. General encryption scheme for storing data. DES algorithm is used for key generation. For the storage data ,user has to manage his keys . Single storage server for whole file.
  • 6. Disadvantages Of Existing System There are three problems in the above straightforward integration of encryption and encoding. First, the user has to do most computation and the communication traffic between the user and storage servers is high. Second, the user has to manage his cryptographic keys. Communication traffic between the user and storage servers. User’s device of storing the keys is lost. Storing and retrieving, it is hard for storage servers . Only one time encryption using general encryption schemes.
  • 7. Proposed System The method of threshold proxy re-encryption. Decentralized erasure code method can be used for distributed storage system. Distributed storage system depends on the secure cloud storage. Storage server and key server those two systems used for storage system. Encryption using Blowfish algorithm.
  • 9. Advantages Of Proposed System By using the threshold proxy re-encryption scheme, we present a secure cloud storage system that provides secure data storage and secure data forwarding functionality in a decentralized structure Data is more confidential. Highly protected by an security mechanism of the Server Easy distribution and data forwarding. Less Time consuming.
  • 12. System Design Workflow Diagram A workflow diagram visually represents the movement and transfer of resources, documents, data and tasks through the entire work process for a given product or service. Use case Diagram Use case diagrams are used to describe a set of actions use cases that some system or systems subject should or can perform in collaboration with one or more external users of the system actors. Sequence Diagram A sequence diagram is a kind of interaction diagram that shows how processes operate with one another and in what order.
  • 15. Sequence Diagram Login Register Home File select jButtonActionPerformed Register to cloud jButtonActionPerformed Select file for encryption Encryption jButtonActionPerformed jButtonActionPerformed jButtonActionPerformed
  • 16. Continue… Re-encryptionSplitting Select No. of tokens jButtonActionPerformed Upload file jButtonActionPerformed Select VM1 and VM2 Retrieve jButtonActionPerformed Receiving from VM1 and VM2 Decryption jButtonActionPerformed
  • 17. Modules Process Encryption Threshold-Proxy Function Secure Cloud Storage Data Forwarding Data Retrieval
  • 20.
  • 21. // Creation of Secret key byte key[] = "HUFEdcba".getBytes(); String k = key.toString(); SecretKeySpec secretKey = new SecretKeySpec(key, "Blowfish"); // Creation of Cipher objects Cipher encrypt = Cipher.getInstance("Blowfish"); encrypt.init(Cipher.ENCRYPT_MODE, secretKey); // Open the Plaintext file cis = new CipherInputStream(fis, encrypt); // Write to the Encrypted file byte[] b = new byte[1024]; int i = cis.read(b); while (i != -1) { fos.write(b, 0, i); i = cis.read(b); } fos.flush(); fos.close(); cis.close(); fis.close(); String fenc = " File Encrypted "; JOptionPane.showMessageDialog(null, fenc); count++; Coding
  • 23. Threshold Proxy Re-encryption Scheme // Creation of Secret key byte key[] = "abcdEFUH".getBytes(); SecretKeySpec secretKey = new SecretKeySpec(key,"Blowfish"); // Creation of Cipher objects Cipher encrypt = Cipher.getInstance("Blowfish"); encrypt.init(Cipher.ENCRYPT_MODE, secretKey);
  • 26. Server Side File Receiving
  • 27. int bytesRead; int current = 0; ServerSocket serverSocket = null; serverSocket = new ServerSocket(7777); while(true) { Socket clientSocket = null; clientSocket = serverSocket.accept(); InputStream in = clientSocket.getInputStream(); OutputStream output = new FileOutputStream("C:/"+filename+".zip"); byte[] buffer = new byte[1024]; while ((bytesRead = in.read(buffer)) != -1) { output.write(buffer, 0, bytesRead); } Coding
  • 28.
  • 29. try { Socket sock1 = new Socket("192.168.0.154", 7777); // sendfile File myFile = zipFile1; System.out.println(zipFile1); byte[] mybytearray = new byte[(int) myFile.length()]; FileInputStream fis = new FileInputStream(myFile); BufferedInputStream bis = new BufferedInputStream(fis); bis.read(mybytearray, 0, mybytearray.length); OutputStream os = sock1.getOutputStream(); os.write(mybytearray, 0, mybytearray.length); os.flush(); sock1.close(); String sen="Files are forwarded to cloud Storage server 1 !!!"; JOptionPane.showMessageDialog(null,sen); jTextArea1.append("Sending File:"+z1); jTextArea1.append("Files are forwarded to cloud Storage server 1 !!!"); } catch(Exception e) { System.out.println("Exception : "+e); } Coding
  • 31. try { int bytesRead; int current = 0; ServerSocket serverSocket1 = new ServerSocket(4000); while(true) { Socket clientSocket = serverSocket1.accept(); InputStream in = clientSocket.getInputStream(); String op="D:/secure/server1/server1.zip"; OutputStream output = new FileOutputStream(op); //jTextArea1.append("Received File Location from Server1:"+output); byte[] buffer = new byte[1024]; while ((bytesRead = in.read(buffer)) != -1) { output.write(buffer, 0, bytesRead); } in.close(); output.close(); String ip2="192.168.1.2"; jTextArea1.append(" Server1 IP Address:"+ip2); jTextArea1.append("Received File Location from Server 2:"+op); String fr=" File can be Received from Server1."; JOptionPane.showConfirmDialog(null,fr); serverSocket1.close(); } Client Sending Filename Cipher
  • 33. try { Socket sock = new Socket("192.168.1.2",4000); //client IP address jTextArea1.append("n Client IP :"+sock); // sendfile String fn= "D:"+reqfile1+".zip"; File myFile = new File(fn); jTextArea1.append("n File location :"+myFile); byte[] mybytearray = new byte[(int) myFile.length()]; jTextArea1.append("n File Length :"+mybytearray); FileInputStream fis = new FileInputStream(myFile); BufferedInputStream bis = new BufferedInputStream(fis); bis.read(mybytearray, 0, mybytearray.length); OutputStream os = sock.getOutputStream(); os.write(mybytearray, 0, mybytearray.length); os.flush(); String sen="Files are forwarded to Client !!!"; JOptionPane.showMessageDialog(null,sen); os.close(); sock.close(); } Coding
  • 35. try { Socket sock = new Socket("192.168.1.2",4000); //client IP address jTextArea1.append("n Client IP :"+sock); // sendfile String fn= "D:"+reqfile1+".zip"; File myFile = new File(fn); jTextArea1.append("n File location :"+myFile); byte[] mybytearray = new byte[(int) myFile.length()]; jTextArea1.append("n File Length :"+mybytearray); FileInputStream fis = new FileInputStream(myFile); BufferedInputStream bis = new BufferedInputStream(fis); bis.read(mybytearray, 0, mybytearray.length); OutputStream os = sock.getOutputStream(); os.write(mybytearray, 0, mybytearray.length); os.flush(); String sen="Files are forwarded to Client !!!"; JOptionPane.showMessageDialog(null,sen); os.close(); sock.close(); } catch(Exception e) { System.out.println("Exception : "+e); Coding
  • 36.
  • 37. try { String sourcefile = "D:/secure/server1/server1.zip"; File sf=new File(sourcefile); if (!sourcefile.endsWith(".zip")) { System.out.println("Invalid file name!"); System.exit(0); } else if (!new File(sourcefile).exists()) { System.out.println("File not exist!"); System.exit(0); } ZipInputStream in =new ZipInputStream(new FileInputStream(sourcefile)); ZipFile zf = new ZipFile(sourcefile); int a = 0; for (Enumeration em = zf.entries(); em.hasMoreElements();) { String targetfile = em.nextElement().toString(); ZipEntry ze = in.getNextEntry(); out = new FileOutputStream("D:/secure/EXTRACT/" + targetfile); byte[] buf = new byte[1024]; int len; while ((len = in.read(buf)) > 0) { out.write(buf, 0, len); } a = a + 1; } if (a > 0) { JOptionPane.showMessageDialog(null, "Files are unzipped, click NEXT"); jTextArea1.append("nServer1 Files can be Extractedn"); jTextArea1.append("ZipFile Name:"+sf.getName()+"n"); jTextArea1.append("ZipFile size :"+sf.length()+"n"); String fol="D:/secure/EXTRACT"; File folder=new File(fol); jTextArea1.append("n Files in the Path:n"+folder.getAbsolutePath()); } out.close(); in.close();
  • 38. try { String p=a; String s11="plaintxt"+l; String s12="des"+l; String key1 ="AbCd124"+l; l++; File kkk=new File(p); BufferedReader br=new BufferedReader(new FileReader(kkk)); jTextArea1.append("nnGiven File Name is:"+kkk.getName()+" System.out.println("Given File Name is:"+kkk.getName()+"n"); jTextArea1.append("Given File size is:"+kkk.length()+"n"); System.out.println("Given File size is:"+kkk.length()+"n"); File dec= new File("D:/secure/firstDEcryption/"+s11+".txt"); FileInputStream fis = new FileInputStream(p); FileOutputStream fos = new FileOutputStream(dec); CipherOutputStream cos = null; jTextArea1.append("Decrypted File Name is:"+dec.getName()+"n"); System.out.println("Decrypted File Name is:"+dec.getName()+"n"); jTextArea1.append("Decrypted File Path is:"+dec.getAbsolutePath()+" jTextArea1.append("Key To Decrypt the cipher Text:"+key1); System.out.println("Decrypted File Path is:"+dec.getAbsolutePath()+"n" // Creation of Secret key byte key[] = "abcdEFUH".getBytes(); SecretKeySpec secretKey = new SecretKeySpec(key,”Blowfish"); // Creation of plain objects Cipher decrypt = Cipher.getInstance("DES"); decrypt.init(Cipher.DECRYPT_MODE, secretKey); // Open the ciphert file CipherInputStream cis=new CipherInputStream(fis, decrypt); // Write to the decrypted file byte[] b = new byte[1024]; int i = cis.read(b); while (i != -1) { fos.write(b, 0, i); i = cis.read(b); } fos.flush(); fos.close(); cos.close(); fis.close(); }
  • 39. try{ int j; /** Takes all files in a specified directory and merge them together...*/ File firstDEcryption = new File("D:/secure/firstDEcryption/"); listOfFiles = firstDEcryption.listFiles(); for( j=0; j<listOfFiles.length; j++){ String lines; String srcFile = listOfFiles[j].getPath(); outFile = "D:/secure/merging.txt"; of=new File(outFile); BufferedReader inFile=new BufferedReader(new FileReader(new File(srcFile))); BufferedWriter outPut=new BufferedWriter(new FileWriter(outFile, true)); String fil=listOfFiles.toString(); jTextArea1.append("Files to be Merged:"+fil); jTextArea1.append("Merged File Path:"+outFile); while((lines=inFile.readLine()) != null) { outPut.write(lines); outPut.newLine(); } String fenc=" Files can be Merged "; JOptionPane.showMessageDialog(null, fenc); outPut.flush(); outPut.close(); inFile.close(); } }
  • 41. Integrated a newly proposed threshold proxy re-encryption scheme and erasure codes over exponents. The threshold proxy Re-encryption scheme supports encoding, forwarding, and partial decryption operations in a distributed way. By using the threshold proxy re-encryption scheme, we present a secure cloud storage system that provides secure data storage and secure data forwarding functionality in a decentralized structure. key servers act as access nodes for providing a front-end layer such as a traditional file system interface. Conclusion
  • 42. References IEEE 2012 paper on Distributed and Parallel systems, “A secure Erasure code based Cloud storage System with Secure Data forwarding”. Swings (second Edition) By Matthew robinson and Pavel vorobiev. www.youtube.com Fast Software Encryption, Cambridge Security Workshop Proceedings (December 1993), Springer-Verlag, 1994, pp. 191- 204. IEEE Paper.