Click here to load reader
Upload
abhishekkumarjha
View
152
Download
0
Tags:
Embed Size (px)
Citation preview
2. Thought Process
What are the existing softwares available.
Who are the target users ?
What is the need for this software?
Extra Fail Safe Features
3. Existing Software
This is what Google has to say on existing softwares
This is what Google has to hide on existing softwares
4. Our Objectives
Platform Independence
Scalable
Safe
Intuitive
Protection of data at all costs.
User Friendly
5. Virtual File System
Scalable and platform independent.
File Allocation table calculated after password
authentication.
Nobody knows which file is stored where.
Even if one file is corrupt, only part of data is
compromised.
All files split into files of 128 kb in this implementation.
6. Autorun
Depending on the operating system, one of the two auto run scripts
call the main class.
This class authenticates the user.
It then checks for integrity of the usb. Required because all
encryption keys are encrypted using password which can be
changed.
After integrity check, and correcting correctable flaws, the user
can use the system to store files, folders in encrypted or
decrypted form or to retrieve the stored files.
7. Password Management
Password stored in random files as file attributes of a group of
files.
The encrypted form of password constructed during runtime. Also the
previous password is stored to re-crypt all the keys of 128 bit
encryption.
Better than /etc/password. If a password file gets corrupted only
one character is missing and the correct password can be retrieved
by the rightful owner and only rightful owner so that he can use
his files.
Very difficult to even get the encrypted password unlike simple
storing of password.
All keys encrypted using password, so in password transition
phases, two passwords in system as a failsafe.
8. Encryption
Password: sha1
Files: 128 bit AES encryption
Keys: RSA (public key is unique to each software implementation and
is fixed when the software is first run) private key is dependent
on password.
Encrypted data of a usb will be very difficult to be decrypted on
any other usb.
9. Key Generation and Management
Random key is generated.
Encrypted and stored in the header file.
Whenever password is changed the keys are re-encrypted.
The first 1024 bytes of each file contains information about the
key and the next files.Rest 127 kb contains data bytes
10. User Interface
Options to:
Enter Password
Change Password
Separate panels for encrypted and decrypted files of the same
logical filename.
Encrypt files, decrypt files, Rename files, Delete files, move
files inside the USB, move to hard disk.
11. Why D-Crypt is best
Most Portable.
Scalable even fat 32 has limitations on maximum size.
Lots of failsafe features to ensure data remains same.
Probability of unauthorized access is minimal.
12. Classes Used
AeSimpleSHA1:calculates sha1 hash of password.
Cleaner: Makes the USB as good as new.
Crawler: constructs the directory structure.
CryptFileDelete: Deletes logical files
CryptFileReader: Copies data to hard disk.
CryptFileWriter: Writes data to USB
13. Classes Used
EDPanel: Container holding the gui.
FileHash :Updates runtime directory structure
FileList: List of files where data is to be written
FinalWriter:Calls the CryptFileWriter
FinalizePassword: Deletes the old password
14. Classes Used
Header Reader: Reads Header file
HeaderWriter: writes logical name to header
Icon extractor: gui
Installer: first run to set up password and populate the USB.
Integrity Checker:
15. Contributions
ShubhanshuMishra
AbhishekJha
HimangshuJyotiHazarika
R. Vignesh
VighneshAvdhani
BittuSarkar
Indian Institute of Technology Kharagpur