• Title/Summary/Keyword: Montgomery 알고리듬

Search Result 21, Processing Time 0.027 seconds

A New Multiplication Method Using Montgomery Algorithm (Montgomery 알고리듬을 이용한 새로운 곱셈 방식)

  • 오중효;하재철;이국희;문상재
    • Proceedings of the Korea Institutes of Information Security and Cryptology Conference
    • /
    • 1996.11a
    • /
    • pp.160-164
    • /
    • 1996
  • Montgomery 알고리듬은 모듈라 연산을 고속으로 수행하는 방법이다. 그러나 이는 연산할 수를 n-residue로 변환하는 전처리 단계가 필요하다. 이러한 residue 변환에 필요한 오버헤드로 인해 한번의 곱셈에는 비효율적이다. 본 논문에서는 Montgomery 알고리듬을 사용하여 한번의 곱셈을 효율적으로 수행하는 방법을 제안한다.

  • PDF

Efficient Architectures for Modular Exponentiation Using Montgomery Multiplier (Montgomery 곱셈기를 이용한 효율적인 모듈라 멱승기 구조)

  • 하재철;문상재
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.11 no.5
    • /
    • pp.63-74
    • /
    • 2001
  • Modular exponentiation is an essential operation required for implementations of most public key cryptosystems. This paper presents two architectures for modular exponentiation using the Montgomery modular multiplication algorithm combined with two binary exponentiation methods, L-R(Left to Left) algorithms. The proposed architectures make use of MUXes for efficient pre-computation and post-computation in Montgomery\`s algorithm. For an n-bit modulus, if mulitplication with m carry processing clocks can be done (n+m) clocks, the L-R type design requires (1.5n+5)(n+m) clocks on average for an exponentiation. The R-L type design takes (n+4)(n+m) clocks in the worst case.

Design and FPGA Implementation of a High-Speed RSA Algorithm for Digital Signature (디지털 서명을 위한 고속 RSA 암호 시스템의 설계 및 FPGA 구현)

  • 강민섭;김동욱
    • The KIPS Transactions:PartC
    • /
    • v.8C no.1
    • /
    • pp.32-40
    • /
    • 2001
  • In this paper, we propose a high-speed modular multiplication algorithm which revises conventional Montgomery's algorithm. A hardware architecture is also presented to implement 1024-bit RSA cryptosystem for digital signature based on the proposed algorithm. Each iteration in our approach requires only one addition operation for two n-bit integers, while that in Montgomery's requires two addition operations for three n-bit integers. The system which is modelled in VHDL(VHSIC Hardware Description Language) is simulated in functionally through the use of $Synopsys^{TM}$ tools on a Axil-320 workstation, where Altera 10K libraries are used for logic synthesis. For FPGA implementation, timing simulation is also performed through the use of Altera MAX + PLUS II. Experimental results show that the proposed RSA cryptosystem has distinctive features that not only computation speed is faster but also hardware area is drastically reduced compared to conventional approach.

  • PDF

Design of High Speed Modular Multiplication Using Hybrid Adder (Hybrid 가산기를 이용한 고속 모듈러 곱셈기의 설계)

  • Lee, Jae-Chul;Lim, Kwon-Mook;Kang, Min-Sup
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2000.10a
    • /
    • pp.849-852
    • /
    • 2000
  • 본 논문에서는 RSA 암호 시스템의 Montgomery 모듈러 곱셈 알고리듬을 개선한 고속 모듈러 곱셈 알고리듬을 제안하고, Hybrid 구조의 가산기를 사용한 고속 모듈러 곱셈 알고리듬의 설계에 관하여 기술한다. 기존 Montgomery 알고리듬에서는 부분합계산시 2번의 덧셈연산이 요구되지만 제안된 방법에서는 단지 1번의 덧셈 연산으로 부분 합을 계산할 수 있다. 또한 덧셈 연산 속도를 향상시키기 위하여 Hybrid 구조의 가산기를 제안한다. Hybrid 가산기는 기존의 CLA(Carry Look-ahad Adder)와 CSA(Carry Select Adder)알고리듬을 혼합한 구조를 기본으로 하고 있다. 제안된 고속 모듈러 곰셈기는 VHDL(VHSIC Hardware Description Language)을 이용하여 모델링하였고, $Synopsys^{TM}$사의 Design Analyzer를 이용하여 논리합성(Altera 10K lib. 이용)을 수행하였다. 성능 분석을 위하여 Altera MAX+ PLUS II 상에서 타이밍 시뮬레이션을 수행하였고, 실험을 통하여 제안한 방법의 효율성을 입증하였다.

  • PDF

Circuit Design of Modular Multiplier for Fast Exponentiation (고속 멱승을 위한 모듈라 곱셈기 회로 설계)

  • 하재철;오중효;유기영;문상재
    • Proceedings of the Korea Institutes of Information Security and Cryptology Conference
    • /
    • 1997.11a
    • /
    • pp.221-231
    • /
    • 1997
  • 본 논문에서는 고속 멱승을 위한 모듈라 곱셈기를 시스토릭 어레이로 설계한다. Montgomery 알고리듬 및 시스토릭 어레이 구조를 분석하고 공통 피승수 곱셈 개념을 사용한 변형된 Montgomery 알고리듬에 대해 시스토릭 어레이 곱셈기를 설계한다. 제안 곱셈기는 각 처리기 내부 연산을 병렬화 할 수 있고 연산 자체도 간단화 할 수 있어 시스토릭 어레이 하드웨어 구현에 유리하며 기존의 곱셈기를 사용하는 것보다 멱승 전체의 계산을 약 0.4배내지 0.6배로 감소시킬 수 있다.

  • PDF

Design of Montgomery Modular Multiplier based on Systolic Array (시스토릭 어레이를 이용한 Montgomery 모듈라 곱셈기 설계)

  • 하재철;문상재
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.9 no.1
    • /
    • pp.135-146
    • /
    • 1999
  • Most public key cryptosystems are constructed based on a modular exponentiation, which is further decomposed into a series of modular multiplications. We design a new systolic array multiplier to speed up modular multiplication using Montgomery algorithm. This multiplier with simple circuit for each processing element will save about 14% logic gates of hardware and 20% execution time compared with previous one.

A small-area implementation of cryptographic processor for 233-bit elliptic curves over binary field (233-비트 이진체 타원곡선을 지원하는 암호 프로세서의 저면적 구현)

  • Park, Byung-Gwan;Shin, Kyung-Wook
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.21 no.7
    • /
    • pp.1267-1275
    • /
    • 2017
  • This paper describes a design of cryptographic processor supporting 233-bit elliptic curves over binary field defined by NIST. Scalar point multiplication that is core arithmetic in elliptic curve cryptography(ECC) was implemented by adopting modified Montgomery ladder algorithm, making it robust against simple power analysis attack. Point addition and point doubling operations on elliptic curve were implemented by finite field multiplication, squaring, and division operations over $GF(2^{233})$, which is based on affine coordinates. Finite field multiplier and divider were implemented by applying shift-and-add algorithm and extended Euclidean algorithm, respectively, resulting in reduced gate counts. The ECC processor was verified by FPGA implementation using Virtex5 device. The ECC processor synthesized using a 0.18 um CMOS cell library occupies 49,271 gate equivalents (GEs), and the estimated maximum clock frequency is 345 MHz. One scalar point multiplication takes 490,699 clock cycles, and the computation time is 1.4 msec at the maximum clock frequency.

2,048 bits RSA public-key cryptography processor based on 32-bit Montgomery modular multiplier (32-비트 몽고메리 모듈러 곱셈기 기반의 2,048 비트 RSA 공개키 암호 프로세서)

  • Cho, Wook-Lae;Shin, Kyung-Wook
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.21 no.8
    • /
    • pp.1471-1479
    • /
    • 2017
  • This paper describes a design of RSA public-key cryptography processor supporting key length of 2,048 bits. A modular multiplier that is core arithmetic function in RSA cryptography was designed using word-based Montgomery multiplication algorithm, and a modular exponentiation was implemented by using Left-to-Right (LR) binary exponentiation algorithm. A computation of a modular multiplication takes 8,386 clock cycles, and RSA encryption and decryption requires 185,724 and 25,561,076 clock cycles, respectively. The RSA processor was verified by FPGA implementation using Virtex5 device. The RSA cryptographic processor synthesized with 100 MHz clock frequency using a 0.18 um CMOS cell library occupies 12,540 gate equivalents (GEs) and 12 kbits memory. It was estimated that the RSA processor can operate up to 165 MHz, and the estimated time for RSA encryption and decryption operations are 1.12 ms and 154.91 ms, respectively.

An Efficient Hardware Implementation of 257-bit Point Scalar Multiplication for Binary Edwards Curves Cryptography (이진 에드워즈 곡선 공개키 암호를 위한 257-비트 점 스칼라 곱셈의 효율적인 하드웨어 구현)

  • Kim, Min-Ju;Jeong, Young-su;Shin, Kyung-Wook
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2022.05a
    • /
    • pp.246-248
    • /
    • 2022
  • Binary Edwards curves (BEdC), a new form of elliptic curves proposed by Bernstein, satisfy the complete addition law without exceptions. This paper describes an efficient hardware implementation of point scalar multiplication on BEdC using projective coordinates. Modified Montgomery ladder algorithm was adopted for point scalar multiplication, and binary field arithmetic operations were implemented using 257-bit binary adder, 257-bit binary squarer, and 32-bit binary multiplier. The hardware operation of the BEdC crypto-core was verified using Zynq UltraScale+ MPSoC device. It takes 521,535 clock cycles to compute point scalar multiplication.

  • PDF

2048-bit RSA Public-key Crypto-processor (2048-비트 RSA 공개키 암호 프로세서)

  • Cho, Wook-Lae;Shin, Kyung-Wook
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2017.05a
    • /
    • pp.191-193
    • /
    • 2017
  • 2048-bit의 키 길이를 지원하는 공개키 암호 프로세서 RSA-2048을 설계하였다. RSA 암호 연산에 사용되는 핵심 기능블록인 모듈러 곱셈기는 Word-based Montgomery Multiplication 알고리듬으로 설계하였으며, 모듈러 지수 승은 L-R binary exponentiation 알고리듬으로 설계하였다. 2048-bit의 큰 정수를 저장하기 위한 레지스터를 메모리로 대체하고, 곱셈기에 필요한 최소 레지스터만 사용하여 전체 하드웨어 자원을 최소화 하였다. Verilog HDL로 설계된 RSA-2048 프로세서를 RTL-시뮬레이션을 통해 기능을 검증하였다. 작은 소형 디바이스들 간에 인증 및 키 관리가 중요해짐에 따라 설계된 RSA-2048 암호 프로세서를 하드웨어 자원, 메모리가 제한된 응용 분야에 활용 할 수 있다.

  • PDF