You are on page 1of 12

‫استمارة تقييم بحث طلابي‬

‫‪f‬‬

‫جامعة بنهـــــا‬ ‫كلية الحاسبات‬


‫الفصل الدراسي الثاني للعام الجامعي ‪2020/2019‬‬ ‫والذكاء االصطناعي‬

‫أولا بيانات الطالب (تملأ بمعرفة الطالب)‬


‫رقم الجلوس‪2219007 :‬‬ ‫اسم الطالب‪ :‬اسالم احمد محمد ابو العينين‬
‫البريد اإللكتروني األكاديمي‪islam150086@fci.bu.edu.eg :‬‬
‫اسم البرنامج الدراسي‪ /‬القسم‪ :‬امن معلومات واكتشاف االدلة الجنائية الرقمية‬
‫المستوى‪/‬الفرقة‪ :‬المستوي الثاني‬
‫ثانيا بيانات البحث (تملأ بمعرفة الطالب)‬
‫اسم المقرر‪Computer Security :‬‬
‫اسم أستاذ المقرر‪ :‬الدكتور ‪ /‬احمد طه‬
‫عنوان موضوع البحث‪Data encryption algorithms :‬‬
‫رقم الموضوع (إن وجد)‪6 :‬‬
‫ثالثا تقييم البحث بمعرفة لجنة الممتحنين‬
‫□ ال‬ ‫□ نعم‬ ‫هل البحث منقول؟‬
‫في حالة ان اإلجابة بنعم ال يتم تقييم البحث ويعتبر تقييم الطالب في البحث لم يجتاز‬
‫الوزن‬
‫غير مقبول‬ ‫مقبول‬ ‫عناصر التقييم‬ ‫م‬
‫النسبي‬
‫‪10‬‬ ‫الشكل العام للرسالة البحثية‬ ‫‪1‬‬
‫‪70‬‬ ‫يحقق المتطلبات العلمية المطلوبة‬ ‫‪2‬‬
‫‪10‬‬ ‫يذكر المصادر والمراجع العلمية‬ ‫‪3‬‬
‫‪10‬‬ ‫الصياغة اللغوية واسلوب الكتابة جيد‬ ‫‪4‬‬
‫رابعا نتيجة التقييم النهائي‬
‫توقيع لجنة التقييم‬ ‫لم يجتاز‬ ‫اجتاز‬
‫‪........................................................... -1‬‬
‫‪........................................................... -2‬‬
‫‪........................................................... -3‬‬
‫** يرجى التأكد من اال تزيد هذه االستمارة بعد استكمال البيانات عن صفحة واحدة فقط‬
f

Faculty of Computers & Benha University


Artificial Intelligence

Data encryption algorithms


A research project submitted
in partial fulfillment of the requirements for passing
the 2nd semester 2020 evaluation

In
Computer Security

by
‫( اسالم احمد محمد ابو العينين‬2219007)

Supervised by
Dr. Ahmed Taha

June 2020
Faculty of Computers & Artificial Intelligence, Benha University

Table of Contents

1. Introduction ............................................................................................................................. 1
2. Content .................................................................................................................................... 1
2.1 Data encryption algorithms Cryptography ........................................................................... 1
2.2 Standard Date Encryption ..................................................................................................... 2
2.3 Advanced Norm Encryption .................................................................................................. 3
2.4 AES Encryption and Decryption ........................................................................................... 4
2.5 HMAC Architecture aims ...................................................................................................... 6
2.6 Algorithm at HMAC .............................................................................................................. 7
2.7 Other algorithms for the public-key cryptography ................................................................ 8
3. Conclusion ............................................................................................................................... 9
References ....................................................................................................................................... 9

ii
Faculty of Computers & Artificial Intelligence, Benha University

1. Introduction

As the significance and usefulness of shared data over the Internet or other forms
of media are that, one of the most important topics in security-related cultures is the quest
for the best way to provide the requisite defense against attacks by data hackers along with
delivering such services in a timely manner.
This paper attempts to present a fair comparison of the most common and
commonly used algorithms in the field of data encryption. Since our key concern here is
the efficiency of these algorithms in varying conditions, the analysis presented takes into
account the action and output of the algorithm when using specific data loads.

Section 2 will provide a short summary of cryptography and its main applications
in our everyday lives; in addition, it will describe some of the most common terminology
of cryptography along with a brief explanation of each of the comparative algorithms to
allow the reader to appreciate the key discrepancies between them.

Section 3 will present the effects of other submissions and their findings.

Section 4 would go over the configuration process and configurations used, and
the elements of the device used.

Section 5 explains the approach of the performance evaluation and the settings
selected to make a proper comparison.

Section 6 addresses the simulation findings in detail and eventually.

Section 7 completes this article by summarizing the key points and other relevant
considerations.

2. Content

2.1 Data encryption algorithms Cryptography


Cryptographic systems are generically classified along three independent
dimensions:
Copyright

1
Faculty of Computers & Artificial Intelligence, Benha University

In addition, cryptographic structures are categorized according to three distinct


dimensions:
1. Class of operations used to translate plaintext to ciphertext. All
Encryption algorithms are based on two fundamental principles: substitution, in which each
element in the plaintext (bit, message, group of bits or letters) is transformed into another
element, and transposition, in which elements are rearranged in the plaintext. The basic
prerequisite is that no information is lost (i.e. that all operations are reversible). Most
processes, called drug processes, require several replacement and transposition phases.
2. The number of keys which was used. If the sender and recipient are using the same
key, then the program
Is called symmetric, simple, hidden, or standard encryption.
If every sender and recipient uses a separate key, then the program is referred to as
Asymmetric encryption, two-key or a public-key encryption.
3. The way it handles the plaintext. The data is transmitted into a block chip
One block of elements at a time, each block generating an output block.
A stream cipher continuously processes the input components, generating output
One aspect at a time, as it fits. [1]

2.2 Standard Date Encryption


Block ciphers are the most commonly used symmetric encryption algorithms. A
block cipher transforms plaintext data into blocks of fixed size and generates a block of
Equal size ciphertext for a single plaintext block. This section and the next concentrate on
the three most common symmetric block ciphers: Data Encryption Standard (DES),
Driple DES (3DES), and Advanced Encryption Standard ( AES). Data Encryption
Standard The most commonly used encryption scheme is based on the Data Encryption
Standard ( DES) introduced in 1977 By National Standards Agency, previously National
Standards Office
Norms and Science Institute (NIST), as FIPS 46 (Data Encryption Standard,
January 1977). The algorithm itself is referred to as the Data Encryption Algorithm
(DEA).2 You will define the DES algorithm as below. The plaintext comprises 64 bits in

2
Faculty of Computers & Artificial Intelligence, Benha University

Length and key is 56 bits long; larger amounts of plaintext are translated into 64-bit
blocks. The structure of DES is a minor variation of the network of Feistel. There are 16
processing rounds. From the 56-bit key originally used,
16Subkeys are generated, of which one is used per round The decryption process with
DES is practically similar to the encryption process
PROCEDUCT. The law is as follows: Using the ciphertext as the DES algorithm input
but In reverse order using the Ki subkeys. That is, using K16 on first iteration, using
K15 on first iteration
Second iteration, and so forth before seventeenth and last iteration of K1 is used.

2.3 Advanced Norm Encryption

This released the Advanced Encryption Standard ( AES) as federal information


FIPS 197 (Advanced Encryption Standard, November 2001), computing standard. It's
programmed to replace DES and triple DES with a more stable and powerful algorithm.
Algorithm summary.
AES has a 128-bit block length and key length which can be 128, 192, or 256-bit.
We assume a key length of 128 bits in the description of this section which is likely to be
the most commonly implemented one. Figure 20.3 outlines the overall AE structure. The
encryption data, and The decryption algorithms are a single block of 128 bytes. This
block is represented in FIPS 197 as a square matrix of bytes. This block is copied into the
State list, which is updated at each encryption or decryption point. State after the final
stage Are copied to Matrix output. Likewise the 128-bit key is depicted as a byte square
matrix. This key is then expanded into an sequence of key schedule words; each word is
4 bytes, and for the 128-bit version, the cumulative key schedule is 44 characters. In a
matrix the ordering of bytes is by column. The first 4 bytes of a 128-bit plaintext entry to
the encryption cipher, for example, occupy the first column of the matrix, the second 4
bytes occupy the second column, and so forth. Similarly, the expanded key's first 4 bytes,
that form a term, occupy the w matrix's first column. The following observations provide
some insight into AES:
1 . One remarkable characteristic of this system is that the system is not Feistel.

3
Faculty of Computers & Artificial Intelligence, Benha University

Recall that in the classic Feistel layout, half of the data block is used to
Alter the other half of the data block, then swap the halves. AES does so
Do not use a Feistel structure but use substitutions and permutations to process the whole
data block in parallel during each round.
2. The key given as feedback is broadened into a 44-bit 32-bit array
Phrases, w[i]. For each round, four distinct words (128 bits) serve as the round key.
3. Four separate phases are used, one on permutation and three on replacement:
• Swap Bytes: Uses a table called an S-box,3 to execute a byteby-
Byte Block Replacement
• Shift Rows: A simple, row-by-row permutation
• Switch Columns: A substitution that switches each byte as a feature in a column
Of all the bytes in that column
• Add Round Key: A basic bitwise XOR with a portion of the current block
Of Primary Extended.

2.4 AES Encryption and Decryption

The key only makes use of the Add Round Key point. That's why the Cipher
Starts with an Add Round Main stage and finishes. Any further move, added to the
Beginning or finish, is reversible without the knowledge of the key, and will add
No evidence. The stage of adding round key alone wouldn't be formidable. The other
three steps mix the pieces together, which will not have much defense by themselves (2)
The RC4 Algorithm.
As chain ciphers. In this section the sample RC4 can be implemented in only a
few lines of code. Figure 20.5, based on [SING11] performance, compares RC4
execution times to two modes of the AES symmetric block cipher. A block cipher has the
bonus of being able to reuse the keys. If, however, two plaintexts are encrypted using a
stream cipher with the same key, then cryptanalysis is always very easy [DAWS96]. If
the two fluxes of ciphertext are XORed together, the consequence is the XOR of the
original plaintext. Unless the plaintexts are text strings, credit card numbers, or other

4
Faculty of Computers & Artificial Intelligence, Benha University

streams of bytes with known properties, then cryptanalysis can succeed. For applications
requiring encryption / decryption of a data stream, such as
A stream cipher may be the safer option over a data transmission channel or a browser /
web connection. Block ciphers could be more suitable for programs that work with data
structures, such as file transfer, e-mail, and database. And in nearly any use, any type of
cipher may be used.
The Algorithm on RC4 :RC4 is a stream cipher conceived for RSA Security
by Ron Rivest in 1987. It's a good idea.
Variable-key-size cipher stream with byte-oriented processing. The algorithm is
based upon a random permutation being used. Research shows that the cypher duration is
highly expected to reach 10100 [ROBS95]. Eight to seventeen machine operations are
needed per output bit, and in software, the cipher can be expected to run very quickly.
RC4 is used in the SSL / TLS (Secure Sockets Layer / Transport Layer Security)
specifications established for Web browser-to-server communication. It is used in WEP
as well (Wired Equivalent Privacy) protocol and the newer WiFi Protected Access
(WPA) protocol that are part of the IEEE 802.11 wireless LAN standard. RC4 had been
protected by RSA Security as a trade secret. The RC4 algorithm was anonymously added
to the Cypherpunks anonymous remailers site on the internet in September 1994. The
RC4 algorithm is outstandingly simple and straightforward to understand. To initialize a
256-byte state, a variablelength key of 1 to 256 bytes (8 to 2048 bits) is used
MATTER

In this section , we look at the authentication of messages with hash code


approach.
Appendix E looks at the block ciphers-based message authentication. Over the last years,
The interest in developing a MAC derived from a cryptographic hash code, such as SHA-
1, has been increasing. The reasons for the concern are as follows:
• In software, cryptographic hash functions typically perform faster than standard
encryption algorithms like DES.
• Library code is widely available for cryptographic hash functions.
A hash function such as SHA-1 was not built and can not be used as a MAC

5
Faculty of Computers & Artificial Intelligence, Benha University

Using for that reason explicitly, as it does not rely on a hidden key. A number of
proposals have been made for adding a hidden key into an existing hash algorithm.
HMAC [BELL96] is the solution that got the most support.
HMAC was released as RFC 2104 (HMAC: Keyed-Hashing for Message
Authentication, 1997), was used as the mandatory MAC for IP Protection and is used in
other Internet protocols, such as Transport Layer Security ( TLS) and Secure Electronic
Transaction (SET).

2.5 HMAC Architecture aims

RFC 2104 lists the following goals for HMAC design:


• Available hash functions to use without modification — especially hash
Functions that fit well in the program, and for which code is free and readily accessible
Show.
• To promote the substitution of the embedded hash function in a quicker case
Or consider or need more stable hash functions.
• Holding theFirst hash function, without incurring a hash function
Major degradation.
• Easy use of and handle keys.
• To have a well-comprehended cryptographic analysis of the strength of the
Self authentication
Mechanism focused on logical Embedded assumptions
Task to Hash.
The first two goals are critical to HMAC 's acceptance. HMAC views the hash
function like a black box. There are two drawbacks of this. Firstly, an existing hash
function implementation can be used as a framework to implement HMAC. The majority
of the HMAC technology is prepackaged in this manner and ready to go without
alteration. Third, If a certain hash function is ever to be replaced in an HMAC
implementation, all that is needed is to delete the original hash function module and
transfer it into the new module. This may be achieved if a quicker hash function is
desired. More specifically, if the protection of the embedded hash function was violated,

6
Faculty of Computers & Artificial Intelligence, Benha University

HMAC security could be maintained by simply deleting the embedded hash function
Were required. More relevant, if the protection
HMAC protection may be maintained from the embedded hash function simply
by replacing the embedded hash function with a more stable one. In addition, the last
design goal in the preceding list is the key gain For HMAC among other hash based
schemes offered. HMAC is secure to show
Provided that the embedded hash function is cryptographically sound
Forces. We come back to this later in this section but first we look at the structure
By HMAC [3]

2.6 Algorithm at HMAC

The total HMAC activity is shown in figure .1. Let us define what is next
Conditions:
H = feature of embedded hash (for example, SHA)
M = input message to HMAC (including the padding specified in the hash function)
Yi = M block ith, 0 ... I ... (L-1)
L = block count in M
B = Bit count in a block
N = length of hash code generated with embedded hash function
K = secret key; if the key length exceeds b, the key is input to the hash
N-bit key function; suggested length is Ún n
K+ = K padded to the left with zeros, such that the output is bits in length
ipad = 00110110 (36 in hexadecimal)
Opad = 01011100, repeated b/8 times (5C in hexadecimal)

7
Faculty of Computers & Artificial Intelligence, Benha University

Fig 1 HMAC Structure

2.7 Other algorithms for the public-key cryptography

Two other algorithms with a shared key find market acceptance: DSS, and
Elliptic- cryptography with slope.
Online signature standard The National Institute of Technology and Standards
(NIST), as the Federal Information Processing Standard FIPS 186-4 [Digital Signature
Standard (DSS), July 2013], issued this. The DSS exploits the SHA-1 and Presents the
Digital Signature Algorithm (DSA), a new digital signing technique.
The DSS was first proposed in 1991 and revised for public response in 1993
Feedback on the health of the System. More limited changes were made in 1996-2013.
The DSS uses an algorithm designed to only provide the digital one Function to
signature. Unlike RSA it can't be used to encrypt or share key [4]

8
Faculty of Computers & Artificial Intelligence, Benha University

3. Conclusion

Encryption is a encryption technique where the key is stored in such a way that it
can only be accessed by authorized users. It uses the encryption algorithm to produce
ciphertext, which can be read only when decrypted

References

[1] “Data.Algorithm”.”storagecraft”Retrieved.May,20,2005.from.”https://blog.storagecraf
t.com/5-common-encryption-algorithms/”
[2] “Data.encryption”.”tutorialspoint“.Retrieved.Sep,5,2001.from”https://www.tutorialsp
oint.com/cryptography/data_encryption_standard.htm”
[3] “Data”.”geeksforgeeks”.”Retrieved”.Oct,10,2006.from
“https://www.geeksforgeeks.org/rc4-encryption-algorithm/”.
[4] “Algoritm”.”condor”.Retrieved.Nov,20,2010.from”https://condor.depaul.edu/ichu/ds4
20/lecture/1030/public_key_encryp.htm”

You might also like