paklausykite ios dienos 2019.10.29, 12 val. Žiniųradijo...

6
https://en.wikipedia.org/wiki/Elliptic-curve_cryptography Elliptic-curve cryptography (ECC) is an approach to public-key cryptography based on the algebraic structureof elliptic curves over finite fields. ECC requires smaller keys compared to non- ECC cryptography (based on plain Galois fields) to provide equivalent security. [1] Elliptic curves are applicable for key agreement, digital signatures, pseudo-random generators and other tasks. Indirectly, they can be used for encryption by combining the key agreement with a symmetric encryption scheme. They are also used in several integer factorization algorithms based on elliptic curves that have applications in cryptography, such as Lenstra elliptic-curve factorization. Public-key cryptography is based on the intractability of certain mathematical problems. Early public-key systems are secure assuming that it is difficult to factor a large integer composed of two or more large prime factors. For elliptic-curve-based protocols, it is assumed that finding the discrete logarithm of a random elliptic curve element with respect to a publicly known base point is infeasible: this is the "elliptic curve discrete logarithm problem" (ECDLP). The security of elliptic curve cryptography depends on the ability to compute a point multiplication and the inability to compute the multiplicand given the original and product points. The size of the elliptic curve determines Labas Edgarai. Gal aš suklydau, Jūsų mag. grupei aš turėjau galvoje apie ind. Užduotį su OpenSSL paketu. Tai būtų užduotis vietoj referato. Šią užduotį gali daryti ir komanda iš 2-3 studentų. Dėl šios užduoties reikėtų kalbėti atskirai II-nį (II-niais) 16-17 val. arba 19:15-20 val. Kalbėtis galima būtų per Skype: eligijus52, arba per AdobeConnect, arba akis į akį, 142 kab. Noriu visus informuoti, kad nuo šiol naujausias Octave .m failų versijas rasite adresu http://crypto.fmf.ktu.lt/xdownload/ su nurodyta data. Šiuo metu naujausia versija yra OCTAVE.m_Stud_2019.10.27.7z Painformuokite kolegas. http://crypto.fmf.ktu.lt/xdownload/ ECDSA --> search Elliptic Curve Digital Signature Algorithm - Bitcoin Wiki https://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_AlgorithmFeb 10, 2015 ... Elliptic Curve Digital Signature Algorithm or ECDSA is a cryptographic algorithm used by Bitcoin to ensure that funds can only be spent by their ... Paklausykite ios dienos 2019.10.29, 12 val. Žinių radijo reportažą. 09_KS ECDSA 09_KS ECDSA Page 1

Upload: others

Post on 07-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • https://en.wikipedia.org/wiki/Elliptic-curve_cryptography

    Elliptic-curve cryptography (ECC) is an approach to public-key cryptography based on the algebraic structureof elliptic curves over finite fields. ECC requires smaller keys compared to non-ECC cryptography (based on plain Galois fields) to provide equivalent security.[1]

    Elliptic curves are applicable for key agreement, digital signatures, pseudo-random generators and other tasks. Indirectly, they can be used for encryption by combining the key agreement with a symmetric encryption scheme. They are also used in several integer factorization algorithms based on elliptic curves that have applications in cryptography, such as Lenstra elliptic-curve factorization.

    Public-key cryptography is based on the intractability of certain mathematical problems. Early public-key systems are secure assuming that it is difficult to factor a large integer composed of two or more large prime factors. For elliptic-curve-based protocols, it is assumed that finding the discrete logarithm of a random elliptic curve element with respect to a publicly known base point is infeasible: this is the "elliptic curve discrete logarithm problem" (ECDLP). The security of elliptic curve cryptography depends on the ability to compute a point multiplication and the inability to compute the multiplicand given the original and product points. The size of the elliptic curve determines

    Labas Edgarai.Gal aš suklydau, Jūsų mag. grupei aš turėjau galvoje apie ind. Užduotį su OpenSSL paketu.Tai būtų užduotis vietoj referato.Šią užduotį gali daryti ir komanda iš 2-3 studentų.Dėl šios užduoties reikėtų kalbėti atskirai II-nį (II-niais) 16-17 val. arba 19:15-20 val.Kalbėtis galima būtų per Skype: eligijus52, arba per AdobeConnect, arba akis į akį, 142 kab.

    Noriu visus informuoti, kad nuo šiol naujausias Octave .m failų versijas rasite adresu http://crypto.fmf.ktu.lt/xdownload/ su nurodyta data.Šiuo metu naujausia versija yra OCTAVE.m_Stud_2019.10.27.7zPainformuokite kolegas.

    http://crypto.fmf.ktu.lt/xdownload/

    ECDSA --> searchElliptic Curve Digital Signature Algorithm - Bitcoin Wikihttps://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_AlgorithmFeb 10, 2015 ... Elliptic Curve Digital Signature Algorithm or ECDSA is a cryptographic algorithm used by Bitcoin to ensure that funds can only be spent by their ...

    Paklausykite ios dienos 2019.10.29, 12 val. Žinių radijo reportažą.

    09_KS ECDSA

    09_KS ECDSA Page 1

    https://en.wikipedia.org/wiki/Elliptic-curve_cryptographyhttps://en.wikipedia.org/wiki/Public-key_cryptographyhttps://en.wikipedia.org/wiki/Public-key_cryptographyhttps://en.wikipedia.org/wiki/Algebraic_structurehttps://en.wikipedia.org/wiki/Elliptic_curvehttps://en.wikipedia.org/wiki/Elliptic_curvehttps://en.wikipedia.org/wiki/Finite_fieldhttps://en.wikipedia.org/wiki/Galois_fieldhttps://en.wikipedia.org/wiki/Elliptic-curve_cryptography#cite_note-nsaQCfaq-1https://en.wikipedia.org/wiki/Key_agreementhttps://en.wikipedia.org/wiki/Digital_signaturehttps://en.wikipedia.org/wiki/Digital_signaturehttps://en.wikipedia.org/wiki/CPRNGhttps://en.wikipedia.org/wiki/Encryptionhttps://en.wikipedia.org/wiki/Integer_factorizationhttps://en.wikipedia.org/wiki/Integer_factorizationhttps://en.wikipedia.org/wiki/Algorithmhttps://en.wikipedia.org/wiki/Lenstra_elliptic-curve_factorizationhttps://en.wikipedia.org/wiki/Intractability_(complexity)#Intractabilityhttps://en.wikipedia.org/wiki/Computational_hardness_assumptionhttps://en.wikipedia.org/wiki/Integer_factorizationhttps://en.wikipedia.org/wiki/Discrete_logarithmhttps://en.wikipedia.org/wiki/Elliptic_curve_point_multiplicationhttps://en.wikipedia.org/wiki/Elliptic_curve_point_multiplicationhttp://crypto.fmf.ktu.lt/xdownload/http://crypto.fmf.ktu.lt/xdownload/https://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_Algorithmhttps://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_AlgorithmFeb

  • original and product points. The size of the elliptic curve determines the difficulty of the problem.The primary benefit promised by elliptic curve cryptography is a smaller key size, reducing storage and transmission requirements, i.e. that an elliptic curve group could provide the same level of security afforded by an RSA-based system with a large modulus and correspondingly larger key: for example, a 256-bit elliptic curve public key should provide comparable security to a 3072-bit RSA public key.The U.S. National Institute of Standards and Technology (NIST) has endorsed elliptic curve cryptography in its Suite B set of recommended algorithms, specifically elliptic curve Diffie–Hellman (ECDH) for key exchange and Elliptic Curve Digital Signature Algorithm (ECDSA) for digital signature. The U.S. National Security Agency (NSA) allows their use for protecting information classified up to top secret with 384-bit keys.[2] However, in August 2015, the NSA announced that it plans to replace Suite B with a new cipher suite due to concerns about quantum computing attacks on ECC.[3]

    For current cryptographic purposes, an elliptic curve is a plane curve over a finite field (rather than the real numbers) which consists of the points satisfying the equation

    y2=x3+ax+b mod p

    along with a distinguished point at infinity, denoted ∞.

    EC arithmetics Modular arithmeticsvs

    09_KS ECDSA Page 2

    https://en.wikipedia.org/wiki/Intractability_(complexity)#Intractabilityhttps://en.wikipedia.org/wiki/Computational_hardness_assumptionhttps://en.wikipedia.org/wiki/Integer_factorizationhttps://en.wikipedia.org/wiki/Discrete_logarithmhttps://en.wikipedia.org/wiki/Elliptic_curve_point_multiplicationhttps://en.wikipedia.org/wiki/Elliptic_curve_point_multiplicationhttps://en.wikipedia.org/wiki/Key_sizehttps://en.wikipedia.org/wiki/Level_of_securityhttps://en.wikipedia.org/wiki/Level_of_securityhttps://en.wikipedia.org/wiki/RSA_(cryptosystem)https://en.wikipedia.org/wiki/National_Institute_of_Standards_and_Technologyhttps://en.wikipedia.org/wiki/NSA_Suite_Bhttps://en.wikipedia.org/wiki/Elliptic_curve_Diffie%E2%80%93Hellmanhttps://en.wikipedia.org/wiki/Elliptic_curve_Diffie%E2%80%93Hellmanhttps://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithmhttps://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithmhttps://en.wikipedia.org/wiki/National_Security_Agencyhttps://en.wikipedia.org/wiki/National_Security_Agencyhttps://en.wikipedia.org/wiki/Classified_information_in_the_United_Stateshttps://en.wikipedia.org/wiki/Elliptic-curve_cryptography#cite_note-2https://en.wikipedia.org/wiki/Quantum_computinghttps://en.wikipedia.org/wiki/Elliptic-curve_cryptography#cite_note-nsaquantum-3https://en.wikipedia.org/wiki/Plane_curvehttps://en.wikipedia.org/wiki/Plane_curvehttps://en.wikipedia.org/wiki/Point_at_infinity

  • Suppose Alice wants to send a signed message to Bob. Initially, they must agree on the curve parameters: (EC, G, n)In addition to the field and equation of the curve, we need, a base point of prime order on the curve;

    Parameter

    CURVE the elliptic curve field and equation used

    G elliptic curve base point, a generator of the elliptic curve with large prime order n

    n integer order of G, means that nG=0

    The generation of domain parameters is not usually done by each participant because this involves computing the number of points on a curve which is time-consuming and troublesome to implement. As a result, several standard bodies published domain parameters of elliptic curves for several common field sizes. Such domain parameters are commonly known as "standard curves" or "named curves"; a named curve can be referenced either by name or by the unique object identifier defined in the standard documents:NIST, Recommended Elliptic Curves for Government Use•SECG, SEC 2: Recommended Elliptic Curve Domain Parameters•ECC Brainpool (RFC 5639), ECC Brainpool Standard Curves and Curve Generation•SECG test vectors are also available.[9]

    NIST has approved many SECG curves, so there is a significant overlap between the specifications published by NIST and SECG. EC domain parameters may be either specified by value or by name.

    EC arithmetics Modular arithmeticsvs

    09_KS ECDSA Page 3

    https://en.wikipedia.org/wiki/Alice_and_Bobhttps://en.wikipedia.org/wiki/Alice_and_Bobhttps://en.wikipedia.org/wiki/Counting_points_on_elliptic_curveshttps://en.wikipedia.org/wiki/Object_identifierhttps://en.wikipedia.org/wiki/NISThttps://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdfhttps://en.wikipedia.org/wiki/SECGhttp://www.secg.org/sec2-v2.pdfhttps://tools.ietf.org/html/rfc5639http://www.ecc-brainpool.org/download/Domain-parameters.pdfhttps://en.wikipedia.org/wiki/Elliptic-curve_cryptography#cite_note-9

  • OpenSSL library

    https://en.wikipedia.org/wiki/SHA-2

    SHA-2 (Secure Hash Algorithm 2) is a set of cryptographic hash functions designed by the United States National Security Agency(NSA).[3] Cryptographic hash functions are mathematical operations run on digital data; by comparing the computed "hash" (the output from execution of the algorithm) to a known and expected hash value, a person can determine the data's integrity.

    SHA-2 includes significant changes from its predecessor, SHA-1. The SHA-2 family consists of six hash functions with digests (hash values) that are 224, 256, 384 or 512 bits: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256.

    From

    09_KS ECDSA Page 4

    https://en.wikipedia.org/wiki/SHA-2https://en.wikipedia.org/wiki/Cryptographic_hash_functionhttps://en.wikipedia.org/wiki/Cryptographic_hash_functionhttps://en.wikipedia.org/wiki/National_Security_Agencyhttps://en.wikipedia.org/wiki/National_Security_Agencyhttps://en.wikipedia.org/wiki/SHA-2#cite_note-3https://en.wikipedia.org/wiki/SHA-1https://en.wikipedia.org/wiki/Cryptographic_hash_function#message_digesthttps://en.wikipedia.org/wiki/Elliptic-curve_cryptography

  • 09_KS ECDSA Page 5

  • 09_KS ECDSA Page 6