High-Performance Low-Energy Implementation of
Cryptographic Algorithms on a Programmable SoC
for IOT Devices
Presented by :
ENG. AMR EL RASHIDY
ENG. AHMED AYMAN
Outlines
O Introduction
O Internet Of Things (IOT)
O ASICs vs GPP vs FPGAs
O Security in IOT
O High-Performance Low-Energy Implementation of
Cryptographic Algorithms on a Programmable SoC
for IOT Devices
O Conclusion
Introduction
O In the past, converting signals from analogue to digital was a great
invention which had a huge impact on scientific researches .
O Nowadays scientists are heading to digitize not only the signals but
also digitize every single detail in our life
O In order to get the maximum gain from the rapid growth of the
technology , Scientists invented the IOT(Internet of Things) which
connecting all facilities and life essentials through a big Network
Internet Of Things (IOT)
O Simply IOT is how to convert all objects
used in our daily life to smart devices
which can connect with each other
through a big network , in order to collect
,sense or exchange information.
O IOT is the best way to integrate the
physical world into computer-based
systems, and resulting in improved
efficiency, accuracy and economic benefit
in addition to reduced human intervention
Internet Of Things (IOT)
IOT main components
O One of the main components of the IOT devices is the
Sensors which is responsible for converting the information
from its physical form to a digital form.
O The other main component of the IOT devices is the core of the
device which should be either ASIC or FPGA or GPP
O Next slides will show which one of them is better to be used as
a IOT device Core
ASICs vs GPP vs FPGAs
O Application Specific Integrated Circuit (ASIC) is
an integrated circuit (IC) customized for a
particular use, rather than intended for
general-purpose use.
O It could be the optimum solution for the mass
production of devices which has a dedicated
permanent function (non-upgradable )
ASICs vs GPP vs FPGAs
O Both GPP (General Purpose Processor )and FPGA
have the same advantage on the ASIC which is
both can be reprogrammed and reconfigured.
O So which one of them should be used in IOT
devices ???
O Theoretically the processing capabilities and
power consumption of the IOT devices shouldn’t
be high
Security in IOT
O IOT networks are considered to be wireless networks .
O IOT technology depends mainly on collecting data and send it to a
data center to be analyzed and choosing the suitable actions.
O Since that there is an approach to widely use IOT in all fields of
the physical world.
O IOT devices frequently handle sensitive information, such as
command and control signals for smart homes, and automobiles
which should be transmitted securely through the air interface
Security in IOT
O The most important topics in Security
for IOT networks are :
 Encryption :
 Transmit the data securely between
parties.
 Authentication
 Be sure ,who will receive the data.
 Data integrity
 Be sure that the data will received
correctly.
Security in IOT
O Adding the term of Security in the IOT network
,creates constraints on the implementation methods
that should be used in the IOT devices.
O Adding security Algorithms will affect the processing
time and the energy consumption
O In this paper , the reason of preferring the HW
implementation over the SW one, will be discussed
High-Performance Low-Energy Implementation of
Cryptographic Algorithms on a Programmable SoC
for IOT Devices
O Due to severe power and timing constraints of the “things”
in the Internet of things (IOT), cryptography is expensive for
these devices.
O implementations of cryptographic algorithms in the
devices need to be upgraded frequently compared to the
longevity of these “things”.
O there is a critical need for having the following characteristics
in any cryptography implementation for IOT devices :
Reconfigurable low-power High-performance
O The software-based cryptographic operations are expensive in
terms of energy for IOT devices.
O The custom hardware implementation of the algorithm is a
viable option, as it can boost performance and have lower
power consumption compared to its software implementation.
O The FPGA clock speed is much slower than the clock on GPP.
However, the FPGA can complete the computation intensive
functions much faster than the software implementation.
High-Performance Low-Energy Implementation of
Cryptographic Algorithms on a Programmable SoC
for IOT Devices
O Even though FPGA clock speed can be 10× slower than GPP, the
FPGA implementation can still be up to 3,000× faster.
O Compared to GPP, FPGAs do not have extra operations such as
instruction fetching or instruction decoding.
O Data paths on the FPGA are customized to the algorithm in order to
achieve its maximum computation efficiency.
O FPGAs have much higher energy efficiency in computationally
intensive applications.
High-Performance Low-Energy Implementation of
Cryptographic Algorithms on a Programmable SoC
for IOT Devices
O To evaluate the use of FPGAs as an energy-efficient
reconfigurable substrate for crypto-engines, the
following algorithms were used :
O AES (as a Symmetric Encryption Algo.)
O RSA (as a ASymmetric Encryption Algo.)
O SHA (as a Hash function )
O The Zedboard platform used in this paper contains the
Zynq 7000 SoC chip containing two ARM9 cores and
one Zynq 7000 FPGA.
High-Performance Low-Energy Implementation of
Cryptographic Algorithms on a Programmable SoC
for IOT Devices
System Architecture
Performance Comparison
ENCRYPTION DECRYPTION
AES
Performance Comparison
ENCRYPTION DECRYPTION
RSA
Performance Comparison
HASH
Energy Comparison
ENCRYPTION DECRYPTION
AES
Energy Comparison
ENCRYPTION DECRYPTION
RSA
Energy Comparison
HASH
Conclusion
O Cryptographic operations are one of the most
power-hungry computations in today’s systems.
O Our paper evaluates the mapping of crypto-engines
to the FPGA of Zedboard, as the FPGA can enable
more energy-efficient crypto operations than in
software as well as the option to upgrade the
cryptographic algorithms through re-configurations

High-Performance Low-Energy Implementation of Cryptographic Algorithms on a Programmable SoC for IOT Devices

  • 1.
    High-Performance Low-Energy Implementationof Cryptographic Algorithms on a Programmable SoC for IOT Devices Presented by : ENG. AMR EL RASHIDY ENG. AHMED AYMAN
  • 2.
    Outlines O Introduction O InternetOf Things (IOT) O ASICs vs GPP vs FPGAs O Security in IOT O High-Performance Low-Energy Implementation of Cryptographic Algorithms on a Programmable SoC for IOT Devices O Conclusion
  • 3.
    Introduction O In thepast, converting signals from analogue to digital was a great invention which had a huge impact on scientific researches . O Nowadays scientists are heading to digitize not only the signals but also digitize every single detail in our life O In order to get the maximum gain from the rapid growth of the technology , Scientists invented the IOT(Internet of Things) which connecting all facilities and life essentials through a big Network
  • 4.
    Internet Of Things(IOT) O Simply IOT is how to convert all objects used in our daily life to smart devices which can connect with each other through a big network , in order to collect ,sense or exchange information. O IOT is the best way to integrate the physical world into computer-based systems, and resulting in improved efficiency, accuracy and economic benefit in addition to reduced human intervention
  • 5.
  • 6.
    IOT main components OOne of the main components of the IOT devices is the Sensors which is responsible for converting the information from its physical form to a digital form. O The other main component of the IOT devices is the core of the device which should be either ASIC or FPGA or GPP O Next slides will show which one of them is better to be used as a IOT device Core
  • 7.
    ASICs vs GPPvs FPGAs O Application Specific Integrated Circuit (ASIC) is an integrated circuit (IC) customized for a particular use, rather than intended for general-purpose use. O It could be the optimum solution for the mass production of devices which has a dedicated permanent function (non-upgradable )
  • 8.
    ASICs vs GPPvs FPGAs O Both GPP (General Purpose Processor )and FPGA have the same advantage on the ASIC which is both can be reprogrammed and reconfigured. O So which one of them should be used in IOT devices ??? O Theoretically the processing capabilities and power consumption of the IOT devices shouldn’t be high
  • 9.
    Security in IOT OIOT networks are considered to be wireless networks . O IOT technology depends mainly on collecting data and send it to a data center to be analyzed and choosing the suitable actions. O Since that there is an approach to widely use IOT in all fields of the physical world. O IOT devices frequently handle sensitive information, such as command and control signals for smart homes, and automobiles which should be transmitted securely through the air interface
  • 10.
    Security in IOT OThe most important topics in Security for IOT networks are :  Encryption :  Transmit the data securely between parties.  Authentication  Be sure ,who will receive the data.  Data integrity  Be sure that the data will received correctly.
  • 11.
    Security in IOT OAdding the term of Security in the IOT network ,creates constraints on the implementation methods that should be used in the IOT devices. O Adding security Algorithms will affect the processing time and the energy consumption O In this paper , the reason of preferring the HW implementation over the SW one, will be discussed
  • 12.
    High-Performance Low-Energy Implementationof Cryptographic Algorithms on a Programmable SoC for IOT Devices O Due to severe power and timing constraints of the “things” in the Internet of things (IOT), cryptography is expensive for these devices. O implementations of cryptographic algorithms in the devices need to be upgraded frequently compared to the longevity of these “things”. O there is a critical need for having the following characteristics in any cryptography implementation for IOT devices : Reconfigurable low-power High-performance
  • 13.
    O The software-basedcryptographic operations are expensive in terms of energy for IOT devices. O The custom hardware implementation of the algorithm is a viable option, as it can boost performance and have lower power consumption compared to its software implementation. O The FPGA clock speed is much slower than the clock on GPP. However, the FPGA can complete the computation intensive functions much faster than the software implementation. High-Performance Low-Energy Implementation of Cryptographic Algorithms on a Programmable SoC for IOT Devices
  • 14.
    O Even thoughFPGA clock speed can be 10× slower than GPP, the FPGA implementation can still be up to 3,000× faster. O Compared to GPP, FPGAs do not have extra operations such as instruction fetching or instruction decoding. O Data paths on the FPGA are customized to the algorithm in order to achieve its maximum computation efficiency. O FPGAs have much higher energy efficiency in computationally intensive applications. High-Performance Low-Energy Implementation of Cryptographic Algorithms on a Programmable SoC for IOT Devices
  • 15.
    O To evaluatethe use of FPGAs as an energy-efficient reconfigurable substrate for crypto-engines, the following algorithms were used : O AES (as a Symmetric Encryption Algo.) O RSA (as a ASymmetric Encryption Algo.) O SHA (as a Hash function ) O The Zedboard platform used in this paper contains the Zynq 7000 SoC chip containing two ARM9 cores and one Zynq 7000 FPGA. High-Performance Low-Energy Implementation of Cryptographic Algorithms on a Programmable SoC for IOT Devices
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
    Conclusion O Cryptographic operationsare one of the most power-hungry computations in today’s systems. O Our paper evaluates the mapping of crypto-engines to the FPGA of Zedboard, as the FPGA can enable more energy-efficient crypto operations than in software as well as the option to upgrade the cryptographic algorithms through re-configurations