The Project Cryptomania Is An Implementation

Print   

02 Nov 2017

Disclaimer:
This essay has been written and submitted by students and is not an example of our work. Please click this link to view samples of our professional work witten by our professional essay writers. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of EssayCompany.

A PROJECT COMPLETED AS PART OF THE REQUIREMENTS FOR THE

DEGREE OF BACHELOR OF SCIENCE WITH HONOURS IN COMPUTER

SCIENCE (Network and Security)

Abstract

In 20th century, information is one of the financial institution’s most important assets and it is so obvious that these significant and considerable assets have to protect and secure.

Security plans plays a vital role in securing the information assets of organizations and businesses. Information security in computer networks gives power to any firm to meet its business objective by implementing solutions to gain Availability, Integrity, accountability assurance and confidentiality of data or systems.

The project "CRYPTOMANIA" is an implementation of simple algorithm for cryptography. It uses the SYMMETRIC KEY method to encrypt and decrypt the files. The project has a very decent user interface and it gets pretty exciting for the user when they see the output of their text file which they intended to encrypt. The output of the file is in .ENC format (.ENC stands for encrypted) and if one wants to get the original file back by decryption then one just has to press the button "DECRYPT" after mentioning the path of the file one wants to decrypt. The file returned as output has the same extension as the original file thus it becomes impossible for any person to know whether it is a decrypted file or the original one. The key needed for encryption and decryption is asked from the user itself.

Acknowledgment

Writing this dissertation has intellectually and personally been one of the most challenging but also enriching and rewarding experiences of my life. I have spent a glorious time here at Mantissa College and owe much to the people who have been with me during the past year.

I am much obliged to my Bachelor Degree advisor Mr Shun Yew Wun whom I appreciate greatly and who has been a role model to me in many ways. I would like to thank him for his support and guidance and for the freedom he granted me in pursuing this project. It is thanks to him that this dissertation has a strong practical orientation, while maintaining academic standards. His vast experience and astuteness have aided me in many ways and have greatly enriched me from both a professional and personal point of view.

Further, I would like to thank our Academic advisor Mr Cheong for his academic support. It was his inspirational personality that truly sparked my enthusiasm for my research. His intellectual support has been very enriching and advanced my work in many ways. I feel honoured to have had the chance to work together with him and hope that more opportunities to work on joint projects will arise in the near future.

Mantissa College, March 23, 2012 Babak Kazemi Ghamsari

Table of Contents

List of Figures

Figure 1

Feistel function (F function) of DES……………………………..

Figure 2

The overall Feistel structure of DES………………………….

Figure 3

The Feistel function or (F-function) of DES………………….

Figure 4

Key Schedule of DES…………………………………………….

Chapter 1

Introduction

Crypto mania is a project developed in Java for encryption and decryption of text files. All the algorithms used in this have separate modules and hence this project can easily be extended. It can take text file as an input and generate encrypted text in another text file. Currently it has four encryption algorithms which are described as under.

RC4

"It’s most widely used in Secure Sockets Layer. It is really fast and efficient. It was developed by Ron Rivest. It is also easily install on hardware’s. It can use a key size of 40–2,048 bits. RC4 works in different two steps. First step is key generation and second is encryption. Then some mixing operations are performed. Encryption is quite fast" Ganesan, P and AG Dean (2004).

DES

"Data Encryption Standard is a symmetric key algorithm that uses same shared secret key for encryption as well as decryption. It uses a sixty four bit key to encrypt data. Only fifty six bits are effectively used for encryption and decryption. Remaining 8 bits are used for parity check. Encryption requires use of S-boxes and P-boxes. DES is a fast encryption. DES is considered insecure for many applications now, mainly because fifty six bit key is considered too small."

RSA

"RSA Is an asymmetric key algorithm based on factoring problem. RSA stands for Rivest, Shamir and Adleman after the people who first described it publically in 1978 –. RSA requires two large prime numbers, the product of which along with an auxiliary value is used as a public key. RSA is quite hard to crack but it can be done. If the user knows prime numbers the problem can be reduced to merely guessing the numbers through simple calculations". Rivest, Shamir and Adleman(1977-1978)

BLOWFISH

Blowfish is a symmetric key block cipher. It is quite an efficient encryption algorithm with good encryption rate and no effective cryptanalysis. Blowfish uses block sizes of sixty four bits and key sizes of 1 – 448 bits. It has 16 rounds of fiestel blocks for the whole algorithm The S-Boxes are key dependent. Blowfish can be used anywhere since there has been no patents on it. The algorithm has achieved its fame because it’s been put in public domain.

Chapter 2

Literature Review

Based on Globalization movements and improvement in technology, all the firms and companies that are active in services industry find that protection of information assets in computer networks is an unique, vital and important requirement for them. Apart from these things protection of information assets in computer networks preserve reliability between financial firms and its customers and save the reputation of the firm as a benefit for them. "Modern industrial communication networks are increasingly based on open protocols and platforms that are also used in the office IT and Internet environment.

Computer and telecommunication systems are increasingly being used to process of transport information that is important to companies in many fields like in the information processing in the form of office automation, electronic funds trancfer and information systems.

Considerable disadvantages in information security policies expose sensitive data to siginificant risk as illustrated by recent incidents at various agencies; in addition, over the last several years, most agencies have not implemented controls to sufficiently prevent limit, or detect access to computer networks, systems, or information"(Wilshusen,2009).

There are a few number of literature review about challenges and implementing problems of these technologies in firms that are not familiar with these kinds of technologies; and there is no sufficient research about this area that can be the reason of considerable weaknesses in information security policies which expose sensitive data to crucial risk.

Chapter 3

3.1. Cryptography

"The knowledge of I.S. (Information Security) is known as Cryptography. The Word Crypto came from the word from Greek "KRYPTOS" which means hidden. Cryptography includes various types of techniques such as microdots, merging of the information or words within the image, several ways of hiding information while transfer or storage. Today, the cryptography is more often or not associated with the scrambling plaintext which is also known as the Plaintext converted to an unreadable or scrambled word known as the Cipher text, this process is known as the Encryption and the process of converting from the cipher text to the plaintext is known as the Decryption. Researchers who research in the area of the cryptography are known as the cryptographers."

3.2. Cryptography today is concerned over four major points:

"Confidentiality: The information should not be understandable to the person for whom it was not intended. "

"Integrity: The data or information which is shared between two users or retrieved from the storage cannot be altered without the alteration being detected. "

"Non-repudiation: The sender or receiver cannot deny at any stage the information being created or received."

"Authentication: The Sender and the Receiver can check each other’s identity and the origin and destination at any stage of the communication."

"Procedures and protocols that meet some or the entire on top of criteria are called cryptosystems. Cryptosystems are usually thought to refer individually to mathematical procedures and laptop programs; but, they conjointly embrace the regulation of human behaviour, like selecting very hard passwords which are un-guessable, logging off from the systems which are not in use and do not disclose any sensitive information to any third party or person."

"The Cryptography origin is typically dated from regarding 2000 BC; with the Egyptian apply of hieroglyphics. These consisted of complicated pictograms, the complete which means of that was individually known to an elite few. The primary known use of a contemporary cipher was by Julius Caesar (100 BC to forty four BC), who didn't trust his messengers when communicating along with senior officials like officer or governors. For this reason, he created a system during which every character in his messages was replaced by personality 3 positions prior it within the Roman alphabet."

"Because governments don't want sure people in and out of their countries to own access to ways that to receive and send hidden data which if disclosed can be very big threat to the national interest of the country, which is subjected to varied restrictions in several countries, starting from limiting export or the functionality of the software outside the region etc., the general public dissemination of mathematical ideas that might be used to develop cryptosystems. However, the web has allowed the unfold of powerful programs and, a lot of importantly, the underlying techniques of cryptography, in order that nowadays several of the foremost advanced cryptosystems and ideas are currently within the public domain."

Classic Cryptography

"The earliest sorts of secret writing needed very little over native pen and paper analogs, as most of the people couldn't browse. A lot of literacy, or literate opponents, needed actual cryptography. the most classical cipher sorts are transposition ciphers, that rearrange the order of letters in a very message (e.g., 'dear friend ' becomes 'edra cebomse' in a very trivially straightforward rearrangement scheme), and substitution ciphers, that systematically replace letters or teams of letters with alternative letters or teams of letters. Straight forward versions of either haven't offered required amount of secrecy of the data from the enterprising opponents. An early stage of cryptography the substitution method was used and very famous substitution cipher was Caesar Cipher, during which every letter within the plaintext was replaced by a letter some mounted range of positions any character in the message. Julius Caesar used to shift the alphabets by order of 3 when he talks with the generals. The oldest known cryptography is a few Engraved cipher text on stone in Egypt (CA 1800 BCE), however this might are in hot water the amusement of literate observers instead of as the way of concealing info."

Computer Era Cryptography

"Extensive open tutorial analysis into cryptography is comparatively recent; it began individually within 1970s mid, even IBM developed an algorithm that became federal, information Encryption Standard; Whitfield Diffie and Martin Hellman printed their key agreement algorithm; and therefore the RSA algorithm was printed in Martin Gardner's Scientific Yankee. As the cryptography is the most widely used encryption and decryption tool used in communication, laptop networks, and laptop security usually. Some fashionable cryptographic techniques will individually keep their keys secret if sure mathematical issues are intractable, like the integer factorization or the discrete logarithm issues, therefore there are deep connections with abstract arithmetic. There is not any major proof that the information that is encrypted using the cryptographic techniques is secure but secure if someone tries to break it computationally and drawback is troublesome to unravel, or this or that assumption regarding implementation or sensible use is met". Whitfield Diffie and Martin Hellman (1976)

Symmetric Key Cryptography

"Symmetric key cryptography is implemented with the help of Block Ciphers or Stream Ciphers. Block cipher enciphers input in blocks of plaintext as critical sole characters, the input kind utilized by a stream cipher."

"The Data Encryption customary (DES) and therefore the Advanced Encryption customary (AES) are block cipher styles that are designed as per the standards of the Federal (U.S.). Despite its deprecation as an officer customary, DES (especially its still-approved and far safer triple-DES variant) remains quite popular; it's used across a large vary of applications like encryption of email, ATM communications, secure remote etc. several alternative block ciphers are designed and released, with considerable variation in quality."

Public Key Cryptography

"Public-key cryptography is the cryptography which need two 2 different keys one key to lock the data and other to unlock the data. Neither key can do each function. One amongst these keys is revealed or public and therefore the alternative is kept personal. If the lock/encryption secret is the one revealed then the system permits personal communication from the general public to the unlocking key's owner. If the unlock/decryption secret is the one revealed then the system is a signature verifier of documents locked by the owner of the personal key". Kwok T . Fung,2004

This cryptographic approach uses uneven key algorithms, hence a lot of general name of "asymmetric key cryptography". "A number of these algorithms have the general public key/private key property; that's, neither secret is derivable from data of the other; not all uneven length of key algorithms do. The algorithms with the property of significantly helpful and are widely deployed, and are the supply of the commonly used name. The general public secret is used to rework a message into an unreadable type, decrypt able individually by using the (different however matching) personal key. Participants in such a system should produce a mathematically linked key combine (i.e., a public and a personal key) Raghuvamshi, Archana, and P. Venkateswara Rao(2012). By publishing the general public key, the key producer empowers anyone who gets a replica of the general public key to supply messages individually s/he will scan -- as a result of individually the key producer contains a copy of the personal key (required for decryption). When somebody intends to send a message secure enough with the keys, the transmitter encrypts the message with the supposed recipient's public key; to decrypt the message, the recipient uses the personal key". Nobody else, as well as the sender, can do so. Kwok T . Fung,2004

Chapter 4

4.1. Algorithms Implemented (Blowfish Cryptography)

"The Blowfish algorithm uses a key, which might be up to 448 bits in length, to calculate sub-keys that are employed in the particular encryption and decryption. The sub keys employed in Blowfish are the P-array and S-boxes. The P-array consists of eighteen thirty two bits values whereas the four S-boxes encompass 256 thirty two bits values. The first values of the P-array and also the four S-boxes are initialized with the hexadecimal fraction of pi. The P-array is initialized 1st and then followed by the S Boxes. The hexadecimal fraction of pi was selected as a result of it created a random range for the initialization. Another form of initialization may well be used however the initialization values should be random. Consistent with Schneier [1993], patterns within the initialization values may result in an exceedingly weaker cipher". Schneier (1993).

"At the start, the values along with the P-array and S-boxes are changed using the key. Key might have 448-bits with the packets of thirty two bits each segment. If the secret's but 448-bits, the secrets repeated. as an example, if the key was "1234" and every range represented eight bytes, the primary thirty two bits worth would be "1234" and also the next 32- bit worth would be "1234." This method would be repeated to get the desired 448-bit key. For a 448-bit key, there would be fourteen thirty two bits values, which suggest the key-array (K) has four thirty two bits values but the P-array". Schneier(1993).

"The secret's then used to initialize the P-array. An exclusive-or operation is performed between every of the eighteen thirty two bits P-array worth and a thirty two bits value of the key. P1 is XOR with the primary thirty two bits of the key (K1) and then P2 is XOR with consequent 32- bits of the key (K2). This method is sustained till P15 as a result of the key-array has individually fourteen thirty two bitss. Consistent with Stallings [2003], an exclusive-or operation would be conducted with P15 and also the 1st thirty two bits key worth (K1), which is wrong. The key worth is truly consequent worth of the key repetition, which might primarily be K15. as an example, if the first key was "123", where every range represents 8-bits, and K14 equalled "1231", consequent thirty two bits key worth for the exclusive-or operation with P15 would be "2312" (K15) and not "1231" (K1) as claimed by Stallings". Schneier (1993).

"After the P-array has been initialized with the key, the P-array and S-boxes values are then changed using the encryption routine of Blowfish. First, thirty two bits values consisting of zeros are encrypted. Different initial values may well be selected however these values should be fastened to stop an attacker from generating a similar cipher text with 2 totally different Schneier (1993).

The cipher text from the encryption of the zero values is employed to exchange the P array values P1 and P2. The cipher text is additionally used because the input for consequent encryption spherical. The cipher text from this spherical then replaces P3 and P4 and also the encryption routine is executed once more with the cipher text as input. This method is sustained till all eighteen values within the P-array and every one 256 values for every of the four S-boxes is replaced with cipher text. A complete of 521 encryptions are preformed to get all the P-array and S-box values.

Now that the P-array and S-box values are established, plaintext will currently be encrypted.

"For encryption, the 64-bit plaintext is separated into a left and right [*fr1] every consisting of thirty two bits. The encryption routine consists of a sixteen spherical Feistel network. Within the 1st spherical, an exclusive-or operation is performed between the left thirty two bits (LE-0) and also the thirty two bits P1 of the P-array. This worth becomes consequent thirty two bits right worth (RE-1) and this worth is additionally inserted into the F perform. The F performs takes the thirty two bits input and separates it into four bytes (8-bits each). These four values are looked up in S-Boxes. A less advanced mapping was used as a result of the S-boxes are generated from the key values and aren't static like DES. The thirty two bits values of the S-boxes are then manipulated consistent with the subsequent formula:"

"The thirty two bits worth of S-box one is added to the thirty two bits worth of S-box two. The modulus of this result by 2^32 is taken because the input for the exclusive-or operation to performed with the three2-bit worth of S-box 3. The results of the exclusive-or operation is then added to the thirty two bits worth from S-box four and also modulus 232 performed. A bitwise XOR operation is performed on the ultimate thirty two bits output from the F perform and also the right half the information (RE-0). The results of this operation becomes the left [*fr1] thirty two bits input for consequent spherical (LE-1). The results of spherical one are explained by the subsequent equations:"

"Round two is then performed with inputs LE-1 and RE-1. This method is repeated for a complete of sixteen rounds. The final equations to explain the rounds are as follows:"

"After finishing the sixteen rounds, LE-16 and RE-16 swap their values. An XOR operation is performed between the swapped LE-16 and P18 and conjointly with the swapped RE-16 and P17 to get LE-17 and RE-17, respectively. The thirty two bits values of LE-17 and RE-16 are combined to get the 64-bit cipher text. The decryption method for Blowfish is nearly a dead ringer for the encryption method except the P-array values are reversed. For decryption, the bitwise XOR operation is performed between the primary left thirty two bits worth (LE’-0) of the cipher text and P18. Within the encryption, this method would are performed with P1. The decryption method is repeated for the sixteen rounds. LE’-16 and RE’-16 swapped with the operation of bitwise XOR, operation is performed with P1 and LE’-16 and conjointly with P2 and RE’-16 to get LE-17 and RE-17, respectively. LE-17 and RE-17 are then combined to get the first plaintext."

4.2. Data Encryption Standard

"DES stands for Data Encryption Standard. This is a shared Secret key encryption that uses block cipher. It has subsequently enjoyed widespread use internationally. It’s based mostly on a symmetric-key algorithm meaning each the encryption and decryption algorithms need use of 56-bit key. At the early time of the release of the algorithm it was controversial as a result of classified style parts, a comparatively short key length, and suspicions a couple of National Security Agency . "

"DES is currently thought-about to be insecure for several applications. This can be chiefly thanks to the 56-bit key size being too little. In January, 1999, distributed.net and therefore the electronic frontier foundation helped to publicly break a DES key in twenty two hours and quarter-hour. The algorithm is accepted to be practically safe and secure within the sort of Triple DES, though there are theoretical attacks. The cipher has been outmoded by the Advanced Encryption normal (AES). "

Data Encryption Standard InfoBox Diagram.png

Figure 1: Feistel function (F function) of DES

Block Size: sixty four bit

Key Size: fifty six bit

Chapter 5

5.1. Algorithm as a Standard

According to Fu Li (2009) DES is a block cipher algorithm that takes a fixed-length of plaintext and transforms it through a complex set of operations into a cipher text bit string of same length (Kwok T. Fung, 2004). DES uses a block size of 54 bits. DES uses a 64 bit key to customize the transformation performed on the plaintext. Only 56 bits of the key are actually used hence, in algorithm only 56 bits are shown, but while using a 64 bit key is required, since the remaining 8 bits are limited to use for checking equality, and then discarded. DES is a symmetric key algorithm meaning it uses the same key for encryption as well as decryption. Therefore, without the knowledge of the shared secret key, it is quite difficult for anyone to decrypt the message. Brute force attacks are quite difficult in case of DES. The 8 bits required to check the parity are chosen such that every 8th bit from the selected 64 bit key are used that is positions 8, 16, 24, 32, 40, 48, 56, 64 are taken from the 64 bit key leaving behind the 56 bit key.

250px-DES-main-network

Figure 2: The overall Feistel structure of DES

Overall structure of the algorithm is shown in the diagram, as there are 16 stages which are identical to each other in processing known as rounds. There are also two opposite permutations termed Initial permutation (IP) and Final Permutation (FP). Before the actual functions are performed, the 64 bit block is divided into two 32 bit halves and processed alternately. This type of crisscross draft is known as Feistel draft. The Feistel structure allows the encryption and decryption to remain a similar process. Decryption requires the sub keys to be applied in the reverse order when it is being performed. This also helps in simplifying the implementation, since when hardware is being built it doesn’t require separate algorithm for encryption and decryption. There is a XOR operation involved denoted but a ‘+ ‘sign. The F-function scrambles 0.5 a block alongside a number of the key. F-Function is combined along with opposite 1/2 the block, and therefore the halves are swapped before successive spherical. When the ultimate spherical, the halves aren't swapped; this can be a feature of the Feistel structure that shows the encryption process and decryption process similar to each other.

5.2. The Feistel or (F) function

The F-function, shown in Figure 3, action on half a block (32 bits) at a time and it’s including four stages:

250px-DES-f-function

Figure 3: The Feistel function or (F-function) of DES

Expansion — the thirty two bits block is expanded to 48-bit using the expansion permutation.

Key mixing — the resulting process is the sub key with the XOR the sub key. Hence 16 sub keys of 48-bit each are created one for each round being derived by the main key schedule.

250px-DES-key-schedule

Figure 4: Key Schedule of DES

The key timeline for decryption is similar the sub keys are in reverse order compared to encryption.

Substitution — after combining in the sub key, the block is separated into eight 6-bit parts before processing by the S-boxes, or substitution boxes. Each of the eight S-boxes replaces its six input bits with four output bits suitable to a non-linear changes, provided in the form of a lookup table

Permutations — at the end, 32 outputs from the S boxes are prepared according to a fixed permutation, the P-box. This is designed so that, after expansion, each S-box's output bits are spread across six different s boxes in the next round.

RSA

"RSA is a public-key cryptography algorithm based on factoring problem of large integers. RSA stands for Rivest, Shamir and Adleman – named after the three people who designed this algorithm – Ron Rivest, Adi Shamir and Leonard Adleman. To use RSA the user should produce and publish the merchandise of 2 massive prime numbers, at the side of an auxiliary worth, as their public key. The prime factors are purported to be kept a secret. Anyone will use the general public key of the utilization to encrypt a message for the user which might individually be decoded by the use of personal key held by the user. Breaking the RSA needs information of the prime factors employed in the algorithm". Rivest, Shamir and Adleman(1977-1978)

Operation

"The RSA algorithm can be broken into three steps:

Encryption

Decryption.

key generation"

Key generation

"RSA is an Asymmetric key algorithm. Hence it needs a public key and a non-public key. The general public key is often known to everybody and is needed to encrypt message. To decrypt a message personal secrets needed

• Choose to primes p, q, with q < p < 2q;

• Calculate N = pq, where φ(N) = (p −1)(q −1); φ is Euler’s toting function

• e,d are such that ed = 1+kφ(N), k >= 1;

• N, e are publicly available and the plaintext M is encrypted as C = Me mod N;

• the secret key d is required to decrypt the cipher text as M = Cd mod N.

The public key is included of the Absolute amount n and therefore the public (or encryption) exponent e. The private key consists of the Absolute amount n and therefore the non-public (or decryption) exponent d that should be kept hidden". Rivest, Shamir and Adleman(1977-1978)

Encryption

Arti transmits her public key (n,e) to Billo and keeps the private key secret. Billo then wishes to send message M to Arti.

First he turns M into an integer m, such that 0 < m < n by using an agreed-upon reversible protocol known as a padding scheme. Then calculation the cipher text C corresponding to

c = me (mod n).

Decryption

Arti can recuperar m from c by using her private key exponent d via calculation

m = cd (mod n).

Given m, can recover the original message M by reversing the padding scheme.

(In practice, there are more efficient methods of calculating cd using the pre computed values below.)

http://www.arl.wustl.edu/~jl1/education/cs502/images/rsa_algorithm.JPG

Padding schemes

To avoid these issues, sensible RSA implementations usually embed some variety of structured, randomized padding into the worth m before encrypting it. This padding ensures that m doesn't fall into vary of insecure plaintexts, which a given message, once padded, can encrypt to 1 of an oversized variety of various doable cipher texts.

Standards like PKCS#1 are fastidiously designed to securely pad messages before RSA encryption. As a result of these schemes pad the plaintext m with some variety of extra bits, the scale of the un-padded message M should be somewhat smaller. RSA padding schemes should be fastidiously designed thus on stop refined attacks which can be facilitated by a predictable message structure. Early versions of the PKCS#1 normal (up to version one.5) used a construction that can change RSA into a secure encryption theme. This version was later found at risk of a sensible adaptive chosen cipher text attack. Later versions of the quality embody optimal uneven Encryption Padding (OAEP) that prevents these attacks. The PKCS#1 normal conjointly incorporates processing schemes designed to produce extra security for RSA signatures.

Signing messages

Let us suppose sender (Alice) sends the receiver (bob) a message using the public key to convert it to encrypted message. Within the message, will she will be able to claim to be Alice however Bob has no manner of verifying that the message was really sent from the Alice as the message can be easily encrypted using the public key of the encrypted message. Hence, RSA can be used to encrypt the message as well as sign it.

Suppose Alice desires to send a signature based message to Bob. She will use her own personal key to try to thus. She produces a hash price of the message, raises it to the ability of d mod n and "signature" is attached to this message. Bob checks the message when he receives the signed message, by using the identical algorithm calculating has to work along with the Alice public key. Bob need to sign the message such that it has the ability of e mod n (as he will when encrypting a message), and compares the ensuing hash price with the message's actual hash price.

Secure padding schemes like RSA-PSS are as essential for the protection of message signing as they're for message encryption. Identical key ought to never be used for each encryption and signing.

RC4

"RC4 may be a stream cipher and is employed in in style protocols like SSL (Secure Socket Layer) to guard traffic on net and WEP to secure wireless networks. It’s an easy and speedy algorithm. It’s thought-about vulnerable in some cases if the utilization isn't correct. It’s generally officially known as "Rivest Cipher 4" or "Ron’s Code". RC4 was initially kept as a trade secret, however in September 1994 an anonymous post on Cypher punks mailing list revealed it. It absolutely was soon posted on several different sites on the net. The name RC4 is trademarked and thus it's usually known as ARCFOUR or ARC4 (alleged RC4) to avoid trademark issues. RSA security has never officially released the algorithm. Its economical implementation in each "software and hardware" Ahmad, Shish, Mohd Rizwan Beg and qamar (2004) are terribly straightforward to develop".

"RC4 generates a accidentally stream of bits. Like any stream cipher, these will be used for encryption by combining it with the plaintext using bit-wise exclusive-or; decryption is performed constant approach (since exclusive-or may be a symmetric operation). (This is comparable to the Vernam cipher except that generated pseudorandom bits, instead of a ready stream, are used.) To generate the key stream, the cipher makes use of a secret internal state which consists of two parts:

A permutation of all 256 possible bytes

Two 8-bit index-pointers."

6.1. The key-scheduling algorithm (KSA)

The key-scheduling algorithm is employed to initialize the permutation within the array "S." "key length" is outlined because the variety of bytes within the key and may be within the vary one ≤ key length ≤ 256, usually between five and sixteen, like a key length of forty – 128 bits. First, the array "S" is initialized to the identity permutation. S is then processed for 256 iterations in an exceedingly similar thanks to the most PRGA, however conjointly mixes in bytes of the key at constant time.

C:\Users\Homi\Desktop\aa.jpg

The pseudo-random generation algorithm (PRGA)

For as several iterations as are required, the PRGA modifies the state and outputs a byte of the key stream. In every iteration, the PRGA increments i, appearance up the its component of S, S[i], and adds that to j, exchanges the values of S[i] and S[j], and then uses the total S[i] + S[j] (modulo 256) as an index to fetch a 3rd component of S that is that the output of the algorithm. Every component of S is swapped with another component a minimum of each 256 iterations.

C:\Users\Homi\Desktop\aa.png

RC4 Features:

"RC4 uses a variable length key from one to 256 bytes to initialize a 256-byte state table. The state table is employed for subsequent generation of pseudo-random bytes and then to get a pseudo-random stream that is XOR with the plaintext to provide the cipher text. Every component within the state table is swapped a minimum of once". Jaiganesh, M.(2008)

"The RC4 keys usually restricted to forty bits, attributable to export restrictions however it's generally used as a 128 bit key. It’s the potential of using keys between one and 2048 bits. RC4 is employed in several industrial software packages like Lotus Notes and Oracle Secure SQL". Kwok T. Fung(2004)

The RC4 algorithm works in 2 phases, key setup and ciphering. Key setup is that the 1st and most troublesome part of this algorithm. Throughout an N-bit key setup (N being your key length), the encryption keys used to get an encrypting variable using 2 arrays, state and key, and N-number of blending operations. This mixing operation comprises swapping bytes, modulo operations, and different formulas. Modulo operation is that the method of yielding a remainder from division. As an example, 11/4 is a pair of remainder 3; thus eleven mod four would be equal to 3.

Once the encrypting variable is made from the key setup, it enters the ciphering part, where it's XOR with the plain text message to make an encrypted message. XOR is that the logical operation of comparing 2 binary bits. If the bits are completely different, the result's one. If the bits are constant, the result's zero. Once the receiver gets the encrypted message, he decrypts it by XOR the encrypted message with constant encrypting variable.

RC4 Advantages:

The issue to find out where any value is in the table.

The issue to find out which location in the table is used to choose each value in the sequence.

A selected RC4 key can be used only one time.

Encryption is roughly 10 times faster than DES.

RC4 disadvantages:

The RC4 algorithm can be damageable to analytical attacks of the state table.

One key in every 256 keys can be a feeble key. Keys are identified by cryptanalysis which is able to find circumstances under which one of more generated bytes is strongly correlated with a few bytes of the key.

Chapter 6

Conclusion

Crypto mania has been primarily developed as a cryptography tool having many algorithms. More algorithms can be incorporated so as to improve the security and many more types of files can be included to be used with this tool. Currently only text files can be used.

In this project various mathematical tools along with various algorithms used in order to encrypt and decrypt the files.

Specifically the aim of this research is since we face many problems of security of our data (on various topics) which we may wish to save on the systems we use in college. But these systems can also use by our batch mates as well as other People. Hence in this situation saving any material in college systems is not safe as our data could be mishandled, disturbed or destroyed. So making an encryption technique to handle this problem was very appealing. Also, there are very less no. of low level algorithms available on encryption. And the ones available are highly complex. Lastly, this is a new thing which is less tried and it is rarely seen at college level

Bibliography

"Network Security for Devices," 2011. [Online]. Available: http://www.automation.com/resources-tools/articles-white-papers/serial-interfaces-rs-232422485-device-servers/network-security-for-device-servers.

" Data Encryption Standard," Wikipedia, 2011. [Online]. Available: http://en.wikipedia.org/wiki/Data_Encryption_Standard.

"RC4," Wiki, 2011. [Online]. Available: http://en.wikipedia.org/wiki/RC4.

R. &. D. A. Meyers, "An Implementation of the Blowfish Cryptosystem," Signal Processing and Information Technology, 2008. ISSPIT 2008. IEEE International Symposium on , pp. 346 - 351 , 2008.

[5]

D. R., "The data encryption standard in perspective," Communications Society Magazine, IEEE , pp. 5-9, 2003.

[6]

M. &. B. D. Smid, "Data Encryption Standard: past and future," Proceedings of the IEEE , pp. 550 - 559 , 1988.

[7]

C.-S. L. H.-G. T. a. N.-M. H. Lih-Yang Wang, "On the hardware design for DES cipher in tamper resistant devices against differential fault analysis," Circuits and Systems, 2000. Proceedings. ISCAS 2000 Geneva. The 2000 IEEE International Symposium on , vol. 2, pp. 697 - 700, 2000.

2 dudas: Cambiar ventanas y generar archivo jar [Archivo] - ForoDeJava.com La Comunidad de Java Habla Hispana. 2012. 2 dudas: Cambiar ventanas y generar archivo jar [Archivo] - ForoDeJava.com La Comunidad de Java Habla Hispana. [ONLINE] Available at: http://forodejava.com/archive/index.php/t-1662.html. [Accessed 27 November 2012].

Daniel Tyreus, PhD is the owner of Synclab Consulting

Scheduling Repeating Campaigns with the Constant Contact API - Synclab Consulting. 2012. Scheduling Repeating Campaigns with the Constant Contact API - Synclab Consulting. [ONLINE] Available at: http://www.synclab.com/scheduling-repeating-campaigns-with-the-constant-contact-api/?lang=en_us&output=json. [Accessed 27 November 2012].

Kwok T . Fung,2004 , Chapter 2. Basic Confidentiality Technologies from Network Security Technologies[ONLINE]Available

at: http://www.crcnetbase.com/doi/abs/10.1201/9780203330708.ch2. [Accessed 27 November 2012].

Fu Li , 2009. Genetic and Evolutionary Computing, 2009. WGEC '09. 3rd International Conference.IEEE Xplore - A Simplified FPGA Implementation Based on an Improved DES Algorithm . 2012. IEEE Explore - A Simplified FPGA Implementation Based on an Improved DES Algorithm. [ONLINE] Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=5402907. [Accessed 27 November 2012].

TECHSCORE[ONLINE]Available at: http://www.techscore.com/tech/Java/JavaSE/IO/answer/2-3/?&lang=en_us&output=json. [Accessed 27 November 2012].

Ahmad,Shish,Mohd Rizwan Beg and qamar ,2004. Computer and Communication Technology (ICCCT), 2010 International Conference.IEEE Xplore - Energy efficient sensor network security using Stream cipher mode of operation . 2012. IEEE Xplore - Energy efficient sensor network security using Stream cipher mode of operation . [ONLINE] Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=5640501. [Accessed 27 November 2012].

Jaiganesh, M.(2008).Security management in Kerberos V5 for GSM network . IEEE Xplore - Security management in Kerberos V5 for GSM network . 2012. IEEE Xplore - Security management in Kerberos V5 for GSM network . [ONLINE] Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=4787777. [Accessed 27 November 2012].

Ganesan, P and AG Dean(2004). "Enhancing the AvrX kernel with efficient secure communication using software thread integration", Proceedings RTAS 2004 10th IEEE Real-Time and Embedded Technology and Applications Symposium 2004, 2004, [Accessed 27 November 2012].

Rivest, Shamir and Adleman(1977-1978).RSA Algorithm, CiteSeerX — A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. 2012. CiteSeerX — A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. [ONLINE] Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.5588. [Accessed 27 November 2012].

Whitfield Diffie and Martin Hellman(1976).New Direction in Cryptography. 2012. [ONLINE] Available at: http://www.cs.purdue.edu/homes/ninghui/courses/Fall04/lectures/diffie-hellman.pdf. [Accessed 27 November 2012].

Wilshusen,2009. Holdings: Cybersecurity | Brown University Library. 2012. Holdings: Cybersecurity | Brown University Library. [ONLINE] Available at: http://library.brown.edu/find/Record/b5332199. [Accessed 27 November 2012].

Schneier (1993). Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish), Blowfish Paper. 2012. Blowfish Paper. [ONLINE] Available at: http://www.schneier.com/paper-blowfish-fse.html. [Accessed 27 November 2012].

Raghuvamshi, Archana, and P. Venkateswara Rao. "PCLA: A new public-key cryptosystem based on logarithmic approach", 2012 IEEE International Conference on Engineering Education Innovative Practices and Future Trends (AICERA), 2012.

Appendices



rev

Our Service Portfolio

jb

Want To Place An Order Quickly?

Then shoot us a message on Whatsapp, WeChat or Gmail. We are available 24/7 to assist you.

whatsapp

Do not panic, you are at the right place

jb

Visit Our essay writting help page to get all the details and guidence on availing our assiatance service.

Get 20% Discount, Now
£19 £14/ Per Page
14 days delivery time

Our writting assistance service is undoubtedly one of the most affordable writting assistance services and we have highly qualified professionls to help you with your work. So what are you waiting for, click below to order now.

Get An Instant Quote

ORDER TODAY!

Our experts are ready to assist you, call us to get a free quote or order now to get succeed in your academics writing.

Get a Free Quote Order Now