VISVESVARAYA TECHNOLOGICAL UNIVERSITY
BELAGAVI, KARNATAKA – 590018
Main-Project[Phase -1]
Introductory Presentation on
“Implementation of Elliptic Curve Cryptography for data security”
By:
MOUNESH GOWDA R 4HG20EC020
PALLAVI J 4HG21EC412
RADHA K.S 4HG21EC416
SWATHI S.S 4HG21EC426
Under the guidance of:
Dr. Baby H T
Associate Professor and Head
Department of Electronics and Communication Engineering
Government Engineering College
Mosalehosahalli - 573212
Dept of E&CE, GECM
OVERVIEW
• Introduction
• Literature Review
• Problem Formulation And Objective
• Block Diagram And Flow Chart
• Software And Hardware Details
• Methodology
• Advantages And Disadvantages
• Applications
• Conclusion
• References
Dept of E&CE, GECM
Introduction
• ECC offers strong security with shorter key lengths, efficient computation, and
suitability for resource-constrained devices..
• ECC is secure, because it can handle computationally impractical operations like point
addition, doubling, and multiplication. It is based on elliptic curves over finite fields.
• ECC involves creating public and private key pairs, Encryption and Decryption
algorithms.
Dept of E&CE, GECM
Literature Review
Sl.No. Author’s Name Title of the paper DESCRIPTION
I
Anna M. Johnston,
Peter S. Gemmell
Authenticated key exchange Provably Secure
Against the Man-in-Middle Attack
• The study of elliptic curves by algebraists,
algebraic geometers and number theorists dates
back to the middle of the nineteenth century.
II Antoines Joux,
A one round protocol for Tripartite Diffie-
Hellman.
• In this protocol, each participant is allowed to talk
once and broadcast some data to the other two
III
K R Chandrasekhara
Pillai1 and M P
Sebastian,
Elliptic Curve based authenticated session
Key establishment protocol for High Security
Applications in Constrained Network
environment
• Elliptic curve cryptography (ECC) is a set of
algorithms for key generation, encryption, and
decryption. It's an asymmetric cryptographic
algorithm, which means it uses a key pair instead
of a single key
IV V.Miller Elliptic curves in Cryptography
• To perform critical security functions, including
encryption, authentication, and digital signatures.
Dept of E&CE, GECM
Problem statement
• Understand the basics of elliptic curve cryptography and how it works.
• Choose a suitable programming language and library that supports elliptic curve
cryptography.
• Implement the key generation, encryption, and decryption algorithms to secure the
original image.
Dept of E&CE, GECM
Objectives
• The main objective of the project is to provide robust data security through the use of elliptic
curves over finite fields.
• The scope of implementing ECC for data security is broad and can be applied in various
contexts, including secure communication, data encryption, digital signatures, secure access
control, mobile and IoT devices, blockchain technology, and cloud security.
• The scope and objective of ECC implementation depend on the specific requirements of the
application or system, but its core purpose remains consistent: to provide strong data security in
a variety of contexts
Dept of E&CE, GECM
Block diagram
Dept of E&CE, GECM
FLOW CHART
Dept of E&CE, GECM
Start
Key Generation
Choose Curve & Base Point
Generate Private Key (Random)
Calculate Public Key (Scalar Multiplication)
Encryption
Compute Shared Secret
(scalar Multiplication)
Generate Ephemeral Private Key
(Random)
Encrypt message
(Symmetric Encryption)
Decryption
Decrypt Message (Symmetric
Decryption)
Compute Shared Secret
(Scalar Multiplication)
Retrieve Ephemeral Public Key
END
Elliptic Curve Diagram
Dept of E&CE, GECM
y=x3+ax+b
a. Programming Language: Choose a programming language that supports mathematical operations, as ECC
involves complex mathematical calculations. Popular choices include Python, C/C++, and Java.
b. ECC Library: You can leverage established ECC libraries to handle the mathematical operations involved in
ECC.
c. Development Environment: You'll need an integrated development environment (IDE) or code editor for
software development. IDEs like Visual Studio Code, PyCharm, or Eclipse are commonly used.
HARDWARE DETAILS
a. Cryptographic Hardware: ECC, while implemented in software, can be enhanced by utilizing specialized
cryptographic hardware like Hardware Security Modules (HSMs), which securely generate and manage ECC
keys.
b. Secure Hardware for Key Storage: Securely storing private ECC keys is crucial. This may involve using
secure elements or specialized hardware for key protection.
SOFTWARE DETAILS
Dept of E&CE, GECM
Methodology
• Generation of ECC points.
• Select the Private and Public Keys. Share the public key with Recipient.
• Perform the Encryption for the input image using sender’s Private key.
• Transmit the Encrypted image to Receiver side.
• Perform decryption using the sender’s public key.
Dept of E&CE, GECM
Generation of ECC points.
Dept of E&CE, GECM
• Select (a and b)
• Eq (a,b) is of Elliptic Curve with parameters a,b&q. where q is the
prime or an integer of the term 2m
• User A key generation
Select private nA nA<n
Calculate Public PA=nAλG
• User B Key Generation
Select Private nB nB<n
Calculate Public PB PB=nBxG
Check the condition
• At the transmitter side
User A collects Public Key of User B
i.e PB,choose random +we integer k
Cm=[KG,Pm+kPB]
where Cm = Cipher text
Pm = Plain text
• At the Receiver side
User B decrypts using its Private Key nB
i.e Pm+KPb – nB(kg) = Plain text Pm
Equation
y² = x³+ax+b
Code:
Dept of E&CE, GECM
ADVANTAGE
a. Strong Security with Shorter Keys: ECC provides robust security with shorter key
lengths compared to traditional algorithms like RSA.
b. Faster Encryption and Decryption: ECC operations (such as key generation,
encryption, and decryption) are computationally faster than RSA. This efficiency is
beneficial for real-time applications
c. Lower Bandwidth and Storage Requirements: ECC keys are smaller, resulting in
reduced bandwidth usage during key exchange and storage requirements for
certificates
Dept of E&CE, GECM
APPLICATIONS
• Blockchain: ECC is used to generate public and private keys for cryptocurrencies such as
Bitcoin and Ethereum.
• Network security: ECC is used to secure data transmission over the internet using protocols
such as SSL/TLS, SSH, IPSec, and Tor.
• Wireless communication: ECC is used to protect data and voice communication over
wireless networks such as Wi-Fi, Bluetooth, NFC, and RFID.
• Smart cards: ECC is used to enhance the security and performance of smart cards such as
SIM cards, ID cards, and payment cards.
Dept of E&CE, GECM
CONCLUSION
• Comparatively speaking, ECC offers a higher level of security with much smaller
key sizes than other asymmetric encryption algorithms.
• ECC is suitable for use in environments with limited resources because of its
computational efficiency.
• Compared to some other cryptographic schemes, like RSA, ECC is thought to be
more resistant to quantum attacks.
• Secure communication, digital signatures, and key agreement protocols are just a few
areas where ECC is used.
Dept of E&CE, GECM
REFRENCES
[1]. Anna M. Johnston, Peter S. Gemmell, “Authenticated key exchange Provably Secure Against the
Man-in-Middle Attack”, Journal of Cryptology (2002) Vol. number 2 pages 139-148.
[2]. Antoines Joux, “A one round protocol for Tripartite Diffie-Hellman”, Journal of Cryptology,
2004, Volume 17, Number 4,pages 263-276.
[3].K R Chandrasekhara Pillai1 and M P Sebastian, “Elliptic Curve based authenticated session Key
establishment protocol for High Security Applications in Constrained Network environment”
International Journal of Network Security & its Applications (IJNSA), Vol.2, No.3, July 2010.
[4]. V.Miller, “Uses of Elliptic curves in Cryptography”.In advances in Cryptography
(CRYPTO 1985), Springer LNCS 218,417-4 26, 1985.
Dept of E&CE, GECM
Dept of E&CE, GECM

Eliptic Curve cryptography based on image

  • 1.
    VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI,KARNATAKA – 590018 Main-Project[Phase -1] Introductory Presentation on “Implementation of Elliptic Curve Cryptography for data security” By: MOUNESH GOWDA R 4HG20EC020 PALLAVI J 4HG21EC412 RADHA K.S 4HG21EC416 SWATHI S.S 4HG21EC426 Under the guidance of: Dr. Baby H T Associate Professor and Head Department of Electronics and Communication Engineering Government Engineering College Mosalehosahalli - 573212 Dept of E&CE, GECM
  • 2.
    OVERVIEW • Introduction • LiteratureReview • Problem Formulation And Objective • Block Diagram And Flow Chart • Software And Hardware Details • Methodology • Advantages And Disadvantages • Applications • Conclusion • References Dept of E&CE, GECM
  • 3.
    Introduction • ECC offersstrong security with shorter key lengths, efficient computation, and suitability for resource-constrained devices.. • ECC is secure, because it can handle computationally impractical operations like point addition, doubling, and multiplication. It is based on elliptic curves over finite fields. • ECC involves creating public and private key pairs, Encryption and Decryption algorithms. Dept of E&CE, GECM
  • 4.
    Literature Review Sl.No. Author’sName Title of the paper DESCRIPTION I Anna M. Johnston, Peter S. Gemmell Authenticated key exchange Provably Secure Against the Man-in-Middle Attack • The study of elliptic curves by algebraists, algebraic geometers and number theorists dates back to the middle of the nineteenth century. II Antoines Joux, A one round protocol for Tripartite Diffie- Hellman. • In this protocol, each participant is allowed to talk once and broadcast some data to the other two III K R Chandrasekhara Pillai1 and M P Sebastian, Elliptic Curve based authenticated session Key establishment protocol for High Security Applications in Constrained Network environment • Elliptic curve cryptography (ECC) is a set of algorithms for key generation, encryption, and decryption. It's an asymmetric cryptographic algorithm, which means it uses a key pair instead of a single key IV V.Miller Elliptic curves in Cryptography • To perform critical security functions, including encryption, authentication, and digital signatures. Dept of E&CE, GECM
  • 5.
    Problem statement • Understandthe basics of elliptic curve cryptography and how it works. • Choose a suitable programming language and library that supports elliptic curve cryptography. • Implement the key generation, encryption, and decryption algorithms to secure the original image. Dept of E&CE, GECM
  • 6.
    Objectives • The mainobjective of the project is to provide robust data security through the use of elliptic curves over finite fields. • The scope of implementing ECC for data security is broad and can be applied in various contexts, including secure communication, data encryption, digital signatures, secure access control, mobile and IoT devices, blockchain technology, and cloud security. • The scope and objective of ECC implementation depend on the specific requirements of the application or system, but its core purpose remains consistent: to provide strong data security in a variety of contexts Dept of E&CE, GECM
  • 7.
  • 8.
    FLOW CHART Dept ofE&CE, GECM Start Key Generation Choose Curve & Base Point Generate Private Key (Random) Calculate Public Key (Scalar Multiplication) Encryption Compute Shared Secret (scalar Multiplication) Generate Ephemeral Private Key (Random) Encrypt message (Symmetric Encryption) Decryption Decrypt Message (Symmetric Decryption) Compute Shared Secret (Scalar Multiplication) Retrieve Ephemeral Public Key END
  • 9.
    Elliptic Curve Diagram Deptof E&CE, GECM y=x3+ax+b
  • 10.
    a. Programming Language:Choose a programming language that supports mathematical operations, as ECC involves complex mathematical calculations. Popular choices include Python, C/C++, and Java. b. ECC Library: You can leverage established ECC libraries to handle the mathematical operations involved in ECC. c. Development Environment: You'll need an integrated development environment (IDE) or code editor for software development. IDEs like Visual Studio Code, PyCharm, or Eclipse are commonly used. HARDWARE DETAILS a. Cryptographic Hardware: ECC, while implemented in software, can be enhanced by utilizing specialized cryptographic hardware like Hardware Security Modules (HSMs), which securely generate and manage ECC keys. b. Secure Hardware for Key Storage: Securely storing private ECC keys is crucial. This may involve using secure elements or specialized hardware for key protection. SOFTWARE DETAILS Dept of E&CE, GECM
  • 11.
    Methodology • Generation ofECC points. • Select the Private and Public Keys. Share the public key with Recipient. • Perform the Encryption for the input image using sender’s Private key. • Transmit the Encrypted image to Receiver side. • Perform decryption using the sender’s public key. Dept of E&CE, GECM
  • 12.
    Generation of ECCpoints. Dept of E&CE, GECM • Select (a and b) • Eq (a,b) is of Elliptic Curve with parameters a,b&q. where q is the prime or an integer of the term 2m • User A key generation Select private nA nA<n Calculate Public PA=nAλG • User B Key Generation Select Private nB nB<n Calculate Public PB PB=nBxG Check the condition • At the transmitter side User A collects Public Key of User B i.e PB,choose random +we integer k Cm=[KG,Pm+kPB] where Cm = Cipher text Pm = Plain text • At the Receiver side User B decrypts using its Private Key nB i.e Pm+KPb – nB(kg) = Plain text Pm Equation y² = x³+ax+b
  • 13.
  • 14.
    ADVANTAGE a. Strong Securitywith Shorter Keys: ECC provides robust security with shorter key lengths compared to traditional algorithms like RSA. b. Faster Encryption and Decryption: ECC operations (such as key generation, encryption, and decryption) are computationally faster than RSA. This efficiency is beneficial for real-time applications c. Lower Bandwidth and Storage Requirements: ECC keys are smaller, resulting in reduced bandwidth usage during key exchange and storage requirements for certificates Dept of E&CE, GECM
  • 15.
    APPLICATIONS • Blockchain: ECCis used to generate public and private keys for cryptocurrencies such as Bitcoin and Ethereum. • Network security: ECC is used to secure data transmission over the internet using protocols such as SSL/TLS, SSH, IPSec, and Tor. • Wireless communication: ECC is used to protect data and voice communication over wireless networks such as Wi-Fi, Bluetooth, NFC, and RFID. • Smart cards: ECC is used to enhance the security and performance of smart cards such as SIM cards, ID cards, and payment cards. Dept of E&CE, GECM
  • 16.
    CONCLUSION • Comparatively speaking,ECC offers a higher level of security with much smaller key sizes than other asymmetric encryption algorithms. • ECC is suitable for use in environments with limited resources because of its computational efficiency. • Compared to some other cryptographic schemes, like RSA, ECC is thought to be more resistant to quantum attacks. • Secure communication, digital signatures, and key agreement protocols are just a few areas where ECC is used. Dept of E&CE, GECM
  • 17.
    REFRENCES [1]. Anna M.Johnston, Peter S. Gemmell, “Authenticated key exchange Provably Secure Against the Man-in-Middle Attack”, Journal of Cryptology (2002) Vol. number 2 pages 139-148. [2]. Antoines Joux, “A one round protocol for Tripartite Diffie-Hellman”, Journal of Cryptology, 2004, Volume 17, Number 4,pages 263-276. [3].K R Chandrasekhara Pillai1 and M P Sebastian, “Elliptic Curve based authenticated session Key establishment protocol for High Security Applications in Constrained Network environment” International Journal of Network Security & its Applications (IJNSA), Vol.2, No.3, July 2010. [4]. V.Miller, “Uses of Elliptic curves in Cryptography”.In advances in Cryptography (CRYPTO 1985), Springer LNCS 218,417-4 26, 1985. Dept of E&CE, GECM
  • 18.