• 제목/요약/키워드: 몽고메리알고리즘

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

RSA 암호 알고리즘을 이용한 스마트카드의 운영체제 구현 (Implementation of Smart Card Operating System using RSA Cryptographic Algorithm)

  • 김증섭;장유탁;김정준;김태근;유기영
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1998년도 가을 학술발표논문집 Vol.25 No.2 (2)
    • /
    • pp.700-702
    • /
    • 1998
  • 스마트카드 운영체제는 카드와 터미널간의 인증(authentication), 메시지 처리 및 메시지 처리시 비밀성(security) 유지 등의 작업을 수행한다. 본 논문은 스마트카드에서 DES 암호 알고리즘보다 보안성이 뛰어나고, 다양한 응용을 지원하기 위해서 RSA 암호 알고리즘을 이용한 확장 가능한 운영체제를 구현한다. 스마트카드 시스템과 운영체제의 구조는 ISO/IEC 7816 규정을 따르고 있었고, 몽고메리 알고리즘을 이용한 RSA 암호 알고리즘은 스마트카드에서 인증과 스마트카드 내에서 파일의 보안성, 메시지 보안 명령어를 안전하게 수행한다. 본 논문에서 제시한 스마트카드 운영체제는 다양한 응용을 지원하기 위하여 응용 목적에 따라 운영체제와 응용 프로그램을 확장할 수 있게 설계되었다.

  • PDF

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

몽고메리 알고리즘을 위한 고정-크기 시스톨릭 어레이 설계 및 분석 (Design and Analysis of Fixed -size Systolic Arrays for Montgomery Modular Multiplication)

  • 김현성;이성우;김정준;김태;유기영
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권4호
    • /
    • pp.406-419
    • /
    • 1999
  • RSA와 같은 공개키 암호시스템(public-key cryptography system)에서는 512 비트 또는 그 이상 큰수의 모듈러 곱셈 연산을 수행하여야한다. 본 논문에서는 Montgomery 알고리즘을 이용하여 모듈러 곱셈을 수행하는 두 가지의 고정-크기 선형 시스톨릭 어레이를 설계하고 분석한다. 제안된 임의의 고정-크기 선형 시스톨릭 어레이와 파이프라인된 고정-크기 선형 시스톨릭 어레이는 최적의 문제-크기 선형 시스톨릭 어레이로부터 LPGS(Locally Parallel Globally Sequential)분할방법을 적용하여 설계한다. VHDL 시뮬레이션 결과, 밴드이 크기를 4로 하여 분할 시 문제-크기 어레이와 비교하면 수행시간의 지연이 없었으며,어레이의 크기도 1/4로 줄일 수 있었다. 제안된 시스톨릭 어레이는 크기에 제한을 갖는 스마트카드 등에 이용될수 있을 것이다.

개선된 역수연산에서의 멀티 쉬프팅 알고리즘 (Modified Multi-bit Shifting Algorithm in Multiplication Inversion Problems)

  • 장인주;유형선
    • 한국전자거래학회지
    • /
    • 제11권2호
    • /
    • pp.1-11
    • /
    • 2006
  • 본 논문에서는 멀티 쉬프팅 기법을 이용한 효율적인 유한체의 역수 연산 알고리즘을 제안하고 있다. 연산 알고리즘의 효율성은 사용하는 기저에 따라 영향이 있음이 많은 선행 연구를 통해 알려져 왔으며, 보편적으로 다항식 기저와 최적 다항식 기저를 사용하여 연구하였다. 본 연구에서는 몽고메리 알고리즘에 바탕을 둔 멀티비트 쉬프팅 기법을 수정하고 구현하였다. 역수 연산을 수행하기 위해 본 연구에서 사용한 기약 다항식타입은 AOP와 3항식 이며, 수행 결과 26%까지의 성능향상을 보였다. 본 논문에서 제안한 알고리즘은 구현이 쉽고, 다양한 분야에서 응용이 가능하다.

  • PDF

RSA 암호 시스템을 위한 고속 멱승 처리기 (A High Performance RSA Modular Exponentiator with Pipelining)

  • 이석용;정용진
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.24-26
    • /
    • 2000
  • 본 논문에서는 RSA 암호 시스템의 핵심 과정인 모듈로 멱승(Modular Exponentiation) 연산에 대한 새로운 하드웨어 구조를 제시한다. 기존의 몽고메리 알고리즘을 사용하였지만 다른 논문들이 Dependence Graph를 수직으로 매핑(Mapping)한 것과는 달리 여기서는 수평으로 매핑하여 1차원 선형 어레이(linear array) 구조를 구성하였다. 본 논문에서 사용한 방법의 장점은 결과가 시리얼(serial)로 나와서 바로 입력으로 들어갈 수 있기 때문에 100%의 처리율(throughput)을 이룰 수 있고, 수직 매핑 방식에 비해 절반의 클럭 횟수로 연산을 해낼 수 있다는 점이다. 또한 내부 계산 구조의 지역성(Locality) , 규칙성(Regularity) 및 모듈성(Modularity) 등으로 인해 실시간 고속 처리를 위한 VLSI 구현에 적합하다.

  • 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

RSA 멱승 알고리즘의 제어문에 대한 오류 주입 공격 (Fault Analysis Attacks on Control Statement of RSA Exponentiation Algorithm)

  • 길광은;백이루;김환구;하재철
    • 정보보호학회논문지
    • /
    • 제19권6호
    • /
    • pp.63-70
    • /
    • 2009
  • 최근의 연구는 RSA와 같은 암호 시스템에서 멱승 알고리즘을 구현할 경우 물리적 공격에 취약하여 비밀 키를 노출할 수 있음을 보이고 있다. 특히, Schmidt와 Hurbst는 RSA 이진 멱승(binary exponentiation) 실행시 수행하는 제곱(squaring) 연산을 건너뛰게 하여 얻은 오류 서명값을 이용하여 비밀 키를 얻을 수 있음을 실험적으로 보였다. 본 논문에서는 Schmidt와 Hurbst의 공격 가정에 기반하여 곱셈(multiplication) 연산이나 반복 제어문 연산을 건너뛰어 비밀 키를 공격하는 방법을 제안한다. 또한, 반복 제어문을 건너뛰는 오류 공격을 확장하여 단순 전력 분석 공격(simple power analysis)공격에 대응하기 위해 제안된 몽고메리(Montgomery ladder) 멱승 알고리즘도 공격할 수 있음을 보인다.

RSA 암호시스템을 위한 모듈러 지수 연산 프로세서 설계 (Design of Modular Exponentiation Processor for RSA Cryptography)

  • 허영준;박혜경;이건직;이원호;유기영
    • 정보보호학회논문지
    • /
    • 제10권4호
    • /
    • pp.3-11
    • /
    • 2000
  • 본 논문에서는 몽고메리 알고리즘을 사용하여 모듈러 곱셈을 빠르게 수행하는 선형 시스톨릭 어레이를 설계하고, 이 곱셈기와 LR 이진 제곱 곱셈 알고리즘을 사용하여 n 비트 메시지 블록에 대해 모듈러 지수 연산을 수행하는 지수 연산 프로세서를 설계한다 이 프로세서는 제어장치, 입출력 시프트 레지스터, 지수 연산 장치 등 3개의 영역으로 나 누어진다. 설계된 지수 연산 프로세서의 동작을 검증하기 위해 VHDL를 사용하여 모델링하고 MAX+PLUS II를 사용하여 시뮬레이션 한다. 메시지 블록의 길이 n=512일 때 설계된 지수 연산 프로세서의 지연 시간은 59.5ms이다. 설계된 모듈러 지수 연산 프로세서는 RSA 칩(chip)에 이용될 수 있을 것이다.

RSA 암호화 프로세서에 최적화한 32비트 곱셈기 설계 (Design of an Optimized 32-bit Multiplier for RSA Cryptoprocessors)

  • 문상국
    • 한국정보통신학회논문지
    • /
    • 제13권1호
    • /
    • pp.75-80
    • /
    • 2009
  • 1024비트 이상의 고비도 RSA 프로세서에서는 몽고메리 알고리즘을 효율적으로 처리하기 위하여 전체 키 스트림을 정해진 블록 단위로 처리한다. 본 논문에서는 기본 워드를 128비트로 하고 곱셈 결과의 누적기로는 256비트의 레지스터를 사용하는 타겟 RSA 프로세서에서, 128 비트 곱셈을 효율적으로 수행하기 위하여 실험을 통하여 최적화한 32비트 *32비트 곱셈기를 설계하고 검증하였다. 본 논문에서 설계한 곱셈기는 128비트 곱셈에 필요한 누적곱셈을 효율적으로 구현하는 데 필수적인 연산모듈이 된다. 구현된 곱셈기는 자동으로 합성 하였고, 기준이 되는 RSA 프로세서의 동작 주파수에서 정상적으로 동작하였다.

파이프라인 구조의 고속 RSA 암호화 칩 설계 (Design of a Pipelined High Performance RSA Crypto_chip)

  • 이석용;김성두;정용진
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제28권6호
    • /
    • pp.301-309
    • /
    • 2001
  • 본 논문에서는 RSA 암호 시스템의 핵심 과정인 모듈로 멱승 연산에 대한 새로운 하드웨어 구조를 제시한다. 본 방식은 몽고메리 곱셈 알고리즘을 사용하였으며 기존의 방법들이 데이터 종속 그래프(DG : Dependence Graph)를 수직으로 매핑한 것과는 달리 여기서는 수평으로 매핑하여 1차원 선형 어레이구조를 구성하였다. 그 결과로 멱승시에 중간 결과값이 순차적으로 나와서 바로 다음 곱셈을 위한 입력으로 들어갈 수 있기 때문에 100%의 처리율(throughput)을 이룰 수 있고, 수직 매핑 방식에 비해 절반의 클럭 횟수로 연산을 해낼 수 있으며 컨트롤 또한 단순해지는 장점을 가진다. 각 PE(Processing Element)는 2개의 전가산기와 3개의 멀티플렉서로 이루어져 있고, 암호키의 비트수를 k비트라 할 때 k+3개의 PE만으로 파이프라인구조를 구현하였다. 1024비트 RSA데이터의 암호 똔느 복호를 완료하는데 2k$^2$+12k+19의 클럭 수가 소요되며 클럭 주파수 100Mhz에서 약 50kbps의 성능을 보인다. 또한, 제안된 하드웨어는 내부 계산 구조의 지역성(locality), 규칙성(regularity) 및 모듈성(modularity) 등으로 인해 실시간 고속 처리를 위한 VLSI 구현에 적합하다.

  • PDF