• 제목/요약/키워드: Montgomery algorithm

검색결과 66건 처리시간 0.03초

RSA 공개키 암호화시스템의 효율적인 Radix-4 시스톨릭 VLSI 구조 (Efficient Radix-4 Systolic VLSI Architecture for RSA Public-key Cryptosystem)

  • 박태근
    • 한국통신학회논문지
    • /
    • 제29권12C호
    • /
    • pp.1739-1747
    • /
    • 2004
  • 본 논문에서는 RSA 공개키 암호화 알고리즘을 위한 효율적인 Radix-4 시스톨릭 VLSI 아키텍쳐를 제안하였다. 모듈러 곱셈 알고리즘의 이터레이션 단순화와 효율적인 시스톨릭 매핑으로 제안된 구조는 n-비트 모듈러 멱승 연산을 n$^{2}$ 클럭 싸이클에 수행한다. 각 지수 처리 단계에서 두 개의 모듈러 곱셈, M$_{i}$와 P$_{i}$는 중첩되어 연산되며 따라서 제안된 하드웨어의 이용도(hardware utilization)는 100%이다. 또한 RSA 암호화를 위한 총 모듈러 곱셈의 횟수를 줄이기 위하여 지수를 Radix-4 SD(Signed Digit) 수체계를 이용하여 인코딩하였다. 이로 인하여 지수의 NZ(non-zero) 디지트가 약 20% 감소되어 성능이 향상되었다. 기존의 방법들과 비교하였을 때, 제안된 구조는 비교적 적은 하드웨어를 사용하여 우수한 성능을 보였으며 개선된 Montgomery 알고리즘을 바탕으로 한 제안된 구조는 지역성, 규칙성, 확장성 등으로 VLSI 구현에 적합하다.

부채널 분석에 안전한 하드웨어 이진 스칼라 곱셈 알고리즘에 대한 단일 파형 비밀 키 비트 종속 공격 (Key Bit-dependent Attack on Side-Channel Analysis-Resistant Hardware Binary Scalar Multiplication Algorithm using a Single-Trace)

  • 심보연;강준기;한동국
    • 정보보호학회논문지
    • /
    • 제28권5호
    • /
    • pp.1079-1087
    • /
    • 2018
  • 타원 곡선 암호 시스템의 주요 연산이 스칼라 곱셈 알고리즘은 부채널 분석에 취약함이 보고되어 왔다. 특히 알고리즘이 수행되는 동안 소비되는 전력 패턴 및 방출되는 전자파 패턴을 활용하는 부채널 분석에 취약하다. 이에 다양한 대응 기법이 연구되어 왔으나 데이터 종속 분기 유형, 중간 값에 따른 통계 특성 또는 데이터 간의 상호 관계 기반 공격에 대한 대응 기법 등 주 연산에 대한 대응 기법만 연구되어 왔을 뿐 비밀 키 비트 확인 단계에 대한 대응 기법은 연구되지 않았다. 이에 본 논문에서는 하드웨어로 구현된 이진 스칼라 곱셈 알고리즘에 대한 단일 파형 비밀 키 비트 종속 공격을 수행하여 전력 및 전자 파형을 이용하여 100% 성공률로 비밀 스칼라 비트를 찾을 수 있음을 보인다. 실험은 차분 전력 분석 대응 기법이 적용된 $Montgomery-L{\acute{o}}pez-Dahab$ ladder 스칼라 곱셈 알고리즘[13]을 대상으로 한다. 정교한 사전 전처리가 필요하지 않고 단일 파형만으로도 공격이 가능한 강력한 공격으로 기존 대응 기법을 무력화 시킬 수 있다. 따라서 이에 대한 대응 기법을 제시하고 이를 적용해야 함을 시사한다.

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

디지털 컨텐츠 보호를 위한 DTCP용 타원곡선 암호(ECC) 연산기의 구현 (Design of ECC Calculator for Digital Transmission Content Protection(DTCP))

  • 김의석;류태규;정용진
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2004년도 하계종합학술대회 논문집(1)
    • /
    • pp.47-50
    • /
    • 2004
  • In this paper, we implement an Elliptic Curve Cryptosystem(ECC) processor for DTCP. Because DTCP(Digital Transmission Content Protection) uses GF(p), where p is a 160-bit prime integer, we design a scalar multiplier based on GF(p). The scalar multiplier consists of a modular multiplier and an adder. The multiplier uses montgomery algorithm which is implemented with CSA(Carry-save Adder) and CLA(Carry-lookahead Adder). Our new scalar multiplier has been synthesized using Samsung 0.18 um CMOS technology and the maximum operation frequency is estimated 98 MHz, with the size about 65,000 gates. The resulting performance is 29.6 kbps, that is, it takes 5.4 msec to process a 160-bit data frame. We assure that this performance is enough to be used for digital signature, encryption/decryption, and key exchanges in real time environments.

  • PDF

Compact implementations of Curve Ed448 on low-end IoT platforms

  • Seo, Hwajeong
    • ETRI Journal
    • /
    • 제41권6호
    • /
    • pp.863-872
    • /
    • 2019
  • Elliptic curve cryptography is a relatively lightweight public-key cryptography method for key generation and digital signature verification. Some lightweight curves (eg, Curve25519 and Curve Ed448) have been adopted by upcoming Transport Layer Security 1.3 (TLS 1.3) to replace the standardized NIST curves. However, the efficient implementation of Curve Ed448 on Internet of Things (IoT) devices remains underexplored. This study is focused on the optimization of the Curve Ed448 implementation on low-end IoT processors (ie, 8-bit AVR and 16-bit MSP processors). In particular, the three-level and two-level subtractive Karatsuba algorithms are adopted for multi-precision multiplication on AVR and MSP processors, respectively, and two-level Karatsuba routines are employed for multi-precision squaring. For modular reduction and finite field inversion, fast reduction and Fermat-based inversion operations are used to mitigate side-channel vulnerabilities. The scalar multiplication operation using the Montgomery ladder algorithm requires only 103 and 73 M clock cycles on AVR and MSP processors.

RSA 알고리즘 부하 경감을 위한 고속 모듈러 멱승 연산 알고리즘 설계 (Design of High Speed Modular Exponentiation Operation Method for RSA Algorithm)

  • 김갑열;이철수;박석천
    • 정보처리학회논문지C
    • /
    • 제15C권6호
    • /
    • pp.507-512
    • /
    • 2008
  • 최근 정보통신의 급속한 발달로 온라인 서비스에 기반을 둔 기업들이 많이 구축되고 있다. 이들 기업들은 개인정보를 수집하여 고객관리를하며 유료 서비스의 경우 결제정보를 요청하여 대금을 지불하는 방식을 취한다. 이와 같은 정보의 유통과 관리는 최근 큰 이슈가 되고 있으나 대부분의 기업들이 정보보호에 대한 인식이 부족한 현실이다. 실제로 국내 최대 오픈마켓에서 해킹으로 대량의 고객 개인정보가 노출되기도 했다. 따라서 본 논문에서는 고객관리를 위한 개인정보의 불법공격이나 해킹에 대비하기 위해 가장 보편화된 RSA 암호 알고리즘 부하를 줄이는 방법을 제안한다. 이때 부하를 줄이는 방법은 Binary NAF Method를 이용하여 RSA 핵심 연산인 모듈러 멱승 연산을 고속으로 처리할 수 있도록 설계하였고 기존 Binary Method와 Windows Method를 이용한 모듈러 멱승 알고리즘을 구현하여 비교 평가 하였다.

VSAT 위성통신 보호를 위한 키 분배 방식의 적용 (Adaptation of a Key Distribution Scheme for VSAT Satellite Communications)

  • 박정현;임선배
    • 한국정보처리학회논문지
    • /
    • 제6권1호
    • /
    • pp.115-122
    • /
    • 1999
  • 본 논문에서는 VSAT 위성 통신의 안전성을 위해 변형 Yacobi 방식과 변형 Diffie-Hellman 키분배 방식을 제안한다. 제안된 변형 DH 방식은 세션키로 키센터에서 발급한 비밀키로 사용하지 않으며 수시로 변경할 수 있다. 또한 변형 Yacobi 방식도 세션키가 키센터에서 발급한 비밀키에 독립적이며 안전성을 이산대수 문제와 큰 소수의 인수분해의 어려움에 바탕을 두고 있다. 제안된 방식은 VSAT 위성통신의 특성상 키 센터를 중심국의 망관리 및 운영부로 두고 가입자를 VSAT 단말로 하여 시뮬레이션 했으며 여기서 모듈러 연산을 위해 몽고메리 알고리즘을, 해시 함수로 MD5를 각각 이용했다.

  • PDF

224-비트 소수체 타원곡선을 지원하는 공개키 암호 프로세서의 저면적 구현 (A small-area implementation of public-key cryptographic processor for 224-bit elliptic curves over prime field)

  • 박병관;신경욱
    • 한국정보통신학회논문지
    • /
    • 제21권6호
    • /
    • pp.1083-1091
    • /
    • 2017
  • NIST 표준에 정의된 소수체(prime field) GF(p) 상의 224-비트 타원곡선을 지원하는 타원곡선 암호 프로세서를 설계하였다. 타원곡선 암호의 핵심 연산인 스칼라 점 곱셈을 수정형 Montgomery ladder 알고리듬을 이용하여 구현하였다. 점 덧셈과 점 두배 연산은 투영(projective) 좌표계를 이용하여 연산량이 많은 나눗셈 연산을 제거하였으며, 소수체 상의 덧셈, 뺄셈, 곱셈, 제곱 연산만으로 구현하였다. 스칼라 점 곱셈의 최종 결과값은 다시 아핀(affine) 좌표계로 변환되어 출력하며, 이때 사용되는 역원 연산은 Fermat's little theorem을 이용하여 구현하였다. 설계된 ECC 프로세서를 Virtex5 FPGA로 구현하여 정상 동작함을 확인하였다. $0.18{\mu}m$공정의 CMOS 셀 라이브러리로 합성한 결과 10 MHz의 동작 주파수에서 2.7-Kbit RAM과 27,739 GE로 구현되었고, 최대 71 MHz의 동작 주파수를 갖는다. 스칼라 점 곱셈에 1,326,985 클록 사이클이 소요되며, 최대 동작 주파수에서 18.7 msec의 시간이 소요된다.

모듈라 멱승 연산의 빠른 수행을 위한 덧셈사슬 휴리스틱과 모듈라 곱셈 알고리즘들 (An Addition-Chain Heuristics and Two Modular Multiplication Algorithms for Fast Modular Exponentiation)

  • 홍성민;오상엽;윤현수
    • 정보보호학회논문지
    • /
    • 제7권2호
    • /
    • pp.73-92
    • /
    • 1997
  • 모듈라 멱승 연산(M$^{E}$ modN)은 공개키 암호시스템에 있어서 가장 기본적이고 중요한 연산들 중 하나이다. 그런데 이는 512-비트 이상의 정수들과 같이 매우 큰 수들을 다루기 때문에, 수행속도가 느려서 빠른 연산 알고리즘을 필요로 한다. 모듈라 멱승 연산은 모듈라 곱셈의 반복 수행으로 이루어져있고, 이 때의 반복횟수는 지수(E)에 대한 덧셈사슬의 길이에 의해 결정된다. 따라서, 모듈라 멱승 연산을 빠르게 수행하기 위한 방법에는 두 가지가 있을 수 있다. 하나는 보다 짧은 덧셈사슬을 구함으로써 모듈라 곱셈의 반복횟수를 줄이는 것이고, 다른 하나는 각각의 모듈라 곱셈을 빠르게 수행하는 것이다. 본 논문에서는 하나의 덧셈사슬 휴리스틱과 두 개의 모듈라 곱셈 알고리즘들을 제안한다. 두개의 모듈라 곱셈 알고리즘들 중 하나는 서로 다른 두 수들 간의 모듈라 곱셈을 빠르게 수행하기 위한 것이고, 다른 하나는 모듈라 제곱을 빠르게 수행하기 위한 것이다. 본 논문에서 제안하는 덧셈사슬 휴리스틱은 기존의 알고리즘들보다 짧은 덧셈사슬을 찾을 수 있다. 본 논문에서 제안하는 모듈라 곱셈 알고리즘들은 기존의 알고리즘들 보다 1/2 이하의 단정도 곱셈만으로 모듈라 곱셈을 수행한다. 실제로 PC에서 구현하여 수행한 결과, 기존의 알고리즘들 중 가장 좋은 성능을 보이는 Montgomery 알고리즘에 비해 30~50%의 성능향상을 보인다.

타원곡선 암호 시스템의 고속 구현을 위한 VLSI 구조 (VLSI Architecture for High Speed Implementation of Elliptic Curve Cryptographic Systems)

  • 김창훈
    • 정보처리학회논문지C
    • /
    • 제15C권2호
    • /
    • pp.133-140
    • /
    • 2008
  • 본 논문에서는 $GF(2^{163})$타원곡선 암호 프로세서를 제안한다. 제안한 암호 프로세서는 타원곡선 정수 곱셈을 위해 수정된 Loez-Dahab Montgomery 알고리즘을 채택하고, $GF(2^{163})$상의 산술 연산을 위해 가우시안 정규 기저(Gaussian Normal Basis: GNB)를 이용한다. 높은 처리율을 위해 Lopez-Dahab 방식에 기반한 규칙적인 주소화 방식의 병렬 타원곡선 좌표 덧셈 및 배 연산 알고리즘을 유도하고 $GF(2^{163})$상의 연산을 수행하는 두 개의 워드-레벨 산술 연산기(Arithmetic Unit: AU)를 설계한다. 제안된 타원곡선 암호 프로세서는 Xilinx사의 XC4VLX80 FPGA 디바이스에 구현되었으며, 24,263개의 슬라이스를 사용하고 최대 동작주파수는 143MHz이다. 제안된 구조를 Shu 등의 하드웨어 구현과 비교했을 때 하드웨어 복잡도는 약 2배 증가 하였지만 4.8배의 속도 향상을 보인다. 따라서 제안된 타원곡선 암호 프로세서는 네트워크 프로세서와 웹 서버등과 같은 높은 처리율을 요구하는 타원곡선 암호시스템에 적합하다.