ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 1
CHAPTER 1
INTRODUCTION
1.1 AIM
To implement and improve the performance of Advanced Encryption Standard algorithm
by using multicore systems and Open MP API extracting as much parallelism as possible from
the algorithm in parallel implementation approach.
1.2 SCOPE
The requirement of information security on a network has become highly challenging.
Cryptography is a method to provide information confidentiality, authenticity and integrity. The
cryptography overcomes several challenges such as execution time, memory requirement, and
computation power. However, one cannot get desired outcomes by using sequential computation.
In this project, the introduction of parallel computation using multicore processors by
parallelizing the execution of the algorithm in multiple cores and also analyze the effectiveness
of the Advanced Encryption Standard (AES) algorithm on dual core processor by using Open
MP API to reduce the execution time. This process is validated using JAVA platform.
1.3 OBJECTIVES
 To facilitate encryption and decryption of large data.
 To reduce execution time by using multicore system.
 To compare the execution time of single core and multicore systems.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 2
CHAPTER 2
METHODOLOGY
 The input is a text file consisting of n-blocks of data.
 The first n/2 blocks can be assigned to one core for encryption/decryption, while another
n/2 blocks can be assigned to another core for performing encryption/decryption.
 The encryption/decryption on multiple blocks of data is done simultaneously by using the
concept of simultaneous multithreading, some of the blocks by one core and some of the
blocks by another core. This process will continue until the end of the file.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 3
Explanation of the flowchart
Step 1: The system starts execution.
Step 2: The user will be uploading the large file for the system. The system reads this large file
and stores in the program buffer.
Step 3: The large file will be divided into two equal parts. For example, if the input file is of
1GB, then it will be divided into two parts each with 500MB. In other words, if the input file has
10,000 lines, then the system will be dividing the file into two parts each having 5000 lines.
(Note: The efficiency of the system can even further be improved by dividing the input file into
more than two parts (like 4, 6, or 8 parts in case we have quad core, hexa core, or octa core
processor respectively.)
Step 4: Each of the input parts will be encrypted by an independent CPU core. For instance, first
part of the file will be encrypted by Core 0; second part of the file will be encrypted by core 1,
etc.
Step 5: Output of each CPU cores will be combined to form a single encrypted file.
Step 6: The total time taken from all the above steps are calculated.
Step 7: System stops execution.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 4
CHAPTER 3
REQUIREMENT ANALYSIS
3.1 Introduction
A requirements specification for a software system is a complete description of the
behavior of a system to be developed. It includes functional requirements and non-functional
requirements. A functional requirement includes a set of use cases that describe all the
interactions the users will have with the software. Use cases are also known as functional
requirements. Non-functional requirements are requirements which impose constraints on the
design or implementation (such as performance engineering requirements, quality standards, or
design constraints).
3.2 Functional Requirements
Functional Requirements are those that refer to the functionality of the system, i.e., what
Services it will provide to the user.
1. User account operation provides the following functionalities with respect to the end
users of the system:
 Creating a new account.
 Login to an existing account.
 Logout from an account.
 Delete an Account.
 Change the password.
 Retrieve the password.
 Update the profile.
2. The keys component will provide following functionality:
 Generation of the key.
3. The encryption component will provide following functionalities:
 Uploading of a text file.
 Specifying the resultant path after encryption.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 5
4. The decryption component will provide following functionalities:
 Uploading the encrypted file.
 Specifying the resultant path after decryption.
3.3 NONFUNCTIONALREQUIRMENTS
These are requirements that are not functional in nature, that is, these are constraints within
which the system must work.
Modifiability: The system design should allow modification of the existing functionality of the
application.
Extensibility: The system design of the application must be flexible enough, so that any further
implementations or enhancements are allowed.
Usability: The user must find it very easy to use the application.
Reusability: The system design should contain components or modules and classes which can
be used again to add new functionalities with slight or no modification.
Scalability: The application should function well even if it is changed in size or approach being
used to meet the user needs.
3.4 Input Requirement
 Input is given by the User as a text file.
3.5 Output Requirement
 The encryption component gives encrypted file of the input text file. This encrypted file
is fed as input to the decryption component which gives the original input text.
3.6 Hardware Requirements
 Processor : Intel core 2 Duo processor
 Hard Disk : 40 GB hard disk
 RAM : 2 GB RAM
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 6
3.7 Software Requirements
 Operating System : Windows 7
 Database : MySQL
 Language : core Java, advanced Java
 Development Kit : JDK 1.8
 Web Server : Apache tomcat 9
 Development Tool : Eclipse
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 7
CHAPTER 4
SYSTEM DESIGN
4.1 Data Flow Diagram
En
Fig. 4.1: DATA FLOW DIAGRAM
Create
account
Plain text file
Output folder
Identifier
Key
generation
Plain text file
Encrypted file
Output folder
Windows Builder
Plugins
MYSQL
AES-Encryption improved
AES-Decryption improved
Login/
Logout
Edit
Profile
Change
Password
Forgot
Password
Delete
Profile
Encryption
Decryption
Comparison
Keys
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 8
Explanation of the Data Flow Diagram
MySQL database
MySQL database is used for storing the user account information like email, password,
gender, mobile, first name, last name, address, etc.
User Account operation
User account operation provides the following functionalities with respect to the end
users of the system:
 Create a new account so that the user gets access to our system.
 Login to an existing account thus creating a new session.
 Logout from an account after performing various operations within the session.
 Delete an Account in case the user no longer needs access to the system.
 Change the password for an existing account.
 Retrieve the password for an account in email in case the user forgets the password.
 Update the profile by modifying the values provided during the registration step.
Keys
Using this component, the end user can generate a new Key used for performing
encryption operations by specifying a unique identifier as an input to this component.
Encryption
This component will be used by the end users to upload a new file which must be
encrypted. The user will also specify the path where the resultant file (after encryption) must be
stored. This component communicates the following components:
 It communicates with the Keys component to retrieve the keys that will be used for
encryption.
 It also communicates with AES-Encryption-Improved component to invoke the
algorithm.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 9
Decryption
This component will be used by the end users to upload an encrypted file which must be
decrypted. The user will also specify the path where the resultant file (after decryption) must be
stored. This component communicates the following components:
 It communicates with the Keys component to retrieve the keys that will be used for
decryption. The keys used for encryption will be the same as the key that will be used for
decryption. Thus, AES is called as Symmetric Encryption.
 It also communicates with AES-Decryption-Improved component to invoke the inverse
of the algorithm.
AES-Encryption-Improved
This component will have the implementation of the improved encryption AES
algorithm. This component divides the input file into multiple parts and executes each of these
parts on a different CPU cores to achieve concurrency.
AES-Decryption-Improved
This component will have the implementation of the improved decryption AES
algorithm. This component divides the input file into multiple parts and executes each of these
parts on a different CPU cores to achieve concurrency.
Comparison
This component is used for comparing the performance of the proposed system with that
of an existing system. This component accepts a large file as an input and performs encryption
on the file using the proposed system and using existing approach. It records the time taken by
both the systems and outputs the results.
Windows Builder Eclipse Plugin
Windows builder eclipse plugins are the libraries used for developing Java swings and
AWT/SWT components which will be used for developing the frontend screen for the system.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 10
4.2 Use Case Diagram
Fig. 4.2: Use Case Diagram
Account
operation
Keys
Encryption
Comparison
Decryption
Create account
Delete profile
Login/Logout
Edit profile
Forgot password
Change password
Identifier
Key generation
Plain text file
Output folder
Encrypted file
Output folder
Plain text file
Graph
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 11
CONCLUSION
The concept of parallel programming by using a multi-core processor is described and it
is shown how to efficiently and effectively implement the Advanced Encryption Algorithm by
using multicore systems and open MP API, extracting as much parallelism as possible from the
algorithm in parallel implementation approach. The execution time of the proposed system takes
less time when compare to the existing system for larger text files.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 12
REFERENCES
[1] M. Nagendra and M. Chandra Sekhar ., “Performance Improvement of Advanced Encryption
Algorithm using Parallel Computation”, International Journal of Software Engineering and Its
Applications.
[2] Supachai Thongsuk1, Prabhas Chongstitvatana., “An implementation of AES algorithm on
multicore processors for high throughput”, Department of Computer Engineering Faculty of
Engineering, Chulalongkorn University Bangkok, Thailand.
[3] Nhat-Phuong Tran, Myungho Lee*, Sigwon Hong., “Parallel Execution of AES-CTR
Algorithm Using Extended Block Size”, Dept of Computer Science and Engineering, Myong Ji
University.
[4] Suresh Sharma, T S B Sudarshan., “Design of an Efficient Architecture for Advanced
Encryption Standard Algorithm Using Systolic Structures”, International Conference of High
Performance Computing.
[5] Sliman Arrag1, Abdellatif Hamdoun 2, Abderrahim Tragha 3 and Salah eddine Khamlich.,
“Design and Implementation A different Architectures of mixcolumn in FPGA”, Department of
Electronics and treatment of information UNIVERSITE HASSAN II MOHAMMEDIA,
Casablanca, Morocco.
[6] Juan C. Pichel, David E. Singh and Jes´us Carretero., “Reordering Algorithms for Increasing
Locality on Multicore Processors”, Computer Science Dpt. Universidad Carlos III de Madrid,
Spain.
ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR
DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 13
Signature of Students:
Chethan B.M. 4BB13CS011 …………………..
Nikhil Jain C.S. 4BB13CS021 …………………..
Sharath M.S. 4BB13CS029 …………………..
Mrs. Kavitha C.R. Mr. Nagaraju S. Mrs. Kavitha C.R.
Asso. Prof. & Guide Asst. Prof. & Coordinator Asso. Prof. & HOD

More Related Content

DOC
Tcp performance Final Report
DOCX
Routing & Switching report
PDF
L7: Admin-Tool (english)
PDF
Distributed computing
DOC
Improving software system load balancing using messaging.
PDF
Cisco project ideas
PPTX
Task assignment and scheduling
PPT
Tcp performance Final Report
Routing & Switching report
L7: Admin-Tool (english)
Distributed computing
Improving software system load balancing using messaging.
Cisco project ideas
Task assignment and scheduling

What's hot (6)

PDF
Project report
PPTX
Client server chat application
PPTX
Oracle soa cloud project
PPTX
Session Layer
PDF
Cisco ccna certification knowledge to pass the exam
PDF
0index
Project report
Client server chat application
Oracle soa cloud project
Session Layer
Cisco ccna certification knowledge to pass the exam
0index
Ad

Similar to Second phase report on "ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR " (20)

PPTX
Second phase slide presentation on "ANALYZING THE EFFECTIVENESS OF THE ADVANC...
DOCX
First phase report on "ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION...
DOCX
Synopsis on "ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ...
PPTX
First phase slide presentation on "ANALYZING THE EFFECTIVENESS OF THE ADVANCE...
PPTX
Advance Encryption Standard and its better performance
PDF
Module 2 network and computer security
PDF
A design of a fast parallel pipelined implementation of aes advanced encrypti...
PDF
Advanced approach for encryption using advanced encryption standard with chao...
PDF
Advanced Encryption Standard (AES) Implementaion using Java
PDF
Advanced Encryption Standard (AES)
PDF
Usability of developed multiple file encryption using rijndael algorithm
PPTX
File Security System_2
PDF
PDF
High Speed Optimized AES using Parallel Processing Implementation
PDF
H0154448
PDF
An Optimized Parallel Mixcolumn and Subbytes design in Lightweight Advanced E...
PPTX
The origin and evaluation criteria of aes
PDF
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
PDF
Aes 128 192_256_bits_project_report
PDF
M021201092098
Second phase slide presentation on "ANALYZING THE EFFECTIVENESS OF THE ADVANC...
First phase report on "ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION...
Synopsis on "ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ...
First phase slide presentation on "ANALYZING THE EFFECTIVENESS OF THE ADVANCE...
Advance Encryption Standard and its better performance
Module 2 network and computer security
A design of a fast parallel pipelined implementation of aes advanced encrypti...
Advanced approach for encryption using advanced encryption standard with chao...
Advanced Encryption Standard (AES) Implementaion using Java
Advanced Encryption Standard (AES)
Usability of developed multiple file encryption using rijndael algorithm
File Security System_2
High Speed Optimized AES using Parallel Processing Implementation
H0154448
An Optimized Parallel Mixcolumn and Subbytes design in Lightweight Advanced E...
The origin and evaluation criteria of aes
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
Aes 128 192_256_bits_project_report
M021201092098
Ad

Recently uploaded (20)

PDF
First part_B-Image Processing - 1 of 2).pdf
PDF
Computer System Architecture 3rd Edition-M Morris Mano.pdf
PPTX
Chemical Technological Processes, Feasibility Study and Chemical Process Indu...
PDF
Present and Future of Systems Engineering: Air Combat Systems
PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PPTX
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PDF
LOW POWER CLASS AB SI POWER AMPLIFIER FOR WIRELESS MEDICAL SENSOR NETWORK
PPTX
wireless networks, mobile computing.pptx
PDF
Prof. Dr. KAYIHURA A. SILAS MUNYANEZA, PhD..pdf
PDF
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
PDF
UEFA_Carbon_Footprint_Calculator_Methology_2.0.pdf
PPTX
mechattonicsand iotwith sensor and actuator
PPTX
CN_Unite_1 AI&DS ENGGERING SPPU PUNE UNIVERSITY
DOC
T Pandian CV Madurai pandi kokkaf illaya
PPTX
Principal presentation for NAAC (1).pptx
PDF
Exploratory_Data_Analysis_Fundamentals.pdf
PPTX
Software Engineering and software moduleing
PDF
Java Basics-Introduction and program control
PDF
August 2025 - Top 10 Read Articles in Network Security & Its Applications
First part_B-Image Processing - 1 of 2).pdf
Computer System Architecture 3rd Edition-M Morris Mano.pdf
Chemical Technological Processes, Feasibility Study and Chemical Process Indu...
Present and Future of Systems Engineering: Air Combat Systems
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
LOW POWER CLASS AB SI POWER AMPLIFIER FOR WIRELESS MEDICAL SENSOR NETWORK
wireless networks, mobile computing.pptx
Prof. Dr. KAYIHURA A. SILAS MUNYANEZA, PhD..pdf
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
UEFA_Carbon_Footprint_Calculator_Methology_2.0.pdf
mechattonicsand iotwith sensor and actuator
CN_Unite_1 AI&DS ENGGERING SPPU PUNE UNIVERSITY
T Pandian CV Madurai pandi kokkaf illaya
Principal presentation for NAAC (1).pptx
Exploratory_Data_Analysis_Fundamentals.pdf
Software Engineering and software moduleing
Java Basics-Introduction and program control
August 2025 - Top 10 Read Articles in Network Security & Its Applications

Second phase report on "ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR "

  • 1. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 1 CHAPTER 1 INTRODUCTION 1.1 AIM To implement and improve the performance of Advanced Encryption Standard algorithm by using multicore systems and Open MP API extracting as much parallelism as possible from the algorithm in parallel implementation approach. 1.2 SCOPE The requirement of information security on a network has become highly challenging. Cryptography is a method to provide information confidentiality, authenticity and integrity. The cryptography overcomes several challenges such as execution time, memory requirement, and computation power. However, one cannot get desired outcomes by using sequential computation. In this project, the introduction of parallel computation using multicore processors by parallelizing the execution of the algorithm in multiple cores and also analyze the effectiveness of the Advanced Encryption Standard (AES) algorithm on dual core processor by using Open MP API to reduce the execution time. This process is validated using JAVA platform. 1.3 OBJECTIVES  To facilitate encryption and decryption of large data.  To reduce execution time by using multicore system.  To compare the execution time of single core and multicore systems.
  • 2. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 2 CHAPTER 2 METHODOLOGY  The input is a text file consisting of n-blocks of data.  The first n/2 blocks can be assigned to one core for encryption/decryption, while another n/2 blocks can be assigned to another core for performing encryption/decryption.  The encryption/decryption on multiple blocks of data is done simultaneously by using the concept of simultaneous multithreading, some of the blocks by one core and some of the blocks by another core. This process will continue until the end of the file.
  • 3. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 3 Explanation of the flowchart Step 1: The system starts execution. Step 2: The user will be uploading the large file for the system. The system reads this large file and stores in the program buffer. Step 3: The large file will be divided into two equal parts. For example, if the input file is of 1GB, then it will be divided into two parts each with 500MB. In other words, if the input file has 10,000 lines, then the system will be dividing the file into two parts each having 5000 lines. (Note: The efficiency of the system can even further be improved by dividing the input file into more than two parts (like 4, 6, or 8 parts in case we have quad core, hexa core, or octa core processor respectively.) Step 4: Each of the input parts will be encrypted by an independent CPU core. For instance, first part of the file will be encrypted by Core 0; second part of the file will be encrypted by core 1, etc. Step 5: Output of each CPU cores will be combined to form a single encrypted file. Step 6: The total time taken from all the above steps are calculated. Step 7: System stops execution.
  • 4. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 4 CHAPTER 3 REQUIREMENT ANALYSIS 3.1 Introduction A requirements specification for a software system is a complete description of the behavior of a system to be developed. It includes functional requirements and non-functional requirements. A functional requirement includes a set of use cases that describe all the interactions the users will have with the software. Use cases are also known as functional requirements. Non-functional requirements are requirements which impose constraints on the design or implementation (such as performance engineering requirements, quality standards, or design constraints). 3.2 Functional Requirements Functional Requirements are those that refer to the functionality of the system, i.e., what Services it will provide to the user. 1. User account operation provides the following functionalities with respect to the end users of the system:  Creating a new account.  Login to an existing account.  Logout from an account.  Delete an Account.  Change the password.  Retrieve the password.  Update the profile. 2. The keys component will provide following functionality:  Generation of the key. 3. The encryption component will provide following functionalities:  Uploading of a text file.  Specifying the resultant path after encryption.
  • 5. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 5 4. The decryption component will provide following functionalities:  Uploading the encrypted file.  Specifying the resultant path after decryption. 3.3 NONFUNCTIONALREQUIRMENTS These are requirements that are not functional in nature, that is, these are constraints within which the system must work. Modifiability: The system design should allow modification of the existing functionality of the application. Extensibility: The system design of the application must be flexible enough, so that any further implementations or enhancements are allowed. Usability: The user must find it very easy to use the application. Reusability: The system design should contain components or modules and classes which can be used again to add new functionalities with slight or no modification. Scalability: The application should function well even if it is changed in size or approach being used to meet the user needs. 3.4 Input Requirement  Input is given by the User as a text file. 3.5 Output Requirement  The encryption component gives encrypted file of the input text file. This encrypted file is fed as input to the decryption component which gives the original input text. 3.6 Hardware Requirements  Processor : Intel core 2 Duo processor  Hard Disk : 40 GB hard disk  RAM : 2 GB RAM
  • 6. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 6 3.7 Software Requirements  Operating System : Windows 7  Database : MySQL  Language : core Java, advanced Java  Development Kit : JDK 1.8  Web Server : Apache tomcat 9  Development Tool : Eclipse
  • 7. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 7 CHAPTER 4 SYSTEM DESIGN 4.1 Data Flow Diagram En Fig. 4.1: DATA FLOW DIAGRAM Create account Plain text file Output folder Identifier Key generation Plain text file Encrypted file Output folder Windows Builder Plugins MYSQL AES-Encryption improved AES-Decryption improved Login/ Logout Edit Profile Change Password Forgot Password Delete Profile Encryption Decryption Comparison Keys
  • 8. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 8 Explanation of the Data Flow Diagram MySQL database MySQL database is used for storing the user account information like email, password, gender, mobile, first name, last name, address, etc. User Account operation User account operation provides the following functionalities with respect to the end users of the system:  Create a new account so that the user gets access to our system.  Login to an existing account thus creating a new session.  Logout from an account after performing various operations within the session.  Delete an Account in case the user no longer needs access to the system.  Change the password for an existing account.  Retrieve the password for an account in email in case the user forgets the password.  Update the profile by modifying the values provided during the registration step. Keys Using this component, the end user can generate a new Key used for performing encryption operations by specifying a unique identifier as an input to this component. Encryption This component will be used by the end users to upload a new file which must be encrypted. The user will also specify the path where the resultant file (after encryption) must be stored. This component communicates the following components:  It communicates with the Keys component to retrieve the keys that will be used for encryption.  It also communicates with AES-Encryption-Improved component to invoke the algorithm.
  • 9. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 9 Decryption This component will be used by the end users to upload an encrypted file which must be decrypted. The user will also specify the path where the resultant file (after decryption) must be stored. This component communicates the following components:  It communicates with the Keys component to retrieve the keys that will be used for decryption. The keys used for encryption will be the same as the key that will be used for decryption. Thus, AES is called as Symmetric Encryption.  It also communicates with AES-Decryption-Improved component to invoke the inverse of the algorithm. AES-Encryption-Improved This component will have the implementation of the improved encryption AES algorithm. This component divides the input file into multiple parts and executes each of these parts on a different CPU cores to achieve concurrency. AES-Decryption-Improved This component will have the implementation of the improved decryption AES algorithm. This component divides the input file into multiple parts and executes each of these parts on a different CPU cores to achieve concurrency. Comparison This component is used for comparing the performance of the proposed system with that of an existing system. This component accepts a large file as an input and performs encryption on the file using the proposed system and using existing approach. It records the time taken by both the systems and outputs the results. Windows Builder Eclipse Plugin Windows builder eclipse plugins are the libraries used for developing Java swings and AWT/SWT components which will be used for developing the frontend screen for the system.
  • 10. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 10 4.2 Use Case Diagram Fig. 4.2: Use Case Diagram Account operation Keys Encryption Comparison Decryption Create account Delete profile Login/Logout Edit profile Forgot password Change password Identifier Key generation Plain text file Output folder Encrypted file Output folder Plain text file Graph
  • 11. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 11 CONCLUSION The concept of parallel programming by using a multi-core processor is described and it is shown how to efficiently and effectively implement the Advanced Encryption Algorithm by using multicore systems and open MP API, extracting as much parallelism as possible from the algorithm in parallel implementation approach. The execution time of the proposed system takes less time when compare to the existing system for larger text files.
  • 12. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 12 REFERENCES [1] M. Nagendra and M. Chandra Sekhar ., “Performance Improvement of Advanced Encryption Algorithm using Parallel Computation”, International Journal of Software Engineering and Its Applications. [2] Supachai Thongsuk1, Prabhas Chongstitvatana., “An implementation of AES algorithm on multicore processors for high throughput”, Department of Computer Engineering Faculty of Engineering, Chulalongkorn University Bangkok, Thailand. [3] Nhat-Phuong Tran, Myungho Lee*, Sigwon Hong., “Parallel Execution of AES-CTR Algorithm Using Extended Block Size”, Dept of Computer Science and Engineering, Myong Ji University. [4] Suresh Sharma, T S B Sudarshan., “Design of an Efficient Architecture for Advanced Encryption Standard Algorithm Using Systolic Structures”, International Conference of High Performance Computing. [5] Sliman Arrag1, Abdellatif Hamdoun 2, Abderrahim Tragha 3 and Salah eddine Khamlich., “Design and Implementation A different Architectures of mixcolumn in FPGA”, Department of Electronics and treatment of information UNIVERSITE HASSAN II MOHAMMEDIA, Casablanca, Morocco. [6] Juan C. Pichel, David E. Singh and Jes´us Carretero., “Reordering Algorithms for Increasing Locality on Multicore Processors”, Computer Science Dpt. Universidad Carlos III de Madrid, Spain.
  • 13. ANALYZING THE EFFECTIVENESS OF THE ADVANCED ENCRYPTION STANDARD ALGORITHM ON MULTICORE PROCESSOR DEPARTMENT OF COMPUTERSCIENCE AND ENGINEERING, BCE, SHRAVANABELAGOLA 13 Signature of Students: Chethan B.M. 4BB13CS011 ………………….. Nikhil Jain C.S. 4BB13CS021 ………………….. Sharath M.S. 4BB13CS029 ………………….. Mrs. Kavitha C.R. Mr. Nagaraju S. Mrs. Kavitha C.R. Asso. Prof. & Guide Asst. Prof. & Coordinator Asso. Prof. & HOD