• 제목/요약/키워드: clock multiplier

검색결과 85건 처리시간 0.026초

GF(2m) 상의 NIST 타원곡선을 지원하는 ECC 프로세서 (ECC Processor Supporting NIST Elliptic Curves over GF(2m))

  • 이상현;신경욱
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2018년도 추계학술대회
    • /
    • pp.190-192
    • /
    • 2018
  • NIST 표준으로 정의된 이진체 상의 5가지 pseudo-random 타원곡선과 5가지 Koblitz 타원곡선을 지원하는 타원곡선 암호 (Elliptic Curve Cryptography; ECC) 프로세서를 설계하였다. Lopez-Dahab 투영 좌표계를 적용하여 모듈러 곱셈과 XOR 연산으로 스칼라 곱셈 (scalar multiplication)이 연산되도록 하였으며, 32-비트${\times}$32-비트의 워드 기반 몽고메리 곱셈기를 이용한 고정 크기의 하드웨어로 다양한 키 길이의 ECC가 구현될 수 있도록 설계하였다. 설계된 ECC 프로세서는 FPGA 구현을 통해 하드웨어 동작을 검증하였으며, 0.18-um CMOS 셀 라이브러리로 합성한 결과 100 MHz의 동작 주파수에서 10,674 GEs와 9 킬로비트의 RAM으로 구현되었고, 최대 154 MHz의 동작 주파수를 갖는다.

  • PDF

내장형 시스템을 위한 최적화된 RSA 암호화 프로세서 설계 (Design of an Optimal RSA Crypto-processor for Embedded Systems)

  • 허석원;김문경;이용석
    • 한국통신학회논문지
    • /
    • 제29권4A호
    • /
    • pp.447-457
    • /
    • 2004
  • 본 논문에서는 RSA 암호화 알고리즘을 지원하기 위한 암호화 프로세서의 구조를 제안한다. 본 논문의 RSA 암호화 프로세서는 빅 몽고메리 알고리즘(FIOS)을 기반으로 제안되였으며, 다양한 비트 길이(128∼2048 비트)를 지원한다. RSA 암호화 프로세서의 구조는 RSA 제어 신호 발생기, 빅 몽고메리 프로세서(가산기, 승산기)의 모듈로 구성된다. 빅 몽고메리 프로세서의 가산기와 승산기는 다양한 알고리즘을 이용하여 구현하였다. 내장형 시스템에 적합하게 설계하기 위하여 여러 가지 연산기를 합성한 결과 중에서 ARM 코프로세서와 연동할 수 있는 동작주파수를 갖는 연산기 중에서 가장 작은 연산기를 선택하였다. RSA 암호화 프로세서는 Verilog-HDL을 이용하여 하향식 설계 방법으로 구현되었으며, C언어와 Cadence의 Verilog-XL을 이용하여 검증하였다. 검증된 모델은 하이닉스 0.25$\mu\textrm{m}$ CMOS standard cell 라이브러리를 이용하여 합성되었으며, 2.3V, 10$0^{\circ}C$ 최악 조건에서 동작한다. 본 논문에서 제안한 RSA 암호화 프로세서는 약 51MHz의 주파수에서 동작하며, 게이트 수는 nand2 게이트 기준으로 36,639 gates의 면적을 가진다.

Radix-$2^k$ 모듈라 곱셈 알고리즘 기반의 RSA 지수승 연산기 설계 (Implementation of RSA Exponentiator Based on Radix-$2^k$ Modular Multiplication Algorithm)

  • 권택원;최준림
    • 정보보호학회논문지
    • /
    • 제12권2호
    • /
    • pp.35-44
    • /
    • 2002
  • 본 논문에서는 Radix-$2^k$ 모듈라 곱셈 알고리즘 기반의 고속 RSA 지수승 연산기의 구현 방법을 제시하고 검증하였다. Radix-$2^k$ 모듈라 곱셈 알고리즘을 구현하기 위해 Booth receding 연산 알고리즘을 사용하였으며 최대 radix-16 연산을 위해 2K-byte 메모리와 2개의 전가산기와 3개의 반가산기의 지연을 갖는 CSA(carry-save adder) 어레이를 사용하였다. CSA 어레이 출력인 캐리와 합을 고속으로 가산하기 위해 마지막 덧셈기로써 캐리 발생과 지연시간이 짧은 가상 캐리 예측 덧셈기(pseudo carry look-ahead adder)를 적용하였다. 또한, 주어진 공정에서 동작 주파수와 처리량의 관계를 통해 Radix-$2^k$에서 설계 가능한 radix 값을 제시하였다. Altera FPGA EP2K1500E를 사용하여 기능을 검증한 후 삼성 0.35$\mu\textrm{m}$ 공정을 사용하여 타이밍 시뮬레이션을 하였으며 radix-16 모듈라 곱셈 알고리즘을 사용할 경우 모듈라 곱셈에 (n+4+1)14 의 클럭을 사용하여 1,024-bit RSA를 처리하는데 50MHz에서 5.38ms의 연산 속도를 측정하였다.

시스톨릭 어레이 구조를 갖는 효율적인 n-비트 Radix-4 모듈러 곱셈기 구조 (Efficient Architecture of an n-bit Radix-4 Modular Multiplier in Systolic Array Structure)

  • 박태근;조광원
    • 정보처리학회논문지A
    • /
    • 제10A권4호
    • /
    • pp.279-284
    • /
    • 2003
  • 본 논문에서는 Montgomery 알고리즘을 기반으로 시스톨릭 어레이 구조를 이용한 효율적인 Radix-4 모듈러 곱셈기 구조를 제안한다. 제안된 알고리즘을 이용하여 모듈러 곱셈을 위한 반복의 수가 감소되었으며, 따라서 n-비트의 모듈러 곱셈을 수행하기 위하여 (3/2)n+2 클럭이 소요된다. 그러나 하드웨어의 이용도를 감안할 때 두 개의 곱셈에 대한 중첩(interleaving) 연산이 가능하며, 가장 빠른 시기에 새로운 곱셈을 시작한다면 하나의 모듈러 곱셈을 수행하기 위하여 평균 n/2 클럭이 필요하다. 제안된 구조는 시스톨릭 어레이 구조의 잇점으로 규칙성과 확장성을 갖기 때문에 효율적인 VLSI 구조로 설계하기가 용이하다. 기존의 다른 구조들과 비교하여 볼 때 제안된 구조는 상대적으로 적은 하드웨어들을 사용하여 높은 수행 속도를 보여주었다.

GF(2m) 상의 NIST 타원곡선을 지원하는 ECC 프로세서의 경량 하드웨어 구현 (A Lightweight Hardware Implementation of ECC Processor Supporting NIST Elliptic Curves over GF(2m))

  • 이상현;신경욱
    • 전기전자학회논문지
    • /
    • 제23권1호
    • /
    • pp.58-67
    • /
    • 2019
  • NIST 표준으로 정의된 $GF(2^m)$ 상의 슈도 랜덤 곡선과 Koblitz 곡선을 지원하는 타원곡선 암호(ECC) 프로세서 설계에 대해 기술한다. 고정된 크기의 데이터 패스를 사용하여 5가지 키 길이를 지원함과 아울러 경량 하드웨어 구현을 위해 워드 기반 몽고메리 곱셈기를 기반으로 유한체 연산회로를 설계하였다. 또한, Lopez-Dahab 좌표계를 사용함으로써 유한체 나눗셈을 제거하였다. 설계된 ECC 프로세서를 FPGA 검증 플랫폼에 구현하고, ECDH(Elliptic Curve Diffie-Hellman) 키 교환 프로토콜 동작을 통해 하드웨어 동작을 검증하였다. 180-nm CMOS 표준 셀 라이브러리로 합성한 결과 10,674 등가 게이트와 9 kbit의 dual-port RAM으로 구현되었으며, 최대 동작 주파수는 154 MHz로 평가되었다. 223-비트 슈도 랜덤 타원곡선 상의 스칼라 곱셈 연산에 1,112,221 클록 사이클이 소요되며, 32.3 kbps의 처리량을 갖는다.

에드워즈 곡선 Edwards25519와 Edwards448을 지원하는 공개키 암호 코어 (A Public-Key Crypto-Core supporting Edwards Curves of Edwards25519 and Edwards448)

  • 양현준;신경욱
    • 전기전자학회논문지
    • /
    • 제25권1호
    • /
    • pp.174-179
    • /
    • 2021
  • 에드워즈 곡선 Edwards25519와 Edwards448 상의 점 스칼라 곱셈(point scalar multiplication; PSM)을 지원하는 EdCC (Edwards curve cryptography) 코어를 설계하였다. 저면적 구현을 위해 워드 기반 몽고메리 곱셈 알고리듬을 기반으로 유한체 곱셈기를 설계하였으며, 나눗셈 연산 없이 점 연산을 구현하기 위해 확장 트위스티드 에드워즈 좌표계를 적용하였다. EdCC 코어를 100 MHz의 클록으로 합성한 결과, 24,073 등가 게이트와 11 kbit의 RAM으로 구현되었으며, 최대 동작 주파수는 285 MHz로 추정되었다. Edwards25519와 Edwards448 곡선 상의 PSM을 각각 초당 299회, 66회 연산하는 것으로 평가되었으며, 유사한 구조의 타원곡선 암호 코어에 비해 256 비트 PSM 연산에 소요되는 클록 사이클 수가 약 60 % 감소하여 연산 성능이 약 7.3 배 향상되었다.

래딕스-4 몽고메리 곱셈기 기반의 고속 RSA 연산기 설계 (Design of high-speed RSA processor based on radix-4 Montgomery multiplier)

  • 구본석;유권호;장태주;이상진
    • 정보보호학회논문지
    • /
    • 제17권6호
    • /
    • pp.29-39
    • /
    • 2007
  • 본 논문에서는 래딕스-4 몽고메리 곱셈기 기반의 고속 RSA 연산기를 제안하고 그 구현 결과를 제시한다. 캐리저장 가산기 기반의 래딕스-4 몽고메리 곱셈기를 제안하고, 중국인의 나머지 정리를 적용할 수 있도록 그 구조를 확장하였다. 이를 바탕으로 설계한 1024-비트 RSA 연산기는 1024-비트 모듈러 지수승을 0.84M 클락 사이클, 512-비트 지수승은 0.25M 클락 사이클 동안 각각 계산할 수 있으며, 0.18um 공정을 이용하여 구현한 결과, 최대 300MHz 클락 속도를 가지므로 1024-비트 지수승은 365Kbps, 512-비트 지수승은 1,233Kbps의 성능을 각각 가진다. 또한 고속 RSA 암호 시스템의 구현을 위해, 몽고메리 매핑 계수 계산 및 중국인 나머지 정리의 전처리 과정에 적용할 수 있도록 모듈러 감산 기능을 하드웨어로 구현하였다.

CRT를 이용한 하이래딕스 RSA 모듈로 멱승 처리기의 구현 (Implementation of High-radix Modular Exponentiator for RSA using CRT)

  • 이석용;김성두;정용진
    • 정보보호학회논문지
    • /
    • 제10권4호
    • /
    • pp.81-93
    • /
    • 2000
  • 본 논문에서는 RSA 암호 시스템의 핵심 연산인 모듈로 멱승의 처리속도를 향상시키기 위한 방법으로 하이래딕스 (High-Radix) 연산 방식과 CRT(Chinese Remainder Theorem)를 적용한 새로운 하드웨어 구조를 제안한다. 모듈로 멱승의 기본 연산인 모듈로 곱셈은 16진 연산 방법을 사용하여 PE(Processing Element)의 개수를 1/4고 줄임으로써, 기존의 이 진 연산 방식에 비해 클럭 수차 파이프라이닝 플립플롭의 지연시간을 1/4로 줄였다. 복호화시에는 합성수인 계수 N 의 인수, p, q를 알고 있는 점을 이용하여 속도를 향상시키는 일반적인 방법인 CRT 알고리즘을 적용하였다. 즉, s비트 의 키에 대해, s/2비트 모듈로 곱셈기 두 개를 병렬로 동시 수행함으로써 처리 속도를 CRT를 사용하지 않을 때보다 4 배정도 향상시켰다. 암호화의 경우는 두 개의 s/2비트 모듈로 곱셈기를 직렬로 연결하여 s/비트에 대한 연산이 가능하도록 하였으며 공개키는 E는 17비트까지의 지수를 허용하여 빠른 속도를 유지하였다. 모듈로 곱셈은 몽고메리 알고리즘을 변형하여 사용하였으며, 그 내부 계산 구조를 보여주는 데이터 종속 그래프(Dependence Graph)를 수평으로 매핑하여 1차원 선형 어레이 구조로 구성하였다. 그 결과 삼성 0.5um CMOS 스탠다드 셀 라이브러리를 근거로 산출한 때, 1024 비트 RSA 연산에 대해서 160Mhz의 클럭 주파수로 암호화 시에 15Mbps, 복호화 시에 1.22Mbs의 성능을 가질 것으로 예측되며, 이러한 성능은 지금가지 발표된 국내의의 어느 논문보다도 빠른 RSA 처리 시간이다.

MAP 기반 터보코드의 FPGA 설계 (FPGA Design of Turbo Code based on MAP)

  • 서영호
    • 한국통신학회논문지
    • /
    • 제32권3C호
    • /
    • pp.306-313
    • /
    • 2007
  • 본 논문에서는 높은 에러정정 효율을 보이는 터보코드 알고리즘을 FPGA H/W(hardware) 자원 내에 효율적으로 구현하였다. 본 논문은 구속장의 크기가 3, 1/3 인코더, 2048 사이즈의 랜덤 인터리버에 기반한 터보코드 알고리즘을 사용한다. 제안된 H/W는 델타를 이용하여 알파와 베타를 연산하는 MAP 블록과 각 값들을 저장하는 버퍼 및 람다의 계산을 위한 곱셈기와 람다를 저장하는 버퍼로 구성된다. 제안된 알고리즘과 하드웨어 구조는 C++ 언어를 이용하여 검증하였고, VHDL을 이용하여 하드웨어 구현한 후 FPGA에 적용하여 무선통신 환경에서 성능에 대한 유효성을 보였다. 구현된 H/W는 VERTEX4 XC4VFX12-12-SF363의 FPGA를 타겟으로 하였고 최대 131.533MHz (7.603ns)에서 안정적으로 동작할 수 있었다.

Low-Complexity and Low-Power MIMO Symbol Detector for Mobile Devices with Two TX/RX Antennas

  • Jang, Soohyun;Lee, Seongjoo;Jung, Yunho
    • JSTS:Journal of Semiconductor Technology and Science
    • /
    • 제15권2호
    • /
    • pp.255-266
    • /
    • 2015
  • In this paper, a low-complexity and low-power soft output multiple input multiple output (MIMO) symbol detector is proposed for mobile devices with two transmit and two receive antennas. The proposed symbol detector can support both the spatial multiplexing mode and spatial diversity mode in single hardware and shows the optimal maximum likelihood (ML) performance. By applying a multi-stage pipeline structure and using a complex multiplier based on the polar-coordinate, the complexity of the proposed architecture is dramatically decreased. Also, by applying a clock-gating scheme to the internal modules for MIMO modes, the power consumption is also reduced. The proposed symbol detector was designed using a hardware description language (HDL) and implemented using a 65nm CMOS standard cell library. With the proposed architecture, the proposed MIMO detector takes up an area of approximately $0.31mm^2$ with 183K equivalent gates and achieves a 150Mbps throughput. Also, the power estimation results show that the proposed MIMO detector can reduce the power consumption by a maximum of 85% for the various test cases.