• 제목/요약/키워드: 모듈러 곱셈

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

새로운 잉여 이진 Montgomery 곱셈기와 하드웨어 구조 (A Novel Redundant Binary Montgomery Multiplier and Hardware Architecture)

  • 임대성;장남수;지성연;김성경;이상진;구본석
    • 정보보호학회논문지
    • /
    • 제16권4호
    • /
    • pp.33-41
    • /
    • 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%의 속도 향상을 보였다.

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

삼항 기약다항식을 이용한 GF($2^n$)의 효율적인 저면적 비트-병렬 곱셈기 (Low Space Complexity Bit Parallel Multiplier For Irreducible Trinomial over GF($2^n$))

  • 조영인;장남수;김창한;홍석희
    • 대한전자공학회논문지SD
    • /
    • 제45권12호
    • /
    • pp.29-40
    • /
    • 2008
  • 유한체 GF($2^n$) 연산을 바탕으로 구성되는 암호시스템에서 유한체 곱셈의 효율적인 하드웨어 설계는 매우 중요한 연구분야이다. 본 논문에서는 공간 복잡도가 낮은 병렬 처리 유한체 곱셈기를 구성하기 위하여 삼항 기약다항식(Trinomial) $f(x)=x^n+x^k+1$의 모듈러 감산 연산 특징을 이용하였다. 또한 연산 수행 속도를 빠르게 개선하기 위해 하드웨어 구조를 기존의 Mastrovito 곱셈 방법과 유사하게 구성한다. 제안하는 곱셈기는 $n^2-k^2$ 개의 AND 게이트와 $n^2-k^2+2k-2$개의 XOR 게이트로 구성되므로 이는 기존의 $n^2$ AND게이트, $n^2-1$ XOR 게이트의 합 $2n^2-1$에서 $2k^2-2k+1$ 만큼의 공간 복잡도가 감소된 결과이다. 시간 복잡도는 기존의 $T_A+(1+{\lceil}{\log}_2(2n-k-1){\rceil})T_X$와 같거나 $1T_X$ 큰 값을 갖는다. 최고차 항이 100에서 1000 사이의 모든 기약다항식에 대해 시간복잡도는 같거나 $1T_X(10%{\sim}12.5%$)정도 증가하는데 비해 공간 복잡도는 최대 25% 까지 감소한다.

모듈러 곱셈연산을 위한 비트레벨 시스토릭 어레이 (Bit-Level Systolic Array for Modular Multiplication)

  • 최성욱
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 1995년도 종합학술발표회논문집
    • /
    • pp.163-172
    • /
    • 1995
  • In this paper, the bit-level 1-dimensionl systolic array for modular multiplication are designed. First of all, the parallel algorithms and data dependence graphs from Walter's Iwamura's methods based on Montgomery Algorithm for modular multiplication are derived and compared. Since Walter's method has the smaller computational index points in data dependence graph than Iwamura's, it is selected as the base algorithm. By the systematic procedure for systolic array design, four 1-dimensional systolic arrays ale obtained and then are evaluated by various criteria. Modifying the array derived from 〔0,1〕 projection direction by adding a control logic and serializing the communication paths of data A, optimal 1-dimensional systolic array is designed. It has constant I/O channels for modular expandable and is good for fault tolerance due to unidirectional paths. And so, it is suitable for RSA Cryptosystem which deals with the large size and many consecutive message blocks.

  • PDF

TMS320C54X DSP보드를 이용한 IDEA 구현 (IDEA Implementation On TMS320C54X DSP Board)

  • 송종관;윤병우
    • 한국정보통신학회논문지
    • /
    • 제3권1호
    • /
    • pp.69-74
    • /
    • 1999
  • 본 논문에서는 데이터 암호화 알고리듬으로 성공적으로 사용되고있는 IDEA에 대한 분석과 이를 TMS320C54X DSP 보드를 사용하여 구현한 결과를 기술한다. 또한 모듈러 (2^16+1) 곱셈 연산을 사용함으로써 처리시간을 상당히 줄일 수 있음을 보였다. 구현된 결과는 초당 약 250 - 300 Mbyte의 처리 속도를 보여준다.

  • PDF

공개키 암호 구현을 위한 경량 하드웨어 가속기 (A Lightweight Hardware Accelerator for Public-Key Cryptography)

  • 성병윤;신경욱
    • 한국정보통신학회논문지
    • /
    • 제23권12호
    • /
    • pp.1609-1617
    • /
    • 2019
  • ECC (Elliptic Curve Cryptography)와 RSA를 기반으로 하는 다양한 공개키 암호 프로토콜 구현을 지원하는 하드웨어 가속기 설계에 관해 기술한다. NIST 표준으로 정의된 소수체 상의 5가지 타원곡선과 3가지 키길이의 RSA를 지원하며 또한, 4가지 타원곡선 점 연산과 6가지 모듈러 연산을 지원하도록 설계되어 ECC와 RSA 기반 다양한 공개키 암호 프로토콜의 하드웨어 구현에 응용될 수 있다. 저면적 구현을 위해 내부 유한체 연산회로는 32 비트의 데이터 패스로 설계되었으며, 워드 기반 몽고메리 곱셈 알고리듬, 타원곡선 점 연산을 위해서는 자코비안 좌표계, 그리고 모듈러 곱의 역원 연산을 위해서는 페르마 소정리를 적용하였다. 설계된 하드웨어 가속기를 FPGA 디바이스에 구현하여 EC-DH 키교환 프로토콜과 RSA 암호·복호 둥작을 구현하여 하드웨어 동작을 검증하였다. 180-nm CMOS 표준 셀 라이브러리로 합성한 결과, 50 MHz 클록 주파수에서 20,800 등가게이트와 28 kbit의 RAM으로 구현되었으며, Virtex-5 FPGA 디바이스에서 1,503 슬라이스와 2개의 BRAM으로 구현되었다.

$AB^2$ 연산을 위한 세미시스톨릭 구조 설계 (Design of Semi-Systolic Architecture for $AB^2$ Operation)

  • 이진호;김현성
    • 한국산업정보학회논문지
    • /
    • 제9권4호
    • /
    • pp.41-46
    • /
    • 2004
  • 본 논문에서는 $GF(2^m)$상에서 $AB^2$ 연산을 위한 세미시스톨릭 구조를 제안한다. 먼저 기존의 세미시스톨릭 구조를 통하여 문제점을 제시하고, 이러한 문제점을 해결하기 위한 AOP(All One Polynomial)에 기반 한 새로운 $AB^2$ 알고리즘을 제안하고 이를 위한 새로운 구조를 제안한다. 본 논문에서 제안한 구조는 기존의 구조들보다 효율적인 구성을 가진다 제안된 구조는 공개키 암호의 핵심이 되는 지수기의 구현을 위한 효율적인 기본구조로 사용될 수 있다.

  • PDF

ECC 기반의 공개키 보안 프로토콜을 지원하는 보안 SoC (A Security SoC supporting ECC based Public-Key Security Protocols)

  • 김동성;신경욱
    • 한국정보통신학회논문지
    • /
    • 제24권11호
    • /
    • pp.1470-1476
    • /
    • 2020
  • 모바일 장치와 IoT의 보안 프로토콜 구현에 적합한 경량 보안 SoC 설계에 대해 기술한다. Cortex-M0을 CPU로 사용하는 보안 SoC에는 타원곡선 암호 (elliptic curve cryptography) 코어, SHA3 해시 코어, ARIA-AES 블록 암호 코어 및 무작위 난수 생성기 (TRNG) 코어 등의 하드웨어 크립토 엔진들이 내장되어 있다. 핵심 연산장치인 ECC 코어는 SEC2에 정의된 20개의 소수체와 이진체 타원곡선을 지원하며, 부분곱 생성 및 가산 연산과 모듈러 축약 연산이 서브 파이프라인 방식으로 동작하는 워드 기반 몽고메리 곱셈기를 기반으로 설계되었다. 보안 SoC를 Cyclone-5 FPGA 디바이스에 구현하고 타원곡선 디지털 서명 프로토콜의 H/W-S/W 통합 검증을 하였다. 65-nm CMOS 셀 라이브러리로 합성된 보안 SoC는 193,312 등가 게이트와 84 kbyte의 메모리로 구현되었다.

ARM/NEON 프로세서를 활용한 NIST PQC SABER에서 Toom-Cook 알고리즘 최적화 구현 연구 (Optimization Study of Toom-Cook Algorithm in NIST PQC SABER Utilizing ARM/NEON Processor)

  • 송진교;김영범;서석충
    • 정보보호학회논문지
    • /
    • 제31권3호
    • /
    • pp.463-471
    • /
    • 2021
  • NIST(National Institute of Standards and Technology)에서는 2016년부터 양자컴퓨팅 환경을 대비하여 양자내성암호 표준화 사업을 진행하고 있다. 현재 3라운드가 진행 중이며, 대부분 후보자(5/7)는 격자기반 암호이다. 격자기반 암호는 효율적인 연산 처리와 적절한 키 길이를 제공하여 다른 기반의 양자내성 암호보다 리소스가 제한적인 임베디드 환경에서도 적용이 가능하다는 평가를 받고 있다. 그중 SABER KEM은 효율적인 모듈러스와 연산 부하가 큰 다항식 곱셈을 처리하기 위해 Toom-Cook 알고리즘을 제공한다. 본 논문에서는 ARMv8-A 환경에서 ARM/NEON을 활용하여 SABER의 Toom-Cook 알고리즘에서 평가와 보간 과정에 대한 최적화 구현 방법을 소개한다. 평가과정에서는 ARM/NEON의 효율적인 인터리빙 방법을 제안하며, 보간 과정에 서는 다양한 임베디드 환경에서 적용 가능한 최적화된 구현 방법론을 소개한다. 결과적으로 제안하는 구현은 이전 레퍼런스 구현보다 평가과정에서는 약 3.5배 보간과정에서는 약 5배 빠른 성능을 달성하였다.

ECDSA 하드웨어 가속기가 내장된 보안 SoC (A Security SoC embedded with ECDSA Hardware Accelerator)

  • 정영수;김민주;신경욱
    • 한국정보통신학회논문지
    • /
    • 제26권7호
    • /
    • pp.1071-1077
    • /
    • 2022
  • 타원곡선 암호 (elliptic curve cryptography; ECC) 기반의 공개키 기반구조 구현에 사용될 수 있는 보안 SoC(system-on-chip)를 설계하였다. 보안 SoC는 타원곡선 디지털 서명 알고리듬 (elliptic curve digital signature algorithm; ECDSA)용 하드웨어 가속기가 AXI4-Lite 버스를 통해 Cortex-A53 CPU와 인터페이스된 구조를 갖는다. ECDSA 하드웨어 가속기는 고성능 ECC 프로세서, SHA3 (secure hash algorithm 3) 해시 코어, 난수 생성기, 모듈러 곱셈기, BRAM (block random access memory), 그리고 제어 FSM (finite state machine)으로 구성되며, 최소의 CPU 제어로 ECDSA 서명 생성과 서명 검증을 고성능으로 연산할 수 있도록 설계되었다. 보안 SoC를 Zynq UltraScale+ MPSoC 디바이스에 구현하여 하드웨어-소프트웨어 통합 검증을 하였으며, 150 MHz 클록 주파수로 동작하여 초당 약 1,000번의 ECDSA 서명 생성 또는 서명 검증 연산 성능을 갖는 것으로 평가되었다. ECDSA 하드웨어 가속기는 74,630개의 LUT (look-up table)와 23,356개의 플립플롭, 32kb BRAM 그리고 36개의 DSP (digital signal processing) 블록의 하드웨어 자원이 사용되었다.