1. INTRODUCTION Security raises big question mark and many of us are afford to spend million dollars for sending information securely from one place to other through internet. So the security is a very vital to protect from the attack of intruders. The symmetric and asymmetric key cryptographic algorithms have its own advantages and disadvantages when we consider it separately. So the solution would be best if the advantages of both types of algorithms are used together which hides the disadvantages of each other. So that security can be achieved with less cost and can also reduces the burden by sending the messages safely from intruders attack. Two typical examples of such security mechanisms were as follows: Provide a user id and password to every user, and use that information to authenticate a user. Encode information stored in the databases in some fashion, so that is not visible to user who do not have the right permissions. Security approaches are there, that include Security Models and Security Management practices. Security Models : No security : In the simplest case, the approaches could be a decision to implement no security at all. Page 1 of 48 Security through Obscurity : A system is secure simply because nobody knows about its existence and contents. This approach cannot work for too long, as there are many ways an attacker can come to know about it. Network security : Host security is tough to achieve as organisation grow and become more diverse. In this technique, the focus is to control network access to various hosts and their services, rather than individual host security. This is a very efficient and scalable model. Security Management Practices : A good security policy and its proper implementation go a long way in ensuring adequate security management practices. A good security policy generally takes care of four aspects, as follow. Affordability : How much money and efforts does this security implementation cost? Functionality : What is the mechanism of providing security ? Cultural issues : Does the policy gel well with the people’s expectations, working style and beliefs ? Legality : Does the policy meet the legal requirements ? Page 2 of 48 1.1. ABOUT THE PROJECT Cryptography is the art of achieving security by encoding message to make them non – readable. The word cryptography comes from Greek and kryptos means “hidden” while graphic stands for “writing”. Cryptography defined as “the science and study of secret message”, concerns the ways in which communications and data can be encoded to prevent disclosure of their contents through eavesdropping or message interception, using codes, ciphers, and other methods, so that only certain people can see the real message. The project entitled “CRYPTOGRAPHY” solves the problems faced by symmetric key cryptography. This project provides a good solution to achieve security. In this project, the sender’s plain Text is codified using the DES, TRIPLE DES, BLOWFISH algorithm which results in a cipher text. This cipher text is again codified to get plaintext that is output using these three algorithms. In this project, message digest concept takes place. The algorithm used is MD5 algorithm. If the user enters as many lines as possible as that is inputs, the output will be in single line using message digest algorithm. Although the science of cryptography is very old, the desktop computer revolution has made it possible for cryptographic technique to become widely used and accessible to non experts. Clear text or plain text signifies a message that can be understood by the sender, the recipient, and also by anyone else who gets an access to that message. When a plain text message is codified using any suitable scheme, the resulting message is called as cipher text. Page 3 of 48 In the substitution cipher technique, the characters of a plain text message are replaced by other characters, numbers or symbols. The process of trying to break any cipher text message to obtain the original plain text message itself is called as cryptanalysis, and the person attempting a cryptanalysis is called as a cryptanalyst. A cryptanalyst attempting a Brute-force attack tries all possibilities to derive the original plain text message from a given cipher text message. Symmetric key cryptography is fast and efficient. However, it suffers from a big disadvantage of the problem of key exchange. The sender and the receiver of an encrypted message use the same key in symmetric key cryptography, and it is very tough to agree upon a common key without letting anyone else know about it. Thus this project ensures solution for the Non Repudiation, Confidentiality, Integrity, Authentication and security. Page 4 of 48 1.2. ABOUT THE CRYPTOGRAPHIC ALGORITHMS. There are several ways of classifying cryptographic algorithms. For purposes of this paper, they will be categorized based on the number of keys that are employed for encryption and decryption, and further defined by their application and use. The three types of algorithms that will be discussed are (Figure 1): Secret Key Cryptography: Uses a single key for both encryption and decryption Public Key Cryptography: Uses one key for encryption and another for decryption Hash Functions: Uses a mathematical transformation to irreversibly "encrypt" information Page 5 of 48 2. SYSTEM ANALYSIS A complete system study of an existing system helps us to build a new system. System study is the way of studying the system with an eye on solving its problem. It is the most essential part of the development of a project for a system analyst. One must know what information is to be gathered, where to find it, how to collect it and how to make use of it for successful development of the system. System design described as a process of planning a new business system to replace or to complement an existing system. The system design states will meet the requirements identified during the system analysis. It goes through a logical and physical design. The key points followed at the time of designing are: Preparing input and output specification. Date flow and stores. Preparing security and control specification Process. Page 6 of 48 2.1. Existing System The symmetric and asymmetric key Algorithms has it’s own advantages and Disadvantages separately. In the symmetric key Cryptography, same key is used for encryption and decryption. But in asymmetric key Cryptography, one key is used for encryption and another key for decryption. In symmetric key Cryptography, the speed of encryption/decryption is very fast but in asymmetric key Cryptography, it is slow. In symmetric key Cryptography, the size of resulting encrypted text is usually the same or less then the original plain text size , but more than the original plain text size in Asymmetric key Cryptography. Key agreement /exchange is a big problem in Symmetric key Cryptography whereas it not a problem in Asymmetric key Cryptography. So the disadvantages of both type of algorithms are reduced when combining both the algorithm’s advantages in the proposed system. 2.1.1 Drawbacks of the Existing System No security. Security of information is low. Loss of confidentiality. Absence of authentication. Loss of integrity. Attack on availability. The receiver receives their secret messages not in time in the existing system. Page 7 of 48 2.2. Proposed System. The drawbacks, which are faced during existing system, can be eradicated by using the proposed system. The main objective of the proposed system is to provide a user-friendly interface. In this proposed system the text that are encrypted can be sent securely. The text can be sent without any loss of the security and loss of confidentiality. The encryption and decryption of text is possible through this proposed system. Features of the Proposed System Security Confidentiality Authentication Integrity Availability The solution will be completely secure. The encryption and decryption processes will not take a long time. The generated cipher text should be compact in size. The solution will scale to large number of users easily, without additional complications. The key distribution problem will be solved. In this project the whole process is done using three algorithms namely Data Encryption Standard (DES). Triple Data Encryption Standard (TDES). Blowfish. Message Digest 5 (MD5). Page 8 of 48 2.2.1 DATA ENCRYPTION STANDARD (DES). History. The Data Encryption Standard (DES) has been in use since the mid1970s, adopted by the National Bureau of Standards (NBS) [now the National Institute for Standards and Technology (NIST)] as Federal Information Processing Standard 46 (FIPS 46-2) and by the American National Standards Institute (ANSI). DES uses the Data Encryption Algorithm (DEA), a secret key blockcipher employing a 56-bit key operating on 64-bit blocks. Although other block ciphers will replace DES, it is still interesting to see how DES encryption is performed. Not only is it sort of interesting, but DES remains in many products and we will continue to see DES for some years to come. There are also some analytical results which demonstrate theoretical weaknesses in the cipher, although they are infeasible to mount in practice. The algorithm is believed to be practically secure in the form of Triple DES, although there are theoretical attacks. In recent years, the cipher has been superseded by the Advanced Encryption Standard (AES). In some documentation, a distinction is made between DES as a standard, and the algorithm, which is referred to as the DEA (the Data Encryption Algorithm). When spoken, "DES" is either spelled out (dee-ee-ess) or pronounced as a single syllable (dez or dess). Page 9 of 48 VARIOUS STEPS. 1. In the first step, the 64-bit plain text block is handled over to an Initial Permutation (IP) function. 2. The Initial Permutation is performed on plain text. 3. Next, the Initial Permutation (IP) produces two halves of the permuted block; say Left Plain Text (LPT) and Right Plain Text (RPT). 4. Now, each of LPT and RPT goes through 16 rounds of encryption process, each with its own key. 5. In the end, LPT and RPT are rejoined, and a Final Permutation (FP) is performed on the combined block. 6. The result of this process produces 64-bit cipher text. INITIAL PERMUTATION (IP) The Initial Permutation (IP) happens only once, and it happens before the first round. It suggests how the transposition in IP should proceed. For example, it says that the IP replaces the first bit of the original plain text block with the 58 th bit the original plain text block, the 2nd bit with the 50th bit of the original plain text block, and so on. This nothing but jugglery og bit position of the original plain text block. Page 10 of 48 Broad level Steps in DES Plain text Initial Permutation (IP) LPT Key RPT 16 rounds 16 rounds Final Permutation (IP) Cipher text ROUNDS. Key Permutation Expansion Permutation S – Box Substitution P – Box Permutation XOR - Swap Page 11 of 48 Key Step 1) Key Permutation. The initial 64 – bit key is transformed into a 56 – bit key by discarding every 8th bit of the initial key. Thus, for each round, a 56th key is available. From this 56-bit key, a different 48-bit sub-key is generated during each round using a process called as Key transformation. For this, the 56-bit key is divided into two halves, each of 28 bits. These halves are circularly shifted left by one or two positions, depending on the round. Step 2) Expansion Permutation. The Two 32-bit plain text areas, called as Left Plain Text (LPT) and Right Plain Text (RPT). During Expansion Permutation, the RPT is expanded from 32 bits to 48 bits. Besides increasing the bit size from 32 to 48, the bits are permuted as well, hence the name Expansion Permutation. This happens as follows: The 32-bit Rpt is divided into 8 blocks, with each block consisting of 4 bits. This is shown in diagram: Original Right Plain Text (RPT) of 32 bits . . . . . . . . . . . . . . . Block 1 . . block 8 Division of 32-bit RPT into eight 4-bit blocks Page 12 of 48 Next, each 4-bit block of the above step is then expanded to a corresponding 6-bit block. That is, per 4-bit block, 2 more bits are added. They are actually the repeated first and fourth bits of the 4-bit block. The second and the third bits are written down as they were in the input. Input block1 1 2 3 4 1 2 3 4 5 Input block2 5 6 7 8 6 Output block1 7 8 ….... 9 10 11 12 Output block2 Input block8 29 30 31 32 43 44 45 46 47 48 Output block8 RPT Expansion Permutation process Step 3) S-Box Substitution. Substitution - after mixing in the subkey, the block is divided into eight 6-bit pieces before processing by the S-boxes, or substitution boxes. Each of the eight S-boxes replaces its six input bits with four output bits according to a nonlinear transformation, provided in the form of a lookup table. The S-boxes provide the core of the security of DES — without them, the cipher would be linear, and trivially breakable. Page 13 of 48 S-BOX SUBSTITUTION Step 4) P-Box Permutation. The output of S-box consists of 32 bits. These 32 bits are permuted using a P-box. This straightforward permutation involves simple permutation (i.e. replacement of each bit with another bit, a specified in the P – box table, without any expansion or compression). This is called as P-Box Permutation. Step 5) XOR and SWAP. Performing all these operations only on the 32-bit right half portion of the 64-bit original plain text (i.e. on the RPT). The left half portion (i.e. LPT) was untouched so far. Page 14 of 48 The left half portion of the initial 64-bit plain text block (i.e. LPT) is XORed with the output produced by P-box. The result of this XOR operation becomes the new right half (i.e. RPT). the old right half (i.e. RPT) becomes the new left half, in a process of swapping. XOR AND SWAP Final Permutation. At the end of the 16 rounds, the Final Permutation is performed (only once). This is a simple transposition. Page 15 of 48 2.2.2 Triple Data Encryption Standard (TDES). Page 16 of 48 Triple DES is DES – three times. It comes in two flavours : One that uses three keys Other that uses two keys. Triple DES with three keys. The plain text block P is first encrypted with a key K1, then encrypted with the second key, and finally with the 3rd key, k3, where k1,k2, and k3 are all different keys. To decrypt the cipher text C and obtain the plain text P, we need to perform the operation P = Dk3 (Dk2(Dk1(C ))). Triple DES with two keys. 1. Encrypt the plain text with key K1. thus, we have Ek1(P). 2. Decrypt the output of step1 above with key K2. thus, we have Dk2(Ek1(P)). 3. Finally , encrypt the output of step2 again with key K1. thus, we have Ek1(Dk2(Ek1(P))). Page 17 of 48 2.2.3 BLOWFISH. OPERATION. Blowfish encrypt 64-bit blocks with a variable – length key. It contains two parts, as follows. KEY EXPANSION : This process converts the key up to 448 bits long to sub – keys totaling 4168 bits. Page 18 of 48 DATA ENCRYPTION : This process involves the iteration of a simple function 16 times. Each round contain a key – dependent permutation and key – and data – dependent substitution. The encryption of a 64 – bit block input X, is as follows. Divide X into two blocks: XL and XR, of equal sizes. For i = 1 to 16 XL = XL XOR P(i) XR = F(XL) XOR XR Swap XL, XR Next i Swap XL,XR XL = XL XOR P18 Combine XL and XR back into X. The key generation involves the usage of P- box and S-box. Page 19 of 48 2.2.4 MESSAGE DIGEST 5 (Hash Algorithm). MD5 (Message-Digest 5) is a widely used cryptographic hash function with a 128-bit hash value. As an Internet standard (RFC 1321), MD5 has been employed in a wide variety of security applications, and is also commonly used to check the integrity of files. An MD5 hash is typically a 32-character hexadecimal number. Recently, a number of projects have created MD5 "rainbow tables" which are easily accessible online, and can be used to reverse many MD5 strings into their original meanings. MD5 was designed by Ronald Rivest in 1991 to replace an earlier hash function, MD4. In 1996, a flaw was found with the design of MD5; while it was not a clearly fatal weakness, cryptographers began to recommend using other algorithms, such as SHA-1. In 2004, more serious flaws were discovered making further use of the algorithm for security purposes questionable. The input text is processed in 512 – bit blocks. The output of the algorithm is a set of four 32-bit blocks, which make up the 128-bit message digest. MD5 includes various process. Padding Append length Divide the input into 512 – bit blocks Initialize chaining variables. Process block Page 20 of 48 Step 1) PADDING. The first step in MD5 is to add padding bits to the original message. The aim of this step is to make the length of the original message equal to a value, which is 64 bits less than an exact multiple of 512. the padding consist of a single 1bit, followed by as many 0-bits, as required. Note that padding is always added, even if the message length is already 64 bits less than a multiple of 512. Thus, if the message length is already of length say 448 bits, we will add a padding of 512 bits to make its length 960 bits. Thus, the padding length is already of length is any value between 1 and 512. Original message + Padding Original message Padding PADDING PROCESS STEP 2) APPEND LENGTH. After padding bits are added, the next step is to calculate the original length of the message, and add it to the end of the message, after padding. The length of the original message is now expressed as a 64 – bit value, and these 64 bits are appended to the end of the original message + padding. Page 21 of 48 Original message Padding Length + One MD5 Operation Original message Padding(optional) Length 64 bits Data to be hashed (digested) APPEND LENGTH Step 3) Divide the Input into 512-bit blocks. Now ,divide the input message into blocks, each of length 512 bits. Data to be hashed (digested) Block1 Block2 Block3 ……. Block n 512 bits 512 bits 512 bits ……. 512 bits Data is divided into 512 – bit blocks Page 22 of 48 Step 4) Initialize Chaining Variables. In this step, four variables (called as chaining variables) are initialized. They are called as A,B,C,D. Each of these is a 32 – bit number. The initial hexadecimal values of these chaining variables are CHAINING VARIABLES A HEX 01 23 45 67 B HEX 89 AB CD EF C HEX FE DC BA 98 D HEX 76 54 32 10 STEP 5) Process Blocks. Copy the 4 chaining variables into 4 corresponding variables a,b,c,d. thus, now have a = A, b = B, c = C and d = D. A B C D a b c d Divide the current 512-bit block into 16 sub-blocks. Thus, each sub-block contains 32 bits. Page 23 of 48 Block 1 Sub block1 sub block2 ………… 32 bits 32 bits ………... Sub block 16 32 bits Sub-Blocks within block. Now, have four round. In each round, we process all the 16 sub-blocks belonging to a block. The input to each round are a) All the 16 sub-blocks b) The variables a,b,c,d. c) Some constants, designated as t. Have 16 iterations in each round. 1) A process P is first performed on b, c, d. This process P is different in all the four rounds. 2) The variable a is added to the output of the process P (i.e. to the register abcd). 3) The message sub-block M[i] is added to the output of step 2 (i.e. to the register abcd). 4) The constant t[k] is added to the output of step 3 (i.e. to the register abcd) 5) The output of step 4 (i.e. the contents of register abcd) is circular –left shifted by s bits. 6) The variable b is added to the output of step 5 (i.e. to the register abcd). 7) The output of step 6 becomes the new abcd for the next step. Page 24 of 48 ONE MD5 OPERATION We can mathematically express a single MD5 operation as follows: a = b + ((a + process P (b,c,d)+ M[i] + T[k] <<< s) where, a,b,c,d = Chaining variables. Process P = a non-linear operation. M[i] = M[q* 16 + i], which is the ith 32-bit word in the qth 512-bit block of the message. T[k] = A constant. <<<s = Circular – left shift by s bits. Page 25 of 48 2.3 SYSTEM OBJECTIVES The objective is to make the decryption process hard for the intruder and to protect from attacks that ensures : Confidentiality : The principle of confidentiality specifies that only the sender and the intended recipient should be able to access the contents of a message. Integrity : The receiver has to ensure that the original message has not been altered or tampered by the intruder in the course of transit sent from the sender. Non Repudiation : The sender of a message cannot refuse that he has not sent the respective message to the receiver. Authentication : The authentication process ensures that the respective sender correctly identifies the origin of the original plain text. Access control : The principle of access control determines who should be able to access what. Availability : The principle of Availability states that resources (i.e. information) should be available to authorized parties at all times. Page 26 of 48 2.4 SYSTEM CONFIGURATION 2.4.1 Hardware Configuration Processor : Pentium IV RAM : 256 MB Mother Board : Intel 915G Chipset CPU Clock : 1.08 GHz Hard disk capacity : 80 GB CD Drive : Samsung 52x Floppy drive : Sony 1.44 MB Key board : Multimedia Keyboard Mouse : Logitech Optical Mouse Processor : Intel Pentium IV Operating System : Windows Xp Application : Visual Basic 6.0 2.4.2 Software Specification Page 27 of 48 2.5 SOFTWARE FEATURES. About Visual Basic 6.0 The ‘Basic’ part refers to the BASIC (Beginners All – Purpose Symbolic Instruction Code) Language. Visual Basic has evolved from the original basic language and now contains several hundred statements functions and keyword, many of which relate directly to the Windows. The first tool to make Windows based programming easy the Microsoft Visual Basic version 6.0 programming. System is now the leading tool for helping, developers create and use Active X components, build Active Documents for Intranetbrowsers, build client/server or multi – tier solutions with high speed data access and built fast applications based on Windows version 6.0 adds a native code compiler, implicit multi – threading and integration with Microsoft Transaction Server to bring a new level of scalability to server based components built with Visual Basic. Visual Basic 6.0 also provides developers with a new interface for faster programming. The IDE now features Multiple Document Interface (MDI) with docking and linking. Windows to eliminate unnecessary, mouse and keyboard actions and the code editors offers Intelligence Technology such as Quick Tips, Data Tips, List Members and List Constants which eliminate the need to memorize syntax and learn object models. Visual Basic 6.0 is an application development tool used in developing Client/Server applications. Before beginning with visual Basic 6.0, let’s have a look at the client/Server architecture. Page 28 of 48 Important Features Event driven programming language where all the activities are triggered by one event or the other. Quick development of object based window database application with little coding. Built in database support. Client server architecture benefits. Provides simple debugging tools. States of Visual Basic. Visual Basic applications can be viewed in three distinct states: 1. Design 2. Execution 3. Break In Design State, you can edit user interface or add code to the application. In Execution State, the application is running and only a few menu commands are available. In Break State, the application is halted. Integrated Development Environment Applications in Visual Basic are developed in the Integrated Development Environment (IDE). Page 29 of 48 Components of IDE. Menu Bar. Toolbox Windows – displays the controls. Form Window – displays the form that holds the controls and which is useful for developing the user interface. Properties Window – has list of all the properties for a control. Project Explorer Window – has list of all the forms and modules. Standard Toolbar – displays the frequently used commands in the form of buttons. Code Editor Window – where code is written. Form Layout Window – allows to visually position the form at design time. Object Browser – has list of all the objects, their methods and properties. Context Menus – a shortcut menu with frequently performed actions. It can be displayed by right clicking on the object. Immediate, Locals and Watch Windows – These additional windows are provided for use in debugging your application. They are only available when you are running your application within the IDE. Page 30 of 48 3. SYSTEM DESIGN 3.1. SYSTEM FLOW DIAGRAM. Encryption Process Read from the File/Text Choose Algorithm DES TDES Encrypt File or Text Store the File/Text Page 31 of 48 BLOWFISH Decryption Process. Read from the File/Text Choose Algorithm DES TDES Decrypt File or Text Store the file/Text Page 32 of 48 BLOWFISH Hash Function. Read from the Text Choose Algorithm MD5 Message Digest Store the Text Page 33 of 48 3.2. INPUT DESIGN. The Input design is the link that is the information system into the world of its users. The design is the process of converting an external user oriented description of the input to the system into a machine oriented form. Five objectives guiding the design of inputs focus on controlling the amount of input required, avoiding delays, controlling errors, avoiding extra steps and keeping the steps simple. Input screens from the primary interface between user and the software. The input screens are designed are in such a way that it has a simple and user- friendly layout. Necessary options are provided to reduce typing, which automatically controls errors creeping in. Input validation are performed to enforce all the necessary system constraints; error messages are displayed, whenever the data entered is invalid. The message also display the corrective to be taken by the user. Page 34 of 48 LOGIN FORM This form is used to login into the project main form. If the password entered is wrong it will show the “Invalid Password, Try Again”. Page 35 of 48 ENCRYPTION AND DECRYPTION FORM. In this form, choose the algorithm, enter the text which need to be encrypted, enter key and salt value and click the encrypt. The encrypted text will display in encrypted string text box. To decrypt, enter the key and salt value and click on decrypt button. To encrypt the file, click on encrypt file. A dialog box opens. Choose the file and enter key and salt value. To decrypt the file, click on decrypt file. Choose the file which is encrypted and enter the key and salt value. Page 36 of 48 HASH FUNCTION FORM. In hash function algorithm used is MD5. Enter the text to be digest in the hash text box. Click on hash, the digested text will be appear in the hash string text box. Page 37 of 48 3.3. OUTPUT DESIGN. One of the most important features of the information system for users is the output it procedures. Without proper output, the entire system may appear to be so unnecessary that users will avoid using it, possibly causing it to fail. Outputs from computer system are required primarily to communicate the result of processing to users. They are also used to provide a permanent copy of these results for later consultation. Efficient, intelligible output design improves the systems relationship with the user as output are the most direct and important source of information to the user. During the analysis all the essential reports are identified. While designing the layout, used ideas are also been taken into consideration. Page 38 of 48 LOGIN FORM. After entering the password, click ok and if the password is correct it will show main form else it will display the message box “Invalid password, try again”. Page 39 of 48 OUTPUT OF ENCRYPTION AND DECRYPTION TEXT. In this form choose the algorithm, enter the text to encrypt, enter the key and salt value and click on “encrypt” button. The encrypted text will display in the “encrypted string textbox”. To decrypt that text, enter the key and salt value and click on “decrypt”. The output will be display in the “decrypted String textbox”. Click on the hash algorithm button, it will connect to hash function form. To encrypt and decrypt the file click on encrypt and decrypt file button. Page 40 of 48 OUTPUT OF HASH FUNCTION. In this hash function form choose the algorithm, enter the text to be hashed and click on hash button. The output will be displayed in the “Hash String” text box. Page 41 of 48 4. TESTING AND IMPLEMENTATION 4.1 TESTING It is designed to uncover the weaknesses that were not found in earlier test. In the testing phase, the program is executed with the explicit intention of finding errors. This includes forced system failures and validation of the system, as its user in the operational environment will implement it. For this purpose test cases are developed. When a new system replaces the old one, such as in the present case, the org can extract data from the old system to test them on the new. Such data usually exist in sufficient volume to provide sample listing and they can create a realistic environment that ensures eventual system success. Regardless of the source of test data, the programmers and analyst will eventually conduct 4 different types of tests. 4.2 SYSTEM TESTING System testing deals with the process of testing the system as a whole. This is done after the integration process, the entire system is tested by moving through each module from top to bottom. The verification and validation process are then carried out. The errors that occurs the testing phase are eliminated and a well functioning system is developed. Test case design focuses on a set of techniques, whish meets all testing objectives, which are mentioned below. Testing is a process of executing a program with the intent of finding an error. A successful test is one that uncovers as yet undiscovered errors. Page 42 of 48 Testing demonstrates that software functions work according to specification. In addition data collected from testing provides a good indication of software reliability and some indication of software quality as a whole. Testing results in the deduction in the number of errors. Critical modules are tested as early as possible. The following tests have been carried out after developing the system. VERIFICATION Verification is also intended to find errors. Executing a program in a environment performs it. 4.2.1 VALIDATION. In this testing the software is tested to determine whether it suits to that particular environment. Validation testing provides the final assurance that the software meets all functional, behavioral and performance requirements. Validation refers to the process of using the software in a live environment to find errors. During the course of validation the system failure may occur and software will be changed. 4.2.2 UNIT TESTING Unit testing is done for the verification of code produced during the coding phase and to test the internal logic of the modules. It refers to the verification of the single programming module in an isolated environment. Unit Testing deal with the testing of different modules of the software. It checks for any error in each of these modules in the software. After coding, each dialog was tested and run individually. All unnecessarily coded statements were removed and it was ensured that all the functionalities worked as expected . Any logical errors found were corrected. Page 43 of 48 4.2.3 INTEGRATION TESTING. During the Integration testing all the modules in the software are combined or integrated together and they are tested for overall performance of the system. Many test modules are combined into sub systems, which are then tested. This testing is a verification of the interface among system parts The integration is the next important concept that highlights in the testing scenario, integration testing can be performed in different strategies. One of them is the big-bang testing in whish one could first test all of a systems modules separately and then whole system at once. But here we proceed abruptly from the module testing and the integration testing disappears. Another alternative is the incremental testing. With the incremental testing there are many advantages. We can start the integration as soon as reasonable subsets of modules have been developed. It is easier to localize errors incrementally. There are two approaches to the incremental testing. They include bottom-up and top-down aggregations. The former means starting aggregation and testing from leaves of the modules charts. The latter means starting from the top-down modules and substitute for higher-level modules. In our projects we have used the top-down approach of incremental testing. Top-down integration Is a incremental approach to the construction of programs structure. Modules are integrated by moving downward through the control hierarchy, beginning with the main control module that is the basic connectivity module in our project. Test is done on each module. Top-down integration strategy verifies major control or decision points. Page 44 of 48 4.3. SYSTEM IMPLEMENTATION. The implementation aspect is the system analysis is to make use that the new design is implemented to establish standard. The term implementation is as different meaning ranging from conversion of basic application to a complete replacement of computer system. This is used to mean the process of converting a new or received system design to the operation. The conversion is one of the aspect of implementation. Implementation of new system to replace the existing system. Implementation of a modified application to replace a existing one using the same system. Page 45 of 48 5. SCOPE FOR FURTHER ENHANCEMENT To use any hardware components like chipset, microcontroller to develop the project in hardware side. To implement compression algorithm like zip to compress the output text. To enforce the Time Constraints for the cipher text to exist and destroy. To enhance validation of user name and password. Page 46 of 48 6. CONCLUSION The Cryptography has been developed successfully using Visual Basic 6.0. The main objective in developing this project is to make use of a security with the help of Cryptography concept. The technology used is a new one and is very much easier to develop when compared to other technologies. Cryptography enables the user to encrypt and decrypt text with the combination of secret key and salt. The implementation of this project has brought the required quantitative and qualitative changes. The system has tangible and intangible benefits. It ensures a greater deal of accuracy. All the details relating to an text will usually be stored in the database. Using this software, the data can be easily viewed. This will be useful not only to the studies but also to the other Organization. Page 47 of 48 7. BIBLIOGRAPHY Books referred Atul Kahate - “ Cryptography and Network Security. “ Tata McGraw-Hill 2003 “System analysis and Design”, Elisas M. Awad - Tata McGraw-Hill Edition 1998 “Software Engineering” Roger Pressman - McGraw-Hill International Edition 2001 Peter Norton - “ Guide to Visual basic 6” Techmedia Web sites www.google.com www.wikipedia.org www.softwareengineering.com http://en.wikipedia.org/wiki/History_of_cryptography Page 48 of 48
© Copyright 2026 Paperzz