• 제목/요약/키워드: 몽고메리 곱셈

검색결과 51건 처리시간 0.027초

GF(p)와 GF(2m) 상의 다중 타원곡선을 지원하는 면적 효율적인 ECC 프로세서 설계 (An Area-efficient Design of ECC Processor Supporting Multiple Elliptic Curves over GF(p) and GF(2m))

  • 이상현;신경욱
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2019년도 춘계학술대회
    • /
    • pp.254-256
    • /
    • 2019
  • 소수체 GF(p)와 이진체 $GF(2^m)$ 상의 다중 타원곡선을 지원하는 듀얼 필드 ECC (DF-ECC) 프로세서를 설계하였다. DF-ECC 프로세서의 저면적 설와 다양한 타원곡선의 지원이 가능하도록 워드 기반 몽고메리 곱셈 알고리듬을 적용한 유한체 곱셈기를 저면적으로 설계하였으며, 페르마의 소정리(Fermat's little theorem)를 유한체 곱셈기에 적용하여 유한체 나눗셈을 구현하였다. 설계된 DF-ECC 프로세서는 스칼라 곱셈과 점 연산, 그리고 모듈러 연산 기능을 가져 다양한 공개키 암호 프로토콜에 응용이 가능하며, 유한체 및 모듈러 연산에 적용되는 파라미터를 내부 연산으로 생성하여 다양한 표준의 타원곡선을 지원하도록 하였다. 설계된 DF-ECC는 FPGA 구현을 하드웨어 동작을 검증하였으며, 0.18-um CMOS 셀 라이브러리로 합성한 결과 22,262 GEs (gate equivalences)와 11 kbit RAM으로 구현되었으며, 최대 100 MHz의 동작 주파수를 갖는다. 설계된 DF-ECC 프로세서의 연산성능은 B-163 Koblitz 타원곡선의 경우 스칼라 곱셈 연산에 885,044 클록 사이클이 소요되며, B-571 슈도랜덤 타원곡선의 스칼라 곱셈에는 25,040,625 사이클이 소요된다.

  • PDF

개선된 몽고메리 알고리즘을 이용한 저면적용 RSA 암호 회로 설계 (Design of RSA cryptographic circuit for small chip area using refined Montgomery algorithm)

  • 김무섭;최용제;김호원;정교일
    • 정보보호학회논문지
    • /
    • 제12권5호
    • /
    • pp.95-105
    • /
    • 2002
  • 본 논문에서는 공개키 암호 시스템에서 인증, 키 교환 및 전자 서명을 위해 사용되는 RSA 공개키 암호 알고리즘의 효율적인 하드웨어 구현 방법에 대해 기술하였다. RSA 공개키 알고리즘은 모듈러 멱승 연산에 의해 계산되어지며, 모듈러 멱승 연산은 반복적인 모듈러 곱셈 연산을 필요로 한다. 모듈러 곱셈 구현을 위한 많은 알고리즘 중, 하드웨어 구현의 효율성 때문에 Montgomery 알고리즘이 많이 사용되어지고 있다. 지금까지 몽고메리 알고리즘을 이용하여 고성능의 RSA 암호회로를 설계하는 연구는 많이 수행되어 왔으나, 대부분의 연구가 시스템의 고성능을 위한 연산 시간의 감소에 중점을 두고있다. 하드웨어 구현에 제한이 있는 시스템에서 하드웨어 설계 시 가장 고려해야 할 사항은 시스템의 성능과 면적을 고려한 설계이다. 이러한 이유로, 본 논문에서는 기존의 Montgomery 알고리즘을 저면적 회로에 적합한 구조로 개선하였으며, 개선된 알고리즘을 이용하여 ETRI에서 개발한 스마트 카드용 에뮬레이팅 시스템인 IESA 시스템에 적용하여 검증하였다.

타원곡선 기반 공개키 암호 시스템 구현을 위한 Scalable ECC 프로세서 (A Scalable ECC Processor for Elliptic Curve based Public-Key Cryptosystem)

  • 최준백;신경욱
    • 한국정보통신학회논문지
    • /
    • 제25권8호
    • /
    • pp.1095-1102
    • /
    • 2021
  • 성능과 하드웨어 복잡도 사이에 높은 확장성과 유연성을 갖는 확장 가능형 ECC 구조를 제안한다. 구조적 확장성을 위해 유한체 연산을 32 비트 워드 단위로 병렬 처리하는 처리요소의 1차원 배열을 기반으로 모듈러 연산회로를 구현하였으며, 사용되는 처리요소의 개수를 1~8개 범위에서 결정하여 회로를 합성할 수 있도록 설계되었다. 이를 위해 워드 기반 몽고메리 곱셈과 몽고메리 역원 연산의 확장 가능형 알고리듬을 적용하였다. 180-nm CMOS 공정으로 확장 가능형 ECC 프로세서 (sECCP)를 구현한 결과, NPE=1인 경우에 100 kGE와 8.8 kbit의 RAM으로 구현되었고, NPE=8인 경우에는 203 kGE와 12.8 kbit의 RAM으로 구현되었다. sECCP가 100 MHz 클록으로 동작하는 경우, NPE=1인 경우와 NPE=8인 경우의 P256R 타원곡선 상의 점 스칼라 곱셈을 각각 초당 110회, 610회 연산할 수 있는 것으로 분석되었다.

몽고메리 알고리즘을 위한 고정-크기 시스톨릭 어레이 설계 및 분석 (Design and Analysis of Fixed -size Systolic Arrays for Montgomery Modular Multiplication)

  • 김현성;이성우;김정준;김태;유기영
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권4호
    • /
    • pp.406-419
    • /
    • 1999
  • RSA와 같은 공개키 암호시스템(public-key cryptography system)에서는 512 비트 또는 그 이상 큰수의 모듈러 곱셈 연산을 수행하여야한다. 본 논문에서는 Montgomery 알고리즘을 이용하여 모듈러 곱셈을 수행하는 두 가지의 고정-크기 선형 시스톨릭 어레이를 설계하고 분석한다. 제안된 임의의 고정-크기 선형 시스톨릭 어레이와 파이프라인된 고정-크기 선형 시스톨릭 어레이는 최적의 문제-크기 선형 시스톨릭 어레이로부터 LPGS(Locally Parallel Globally Sequential)분할방법을 적용하여 설계한다. VHDL 시뮬레이션 결과, 밴드이 크기를 4로 하여 분할 시 문제-크기 어레이와 비교하면 수행시간의 지연이 없었으며,어레이의 크기도 1/4로 줄일 수 있었다. 제안된 시스톨릭 어레이는 크기에 제한을 갖는 스마트카드 등에 이용될수 있을 것이다.

RSA 암호시스템을 위한 모듈러 지수 연산 프로세서 설계 (Design of Modular Exponentiation Processor for RSA Cryptography)

  • 허영준;박혜경;이건직;이원호;유기영
    • 정보보호학회논문지
    • /
    • 제10권4호
    • /
    • pp.3-11
    • /
    • 2000
  • 본 논문에서는 몽고메리 알고리즘을 사용하여 모듈러 곱셈을 빠르게 수행하는 선형 시스톨릭 어레이를 설계하고, 이 곱셈기와 LR 이진 제곱 곱셈 알고리즘을 사용하여 n 비트 메시지 블록에 대해 모듈러 지수 연산을 수행하는 지수 연산 프로세서를 설계한다 이 프로세서는 제어장치, 입출력 시프트 레지스터, 지수 연산 장치 등 3개의 영역으로 나 누어진다. 설계된 지수 연산 프로세서의 동작을 검증하기 위해 VHDL를 사용하여 모델링하고 MAX+PLUS II를 사용하여 시뮬레이션 한다. 메시지 블록의 길이 n=512일 때 설계된 지수 연산 프로세서의 지연 시간은 59.5ms이다. 설계된 모듈러 지수 연산 프로세서는 RSA 칩(chip)에 이용될 수 있을 것이다.

변형된 RBA를 이용한 몽고메리 곱셈기와 하드웨어 구조 (Montgomery Multiplier Base on Modified RBA and Hardware Architecture)

  • 지성연;임대성;장남수;김창한;이상진
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 2006년도 하계학술대회
    • /
    • pp.351-355
    • /
    • 2006
  • RSA 암호 시스템은 IC카드, 모바일 및 WPKI, 전자화폐, SET, SSL 시스템 등에 많이 사용된다. RSA는 모듈러 지수승 연산을 통하여 수행되며, Montgomery 곱셈기를 사용하는 것이 효율적이라고 알려져 있다. Montgomery 곱셈기에서 임계 경로 지연 시간(Critical Path Delay)은 세 피연산자의 덧셈에 의존하고 캐리 전파를 효율적으로 처리하는 문제는 Montgomery 곱셈기의 효율성에 큰 영향을 미친다. 최근 캐리 전파를 제거하는 방법으로 캐리 저장 덧셈기(Carry Save Adder, CSA)를 사용하는 연구가 계속 되고 있다. McIvor외 세 명은 지수승 연산에 최적인 CSA 3단계로 구성된 Montgomery 곱셈기와 CSA 2단계로 구성된 Montgomery 곱셈기를 제안했다. 시간 복잡도 측면에서 후자는 전자에 비해 효율적이다. 본 논문에서는 후자보다 빠른 연산을 수행하기 위해 캐리 전파 제거 특성을 가진 이진 부호 자리(Signed-Digit, SD) 수 체계를 사용한다. 두 이진 SD 수의 덧셈을 수행하는 잉여 이진 덧셈기(Redundant Binary Adder, RBA)를 새로 제안하고 Montgomery 곱셈기에 적용한다. 기존의 RBA에서 사용하는 이진 SD 덧셈 규칙 대신 새로운 덧셈 규칙을 제안하고 삼성 STD130 $0.18{\mu}m$ 1.8V 표준 셀 라이브러리에서 지원하는 게이트들을 사용하여 설계하고 시뮬레이션 하였다. 그 결과 McIvor의 2 방법과 기존의 RBA보다 최소 12.46%의 속도 향상을 보였다.

  • PDF

파이프라인 구조의 고속 RSA 암호화 칩 설계 (Design of a Pipelined High Performance RSA Crypto_chip)

  • 이석용;김성두;정용진
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제28권6호
    • /
    • pp.301-309
    • /
    • 2001
  • 본 논문에서는 RSA 암호 시스템의 핵심 과정인 모듈로 멱승 연산에 대한 새로운 하드웨어 구조를 제시한다. 본 방식은 몽고메리 곱셈 알고리즘을 사용하였으며 기존의 방법들이 데이터 종속 그래프(DG : Dependence Graph)를 수직으로 매핑한 것과는 달리 여기서는 수평으로 매핑하여 1차원 선형 어레이구조를 구성하였다. 그 결과로 멱승시에 중간 결과값이 순차적으로 나와서 바로 다음 곱셈을 위한 입력으로 들어갈 수 있기 때문에 100%의 처리율(throughput)을 이룰 수 있고, 수직 매핑 방식에 비해 절반의 클럭 횟수로 연산을 해낼 수 있으며 컨트롤 또한 단순해지는 장점을 가진다. 각 PE(Processing Element)는 2개의 전가산기와 3개의 멀티플렉서로 이루어져 있고, 암호키의 비트수를 k비트라 할 때 k+3개의 PE만으로 파이프라인구조를 구현하였다. 1024비트 RSA데이터의 암호 똔느 복호를 완료하는데 2k$^2$+12k+19의 클럭 수가 소요되며 클럭 주파수 100Mhz에서 약 50kbps의 성능을 보인다. 또한, 제안된 하드웨어는 내부 계산 구조의 지역성(locality), 규칙성(regularity) 및 모듈성(modularity) 등으로 인해 실시간 고속 처리를 위한 VLSI 구현에 적합하다.

  • PDF

GF(p) 224-비트 ECC와 2048-비트 RSA를 지원하는 공개키 암호 프로세서 (A Public-Key Cryptography Processor Supporting GF(p) 224-bit ECC and 2048-bit RSA)

  • 성병윤;신경욱
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2018년도 춘계학술대회
    • /
    • pp.163-165
    • /
    • 2018
  • GF(p)상 타원곡선 암호(ECC)와 RSA를 단일 하드웨어로 통합하여 구현한 공개키 암호 프로세서를 설계하였다. 설계된 EC-RSA 공개키 암호 프로세서는 NIST 표준에 정의된 소수체 상의 224-비트 타원 곡선 P-224와 2048-비트 키 길이의 RSA를 지원한다. ECC와 RSA가 갖는 연산의 공통점을 기반으로 워드기반 몽고메리 곱셈기와 메모리 블록을 효율적으로 결합하여 최적화된 데이터 패스 구조를 적용하였다. EC-RSA 공개키 암호 프로세서는 Modelsim을 이용한 기능검증을 통하여 정상동작을 확인하였으며, $0.18{\mu}m$ CMOS 셀 라이브러리로 합성한 결과 11,779 GEs와 14-Kbit RAM의 경량 하드웨어로 구현되었다. EC-RSA 공개키 암호 프로세서는 최대 동작주파수 133 MHz이며, ECC 연산에는 867,746 클록주기가 소요되며, RSA 복호화 연산에는 26,149,013 클록주기가 소요된다.

  • PDF

유한체상의 낮은 복잡도를 갖는 시스톨릭 몽고메리 곱셈 (Low Complexity Systolic Montgomery Multiplication over Finite Fields GF(2m))

  • 이건직
    • 디지털산업정보학회논문지
    • /
    • 제18권1호
    • /
    • pp.1-9
    • /
    • 2022
  • Galois field arithmetic is important in error correcting codes and public-key cryptography schemes. Hardware realization of these schemes requires an efficient implementation of Galois field arithmetic operations. Multiplication is the main finite field operation and designing efficient multiplier can clearly affect the performance of compute-intensive applications. Diverse algorithms and hardware architectures are presented in the literature for hardware realization of Galois field multiplication to acquire a reduction in time and area. This paper presents a low complexity semi-systolic multiplier to facilitate parallel processing by partitioning Montgomery modular multiplication (MMM) into two independent and identical units and two-level systolic computation scheme. Analytical results indicate that the proposed multiplier achieves lower area-time (AT) complexity compared to related multipliers. Moreover, the proposed method has regularity, concurrency, and modularity, and thus is well suited for VLSI implementation. It can be applied as a core circuit for multiplication and division/exponentiation.

단순 전력분석 공격에 대처하는 타원곡선 암호프로세서의 하드웨어 설계 (Hardware Design of Elliptic Curve processor Resistant against Simple Power Analysis Attack)

  • 최병윤
    • 한국정보통신학회논문지
    • /
    • 제16권1호
    • /
    • pp.143-152
    • /
    • 2012
  • 본 논문은 스칼라 곱셈, Menezes-Vanstone 타원곡선 암호 및 복호 알고리즘, 점-덧셈, 점-2배 연산, 유한체상 곱셈, 나눗셈 등의 7가지 동작을 수행하는 GF($2^{191}$) 타원곡선 암호프로세서를 하드웨어로 설계하였다. 단순 전력 분석에 대비하기 위해 타원곡선 암호프로세서는 주된 반복 동작이 키 값에 무관하게 동일한 연산 동작으로 구성되는 몽고메리 스칼라 곱셈 기법을 사용하며, GF($2^m$)의 유한체에서 각각 1, (m/8), (m-1)개의 고정된 사이클에 완료되는 GF-ALU, GF-MUL, GF-DIV 연산장치가 병렬적으로 수행되는 동작 특성을 갖는다. 설계된 프로세서는 0.35um CMOS 공정에서 약 68,000개의 게이트로 구성되며, 시뮬레이션을 통한 최악 지연시간은 7.8 ns로 약 125 MHz의 동작속도를 갖는다. 설계된 프로세서는 320 kps의 암호율, 640 kbps을 복호율 갖고 7개의 유한체 연산을 지원하므로 다양한 암호와 통신 분야에 적용할 수 있다.