• 제목/요약/키워드: modular exponentiation

검색결과 64건 처리시간 0.025초

RSA 암호 시스템을 위한 고속 모듈라 곱셈 알고리즘 (High Speed Modular Multiplication Algorithm for RSA Cryptosystem)

  • 조군식;조준동
    • 한국통신학회논문지
    • /
    • 제27권3C호
    • /
    • pp.256-262
    • /
    • 2002
  • 본 논문에서는 sign estimation technique (3)을 기초로 한 radix-4 모듈라 곱셈 알고리즘을 제안한다. Sign estimation technique은 carry와 sum의 형태로 표현되는 수에서 부호를 알아내는 것이다. 이 방법은 5비트 carry look-ahead adder로 구현이 가능하다. RSA와 같은 암호화 시스템에서는 모듈라 곱셈이 하드웨어의 성능을 좌우한다. 제안한 알고리즘은 modulus가 n 비트인 경우, 모듈라 곱셈 수행시 일반적인 알고리즘의 약 반 클럭 (n/2+3) 사이클만 필요하다. 그래서 매우 큰수의 modulus 사용하는 RSA 암호시스템에서 모듈라 멱승 연산에 매우 효율적이다. 또한 모듈라 곱셈의 하드웨어 성능을 향상하기 위해, CSA (Carry Save Adder)의 맨 마지막 출력에 사용되는 CPA (Carry Propagation Adder) 대신 고속 덧셈기(7)를 사용하였다. 모듈라 멱승 계산이 n 클럭이 소요되는 RL binary 방법을 적용하여 1024 비트 데이터를 RSA 암호화하는데 n(n/2+3) 클럭 사이클만 소요된다.

Montgomery 모듈라 곱셈을 변형한 고속 멱승 (Fast exponentiation with modifed montgonmery modular multiplication)

  • 하재철;문상재
    • 한국통신학회논문지
    • /
    • 제22권5호
    • /
    • pp.1036-1044
    • /
    • 1997
  • We modify the montgomery modeular multikplication to extract the common parts in common-multiplicand multi-plications. Since the modified method computes the common parts in two modular multiplications once rather than twice, it can speed up the exponentiations and reduce the amount of storage tables in m-ary or windowexponentiation. It can be also applied to an exponentiation mehod by folding the exponent in half. This method is well-suited to the memory limited environments such as IC card due to its speed and requirement of small memory.

  • PDF

시스톨릭 어레이상에서 고속 모듈러 지수 연산 (Fast Modular Exponentiation on a Systolic Array)

  • 이건직
    • 정보보호학회논문지
    • /
    • 제8권1호
    • /
    • pp.39-52
    • /
    • 1998
  • 본 논문에서는 모듈러 지수승시에 요구되는 모듈러 곱셈의 반복 횟수를 줄이기 위해 SM(m)기법을 제안하며 지수를 SM(m)표현과 시스톨릭 SM(m) 표현으로 변환한다.그리고 변환된 스스톨릭 SM(m) 표현으로부터 모듈러 지수연산을 위한 선형시스톨릭 어레이를 제시한다. 제안된 기법은 기존의 방법보다 소프트웨어로 구현시에 선 계산기에 필요한 기업 장소의 크기를 줄였으며, 선형 시스톨릭 어레이로 구현시에 기존의 방법들보다 처리기의 개수를 감소시키며, 처리기내에 필요한 기억 장소의 크기를 줄였다. 수정된 부호화 디지트 기법과 비교하면 처리기의 개수를 24%정도 줄일 수 있다.

저면적 RSA를 위한 효율적인 Montgomery 곱셈기 하드웨어 설계 (Hardware Design of Efficient Montgomery Multiplier for Low Area RSA)

  • ;류광기
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2017년도 추계학술대회
    • /
    • pp.575-577
    • /
    • 2017
  • 공개 키 암호화에서 RSA 알고리즘은 연산시간이 높은 modular 지수 연산을 사용한다. RSA의 modular 지수 연산은 반복되는 modular 곱셈을 통해 연산한다. 빠른 해독 및 암호화 속도를 가지는 높은 효율의 RSA 알고리즘을 위해 수년간 빠른 modular 곱셈 알고리즘이 연구되었다. 그러나, Montgomery 곱셈은 추가적인 피연산자(반복 루프가 있는 3개의 피연사자)에 의해 캐리 전파 지연이 발생되는 단점이 있다. 본 논문에서는 RSA 암호화 시스템의 가벼운 어플리케이션을 위한 Montgomery 곱셈의 면적을 줄이는 하드웨어 구조를 제안한다. 제안된 하드웨어 구조는 90nm 셀 라이브러리 공정에서 합성한 결과 884.9MHz에서 84k 게이트 수를 가지며, 250MHz에서 56k 게이트수를 가진다.

  • 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

제곱-나눗셈 모듈러 지수연산법 (Square-and-Divide Modular Exponentiation)

  • 이상운
    • 한국컴퓨터정보학회논문지
    • /
    • 제18권4호
    • /
    • pp.123-129
    • /
    • 2013
  • 암호학의 암호 생성과 해독, 소수판별법의 성능은 대부분 $a^b$ (mod m)의 모듈러 지수연산의 효율적 구현여부로 결정된다. 모듈러 지수연산법에는 제곱-곱셈 방식의 표준 이진법이 최선의 선택으로 알려져 있다. 그러나 큰 자리수의 b에 대해서는 사전처리를 하는 n-ary, ($n{\geq}2$)이 보다 효율적으로 적용된다. 본 논문에서는 모듈러 지수 나눗셈 방법을 적용한 제곱-나눗셈법과 사전처리 없는 n-ary 제곱-나눗셈법을 제안하였다. 제곱-나눗셈법은 b가 $2^k+2^{k-1}$에 근접한 값 또는 $2^{k+1}$에 근접한 경우 수행횟수 측면에서 가장 효율적임을 알 수 있었다. 나머지 값들에 대해서는 사전처리 없는 n-ary 제곱-나눗셈법을 적용하는 것이 사전처리를 하는 일반적인 n-ary법에 비해 수행횟수 측면에서 효율적임을 보였다.

가변길이 분할 기법을 적용한 모듈러 지수연산법 (Modular Exponentiation Using a Variable-Length Partition Method)

  • 이상운
    • 한국인터넷방송통신학회논문지
    • /
    • 제16권2호
    • /
    • pp.41-47
    • /
    • 2016
  • 암호학의 암호 생성과 해독의 곱셈 횟수는 대부분 $a^b$(mod m) 모듈러 지수연산의 효율적 구현여부로 결정된다. 표준 모듈러 지수연산법으로는 1-ary법인 이진법이 있으며, n-ary($2{\leq}n{\leq}6$)법이 많이 적용되고 있다. n-ary($1{\leq}n{\leq}6$)법은 $b=b_kb_{k-1}{\cdots}b_1b_{0(2)}$에 대해 R-L 방향으로 n비트로 고정된 분할을 하고, n회 제곱과 비트값 곱셈을 수행하는 제곱-곱셉법이다. 본 논문에서는 $b_{k-1}{\cdots}b_1b_{0(2)}$에 대해 L-R 방향으로 가변길이로 분할하는 방법을 적용한다. 또한, 개변길이의 제곱과 곱셈 또는 나눗셈을 적용한다. 제안된 가변길이 분할법은 고정길이 분할법인 n-ary법에 비해 곱셈 수행횟수를 감소시킬 수 있었다.

모듈라 곱셈의 충돌 입력에 기반한 부채널 공격 및 대응책 (Side-Channel Analysis Based on Input Collisions in Modular Multiplications and its Countermeasure)

  • 최용제;최두호;하재철
    • 정보보호학회논문지
    • /
    • 제24권6호
    • /
    • pp.1091-1102
    • /
    • 2014
  • 전력 분석 공격은 물리적 장치에 내장된 암호 알고리듬을 수행할 때 발생하는 부채널 전력 정보를 이용하여 사용자의 비밀 키를 찾아내는 공격 기법이다. 특히, RSA와 같은 공개 키 암호 시스템에 사용되는 멱승은 수백 번의 모듈라 곱셈으로 이루어져 있는데 이 연산이 전력 분석 공격의 목표가 되어 왔다. 최근에는 동일한 입력을 가지는 두 개의 모듈라 곱셈에서 발생한 전력의 상관 분석을 통해 비밀 키를 추출하는 공격이 제안되었다. 본 논문에서는 모듈라 곱셈의 입력충돌에 기반한 부채널 공격의 원리를 살펴보고 정규화 특성을 갖는 멱승 알고리듬에 대한 취약성을 분석하였다. 또한, 충돌 입력쌍을 이용한 상관 전력 분석 공격을 포함한 기존 부채널 공격에 대응할 수 있는 효율적인 멱승 방법을 제안하고 안전성을 비교 분석하였다.

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

  • 조욱래;신경욱
    • 한국정보통신학회논문지
    • /
    • 제21권8호
    • /
    • pp.1471-1479
    • /
    • 2017
  • 2,048 비트의 키 길이를 지원하는 RSA 공개키 암호 프로세서를 설계하였다. RSA 암호의 핵심 연산인 모듈러 곱셈기를 워드 기반의 몽고메리 곱셈 알고리듬을 이용하여 설계하였으며, 모듈러 지수승 연산은 Left-to-Right(LR) 이진 멱승 알고리듬을 이용하여 구현하였다. 모듈러 곱셈에 8,448 클록 사이클이 소요되며, RSA 암호화와 복호화에 각각 185,724 클록 사이클과 25,561,076 클록 사이클이 소요된다. 설계된 RSA 암호 프로세서를 Virtex 5 FPGA로 구현하여 하드웨어 동작을 검증하였다. $0.18{\mu}m$ CMOS 표준셀을 사용하여 100 MHz의 동작 주파수로 합성한 결과, RSA 암호 프로세서는 12,540 GE로 구현되었고, 12 kbit의 메모리가 사용되었다. 동작 가능한 최대 주파수는 165 MHz로 평가되었으며, RSA 암호화, 복호화 연산에 각각 1.12 ms, 154.91 ms가 소요되는 것으로 예측되었다.

나눗셈 체인을 이용한 RSA 모듈로 멱승기의 구현 (Implementation of RSA modular exponentiator using Division Chain)

  • 김성두;정용진
    • 정보보호학회논문지
    • /
    • 제12권2호
    • /
    • pp.21-34
    • /
    • 2002
  • 본 논문에서는 최근 발표된 멱승방법인 나눗셈 체인을 적용한 새로운 모듈로 멱승기의 하드웨어 구조를 제안하였다. 나눗셈 체인은 제수(divisor) d=2 또는 $d=2^I +1$ 과 그에 따른 나머지(remainder) r을 이용하여 지수 I를 새롭게 변형하는 방법으로 전체 멱승 연산이 평균 약 1.4$log_2$E 번의 곱셈으로 가능한 알고리즘이다. 이것은 Binary Method가 하드웨어 구현 시 항상 worst case인 $2log_2$E의 계산량이 필요한 것과 비교할 때 상당한 성능개선을 의미한다. 전체 구조는 파이프라인 동작이 가능한 선형 시스톨릭 어레이 구조로 설계하였으며, DG(Dependence Graph)를 수평으로 매핑하여 k비트의 키 사이즈에 대해 두 개의 k 비트 프레임이 k/2+3 개의 PE(Processing Element)로 구성된 두 개의 곱셈기 모듈을 통해 병렬로 동시에 처리되어 100% 처리율을 이루게 하였다. 또한, 규칙적인 데이터 패스를 가질 수 있도록 나눗셈체인을 새롭게 코딩하는 방법을 제안하였다. ASIC 구현을 위해 삼성 0.5um CMOS 스탠다드 셀 라이브러리를 이용해 합성한 결과 최장 지연 패스는 4.24ns로 200MHz의 클럭이 가능하며, 1024비트 데이터 프레임에 대해 약 140kbps의 처리속도를 나타낸다. 복호화 시에는 CRT(Chinese Remainder Theorem)를 적용하여 처리속도를 560kbps로 향상시켰다. 전자서명의 검증과정으로 사용되기도 하는 암호화 과정을 수행할 때 공개키 E는 3,17 혹은 $2^{16} +1$의 사용이 권장된다는 점을 이용하여 E를 17 비트로 제한할 경우 7.3Mbps의 빠른 처리속도를 가질 수 있다.