• 제목/요약/키워드: RSA Algorithm

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

Improved Shamir's CRT-RSA Algorithm: Revisit with the Modulus Chaining Method

  • Lee, Seungkwang;Choi, Dooho;Choi, Yongje
    • ETRI Journal
    • /
    • 제36권3호
    • /
    • pp.469-478
    • /
    • 2014
  • RSA signature algorithms using the Chinese remainder theorem (CRT-RSA) are approximately four-times faster than straightforward implementations of an RSA cryptosystem. However, the CRT-RSA is known to be vulnerable to fault attacks; even one execution of the algorithm is sufficient to reveal the secret keys. Over the past few years, several countermeasures against CRT-RSA fault attacks have tended to involve additional exponentiations or inversions, and in most cases, they are also vulnerable to new variants of fault attacks. In this paper, we review how Shamir's countermeasure can be broken by fault attacks and improve the countermeasure to prevent future fault attacks, with the added benefit of low additional costs. In our experiment, we use the side-channel analysis resistance framework system, a fault injection testing and verification system, which enables us to inject a fault into the right position, even to within $1{\mu}s$. We also explain how to find the exact timing of the target operation using an Atmega128 software board.

오퍼랜드 스캐닝 방법을 이용한 다진법 몽고메리 알고리즘에 대한 연구 (Study on High-Radix Montgomery's Algorithm Using Operand Scanning Method)

  • 문상국
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2008년도 추계종합학술대회 B
    • /
    • pp.732-735
    • /
    • 2008
  • RSA 암호 알고리즘의 고속 연산에 핵심이 되는 법 곱셈 (modular multiplication)을 고속으로 처리하기 위해서 몽고메리 알고리즘이 연구되고 발전되어 왔다. 이 몽고메리 알고리즘에서는 법 곱셈에 나눗셈이 들어가지 않기 때문에 빠른 법 곱셈 연산을 수행할 수 있다. 하지만, 일반 잉여 형태의 숫자를 몽고메리 표현 형태로 변환하고 이후에 결과를 다시 일반 잉여 형태로 변환하는 과정에서 별도로 연산이 필요하게 된다. 1024 비트 이상의 고비도의 RSA 연산을 수행하기 위해서는 키 비트를 워드 단위로 쪼개어 다진법 개념을 도입하여 연산할 수가 있다. 본 논문에서는 몽고메리 알고리즘을 개선시키기 위하여 오퍼랜드 스캐닝 개념을 도입한 방법을 연구하여 비교하였다. 각각의 방법은 최적화에 대한 이슈, 메모리 공간에 대한 이슈, 연산 시간에 대한 이슈를 고려 대상으로 한다.

  • PDF

이중 멱승과 오류 확산 기법을 이용한 RSA-CRT에서의 물리적 공격 대응 방법 (Countermeasure for Physical Attack in RSA-CRT using Double Exponentiation Algorithm and Fault Infective Method)

  • 길광은;오두환;백이루;하재철
    • 정보보호학회논문지
    • /
    • 제20권2호
    • /
    • pp.33-41
    • /
    • 2010
  • 중국인의 나머지 정리에 기반한 RSA-CRT 알고리즘은 오류 주입 공격에 취약하다는 점이 실험적으로 검증되었다. 본 논문에서는 RSA-CRT 알고리즘에 대한 현재까지의 오류 주입 공격 방어 대책을 분석하고 최근 제시된 Abid와 Wang이 제안한 대응 방법의 취약점을 분석한다. 이를 바탕으로 이중 멱승과 오류 확산 기법을 사용한 오류 주입 공격 대응책을 제시한다. 논문에서 제안한 방식은 오류 확산용 검증 정보를 이중 멱승 기법을 이용하여 효율적으로 계산하도록 하였으며 수동적 부채널 공격인 단순 전력 분석 공격과 (N-1) 공격에 강한 멱승 알고리즘을 개발하였다.

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가 소요되는 것으로 예측되었다.

Optical Asymmetric Cryptography Modifying the RSA Public-key Protocol

  • Jeon, Seok Hee;Gil, Sang Keun
    • Current Optics and Photonics
    • /
    • 제4권2호
    • /
    • pp.103-114
    • /
    • 2020
  • A new optical asymmetric cryptosystem is proposed by modifying the asymmetric RSA public-key protocol required in a cryptosystem. The proposed asymmetric public-key algorithm can be optically implemented by combining a two-step quadrature phase-shifting digital holographic encryption method with the modified RSA public-key algorithm; then two pairs of public-private keys are used to encrypt and decrypt the plaintext. Public keys and ciphertexts are digital holograms that are Fourier-transform holograms, and are recorded on CCDs with 256-gray-level quantized intensities in the optical architecture. The plaintext can only be decrypted by the private keys, which are acquired by the corresponding asymmetric public-key-generation algorithm. Schematically, the proposed optical architecture has the advantage of producing a complicated, asymmetric public-key cryptosystem that can enhance security strength compared to the conventional electronic RSA public-key cryptosystem. Numerical simulations are carried out to demonstrate the validity and effectiveness of the proposed method, by evaluating decryption performance and analysis. The proposed method shows feasibility for application to an asymmetric public-key cryptosystem.

내장형 시스템을 위한 최적화된 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의 면적을 가진다.

CIOS 몽고메리 모듈러 곱셈 알고리즘 기반 Scalable RSA 공개키 암호 프로세서 (Scalable RSA public-key cryptography processor based on CIOS Montgomery modular multiplication Algorithm)

  • 조욱래;신경욱
    • 한국정보통신학회논문지
    • /
    • 제22권1호
    • /
    • pp.100-108
    • /
    • 2018
  • 512/1,024/2,048/3,072 비트의 4가지 키 길이를 지원하는 scalable RSA 공개키 암호 프로세서를 설계하였다. RSA 암호의 핵심 연산블록인 모듈러 곱셈기를 CIOS (Coarsely Integrated Operand Scanning) 몽고메리 모듈러 곱셈 알고리듬을 이용하여 32 비트 데이터 패스로 설계하였으며, 모듈러 지수승 연산은 Left-to-Right (L-R) 이진 멱승 알고리듬을 적용하여 구현하였다. 설계된 RSA 암호 프로세서를 Virtex-5 FPGA로 구현하여 하드웨어 동작을 검증하였으며, 512/1,024/2,048/3,072 비트의 키 길이에 대해 각각 456,051/3,496,347/26,011,947/88,112,770 클록 사이클이 소요된다. $0.18{\mu}m$ CMOS 표준셀 라이브러리를 사용하여 100 MHz 동작 주파수로 합성한 결과, 10,672 GE와 $6{\times}3,072$ 비트의 메모리로 구현되었다. 설계된 RSA 공개키 암호 프로세서는 최대 동작 주파수는 147 MHz로 예측되었으며, 키 길이에 따라 RSA 복호 연산에 3.1/23.8/177/599.4 ms 가 소요되는 것으로 평가되었다.

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) 클럭 사이클만 소요된다.

비트 슬라이스 모듈러 곱셈 알고리즘 (Bit-slice Modular multiplication algorithm)

  • 류동렬;조경록;유영갑
    • 정보학연구
    • /
    • 제3권1호
    • /
    • pp.61-72
    • /
    • 2000
  • 본 논문에서는 RSA 공개키 암호시스템에서 암호의 안전성을 위하여 증가되는 암호키(key)의 비트 크기에 대응한 내부 연산기 설계를 효율적으로 할 수 있는 bit-slice형 모듈러 곱셈 알고리즘을 제안하였고, 제안된 알고리즘에 따른 모듈러 곱셈기를 FPGA칩을 이용하여 구현함으로써 제안된 알고리즘의 동작을 검증하였다. 제안된 bit-slice형 모듈러 곱셈 알고리즘은 Walter 알고리즘을 수정하여 도출하였으며, 구현된 모듈러 곱셈기는 bit-slice 구조로 되어 암호키(key)의 비트 확장에 대응한 모듈러 곱셈기의 오퍼랜드 비트 확장이 용이하며, 표준 하드웨어 기술언어(VHDL)로 모델링 하여 전용 하드웨어로 설계되는 RSA 공개키 암호 시스템의 구현에 응용될 수 있도록 하였다.

  • PDF

효과적인 RSA 암호 알고리즘 교육을 위한 학습 소프트웨어 개발 (Development of Learning Software for Effective RSA Cryptography Algorithm Education)

  • 이동범;최명균;곽진
    • 컴퓨터교육학회논문지
    • /
    • 제14권4호
    • /
    • pp.43-51
    • /
    • 2011
  • IT기술의 발전으로 인해 언제 어디서나 다양한 정보를 제공 받을 수 있는 정보화 시대가 도래하였지만, 이에 대한 역기능으로 원하지 않는 개인정보 유출 피해가 증가하고 있다. 이러한 개인정보 유출 피해를 방지하기 위해서 사용되는 기본적인 학문이 암호학이다. 하지만 암호학은 복잡한 수학적 이론이 접목되어 있는 학문이기 때문에 많은 사람들이 학습에 많은 어려움을 겪고 있다. 따라서 본 논문에서는 암호학에 대한 이해를 개선하기 위해 일반적으로 전자 서명에서 주로 사용되고 있는 RSA 암호 알고리즘에 대한 지식을 향상 시키는데 도움을 줄 수 있는 소프트웨어를 개발하였다. 개발한 소프트웨어를 통해 RSA 암호 알고리즘의 동작 방식에 대한 이해를 돕고자 한다.

  • PDF