31 research outputs found

    Low Power Elliptic Curve Cryptography

    Get PDF
    This M.S. thesis introduces new modulus scaling techniques for transforming a class of primes into special forms which enable efficient arithmetic. The scaling technique may be used to improve multiplication and inversion in finite fields. We present an efficient inversion algorithm that utilizes the structure of a scaled modulus. Our inversion algorithm exhibits superior performance to the Euclidean algorithm and lends itself to efficient hardware implementation due to its simplicity. Using the scaled modulus technique and our specialized inversion algorithm we develop an elliptic curve processor architecture. The resulting architecture successfully utilizes redundant representation of elements in GF(p) and provides a low-power, high speed, and small footprint specialized elliptic curve implementation. We also introduce a unified Montgomery multiplier architecture working on the extension fields GF(p), GF(2) and GF(3). With the increasing research activity for identity based encryption schemes, there has been an increasing need for arithmetic operations in field GF(3). Since we based our research on low-power and small footprint applications, we designed a unified architecture rather than having a seperate hardware for GF{3}. To the best of our knowledge, this is the first time a unified architecture was built working on three different extension fields

    Frequency Domain Finite Field Arithmetic for Elliptic Curve Cryptography

    Get PDF
    Efficient implementation of the number theoretic transform(NTT), also known as the discrete Fourier transform(DFT) over a finite field, has been studied actively for decades and found many applications in digital signal processing. In 1971 Schonhage and Strassen proposed an NTT based asymptotically fast multiplication method with the asymptotic complexity O(m log m log log m) for multiplication of mm-bit integers or (m-1)st degree polynomials. Schonhage and Strassen\u27s algorithm was known to be the asymptotically fastest multiplication algorithm until Furer improved upon it in 2007. However, unfortunately, both algorithms bear significant overhead due to the conversions between the time and frequency domains which makes them impractical for small operands, e.g. less than 1000 bits in length as used in many applications. With this work we investigate for the first time the practical application of the NTT, which found applications in digital signal processing, to finite field multiplication with an emphasis on elliptic curve cryptography(ECC). We present efficient parameters for practical application of NTT based finite field multiplication to ECC which requires key and operand sizes as short as 160 bits in length. With this work, for the first time, the use of NTT based finite field arithmetic is proposed for ECC and shown to be efficient. We introduce an efficient algorithm, named DFT modular multiplication, for computing Montgomery products of polynomials in the frequency domain which facilitates efficient multiplication in GF(p^m). Our algorithm performs the entire modular multiplication, including modular reduction, in the frequency domain, and thus eliminates costly back and forth conversions between the frequency and time domains. We show that, especially in computationally constrained platforms, multiplication of finite field elements may be achieved more efficiently in the frequency domain than in the time domain for operand sizes relevant to ECC. This work presents the first hardware implementation of a frequency domain multiplier suitable for ECC and the first hardware implementation of ECC in the frequency domain. We introduce a novel area/time efficient ECC processor architecture which performs all finite field arithmetic operations in the frequency domain utilizing DFT modular multiplication over a class of Optimal Extension Fields(OEF). The proposed architecture achieves extension field modular multiplication in the frequency domain with only a linear number of base field GF(p) multiplications in addition to a quadratic number of simpler operations such as addition and bitwise rotation. With its low area and high speed, the proposed architecture is well suited for ECC in small device environments such as smart cards and wireless sensor networks nodes. Finally, we propose an adaptation of the Itoh-Tsujii algorithm to the frequency domain which can achieve efficient inversion in a class of OEFs relevant to ECC. This is the first time a frequency domain finite field inversion algorithm is proposed for ECC and we believe our algorithm will be well suited for efficient constrained hardware implementations of ECC in affine coordinates

    Modified Hill-Cipher and CRT Methods in Galois Field GF (2^M)for Cryptography

    Get PDF
    Security can only be as strong as the weakest link. In this world of Cryptography, it is now well established, that the weakest link lies in the implementation of cryptographic algorithms. Galois field is extensively used in coding. Recently Galois field particularly GF(2^M) has been used for Cryptography. Hill-cipher is an old symmetric key Technique of Cryptography. In this project, a novel method of Hill-cipher has been introduced in Cryptography. This new type of cipher matrix utilizes. The polynomials as element in GF(2^M) . Simulation and results confirm the utility such a data security in a private network. In addition to this, encryption and decryption of data are implemented in GF(2^M) using the principle of data Chinese Remainder Theorem

    Cryptanalysis and Secure Implementation of Modern Cryptographic Algorithms

    Get PDF
    Cryptanalytic attacks can be divided into two classes: pure mathematical attacks and Side Channel Attacks (SCAs). Pure mathematical attacks are traditional cryptanalytic techniques that rely on known or chosen input-output pairs of the cryptographic function and exploit the inner structure of the cipher to reveal the secret key information. On the other hand, in SCAs, it is assumed that attackers have some access to the cryptographic device and can gain some information from its physical implementation. Cold-boot attack is a SCA which exploits the data remanence property of Random Access Memory (RAM) to retrieve its content which remains readable shortly after its power has been removed. Fault analysis is another example of SCAs in which the attacker is assumed to be able to induce faults in the cryptographic device and observe the faulty output. Then, by careful inspection of faulty outputs, the attacker recovers the secret information, such as secret inner state or secret key. Scan-based Design-For-Test (DFT) is a widely deployed technique for testing hardware chips. Scan-based SCAs exploit the information obtained by analyzing the scanned data in order to retrieve secret information from cryptographic hardware devices that are designed with this testability feature. In the first part of this work, we investigate the use of an off-the-shelf SAT solver, CryptoMinSat, to improve the key recovery of the Advance Encryption Standard (AES-128) key schedules from its corresponding decayed memory images which can be obtained using cold-boot attacks. We also present a fault analysis on both NTRUEncrypt and NTRUSign cryptosystems. For this specific original instantiation of the NTRU encryption system with parameters (N,p,q)(N,p,q), our attack succeeds with probability โ‰ˆ1โˆ’1p\approx 1-\frac{1}{p} and when the number of faulted coefficients is upper bounded by tt, it requires O((pN)t)O((pN)^t) polynomial inversions in Z/pZ[x]/(xNโˆ’1)\mathbb Z/p\mathbb Z[x]/(x^{N}-1). We also investigate several techniques to strengthen hardware implementations of NTRUEncrypt against this class of attacks. For NTRUSign with parameters (NN, q=plq=p^l, B\mathcal{B}, \emph{standard}, N\mathcal{N}), when the attacker is able to skip the norm-bound signature checking step, our attack needs one fault to succeed with probability โ‰ˆ1โˆ’1p\approx 1-\frac{1}{p} and requires O((qN)t)O((qN)^t) steps when the number of faulted polynomial coefficients is upper bounded by tt. The attack is also applicable to NTRUSign utilizing the \emph{transpose} NTRU lattice but it requires double the number of fault injections. Different countermeasures against the proposed attack are also investigated. Furthermore, we present a scan-based SCA on NTRUEncrypt hardware implementations that employ scan-based DFT techniques. Our attack determines the scan chain structure of the polynomial multiplication circuits used in the decryption algorithm which allows the cryptanalyst to efficiently retrieve the secret key. Several key agreement schemes based on matrices were recently proposed. For example, \'{A}lvarez \emph{et al.} proposed a scheme in which the secret key is obtained by multiplying powers of block upper triangular matrices whose elements are defined over Zp\mathbb{Z}_p. Climent \emph{et al.} identified the elements of the endomorphisms ring End(Zpร—Zp2)End(\mathbb{Z}_p \times \mathbb{Z}_{p^2}) with elements in a set, EpE_p, of matrices of size 2ร—22\times 2, whose elements in the first row belong to Zp\mathbb{Z}_{p} and the elements in the second row belong to Zp2\mathbb{Z}_{p^2}. Keith Salvin presented a key exchange protocol using matrices in the general linear group, GL(r,Zn)GL(r,\mathbb{Z}_n), where nn is the product of two distinct large primes. The system is fully specified in the US patent number 7346162 issued in 2008. In the second part of this work, we present mathematical cryptanalytic attacks against these three schemes and show that they can be easily broken for all practical choices of their security parameters

    Computing Discrete Logarithms

    Get PDF
    We describe some cryptographically relevant discrete logarithm problems (DLPs) and present some of the key ideas and constructions behind the most efficient algorithms known that solve them. Since the topic encompasses such a large volume of literature, for the finite field DLP we limit ourselves to a selection of results reflecting recent advances in fixed characteristic finite fields

    ๊ทผ์‚ฌ ์—ฐ์‚ฐ์— ๋Œ€ํ•œ ๊ณ„์‚ฐ ๊ฒ€์ฆ ์—ฐ๊ตฌ

    Get PDF
    ํ•™์œ„๋…ผ๋ฌธ(๋ฐ•์‚ฌ)--์„œ์šธ๋Œ€ํ•™๊ต ๋Œ€ํ•™์› :์ž์—ฐ๊ณผํ•™๋Œ€ํ•™ ์ˆ˜๋ฆฌ๊ณผํ•™๋ถ€,2020. 2. ์ฒœ์ •ํฌ.Verifiable Computing (VC) is a complexity-theoretic method to secure the integrity of computations. The need is increasing as more computations are outsourced to untrusted parties, e.g., cloud platforms. Existing techniques, however, have mainly focused on exact computations, but not approximate arithmetic, e.g., floating-point or fixed-point arithmetic. This makes it hard to apply them to certain types of computations (e.g., machine learning, data analysis, and scientific computation) that inherently require approximate arithmetic. In this thesis, we present an efficient interactive proof system for arithmetic circuits with rounding gates that can represent approximate arithmetic. The main idea is to represent the rounding gate into a small sub-circuit, and reuse the machinery of the Goldwasser, Kalai, and Rothblum's protocol (also known as the GKR protocol) and its recent refinements. Specifically, we shift the algebraic structure from a field to a ring to better deal with the notion of ``digits'', and generalize the original GKR protocol over a ring. Then, we represent the rounding operation by a low-degree polynomial over a ring, and develop a novel, optimal circuit construction of an arbitrary polynomial to transform the rounding polynomial to an optimal circuit representation. Moreover, we further optimize the proof generation cost for rounding by employing a Galois ring. We provide experimental results that show the efficiency of our system for approximate arithmetic. For example, our implementation performed two orders of magnitude better than the existing system for a nested 128 x 128 matrix multiplication of depth 12 on the 16-bit fixed-point arithmetic.๊ณ„์‚ฐ๊ฒ€์ฆ ๊ธฐ์ˆ ์€ ๊ณ„์‚ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•œ ๊ณ„์‚ฐ ๋ณต์žก๋„ ์ด๋ก ์  ๋ฐฉ๋ฒ•์ด๋‹ค. ์ตœ๊ทผ ๋งŽ์€ ๊ณ„์‚ฐ์ด ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ๊ณผ ๊ฐ™์€ ์ œ3์ž์—๊ฒŒ ์™ธ์ฃผ๋จ์— ๋”ฐ๋ผ ๊ทธ ํ•„์š”์„ฑ์ด ์ฆ๊ฐ€ํ•˜๊ณ  ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ธฐ์กด์˜ ๊ณ„์‚ฐ๊ฒ€์ฆ ๊ธฐ์ˆ ์€ ๋น„๊ทผ์‚ฌ ์—ฐ์‚ฐ๋งŒ์„ ๊ณ ๋ คํ–ˆ์„ ๋ฟ, ๊ทผ์‚ฌ ์—ฐ์‚ฐ (๋ถ€๋™ ์†Œ์ˆ˜์  ๋˜๋Š” ๊ณ ์ • ์†Œ์ˆ˜์  ์—ฐ์‚ฐ)์€ ๊ณ ๋ คํ•˜์ง€ ์•Š์•˜๋‹ค. ๋”ฐ๋ผ์„œ ๋ณธ์งˆ์ ์œผ๋กœ ๊ทผ์‚ฌ ์—ฐ์‚ฐ์ด ํ•„์š”ํ•œ ํŠน์ • ์œ ํ˜•์˜ ๊ณ„์‚ฐ (๊ธฐ๊ณ„ ํ•™์Šต, ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐ ๊ณผํ•™ ๊ณ„์‚ฐ ๋“ฑ)์— ์ ์šฉํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด ๋…ผ๋ฌธ์€ ๋ฐ˜์˜ฌ๋ฆผ ๊ฒŒ์ดํŠธ๋ฅผ ์ˆ˜๋ฐ˜ํ•˜๋Š” ์‚ฐ์ˆ  ํšŒ๋กœ๋ฅผ ์œ„ํ•œ ํšจ์œจ์ ์ธ ๋Œ€ํ™”ํ˜• ์ฆ๋ช… ์‹œ์Šคํ…œ์„ ์ œ์‹œํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ์‚ฐ์ˆ  ํšŒ๋กœ๋Š” ๊ทผ์‚ฌ ์—ฐ์‚ฐ์„ ํšจ์œจ์ ์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ๊ทผ์‚ฌ ์—ฐ์‚ฐ์— ๋Œ€ํ•œ ํšจ์œจ์ ์ธ ๊ณ„์‚ฐ ๊ฒ€์ฆ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ฃผ์š” ์•„์ด๋””์–ด๋Š” ๋ฐ˜์˜ฌ๋ฆผ ๊ฒŒ์ดํŠธ๋ฅผ ์ž‘์€ ํšŒ๋กœ๋กœ ๋ณ€ํ™˜ํ•œ ํ›„, ์—ฌ๊ธฐ์— Goldwasser, Kalai, ๋ฐ Rothblum์˜ ํ”„๋กœํ† ์ฝœ (GKR ํ”„๋กœํ† ์ฝœ)๊ณผ ์ตœ๊ทผ์˜ ๊ฐœ์„ ์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ตฌ์ฒด์ ์œผ๋กœ, ๋Œ€์ˆ˜์  ๊ฐ์ฒด๋ฅผ ์œ ํ•œ์ฒด๊ฐ€ ์•„๋‹Œ ``์ˆซ์ž''๋ฅผ ๋ณด๋‹ค ์ž˜ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜์œผ๋กœ ์น˜ํ™˜ํ•œ ํ›„, ํ™˜ ์œ„์—์„œ ์ ์šฉ ๊ฐ€๋Šฅํ•˜๋„๋ก ๊ธฐ์กด์˜ GKR ํ”„๋กœํ† ์ฝœ์„ ์ผ๋ฐ˜ํ™”ํ•˜์˜€๋‹ค. ์ดํ›„, ๋ฐ˜์˜ฌ๋ฆผ ์—ฐ์‚ฐ์„ ํ™˜์—์„œ ์ฐจ์ˆ˜๊ฐ€ ๋‚ฎ์€ ๋‹คํ•ญ์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ , ๋‹คํ•ญ์‹ ์—ฐ์‚ฐ์„ ์ตœ์ ์˜ ํšŒ๋กœ ํ‘œํ˜„์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ์ƒˆ๋กญ๊ณ  ์ตœ์ ํ™”๋œ ํšŒ๋กœ ๊ตฌ์„ฑ์„ ๊ฐœ๋ฐœํ•˜์˜€๋‹ค. ๋˜ํ•œ, ๊ฐˆ๋ฃจ์•„ ํ™˜์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ˜์˜ฌ๋ฆผ์„ ์œ„ํ•œ ์ฆ๋ช… ์ƒ์„ฑ ๋น„์šฉ์„ ๋”์šฑ ์ตœ์ ํ™”ํ•˜์˜€๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ, ์‹คํ—˜์„ ํ†ตํ•ด ์šฐ๋ฆฌ์˜ ๊ทผ์‚ฌ ์—ฐ์‚ฐ ๊ฒ€์ฆ ์‹œ์Šคํ…œ์˜ ํšจ์œจ์„ฑ์„ ํ™•์ธํ•˜์˜€๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์šฐ๋ฆฌ์˜ ์‹œ์Šคํ…œ์€ ๊ตฌํ˜„ ์‹œ, 16 ๋น„ํŠธ ๊ณ ์ • ์†Œ์ˆ˜์  ์—ฐ์‚ฐ์„ ํ†ตํ•œ ๊นŠ์ด 12์˜ ๋ฐ˜๋ณต๋œ 128 x 128 ํ–‰๋ ฌ ๊ณฑ์…ˆ์˜ ๊ฒ€์ฆ์— ์žˆ์–ด ๊ธฐ์กด ์‹œ์Šคํ…œ๋ณด๋‹ค ์•ฝ 100๋ฐฐ ๋” ๋‚˜์€ ์„ฑ๋Šฅ์„ ๋ณด์ธ๋‹ค.1 Introduction 1 1.1 Verifiable Computing 2 1.2 Verifiable Approximate Arithmetic 3 1.2.1 Problem: Verification of Rounding Arithmetic 3 1.2.2 Motivation: Verifiable Machine Learning (AI) 4 1.3 List of Papers 5 2 Preliminaries 6 2.1 Interactive Proof and Argument 6 2.2 Sum-Check Protocol 7 2.3 The GKR Protocol 10 2.4 Notation and Cost Model 14 3 Related Work 15 3.1 Interactive Proofs 15 3.2 (Non-)Interactive Arguments 17 4 Interactive Proof for Rounding Arithmetic 20 4.1 Overview of Our Approach and Result 20 4.2 Interactive Proof over a Ring 26 4.2.1 Sum-Check Protocol over a Ring 27 4.2.2 The GKR Protocol over a Ring 29 4.3 Verifiable Rounding Operation 31 4.3.1 Lowest-Digit-Removal Polynomial over Z_{p^e} 32 4.3.2 Verification of Division-by-p Layer 33 4.4 Delegation of Polynomial Evaluation in Optimal Cost 34 4.4.1 Overview of Our Circuit Construction 35 4.4.2 Our Circuit for Polynomial Evaluation 37 4.4.3 Cost Analysis 40 4.5 Cost Optimization 45 4.5.1 Galois Ring over Z_{p^e} and a Sampling Set 45 4.5.2 Optimization of Prover's Cost for Rounding Layers 47 5 Experimental Results 50 5.1 Experimental Setup 50 5.2 Verifiable Rounding Operation 51 5.2.1 Effectiveness of Optimization via Galois Ring 51 5.2.2 Efficiency of Verifiable Rounding Operation 53 5.3 Comparison to Thaler's Refinement of GKR Protocol 54 5.4 Discussion 57 6 Conclusions 60 6.1 Towards Verifiable AI 61 6.2 Verifiable Cryptographic Computation 62 Abstract (in Korean) 74Docto

    Performance Comparison of Projective Elliptic-curve Point Multiplication in 64-bit x86 Runtime Environment

    Get PDF
    For over two decades, mathematicians and cryptologists have evaluated and presented the theoretical performance of Elliptic-curve scalar point-multiplication in projective geometry. Because computation in projective domain is composed of a wide array of formulations and computing optimizations, there is not a comprehensive performance comparison of point-multiplication using projective transformation available to verify its realistic efficiency in 64-bit x86 computing platforms. Today, research on explicit mathematical formulations in projective domain continues to excel by seeking higher computational efficiency and ease of realization. An explicit performance evaluation will help implementers choose better implementation methods and improve Elliptic-curve scalar point-multiplication. This paper was founded on the practical solution that obtaining realistic performance figures should be based on more precise computational cost metrics and specific computing platforms. As part of that solution, an empirical performance benchmark comparison between two approaches implementing projective Elliptic-curve scalar point-multiplication will be presented to provide the selection of, and subsequently ways to improve scalar point-multiplication technology executing in a 64-bit x86 runtime environment

    Simulation of Error Correction Algorithms Using Reed Solomon Codes

    Get PDF
    The Reed-Solomon codes for multiple-error-correction are examined in this study. The results of a comparison between the conventional Gorenstein-Zierler method and a transform method are discussed, and simple examples are given. Then decoding algorithms are compared in terms of the numerical complexity. Finally the conclusions of the simulation are stated.Computer Scienc
    corecore