Image Data System Student name: Student ID: Session: Supervisor name: 2011/2012 Project ID: 1 Acknowledgement We would like to show our greatest appreciation to our supervisor. We can't say thank you enough for her tremendous support and help. We feel motivated and encouraged every time we attend her meeting. Without her encouragement and guidance this project would not have materialized. The guidance and support received from all the members who contributed and who are contributing to this project, was vital for the success of the project. I am grateful for their constant support and help. Project ID: 2 Table of Contents Acknowledgement ..................................................................................................... 2 Table of Contents ........................................................................................................ 3 List of Figures............................................................................................................... 4 Summary: ....................................................................................................................... 5 Chapter one (Introduction).................................................................................. 10 Project Aims:........................................................................................................... 10 Project Features: ................................................................................................... 11 The project description: .................................................................................... 12 The software tools: .............................................................................................. 14 Literature Review: ............................................................................................... 15 Classifying methods used to steal data: ........................................................ 15 Some secured ways of sharing or sending larger files: ....................... 17 What is data encryption?.................................................................................... 19 Types of Data Encryption: .................................................................................. 19 Conclusion: ............................................................................................................... 20 Similar software: ...................................... Error! Bookmark not defined. Other way for hiding data in image: . Error! Bookmark not defined. The list of references: .............................. Error! Bookmark not defined. Chapter Two(The plan) ............................ Error! Bookmark not defined. Chapter Three(The analysis).................. Error! Bookmark not defined. Chapter Four (The design) ...................... Error! Bookmark not defined. Chapter Five (The test) ............................. Error! Bookmark not defined. Chapter Six (Closure) ................................. Error! Bookmark not defined. First the conclusion: ............................... Error! Bookmark not defined. Second the recommendations: .......... Error! Bookmark not defined. Third the future work:........................... Error! Bookmark not defined. Project ID: 3 List of Figures No table of figures entries found. Project ID: 4 Summary: We have divided our report in to six chapters and each chapter will contain subsections as follows: Chapter one In this chapter we will introduce our project and it includes several subsections as follows: The project aims: Here we will show the aims of our project and why we create this project. The project features: In this subsection we will display all the features of the project. The project description: In this subsection we will explain the idea of the project. The software tools: Here we will mention all the tools that we have used in the design, documentation and the development tools. Literature review: In this subsection we will clarify the methods of stealing the data to warn the user from it then we will showing the ways of sharing or sending larger files after that will clear what is data encryption and Project ID: 5 the types of data encryption. There will be also similar software and its features and we will display the other ways of hiding data in image and the list of references that we have used. Chapter Two The Plan In this chapter we will talk about schedule plan that we followed from the first step for delivering the project and final report and it will illustrate with Microsoft project. Chapter Three The analysis This chapter will contain the system analysis such as: The data flow diagram: A DFD shows what kinds of data will be input to and output from the system, where the data will come from and go to, and where the data will be stored. Use case diagram: This diagram will show the users of the system and the functions of each user. Sequence diagram: This diagram will show the sequence of performing a specific job. It will show the start, the following steps and the way it will end. Also it shows the classes between the different nodes of the system and their functions. Project ID: 6 Class diagram: It describes the classes that make up a system and the static relationships between them. Classes are defined in terms of their name, attributes (or data), and behaviors (or methods). The static relationships are association, aggregation, and inheritance. Activity diagram: It describes the business and operational step-bystep workflows of components in a system. An activity diagram shows the overall flow of control. ER diagram: is a data modeling technique that creates a graphical representation of the entities, and the relationships between entities, within an information system. We will show the entities of each table, the relation among tables, the primary and foreign key and the data type. The flow chart diagram: It is a graphical or symbolic representation of a process. Each step in the process is represented by a different symbol and contains a short description of the process step. The flow chart symbols are linked together with arrows showing the process flow direction. The collaboration diagram: It illustrates the relationships and interactions among software objects in the Unified Modeling Language (UML). Project ID: 7 The design Chapter Four The design In this chapter we will talk about web forms and we will provide every one with a little bit of illustration, by the way we will mention how we designed these web forms and what we used to design it. We will talk also about reports with a little bit of information and we will talk about the software tools with its advantages and the programming languages that we have chosen and the reasons for choosing it. Chapter Five The test plan In this chapter we will mention what is our plan to test our system and what was the output from these tests. Project ID: 8 Chapter six We divided this chapter in to three sections: Conclusion: In this section we will provide conclusion to our project which summarizes the main features of the project. Recommendations: we will mention here the weak points of our system and what we will change if we start the system again and our recommendations for the users and developers. Future work: Here we will suggest possible future work to build on what we have done. Finally the Appendices Here we will provide our final report with images for our works. Project ID: 9 Chapter one (Introduction) Information is the primary commodity in world of E-Commerce. As technology advances and access to markets expand, the need to protect information to ensure its confidentiality, integrity, and availability to those whom need it for making critical personal, business, or government decisions becomes more important. Data security means of ensuring that data is kept safe from corruption and accessing it is suitably controlled. When sending confidential data electronically, to those who are authorized, it is important to ensure it is being transmitted securely. Email is not a secure method of electronic delivery, therefore, we strongly recommend using IDS (Image-Data System) which is a system that helps you to keep your files away off the hackers and provide you with high secure level for your data. Project Aims: This project aims to hide your file(s) in a normal image and you will be the only one who knows that. The positive side is that you can send this to other people and if someone should get hold of it there is no problem. Because most people would never guess that there is a file(s) hidden in the image. Project ID: 10 Project Features: Data is a big target to hackers; especially Valuable data. There are many ways to keep files from getting in to other people hands. The safest way is to encrypt your files. But what if a hacker could decrypt your code?! The project idea is a way for solving the previous problems, as you can hide your file(s) in a normal image. The positive side with this is most people would never guess that there is a file(s) hidden in the image. This system offers that: Our system allows clients to create accounts on the system. Only authenticated users will be allowed to login to the system. The user uploads the file he wants to encrypt to the system. The user can also select the image where the file will be hidden or use one of the default images in the system. The user can send the image by e-mail with a fake body (so if a hacker controls the recipient’s mail he won’t have a clue about the importance of the image). The recipient receives SMS with how to decrypt the file. Project ID: 11 The project description: The image consists of bytes so we will take off one byte from the image and put the text in it. Structure of text file: Any text file consists of streams of characters, each character is 1 byte (ASCII code) each byte as all of us of course know consists of 8 bits. The function which is used to convert the ASCII code (decimal) to the binary equivalent called Create Bin Look up Table, which simply creates an array as following: Collapse | Copy Code Bin [0] ="00000000"; Bin [1]="00000001"; .. .. bin[254]="11111110"; bin[255]="11111111" There are many methods to convert from decimal to binary but I found this is from the fastest methods. Bitmap file structure: Project ID: 12 In general the bmp file consists in of two parts a header and the data part. Logic operations: In the c/c+ + there is a bitwise operator, one of these operators is the AND " & " , to see the AND operation look at the following table : How to change a certain bit in a byte using MASK: If we have 'H' '0100 1001' and we want to change the last bit to 0 simply we ANDed 'H' with the mask 254 ('1111 1110), the result will be '0100 1000' and if the last bit is '0' and we want to change it to 1 so we first ANDed with the same mask then add 1. Using the code Hiding the text in the bmp file technique: Reading the text file and converting each char. to 8 bits in array srcbin[]. Reading the bmp file and ANDing each byte with the mask 254 '1111 1110'. Then adding to it 1 or not depending on the srcbin[] array. Saving the result back to the bmp file. Project ID: 13 Well since it is just one bit change in each byte so our eye never is able to see such difference. The software tools: Microsoft Word 2007 to create TMAs answer files. Microsoft Project 2010 to create schedule plan. Microsoft Visio 2007 to create diagrams such as Use-Case, Data flow diagram, Entity relationship diagram. Microsoft .net frameworks 3.5 because it is an important platform which we can rely on to develop our website. Microsoft SQL server 2008, to create our database. Microsoft Visual Studio 2008 to develop our web pages using ASP.net technique. Project ID: 14 Literature Review: Classifying methods used to steal data: There are at least three different ways to steal data using a computer. The first is when the computer user voluntarily gives information to a malicious user, having trusted a false request for said information. These requests usually come in the form of mass mailings. The malicious user will have created a false website that imitates the site of an actual bank or other financial organization. This kind of computer crime is called phishing. The second way to steal confidential information involves tracking and logging a user's actions. This kind of electronic espionage is carried out using Trojans which Kaspersky Lab classifies as TrojanSpy programs. The third technique for stealing confidential data involves the use of malicious programs (most often Trojans) to search for confidential information on a user’s computer and then transmit this data to a malicious user. In this case, a malicious user may only receive data that the user considered important enough to enter into the computer’s memory. However, this seeming drawback is compensated for by the fact that the data is transmitted without user participation. Project ID: 15 These malicious programs can spread in a number of ways: they can be activated when an email attachment is opened or when a user Clicks on a link sent via instant messaging. They can also launch when a file is opened from a directory on a peer-to-peer network or by using scripts on a website that take advantage of idiosyncrasies in web browsers, making it possible for these programs to launch automatically when users visit these sites. Such programs can also be spread via other previously installed malicious programs that are capable of downloading and installing them to the system. Malicious programs like PSW Trojans are designed to access a range of information about the system, the user and passwords to a number of programs and operating system services. In order to do this, they scan all storage areas which contain relevant data: Windows protected storage, registry keys and certain program files of interest to a malicious user (usually instant messaging clients, email systems and Internet browsers). After gathering data, the Trojan will usually encrypt it and compress it into a small binary file. Later, the file may be sent via email or placed on the malicious user's FTP server. Project ID: 16 Some secured ways of sharing or sending larger files: Now a day larger files are send and shared through internet and some other networking system. Here secured system means that you will be able to send larger files with safely. In internet, there are many ways of sending large files with proper safety. Sometimes networking system is also safe to send and sharing files which are large types. In internet, you can send files via email, webhosting, FTP etc. in networking system you will get LAN to share files. Every system has effective security system to maintain privacy of your files and data. First, you can use email system to ensure it that your data will get security. We know that email is a system by which only the owner will be able to open the mailbox and can see the content sent to him/her. It ensures security. It is much secured for sending large and confidential data and files to the desired person via email. Here you will send the file to your friend and he/she will get that file in his/her email and downloading that can read that. You can rely much on email files sending system. Webhosting is an internet supported file sharing and sending system. This is secured in many ways. In case of webhosting, first you have to open an account. There you will have a password and only you will have accessibility on that account. You can send from there any amount of information up to 1GB. By using this system, you will get privileges of Project ID: 17 sharing your data directly on your business blog. Here your data or files will be kept intact. Here most of the websites do not delete your data. That is why from any computer and anywhere you will be able to get these files. The main security is the unaltered files getting so easily from that website. LAN stands for local area network. From that, we can know the LAN system. Here many computers will be kept interconnected with each other. Here all computers will be separated by username. You will have a password for your username. No one will be able to get your files and data without your permission. MPT is a larger file transfer system. Here you have to resister in the service provider sites. Here if your friend send to you some files then you will get a mail contains a link of internet. You can get the files by downloading files from the mentioned link. FTP is internet relied transfer system. Here you will be able to keep your privacy. In this system all, the computers are connected through internet. Here your computer will have a password and without it, another person will not be allowed to your computer. From that, we can say that it is safe. You can send or share large files or data to your friends, colleges and other persons using the above-mentioned ways. Project ID: 18 What is data encryption? Data encryption refers to mathematical calculations and algorithmic schemes that transform plaintext into cipher text, a form that is nonreadable to unauthorized parties. The recipient of an encrypted message uses a key which triggers the algorithm mechanism to decrypt the data, transforming it to the original plaintext version. Before the internet, data encryption was seldom used by the public as it was more of a military security tool. With the prevalence of online shopping, banking and other services, even basic home users are now aware of data encryption. Today's web browsers automatically encrypt text when making a connection to a secure server. This prevents intruders from listening in on private communications. Even if they are able to capture the message, encryption allows them to only view scrambled text or what many call unreadable gibberish. Upon arrival, the data is decrypted, allowing the intended recipient to view the message in its original form. Types of Data Encryption: There are many different types of data encryption, but not all are reliable. In the beginning, 64-bit encryption was thought to be strong, but was proven wrong with the introduction of 128-bit solutions. AES (Advanced Encryption Standard) is the new standard and permits a Project ID: 19 maximum of 256-bits. In general, the stronger the computer, the better chance it has at breaking a data encryption scheme. Data encryption schemes generally fall in two categories: symmetric and asymmetric. AES, DES and Blowfish use symmetric key algorithms. Each system uses a key which is shared among the sender and the recipient. This key has the ability to encrypt and decrypt the data. With asymmetric encryption such as Diffie-Hellman and RSA, a pair of keys is created and assigned: a private key and a public key. The public key can be known by anyone and used to encrypt data that will be sent to the owner. Once the message is encrypted, it can only be decrypted by the owner of the private key. Asymmetric encryption is said to be somewhat more secure than symmetric encryption as the private key is not to be shared. Strong encryption like SSL (Secure Sockets Layer) and TLS (Transport Layer Security) will keep data private, but cannot always ensure security. Websites using this type of data encryption can be verified by checking the digital signature on their certificate, which should be validated by an approved CA (Certificate Authority). Conclusion: Project ID: 20 للمزيد من المعلومات يمكنك الذهاب الى الرابط التالى www.tma888.com 21 Project ID: