Report
Report
BACHELOR OF ENGINEERING
(Electronics & Telecommunication Engineering)
Submitted by
Mayuresh Kiran Bachhav-(72256461K)
Chetan Sahebrao Panmand-(72256480F)
Krushna Bhausaheb Jadhav-(72256461K)
1
SANDIP INSTITUTE OF ENGINEERING AND MANAGEMENT
DEPARTMENT OF ELECTRONICS & TELECOMMUNICATION
CERTIFICATE
Dr. D. P. Patil
Principal
SANDIP INSTITUTE OF ENGINEERING & MANAGEMENT, NASHIK, (M.S.) 422213
2
Abstract
i
Acknowledgments
I take this opportunity to express my heartfelt gratitude to my guide, Prof. Dr. Vinay
Kumar Jain, for his constant encouragement, able guidance and support throughout
the course of this semester.
ii
INDEX
Abstract i
Acknowledgments ii
List of Figures v
List of Tables vi
1 INTRODUCTION 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 LITERATURE SURVEY 5
3 SYSTEM METHODOLOGY 13
3.1 Proposed System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.2 System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3 Data Flow and Working . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.4 Algorithm Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4.1 AES Implementation . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4.2 SHA-256 Implementation . . . . . . . . . . . . . . . . . . . . . 18
3.5 Software Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.5.1 Frontend Architecture . . . . . . . . . . . . . . . . . . . . . . . 19
3.5.2 Cryptographic Implementation . . . . . . . . . . . . . . . . . . 19
3.5.3 Visualization and Analytics . . . . . . . . . . . . . . . . . . . . 20
3.6 Hardware Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.6.1 FPGA Implementation . . . . . . . . . . . . . . . . . . . . . . . 21
iii
3.6.2 IoT and RFID Integration . . . . . . . . . . . . . . . . . . . . . 21
3.7 Hardware Components . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.7.1 NodeMCU ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . 22
3.7.2 RFID Reader (RC522) . . . . . . . . . . . . . . . . . . . . . . . 23
3.7.3 MPU6050 Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.7.4 Vibration Sensor (SW-420) . . . . . . . . . . . . . . . . . . . . 24
3.7.5 Vicharak Shrike-lite FPGA Development Board . . . . . . . . . 25
3.8 System and Architecture Diagrams . . . . . . . . . . . . . . . . . . . . 26
4 PERFORMANCE ANALYSIS 30
4.1 Algorithm Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.1.1 Advanced Encryption Standard (AES) . . . . . . . . . . . . . . 30
4.1.2 Secure Hash Algorithm (SHA-256) . . . . . . . . . . . . . . . . 31
4.1.3 Algorithm Comparison . . . . . . . . . . . . . . . . . . . . . . . 32
4.2 System Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.1 Development Approach . . . . . . . . . . . . . . . . . . . . . . 33
4.2.2 Development Phases . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 Software Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.1 Project Requirements . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.2 Project Operations . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.3 Software Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4 Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.5 Experimental Analysis and Results . . . . . . . . . . . . . . . . . . . . 38
4.5.1 Performance Testing and Response Time . . . . . . . . . . . . . 38
4.5.2 Security Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.6 Dashboard and Output Analysis . . . . . . . . . . . . . . . . . . . . . . 40
5 CONCLUSION 43
5.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2 Future Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Bibliography 46
iv
List of Figures
v
List of Tables
vi
List of Abbreviations
IC Integrated Circuit
vii
IMPLEMENTATION OF EFFICIENT CRYPTOGRAPHIC ALGORITHM
CHAPTER 1
INTRODUCTION
1.1 Introduction
In the modern digital landscape, the exchange and storage of information have be-
come integral to almost every sector, including banking, healthcare, communication,
and defense. As the volume of digital transactions continues to grow, the need for
secure data transmission has become increasingly critical. Every piece of information
transmitted over the Internet—whether it is a personal message, a bank transaction,
or a file transfer—must be protected from unauthorized access, modification, or inter-
ception. Cryptography provides the mathematical foundation for data protection. It
ensures that sensitive information remains confidential and unaltered by transforming
plaintext into an unreadable format through various encryption techniques. It also
guarantees authentication and non-repudiation, confirming that messages originate
from legitimate sources and remain unmodified during transit. Among the crypto-
graphic algorithms developed to achieve these objectives, the Advanced Encryption
Standard (AES) and the Secure Hash Algorithm (SHA) families are the most trusted
and widely adopted worldwide.
The AES algorithm uses symmetric key encryption to secure digital data efficiently.
It operates on fixed block sizes with varying key lengths such as 128, 192, or 256 bits,
offering flexibility between speed and security. AES is known for its resistance to
known cryptanalytic attacks and is commonly used in Wi-Fi security (WPA2/WPA3),
cloud storage encryption, and financial communication systems. On the other hand,
SHA-256, part of the SHA-2 family, is a cryptographic hash function that transforms
input data into a fixed-size 256-bit digest. It is extensively used in digital signa-
tures, blockchain verification, and integrity validation processes. Although hardware
implementations like ASICs (Application-Specific Integrated Circuits) and FPGAs
(Field Programmable Gate Arrays) achieve high-speed cryptographic processing, they
demand specialized hardware design skills, expensive fabrication tools, and longer
development cycles. Such solutions are not ideal for academic or low-cost research
active, efficient, and educational. It bridges the gap between theoretical understanding
and practical implementation by providing a transparent view of how cryptographic
operations transform data within each algorithmic round. Such visualization assists
in comprehending how substitution, permutation, and key scheduling occur in AES,
and how compression and message padding work in SHA-256. Moreover, this environ-
ment serves as a testing and validation platform where users can compare algorithmic
performance under different input conditions. The project titled ”Implementation of
Efficient Cryptographic Algorithm” aims to make cryptography more accessible to
students, developers, and researchers. It demonstrates that software-based systems
can emulate hardware-level functionality while remaining flexible and cost-effective.
Through this platform, users can explore encryption and hashing techniques inter-
actively, gaining a comprehensive understanding of how data security mechanisms
operate in real-world systems. The work also provides a foundation for future devel-
opment toward hybrid software-hardware systems, optimized encryption modules, and
educational tools for secure digital design.
CHAPTER 2
LITERATURE SURVEY
Over the past two decades, cryptographic research has focused on enhancing data se-
curity while improving computational efficiency and resource utilization. Numerous
studies have explored both hardware and software implementations of encryption and
hashing algorithms to address the growing demand for secure digital communication.
The Advanced Encryption Standard (AES) and Secure Hash Algorithm (SHA) fami-
lies have been the center of attention for researchers due to their robustness and wide
range of applications. Renugadevi et al. (2022) presented an optimized hardware
implementation of the AES algorithm on an FPGA platform using a Mux–Demux
pair architecture to achieve low area occupancy and high throughput. Their work
demonstrated how specific logic optimizations could improve the performance of AES
on Virtex-7 and Zynq-7000 series FPGAs. The study proved that parallel execution
of AES rounds can significantly enhance encryption speed while reducing power con-
sumption, setting a benchmark for future lightweight designs.
Nguyen and colleagues (2025) proposed AES-RV, a RISC-V-based hardware acceler-
ator that integrates AES instructions directly into the processor pipeline. This ap-
proach achieved substantial improvements in latency and energy efficiency, making it
suitable for resource-constrained IoT environments. The integration of cryptographic
extensions within the CPU core also simplified software control and improved real-
time responsiveness in secure embedded systems. In another notable study, Jabbar
(2024) investigated the combination of AES and SHA algorithms for image encryp-
tion applications. The author introduced a method in which SHA-256 was used to
generate AES encryption keys dynamically. This hybrid approach strengthened key
unpredictability and improved resistance to brute-force attacks. The results indicated
that combining hashing with symmetric encryption enhances data confidentiality and
integrity, especially in multimedia and cloud-storage security. The work published by
Aalto University researchers in 2024 described the design of a RISC-V core integrated
with an AES-256 accelerator for embedded cryptographic systems. Their study em-
phasized the benefits of combining open-source processor architectures with dedicated
keys using SHA-256 to improve resistance against replay and brute-force attacks. The
research concluded that combining symmetric encryption and hash-based key man-
agement provides enhanced security for multimedia data, particularly in cloud stor-
age systems where confidentiality and authenticity are crucial. A study conducted by
Aalto University (2024) developed a RISC-V-based cryptographic processor that incor-
porated AES-256 and SHA-256 hardware accelerators. This implementation achieved
a high level of parallelism and reduced execution latency compared to conventional
microcontroller-based encryption. The design targeted embedded systems and smart
cards, showing that custom instruction sets combined with hardware accelerators can
achieve near-ASIC performance even in reconfigurable devices. MDPI’s 2024 paper on
lightweight AES accelerators examined various architectural trade-offs in implementing
AES for resource-constrained devices. The authors analyzed area–power–delay met-
rics and proposed a composite field-based S-box implementation to minimize hardware
complexity. The study also discussed side-channel attack resistance and introduced
masking techniques to protect AES from differential power analysis. These findings
emphasize that performance improvements in cryptographic systems must also con-
sider resilience against physical attacks.
In the domain of software cryptography, multiple studies have explored algorith-
mic optimization using parallel computing and GPU acceleration. Recent experi-
ments demonstrated that AES and SHA-256 can be efficiently parallelized to exploit
multicore CPU and GPU architectures, thereby improving execution speed for large
datasets. Some works introduced lookup-table-based substitution and precomputed
key scheduling to reduce processing cycles, achieving performance levels comparable
to mid-range hardware implementations. The Secure Hash Algorithm (SHA-256), a
member of the SHA-2 family, has also been extensively studied for its collision resis-
tance and computational behavior. Researchers have proposed improvements to reduce
the number of logical operations and optimize message padding for faster computation
on embedded processors. Several academic works have examined how SHA-256 can
be combined with AES for secure authentication, blockchain hashing, and password
protection. The use of SHA-256 in distributed ledger technology has proven its im-
portance in maintaining data integrity and verifying transactions without requiring
centralized authorities.
Recent literature has also highlighted the increasing importance of designing software-
based cryptographic simulators for educational and analytical purposes. Many univer-
sities and research institutions are now promoting interactive simulation environments
that replicate ASIC or FPGA behavior in software to make cryptographic education
more accessible. These tools allow students and developers to visualize encryption
and hashing operations in real-time without expensive hardware setups. Despite these
advancements, most high-performance implementations still rely on specialized hard-
ware, making them inaccessible for smaller laboratories or academic institutions. Very
few works have addressed the need for cost-effective platforms that combine algorithm
visualization, performance analysis, and security evaluation in a single integrated en-
vironment. This gap in the existing literature serves as the primary motivation for
this project.
The proposed project aims to develop a software-driven simulation framework that
implements AES-128, AES-256, and SHA-256 algorithms efficiently, allowing users to
input data, visualize encryption or hashing steps, and analyze performance metrics
such as processing time and round count. Unlike existing hardware-heavy research,
this work focuses on creating a lightweight, interactive, and educational platform that
bridges the gap between theoretical cryptography and hardware acceleration studies.
By analyzing previous research on AES and SHA optimization, the project leverages
proven algorithmic techniques and translates them into a web-based environment suit-
able for academic exploration and further development. This literature review under-
scores that while hardware continues to dominate performance benchmarks, software-
based cryptographic simulation remains a crucial area of research for accessibility,
learning, and algorithmic experimentation.
Table 2.1: Summary of Related Research Works on AES and SHA Implementations
Renugadevi2022 Low Area and IEEE Inter- Proposed an optimized AES ar-
N., et High Through- national Con- chitecture using resource shar-
al. put Implemen- ference on ing and pipelining on FPGA.
tation of AES Computing and Achieved improved throughput
Algorithm on Communica- with reduced logic utilization,
FPGA tion Systems suitable for low-power embedded
(ICCCS) systems.
Nguyen 2025 AES-RV: RISC- IEEE Transac- Introduced a custom RISC-V pro-
V.T., et V Based Accel- tions on VLSI cessor with integrated AES in-
al. erator for IoT Systems (IEEE structions. The design improved
Security Appli- TVLSI) energy efficiency and reduced la-
cations tency, demonstrating hardware–
software co-design benefits for
IoT encryption.
MDPI 2024 Security Eval- MDPI Electron- Presented lightweight AES archi-
Authors uation of ics Journal tectures optimized for low-area
Lightweight and low-power embedded appli-
AES Acceler- cations. Improved resistance to
ators for IoT side-channel attacks while main-
Devices taining encryption speed and re-
liability.
CHAPTER 3
SYSTEM METHODOLOGY
sion, and real-time performance metrics including execution time, throughput, and
round count. This educational component distinguishes our platform from existing
implementations by enabling users to observe how diffusion and confusion properties
propagate through algorithmic operations.
The hardware validation layer employs the Vicharak Shrike-lite development board fea-
turing a hybrid RISC-V RP2040 microcontroller and Renesas ForgeFPGA architecture.
The FPGA implements round-based AES encryption and SHA-256 compression func-
tions, with the RP2040 managing control flow and data transfer. Hardware-software
communication occurs via a 6-bit high-speed parallel interface, achieving low-latency
cryptographic offloading with minimal overhead.
The system architecture follows a client-server model with the web browser serving
as the client application and an optional Python Flask backend providing additional
processing capabilities. The architecture is designed to operate primarily client-side,
with all cryptographic simulations executing within the browser using the Web Crypto
API and custom JavaScript implementations. This design choice ensures portability,
eliminates server infrastructure requirements, and enables offline operation once the
application is loaded.
At the highest level, the architecture consists of three tiers. The presentation tier han-
dles user interaction, input validation, and results display through React components.
The simulation tier executes cryptographic algorithms, manages state transitions, and
coordinates visualization updates. The hardware abstraction tier manages communi-
cation with the FPGA board, translates software requests into hardware commands,
and returns hardware execution results for comparison.
The presentation tier implements four primary page flows: AES simulation, SHA
simulation, IoT monitoring, and RFID authentication. Each page provides algorithm-
specific controls, real-time output display, performance metrics, and export capabil-
ities. Navigation between pages occurs through a dashboard interface that presents
feature cards with descriptions and status indicators.
The simulation tier maintains application state through React hooks, managing mode
selection, key material, input artifacts, simulation status, and round counters. Crypto-
SIEM, Department of E&TC Engineering 2025–2026 14
IMPLEMENTATION OF EFFICIENT CRYPTOGRAPHIC ALGORITHM
graphic operations execute asynchronously using Promises and timer-driven events for
visual feedback. The simulation core branches by input type (text, file, or JSON), ex-
ecutes the appropriate processing path, and routes results to output surfaces including
text panels, file downloads, and JSON exports.
The hardware abstraction tier implements a command protocol over the USB-UART
bridge connecting the host computer to the Vicharak Shrike-lite board. Commands
include key loading, mode selection, data transfer, execution trigger, and result re-
trieval. The protocol uses fixed-length frames with checksum validation to ensure
reliable communication between software and hardware components.
Table 3.1: System Architecture Components
The data flow through the system follows a consistent pattern across all cryptographic
operations. Understanding this flow is essential for comprehending how user inputs
transform into encrypted outputs, hash values, or hardware validation results.
The working process begins with user authentication through the web interface. For
software-only operations, users directly access the AES or SHA simulation pages. For
hardware-validated operations, users connect the Vicharak Shrike-lite board via USB
and initialize the hardware interface through the application.
Step 1: Input Acquisition. The user provides input data through one of three methods:
direct text entry in a textarea field, file upload supporting binary and text formats,
or JSON import of a previous simulation artifact. For AES operations, the user
additionally specifies the cipher key in hexadecimal format, the operation mode (ECB
or CBC), and the key size (128 or 256 bits). For SHA-256, only the message input is
required.
Step 2: Input Validation. The system validates all inputs before processing. Key
length verification ensures AES-128 keys contain exactly 32 hex characters and AES-
256 keys contain 64 hex characters. Hexadecimal format validation checks that all
characters are within the valid range [0-9, A-F]. For file inputs, size limits prevent
excessive memory consumption. For JSON imports, schema validation ensures the
artifact contains required fields including algorithm identifier, mode, key hash, and
output ciphertext.
Step 3: Algorithm Execution. For software simulation, the system branches by input
type. Text inputs are encoded using UTF-8 TextEncoder, processed through the se-
lected algorithm, and decoded using TextDecoder. File inputs are read as ArrayBuffer,
processed in chunks for large files, and returned as downloadable Blob objects. For
hardware execution, the system transfers key material and input data to the FPGA
board via the UART interface, triggers execution, and retrieves results through the
command protocol.
Step 4: Visualization Update. During algorithm execution, the visualization engine
receives progress updates through React state changes. For AES, round counters in-
crement sequentially, displaying the current round number, sub-operation status (Sub-
Bytes, ShiftRows, MixColumns, AddRoundKey), and intermediate state values. For
SHA-256, block counters track progress through message scheduling and compression
rounds. Performance metrics update in real-time, showing elapsed time, estimated
throughput, and completion percentage.
Step 5: Result Presentation. Upon completion, results are displayed in multiple for-
mats. The output panel shows the primary result: ciphertext in hexadecimal format
for AES encryption, decrypted plaintext for AES decryption, or hash digest for SHA-
256. The metrics panel shows detailed performance statistics including total execution
time, throughput in Mbps, round count, and comparison with hardware execution
when available. Export options enable downloading results as files or JSON artifacts
for later import.
Step 6: Hardware Validation (Optional). When hardware is connected, the software
results are automatically compared against FPGA execution. The comparison panel
highlights any discrepancies and shows the hardware speedup factor. This cross-
validation ensures both software correctness and hardware functional accuracy.
256 extends this to 15 round keys (60 32-bit words) with additional transformation
complexity, requiring an extra set of SubWord and XOR operations per round key
generation cycle.
The SHA-256 hash function processes input data in 512-bit blocks through 64 rounds of
logical operations. The implementation includes complete message padding according
to FIPS 180-4 specifications, with length encoding and bit-wise preprocessing.
Message padding ensures the input length is congruent to 448 modulo 512. A single
’1’ bit is appended, followed by sufficient ’0’ bits, and finally the original message
length encoded as a 64-bit big-endian integer. This padding scheme guarantees that
the padded message can be divided into complete 512-bit blocks.
The compression function maintains eight 32-bit working variables (a through h) up-
dated through the message schedule array W[0..63]. Each round applies the functions
Ch (choice), Maj (majority), Sigma0, and Sigma1, along with constants K[0..63] de-
rived from the fractional parts of cube roots of prime numbers. The final hash value
is the concatenation of the eight working variables after processing all message blocks.
The constant-time nature of SHA-256 operations makes it particularly suitable for
hardware pipelining, as each round requires the same number of operations regardless
of input data. This property enables efficient FPGA implementations where multiple
message blocks can be processed concurrently through staged pipeline stages.
Table 3.2: AES and SHA-256 Specifications
The software implementation adopts a modern web technology stack optimized for per-
formance, maintainability, and user experience. The 75% software component handles
user interaction, algorithm simulation, visualization, and data persistence.
The frontend is built as a single-page application (SPA) using React 18 with Type-
Script for type safety. React Router DOM handles client-side navigation between
dashboard, AES simulator, SHA simulator, IoT monitor, and RFID pages. The com-
ponent architecture follows atomic design principles with reusable UI primitives from
shadcn/ui and Radix primitives, ensuring accessibility and consistent styling.
State management uses React hooks (useState, useEffect, useCallback) at the page
level, with no global state management library required given the focused scope. Each
page maintains its own simulation state, and navigation between pages preserves no
shared state, simplifying the architecture. TanStack Query provides async data pattern
scaffolding for future backend integrations.
Styling uses Tailwind CSS with a utility-first approach, enabling rapid development
and consistent design language. Custom color tokens derived from the document
palette ensure visual coherence across all pages. The design is responsive, adapting to
different screen sizes through Tailwind’s breakpoint utilities.
The cryptographic core uses a dual approach: the Web Crypto API for production-
grade AES-GCM operations and a custom JavaScript implementation for educational
visualization. The Web Crypto API provides high-performance encryption through
the browser’s native implementation, achieving near-native speeds for bulk data pro-
cessing.
For visualization purposes, a custom AES implementation in JavaScript traces each
round’s intermediate states. While slower than the Web Crypto API, this implemen-
tation enables step-by-step observation of SubBytes, ShiftRows, MixColumns, and
AddRoundKey transformations. Users can pause, resume, and step through execution
The visualization layer uses [Link] for algorithm-specific graphics including state matrix
evolution for AES and hash tree diagrams for SHA-256. Recharts provides performance
comparison charts showing throughput, execution time, and round count metrics across
different input sizes and algorithm variants.
ASICMetrics components present modeled hardware characteristics including esti-
mated LUT utilization, clock cycles per operation, and power consumption estimates.
These metrics are derived from analytical models calibrated against actual FPGA mea-
surements, providing educational insight into hardware design considerations without
requiring hardware expertise.
PerformanceChart components use Recharts to render bar charts, line charts, and
radar charts comparing software and hardware execution characteristics. Data is nor-
malized to enable fair comparison across different platforms and input sizes.
The hardware component, comprising 25% of the system scope, provides physical
validation of cryptographic operations and demonstrates real-world performance char-
acteristics. The hardware platform centers on the Vicharak Shrike-lite development
board with support for IoT sensors and RFID authentication modules.
The FPGA implements round-based AES encryption and SHA-256 compression using
Verilog HDL. The AES core uses a pipelined architecture where each round occupies a
separate stage, enabling new block processing every clock cycle after initial latency. S-
boxes are implemented as lookup tables in distributed RAM, balancing speed against
resource utilization.
The SHA-256 core implements a folded architecture that reuses a single round function
across all 64 rounds, minimizing resource consumption at the cost of higher latency
per block. This approach is suitable for the resource-constrained ForgeFPGA while
still achieving significant speedup over software implementations.
A 6-bit high-speed parallel interface connects the FPGA to the RP2040 microcon-
troller, enabling low-latency data transfer for cryptographic offloading. The interface
uses handshaking signals to ensure reliable communication and supports burst trans-
fers for efficient bulk data movement.
The IoT integration layer connects physical sensors to the software platform through
the RP2040 microcontroller. The MPU6050 accelerometer and gyroscope provide mo-
tion data that can trigger security events or serve as input to cryptographic operations.
The vibration sensor detects physical tampering attempts, enabling hardware-level in-
trusion detection.
The RFID module (RC522) handles proximity card authentication, reading tag UIDs
and validating them against an authorized database. Successful authentication grants
access to protected features; failed attempts log security events for audit purposes.
The RFID flow demonstrates how cryptographic primitives can protect physical access
control systems.
All hardware components communicate through standardized protocols: SPI for the
RFID reader, I2C for the MPU6050, and GPIO for the vibration sensor. The RP2040
aggregates sensor data and communicates with the host computer via USB-UART,
presenting a unified interface to the web application.
This section provides detailed explanations of each hardware component used in the
project, including their technical specifications, working principles, and roles within the
overall system architecture. Understanding these components is essential for compre-
hending the hardware-software interaction and the IoT security features demonstrated
by the platform.
The NodeMCU ESP8266 is a low-cost Wi-Fi microchip with full TCP/IP stack and
microcontroller capability, widely used in IoT applications. Although the primary de-
velopment board for this project is the Vicharak Shrike-lite, the ESP8266 serves as an
alternative wireless communication module for IoT demonstrations. The ESP8266 fea-
tures a Tensilica L106 32-bit processor running at 80 or 160 MHz, 64 KB of instruction
RAM, 96 KB of data RAM, and external flash memory typically 4 MB.
In the context of this project, the ESP8266 can function as a wireless bridge between
sensor data and the web dashboard. When configured as a soft access point or station
mode, the ESP8266 transmits sensor readings from the MPU6050 and vibration sensor
to the web application via HTTP or MQTT protocols. This wireless capability demon-
strates how cryptographic operations can secure IoT communication over untrusted
networks.
The ESP8266 operates at 3.3V with 5V tolerant GPIO pins, making it compatible
with a wide range of sensors and peripherals. Its built-in Wi-Fi antenna enables
The SW-420 is a digital vibration sensor module that detects shock and vibration
through a spring-type switch mechanism. When vibration exceeds a threshold, the
switch closes, triggering a digital output signal. The module includes an LM393 com-
parator for signal conditioning, providing a clean digital output to the microcontroller.
The sensor operates at 3.3V to 5V and provides both analog and digital outputs.
The digital output goes LOW when vibration is detected, enabling interrupt-driven
detection on the microcontroller. Sensitivity can be adjusted through a potentiometer
on the module, allowing calibration for different application requirements.
In the project architecture, the vibration sensor serves as a physical tamper detection
mechanism. When installed on an enclosure containing sensitive equipment, vibration
triggers a security event that is logged and reported through the web dashboard. This
demonstrates how physical security can be integrated with cryptographic monitoring
SIEM, Department of E&TC Engineering 2025–2026 24
IMPLEMENTATION OF EFFICIENT CRYPTOGRAPHIC ALGORITHM
systems.
The Vicharak Shrike-lite development board serves as the primary hardware platform
for this project. It features a unique hybrid architecture combining a RISC-V RP2040
microcontroller with a Renesas ForgeFPGA, enabling both software control and hard-
ware acceleration within a single compact board.
The RP2040 microcontroller is a dual-core ARM Cortex-M0+ device running at 133
MHz with 264 KB of SRAM and 4 MB of external flash memory. Its two cores enable
parallel processing: one core manages USB communication and application logic while
the other handles hardware interface protocols. The PIO (Programmable I/O) blocks
enable custom peripheral interfaces without dedicated hardware support.
The Renesas ForgeFPGA (SLG47910V) provides 1,120 Look-Up Tables (LUTs), 1,120
D-Flip Flops (DFFs), and 32 KB of Block RAM (BRAM). This compact FPGA is ideal
for learning and prototyping cryptographic hardware, offering sufficient resources for
AES and SHA-256 cores while remaining approachable for educational use. The FPGA
is programmed through a USB-UART bridge connected to the RP2040.
Key board specifications include: 37 GPIO pins for external connections, a PMOD
expansion connector for standardized peripheral modules, USB-C for power and pro-
gramming, and a 50 MHz system clock. The board measures 60 mm by 25 mm, making
it suitable for embedded deployments and portable demonstrations.
CHAPTER 4
PERFORMANCE ANALYSIS
This section provides detailed analysis of the AES and SHA-256 algorithms imple-
mented in the project, including their mathematical foundations, operational steps,
and comparative characteristics. Understanding these algorithms at a granular level
is essential for appreciating the design decisions made in both software and hardware
implementations.
AES is a symmetric block cipher that encrypts 128-bit blocks using keys of 128, 192,
or 256 bits. This project implements AES-128 and AES-256, providing users with
options balancing speed and security margin. The algorithm’s security relies on the
substitution-permutation network design, combining non-linear substitution (confu-
sion) with linear mixing (diffusion) across multiple rounds.
The AES encryption process begins with an initial AddRoundKey operation, followed
by a series of identical rounds. For AES-128, there are 10 rounds; for AES-256, 14
rounds. Each round except the final one consists of four transformations: SubBytes,
ShiftRows, MixColumns, and AddRoundKey. The final round omits MixColumns,
ensuring the decryption process can mirror the encryption structure.
SubBytes applies a fixed substitution table (S-box) to each byte of the state. The
S-box is constructed by combining multiplicative inversion in GF(28 ) with an affine
transformation. This non-linear operation provides resistance against differential and
linear cryptanalysis by ensuring that small changes in input produce unpredictable
changes in output.
ShiftRows cyclically shifts the bytes in each row of the 4x4 state matrix. Row 0
is unchanged, row 1 shifts left by 1 byte, row 2 by 2 bytes, and row 3 by 3 bytes.
This operation spreads bytes across columns, enabling diffusion in combination with
MixColumns.
SIEM, Department of E&TC Engineering 2025–2026 30
IMPLEMENTATION OF EFFICIENT CRYPTOGRAPHIC ALGORITHM
The Ch (choice) function selects bits from one input based on another: Ch(x,y,z) =
(x AND y) XOR (NOT x AND z). The Maj (majority) function outputs the majority
bit value among three inputs: Maj(x,y,z) = (x AND y) XOR (x AND z) XOR (y AND
z). Sigma0 and Sigma1 are more complex rotation and shift combinations providing
diffusion across the word.
After processing all blocks, the final hash value is the concatenation of the eight
working variables. The design ensures that any change in the input, however small,
produces a completely different digest with approximately 50% of bits changed, a
property known as the avalanche effect. SHA-256 maintains 128-bit collision resistance,
meaning finding two different inputs with the same hash requires approximately 2128
operations, well beyond current computational capabilities.
AES and SHA-256 serve fundamentally different security purposes and exhibit distinct
operational characteristics. AES provides reversible encryption for confidentiality:
given ciphertext and the correct key, the original plaintext can be recovered. SHA-256
provides irreversible hashing for integrity: given a digest, no efficient method exists to
find the original input.
The complementary nature of these algorithms makes them ideal for combined use in
security protocols. For example, AES encrypts data for confidentiality while SHA-256
generates a message authentication code (HMAC) for integrity verification. In the con-
text of this project, both algorithms are implemented to demonstrate a comprehensive
cryptographic toolkit.
The project adopted a hybrid development methodology: agile sprints for the software
frontend and simulation core, combined with a V-model approach for hardware design
and integration. This dual methodology recognized the different risk profiles and
verification requirements of software and hardware components.
For software development, two-week sprints focused on delivering functional increments
of the web application. Each sprint included planning, implementation, testing, and
review phases. Sprint goals prioritized user-facing features early, ensuring continuous
stakeholder feedback. The React component architecture enabled parallel development
of different page flows by team members.
For hardware development, the V-model ensured that each design phase had cor-
responding verification. Requirements analysis defined FPGA resource budgets and
timing constraints. Architectural design specified module interfaces and data paths.
Detailed design produced Verilog code for AES and SHA-256 cores. Unit testing veri-
fied individual modules against test vectors. Integration testing validated the complete
hardware-software interface.
Continuous integration was maintained through Git version control with feature branches
for each component. Pull requests required code review before merging to the main
branch. The hardware repository included simulation testbenches that could be run
automatically to verify RTL changes.
Phase 1: Planning and Requirements Analysis (Weeks 1-2). This phase established
project scope, identified hardware platforms, selected the technology stack, and defined
performance targets. Stakeholder interviews with faculty advisors clarified educational
objectives and evaluation criteria. A detailed project plan with milestones and deliv-
erables was created and approved.
Phase 2: System Design (Weeks 3-4). The software architecture was designed with
component diagrams and state machines. The hardware architecture was specified
with block diagrams, interface protocols, and resource budgets. FPGA pin assignments
were planned for the Vicharak Shrike-lite board. The database schema for RFID tag
management was defined.
Phase 3: Software Implementation (Weeks 5-8). The React application was scaffolded
with Vite, component libraries were configured, and routing was established. Cryp-
tographic implementations were developed and tested against NIST test vectors. Vi-
sualization components were built with [Link] and Recharts. The dashboard interface
was designed and implemented with responsive layout.
Phase 4: Hardware Implementation (Weeks 7-10). Verilog modules for AES and SHA-
256 were coded and simulated using open-source tools. The FPGA bitstream was
synthesized and uploaded to the Vicharak Shrike-lite board. RP2040 firmware was
developed in C/C++ for control and communication. Sensor interfaces were imple-
mented and tested.
Phase 5: Integration and Testing (Weeks 9-12). Software and hardware components
were integrated through the UART protocol. End-to-end testing verified complete
data flows from user input through hardware execution and back to result display.
Performance benchmarks were conducted across multiple input sizes. Edge cases and
error conditions were tested.
The software requirements encompass functional requirements defining what the sys-
tem must do, non-functional requirements specifying quality attributes, and opera-
tional requirements describing runtime conditions.
Functional requirements include: (1) AES-128 and AES-256 encryption and decryption
with ECB and CBC mode support; (2) SHA-256 hash generation with visualization;
(3) Real-time algorithm execution visualization showing intermediate states; (4) File
upload and download for bulk data processing; (5) JSON artifact import and export
for session persistence; (6) Hardware integration for FPGA-based validation; (7) IoT
sensor data display and RFID authentication flow; (8) Performance metrics calculation
and display; (9) Responsive design supporting desktop and tablet browsers.
Non-functional requirements include: (1) Execution accuracy matching NIST test vec-
tors with 100% correctness; (2) Software simulation accuracy within 15% of hardware
timing predictions; (3) Web application load time under 3 seconds on broadband con-
nections; (4) Cryptographic operation feedback within 500ms for text inputs under
1KB; (5) Browser compatibility with Chrome, Firefox, Safari, and Edge current ver-
sions; (6) Accessibility compliance with WCAG 2.1 Level AA guidelines.
The system operates primarily within the user’s web browser, executing cryptographic
algorithms using JavaScript and the Web Crypto API. All computation occurs client-
side, ensuring data privacy by preventing transmission of sensitive information to
external servers. The optional Python Flask backend provides additional processing
The frontend toolchain includes React 18 for UI components, React Router DOM for
navigation, Tailwind CSS for styling, shadcn/ui and Radix primitives for accessible
UI components, Sonner for toast notifications, Recharts for performance charts, and
Lucide React for iconography. The build pipeline uses Vite with the SWC transform
for fast compilation and hot module replacement.
Cryptographic libraries include the Web Crypto API for production AES-GCM op-
erations, a custom JavaScript AES implementation for visualization, and a custom
SHA-256 implementation for hash generation with round tracing. For users requir-
ing Python backend integration, PyCryptodome provides compatible cryptographic
primitives.
Development tools include Visual Studio Code as the primary IDE, ESLint for static
code analysis, npm for package management, and GitHub for version control and col-
laboration. Testing uses browser developer tools for debugging and manual verification
against NIST test vectors.
Component Specification
Frontend Framework React 18, TypeScript
Routing React Router DOM
Styling Tailwind CSS
UI Components shadcn/ui, Radix primitives
Visualization [Link], Recharts, [Link]
Crypto Libraries Web Crypto API, CryptoJS
Build Tool Vite with SWC
Package Manager npm
Backend (Optional) Python 3.9, Flask
Python Crypto PyCryptodome 3.15.0
Browser Support Chrome, Firefox, Safari, Edge
The development environment combines modern web development tools with embed-
ded systems programming utilities, reflecting the hybrid nature of the project. Each
tool was selected based on productivity, compatibility, and community support.
Visual Studio Code served as the primary integrated development environment, con-
figured with extensions for React, TypeScript, Tailwind CSS, and ESLint. The IDE’s
debugging capabilities for both JavaScript and C/C++ enabled efficient troubleshoot-
ing across the software-hardware boundary.
Version control used Git with a centralized repository on GitHub. The repository was
organized into frontend, hardware, documentation, and testing directories. Branch
protection rules required pull request reviews before merging to the main branch.
GitHub Issues tracked bugs and feature requests.
For hardware development, the Renesas ForgeFPGA toolchain provided synthesis,
place-and-route, and bitstream generation. The RP2040 was programmed using the
Pico SDK with GCC cross-compilation. Open-source Verilog simulation tools enabled
pre-synthesis verification of AES and SHA-256 modules.
Testing and verification relied on NIST SP 800-38A test vectors for AES validation
and NIST CAVP test vectors for SHA-256 verification. Performance measurement
used browser Performance API for precise timing and Python time module for backend
benchmarks.
Encryption performance was measured for AES-128 and AES-256 across software and
hardware implementations. Table 7 presents the comparative performance metrics.
Table 4.3: AES Performance Comparison
Results indicate that AES-128 achieves optimal throughput for bulk data encryption,
while AES-256 provides enhanced security margin with acceptable performance over-
head. The FPGA implementation demonstrates consistent 32-36x speedup across key
sizes, validating the efficiency of hardware acceleration. The speedup is attributed to
parallel execution of round operations, dedicated arithmetic circuits in the FPGA, and
elimination of software interpretation overhead.
SHA-256 software implementation processes 512-bit blocks in approximately 8.3 ms per
block, achieving throughput of 61.7 Mbps. Hardware acceleration reduces this to 0.21
ms per block (2.44 Gbps throughput), representing a 39.5x performance improvement.
The constant-time nature of SHA-256 operations makes it particularly suitable for
hardware pipelining, as each round requires identical operations regardless of input
data.
The design efficiently utilizes available resources while maintaining headroom for ad-
ditional functionality. Total power consumption remains below 50 mW, suitable for
battery-operated IoT deployments. The resource utilization demonstrates that all
three cryptographic cores can coexist on the compact ForgeFPGA while leaving ca-
pacity for control logic and interfaces.
analysis masking are not implemented in this version, the architecture supports their
addition as future enhancements.
SHA-256 maintains 128-bit collision resistance, sufficient for current security require-
ments. The implementation correctly applies message padding and length encoding,
preventing length extension attacks that exploit improperly padded messages.
CHAPTER 5
CONCLUSION
5.1 Conclusion
While the current implementation achieves its primary objectives, several extensions
and improvements are identified for future development. These enhancements would
expand the platform’s capabilities, improve security margins, and extend applicability
to emerging domains.
Integration of post-quantum cryptographic algorithms represents the most significant
future direction. As quantum computing advances, traditional public-key algorithms
face existential threats from Shor’s algorithm. Post-quantum candidates including
Kyber for key encapsulation and Dilithium for digital signatures can be added to the
platform, preparing users for the post-quantum transition. The hybrid architecture is
well-suited for post-quantum integration, as these algorithms can be implemented in
both software and FPGA layers.
Development of comprehensive side-channel attack countermeasures would enhance
the hardware implementation’s security. Power analysis masking, timing attack mit-
igation, and electromagnetic leakage reduction can be implemented in the FPGA de-
sign. Educational modules demonstrating these attacks and countermeasures would
provide valuable learning experiences for security students.
Implementation of complete TLS 1.3 and DTLS protocol stacks would demonstrate
how the platform’s cryptographic primitives integrate into real-world secure commu-
SIEM, Department of E&TC Engineering 2025–2026 44
IMPLEMENTATION OF EFFICIENT CRYPTOGRAPHIC ALGORITHM
BIBLIOGRAPHY
[1] J. Daemen and V. Rijmen, ”The Design of Rijndael: AES - The Advanced En-
cryption Standard,” Springer-Verlag, 2021.
[2] National Institute of Standards and Technology (NIST), ”FIPS PUB 197: Ad-
vanced Encryption Standard (AES),” U.S. Department of Commerce, 2001.
[3] NIST, ”FIPS PUB 180-4: Secure Hash Standard (SHA-2 Family),” U.S. Depart-
ment of Commerce, 2015.
[4] W. Stallings, Cryptography and Network Security: Principles and Practice, 7th
ed. Pearson Education, 2017.
[5] N. Renugadevi et al., ”Low Area and High Throughput Implementation of AES
Algorithm on FPGA,” in Proc. IEEE Int. Conf. Computing and Communication
Systems (ICCCS), 2022, pp. 1-6.
[6] V. T. Nguyen et al., ”AES-RV: RISC-V Based Accelerator for IoT Security Ap-
plications,” IEEE Trans. VLSI Systems, vol. 33, no. 2, pp. 245-258, 2025.
[7] R. S. Jabbar, ”AES Key Generation using SHA-256 for Image Encryption,” Int.
J. Advanced Scientific Research and Engineering, vol. 8, no. 3, pp. 112-119, 2024.
[8] Aalto University Research Group, ”Design and Implementation of RISC-V Core
Integrated with AES-256 Accelerator,” Aalto University Technical Reports, 2024.
[9] MDPI Authors, ”Security Evaluation of Lightweight AES Accelerators for IoT
Devices,” Electronics, vol. 13, no. 8, p. 1567, 2024.
[11] G. Singh et al., ”Comparative Analysis of AES and DES in Data Security Sys-
tems,” Int. J. Computer Science and Applications, vol. 12, no. 2, pp. 45-52, 2023.
SIEM, Department of E&TC Engineering 2025–2026 46
IMPLEMENTATION OF EFFICIENT CRYPTOGRAPHIC ALGORITHM
[12] K. Reddy and P. Mishra, ”Performance Optimization of AES and SHA Algorithms
in Cloud Environments,” Int. J. Cloud Computing and Security, vol. 9, no. 4, pp.
78-89, 2024.
[18] Cavo et al., ”Area- and Power-Efficient Crypto Processor for 3GPP-LTE NB-IoT
Devices,” IEEE Trans. Circuits and Systems I, vol. 70, no. 8, pp. 3345-3358, 2023.
133 return (
134 <div className =" app">
135 <div className =" header ">
136 <div >
137 <div className =" title"> Implementation of Efficient
Cryptographic Algorithm — Demo </div >
138 <div style ={{ fontSize :13, color :"#9 fb7c0 "}} >AES -128 / AES
-256 / SHA -256 — Encrypt , Decrypt , Hash </div >
139 </div >
140 <div className =" badge"> Software 75% • Hardware 25% </div >
141 </div >
142
151 <div style ={{ display :'flex ',gap :8, alignItems :'center '}}>
152 <label className =" small kv">
153 <input type =" radio" checked ={ mode === ' encrypt '}
onChange ={()=> setMode ('encrypt ')} /> <span style
={{ marginLeft :6}} > Encrypt </ span >
154 </label >
155 <label className =" small kv">
156 <input type =" radio" checked ={ mode === ' decrypt '}
onChange ={()=> setMode ('decrypt ')} /> <span style
={{ marginLeft :6}} > Decrypt </ span >
157 </label >
158 </div >
159
160 <div style ={{ marginLeft :'auto '}} className =" tooltip ">
Note: SHA -256 is a hash (one -way). Decrypt disabled
.</div >
161 </div >
162
189 <div className =" small" style ={{ marginTop :8}} > Helper :
hex only (0-9 a-f). AES keys: 32 chars (128 - bit) or
64 chars (256 - bit).</div >
190
217 <div style ={{ marginTop :12, display :'flex ',gap :8}} >
228 <div style ={{ marginTop :12, color : '#889 fb0 ', fontSize
:13}} >
229 {notes}
230 </div >
231 </div >
232 </div >
233 </div >
234