• 제목/요약/키워드: 모듈로 연산

검색결과 383건 처리시간 0.023초

고속 모듈라 멱승 연산 프로세서 (A High Speed Modular Exponentiation Processor)

  • 이성순;최광윤;이계호;김정호;한승조
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 1998년도 종합학술발표회논문집
    • /
    • pp.137-147
    • /
    • 1998
  • RSA 암호 시스템에서 512비트 이상의 큰 정수 소수의 모듈라 멱승 연산이 필요하기 때문에 효율적인 암호화 및 복호화를 위해서는 모듈라 멱승 연산의 고속 처리가 필수적이다. 따라서 본 논문에서는 몫을 추정하여 모듈라 감소를 실행하고 carry-save 덧셈과 중간 곱의 크기를 제한하는 interleaved 모듈라 곱셈 및 감소 기법을 이용하여 모듈라 멱승 연산을 수행하는 고속 모듈라 멱승 연산 프로세서를 논리 자동 합성 기법을 바탕으로 하는 탑다운 선계 방식으로 VHDL을 이용하여 모델링하고 SYNOPSIS 툴을 이용하여 합성 및 검증한 후 XILINX XC4025 FPGA에 구현하여 성능을 평가 및 분석한다.

  • PDF

모듈라 멱승 연산의 빠른 수행을 위한 새로운 모듈라 곱셈 알고리즘 (A New Modular Multiplication Algorithm for Fast Modular Exponentiation)

  • 홍성민;오상엽;윤현수
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 1995년도 종합학술발표회논문집
    • /
    • pp.173-182
    • /
    • 1995
  • 모듈라 멱승(modular exponentiation) 연산은 암호학에서 기본적이고 중요한 연산이다. 그러나, 이는 다정도 정수(multiple precision integer)들을 다루기 때문에 그 연산시 간이 무척 많이 걸리므로 이를 단축시킬 필요가 있다. 모듈라 멱승 연산은 모듈라 곱셈(modular multiplication)의 반복으로서, 전체 연산시간을 단축시키기 위해서는 모듈라 곱셈의 수행시간을 단축시키거나, 모듈라 곱셈의 반복횟수를 줄이는 것이 필요하다. 본 논문에서는 모듈라 곱셈을 빠르게 수행하기 위한 알고리즘 두 개를 제안한다. 하나는 서로 다른 두 수의 모듈라 곱셈 알고리즘이고, 다른 하나는 모듈라 제곱을 빠르게 수행하는 알고리즘이다. 이 둘은 기존의 모듈라 곱셈 알고리즘들에 비해 각각 절반과, l/3가량의 단정도 곱셈(single-precision multiplication)만을 필요로 한다. 실제로 PC상에서 구현한 결과 각각 100%와 30%의 속도향상을 보인다.

  • PDF

메모리를 적게 사용하는 모듈라 곱셈 알고리즘들의 비교 (Comparison of Modular Multiplication Algorithms that Use Small Memory)

  • 임승환;박근수
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.670-672
    • /
    • 1999
  • 소인수 분해 문제 혹은 이산대수 문제의 어려움에 근거한 공개키 암호 시스템에서는 큰 수에 대한 모듈라 멱승연산이 전체 시스템의 속도를 좌우하는 큰 요인이 된다. 모듈라 멱승 연산은 모듈라 곱셈으로 이루어진 연산이므로 모듈라 곱셈의 횟수를 줄이거나 빠른 모듈라 곱셈을 이용하면 멱승 연산의 계산 속도가 향상한다. 모듈라 곱셈 방법 중에서도 메모리를 적게 사용하면서도 고속인 방법들을 골라 비교하여 본다.

  • PDF

고속의 몽고메리 모듈라 멱승기의 구현에 관한 연구 (Study on Implementation of a High-Speed Montgomery Modular Exponentiator)

  • 김인섭;김영철
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2002년도 추계학술발표논문집 (중)
    • /
    • pp.901-904
    • /
    • 2002
  • 정보의 암호화와 인증, 디지털 서명등에 효율적인 공개키 암호 시스템의 주 연산은 모듈라 멱승 연산이며 이는 모듈라 곱셈의 연속적인 반복 수행으로 표현될 수 있다. 본 논문에서는 Montgomery 모듈라 곱셈 알고리즘을 사용하여 모듈라 곱셈을 효율적으로 수행하기 위한 모듈라 멱승 연산기를 구현하였으며 Montgomery 모듈라 곱셈시 발생하는 케리 진파 문제를 해결하기 위하여 CPA을 대신하는 CSA를 사용함으로써 멱승 연산시 발생하는 지연시간을 최소화시키는 결과가 얻어짐을 보였다. 본 논문에서는 Montgomery 모듈라 멱승 연산기 구현을 위하여 VHDL 구조적 모델링을 통하여 Synopsys사의 VSS와 Design analyzer를 이용한 논리 합성을 하였고 Mentor Graphics사 Model sim 및 Xilinx사 Design manager의 FPGA 시뮬레이션을 수행하여 성능을 검증 하였다.

  • PDF

MPEG-1 Layer III 오디오 디코더의 실시간 DSP 구현 (Real-Time DSP Implementation of MPEG-1 Layer III Audio Decoder)

  • 김시호;권홍석;배건성
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2000년도 하계종합학술대회 논문집(4)
    • /
    • pp.174-177
    • /
    • 2000
  • 본 논문에서는 높은 압축률과 고음질을 제공하는 MPEG-1 Layer Ⅲ 오디오 디코더를 고정소수점 DSP인 TMS320C6201을 이용하여 실시간으로 동작하도록 구현하였다. ISO/IEC에서 제공하는 부동소수점 C 프로그램을 음질의 손실 없이 고정소수점 연산으로 변환하었고 실시간 동작을 위하여 최적화 작업을 수행하였다. 연산의 정확성을 높이기 위해서 Descaling 모듈에 중점을 두어 부동소수점 연산을 고정소수점 연산으로 변환하였고 IMDCT 모듈과 Synthesis Polyphase Filter Bank 모듈에 대해 고속 알고리즘을 적용하여 연산량과 프로그램 크기를 크게 줄일 수 있었다. 구현된 디코더는 TMS320C6201 DSP가 수행할 수 있는 최대 연산량의 26%만으로 실시간 동작이 가능하였고 부동소수점 연산 결과와 고정소수점 연산 결과를 비교하여 60 dB 이상의 높은 SNR을 가짐을 확인하였다. 또한 사운드 입출력과 호스트 통신을 통하여 EVM 보드에서 실시간으로 동작함을 확인하였다.

  • PDF

RNS(Residue Number Systems) 기반의 2,048 비트 RSA 설계 (Implementation of 2,048-bit RSA Based on RNS(Residue Number Systems))

  • 권택원;최준림
    • 대한전자공학회논문지SD
    • /
    • 제41권4호
    • /
    • pp.57-66
    • /
    • 2004
  • 본 논문에서는 RNS(residue number systems) 몽고메리 모듈라 곱셈기 기반의 2,048 비트 RSA 설계를 제안한다. RNS는 긴 워드에 대한 모듈라 연산을 짧은 워드로 분할하여 고속 병렬 모듈라 연산을 처리하는 시스템으로써 본 논문에서는 RNS 몽고메리 모듈라 곱셈 연산을 위해 Wallace 트리 모듈라 곱셈기 기반의 Montgomery reduction method(MRM)[1]와 33개의 64 비트 RNS base 를 도입하였다. 또한, 고속 RNS 모듈라 곱셈 연산을 위해 Chinese remainder theorem(CRT)[2]기반의 개선된 base extension 알고리즘을 제안한다. 본 논문에서 제시한 RNS 기반의 2,048 비트 RSA는 삼성 0.35㎛ 공정을 사용하여 기능을 검증하였으며 100㎒에서 2.53㎳ 연산 속도 결과를 얻었다.

Interleaved 모듈라 곱셈 기반의 고속 RSA 암호 칩의 설계 (The design on a high speed RSA crypto chip based on interleaved modular multiplication)

  • 조현숙
    • 정보보호학회논문지
    • /
    • 제10권1호
    • /
    • pp.89-97
    • /
    • 2000
  • 공개키 암호 시스템 중에서 가장 널리 사용되는 RSA 암호 시스템은 키의 분배와 권리가 용이하고, 디지털 서명이 가능한 장점이 있으나, 암호화와 복호화 과정에서 512 비트 이상의 큰 수에 대한 멱승과 모듈라 감소 연산이 요구되기 때문에 처리 속도의 지연이 큰 문제가 되므로 모듈라 멱승 연산의 고속 처리가 필수적이다. 따라서 본 논문에서는 몫을 추정하여 중간 곱의 크기를 제한하는 interleaved 모듈라 곱셈 기법을 이용하여 모듈라 멱승 연산을 수행하는 고속 RSA 암호 칩을 VHDL을 이용하여 모델링하고 Faraday FG7000A 라이브러리를 이용하여 합성하고 타이밍 검증하여 단일 칩 IC로 구현하였다. 구현된 암호 칩은 75,000 게이트 수준으로 합성되었으며, 동작 주파수는 50MHz이고 1회의 RSA 연산을 수행하는데 소요되는 전체 클럭 사이클은 0.25M이며 512비트 당 처리 속도는 102.4Kbit/s였다.

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 처리 시간이다.

RSA 암호 시스템의 고속 처리를 위한 새로운 모듈로 연산 알로리즘 및 하드웨어 구조 (A New Modular Arithmetic Algorithm and its Hardware Structure for RSA Cryptography System)

  • 정용진
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.646-648
    • /
    • 1999
  • 본 논문에서는 RSA 암호 알고리즘의 핵심 계산 과정인 모듈로 곱셈 연산의 효율적인 하드웨어 구현을 위해 새로운 알고리즘과 하드웨어 구조를 제시한다. 기존의 몽고메리 알고리즘이 LSB 우선 방법을 사용한 것과는 달리 여기서는 MSB 우선 방법을 사용하였으며, RSA 암호 시스템에서 키가 일정 기간 동안 변하지 않고 유지된다는 점에 착안해 계수(Modulus)에 대한 보수(Complements)를 미리 계산해 놓고 이를 이용하여 모듈로 감소 처리를 간단히 덧셈으로 치환하도록 하였다. 보수들을 저장할 몇 개의 레지스터와 그들 중 하나를 선택하기 위한 간단한 멀티플렉서(Multiplexer)만을 추가함으로써 몽고메리 알고리즘이 안고 있는 홀수 계수 조건과 사후 연산이라는 번거로움을 없앨 수 있다. 본 논문에서 제안하는 알고리즘은 하드웨어 복잡도가 몽고메리 알고리즘과 비슷하며 그 내부 계산 구조를 보여주는 DG(Dependence Graph)의 지역 연결성 (Local Connection), 모듈성(Modularity), 데이터의 규칙적 종속성 (Regular Data Dependency)등으로 인한 실시간 고속 처리를 위한 VLSI 구현에 적합하다.

  • PDF

공개키 암호시스템의 고속 구현 (Fast Software Implementation of Public key Systems)

  • 황효선;임채훈
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 1997년도 종합학술발표회논문집
    • /
    • pp.232-247
    • /
    • 1997
  • 공개키 암호시스템의 구현을 위해서는 큰 수들 간의 모듈라 연산 라이브러리를 구축해야 한다. 본 논문에서는 C 언어 및 부분적인 어셈블리어를 사용하여 구축된 모듈라 연산 라이브러리를 이용하여 모듈라 멱승 연산에 바탕을 둔 대표적인 공개키 암호시스템인 RSA, Diffie-Hellman및 한국 디지탈서명 표준(안)인 KCDSA 등을 다양한 컴퓨터 기종에서 구현한 결과를 제시한다.

  • PDF