• 제목/요약/키워드: Cryptography library

검색결과 41건 처리시간 0.028초

OpenSSL 기반 사용자 지정 암호 프로토콜 구현 방안 (Custom Cryptographic Protocol Implementation Method Based on OpenSSL)

  • 임준휘;이상곤;이훈재;인센티우스 크리스티안 안드리안토
    • 정보보호학회논문지
    • /
    • 제27권3호
    • /
    • pp.459-466
    • /
    • 2017
  • 가장 널리 사용되는 오픈 소스 프로젝트 중 하나인 OpenSSL은 대부분의 웹 사이트, 서버 및 클라이언트를 보호하는 데 사용되는 암호화 라이브러리이다. OpenLLS을 사용하여 SSL 혹은 이것으로부터 나온 TLS 프로토콜로 안전하게 통신할 수 있다. 시스템의 지속적 보안성 유지를 위해 암호 프로토콜은 업데이트되고 개선되어야 하므로, 이 라이브러리는 새로운 암호화 방법을, 특히 대칭 암호화 프로토콜을, 시스템에 통합하여 구현하는 일이 간단하도록 작성되었다. 그러나 비대칭 암호화 프로토콜을 추가 할 때는 훨씬 더 복잡해진다. 본 논문에서는 OpenSSL 기반 사용자 지정 암호 프로토콜 구현 방안 도출을 위하여 OpenSSL 라이브러리의 세부 아키텍처를 파악하고 설명한다. 그리고 대칭키와 비대칭 암호화 기반 사용자 지정 프로토콜을 수용하기 위해 OpenSSL 라이브러리를 수정하는 방법을 제시한다.

마이크로소프트의 차세대 암호 라이브러리 구조에 관한 연구 및 오류-검출 도구 구현 (An Analysis of a Structure and Implementation of Error-Detection Tool of Cryptography API-Next Generation(CNG) in Microsoft)

  • 이경률;유일선;임강빈
    • 정보보호학회논문지
    • /
    • 제26권1호
    • /
    • pp.153-168
    • /
    • 2016
  • 본 논문은 마이크로소프트사의 CAPI를 대체하기 위하여 제안된 CNG의 구조와 특징, 프로그래밍 기법을 분석하였다. CNG는 플러그인 구조 기반의 독립된 모듈들로 구성되어 있기 때문에 구현해야 할 함수 및 기능의 범위를 최소화할 수 있어 개발비용과 확장 용이성 부분에서 CNG의 우수성을 잘 설명하고 있다. 또한, 확장성과 함께 최신의 암호화 알고리즘 및 감사 기능, 커널 모드 지원이 기업 및 공공기관 등의 환경에서 핵심 암호화 서비스로의 역할을 할 수 있게 한다. 따라서 이러한 기능들을 기반으로 기업과 공공기관이 조직 고유의 보안 요구사항에 맞게 CNG를 확장할 수 있도록 CNG 암호 라이브러리 구조에 대하여 분석하였다. 또한, 분석 결과를 기반으로 CNG 라이브러리를 활용하는 프로그램의 오류를 검출하기 위한 도구를 구현하였다.

단일 라운드 프로세스 방식의 IDEA 암호 알고리즘의 하드웨어 설계 (A VLSI Design of IDEA Cipher Algorithm Based On a Single Iterative Round Method)

  • 최영민;권용진
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2000년도 추계종합학술대회 논문집(2)
    • /
    • pp.144-147
    • /
    • 2000
  • Data security is an important issue in today's computer networks. In order to construct a safe infra in the open communication network, a cryptography is necessarily applied to several communication application fields like a high-speed networking system supporting real-time operation. A cryptography which has already realized by a software is designed by using a hardware to improve a throughput. In this paper, we design hardware architecture of IDEA by using a single iterative round method to improve a encryption throughput. In addition, we intend to develop a hardware design methodology that a specific cryptography operate with high-speed. The hardware model is described in VHDL and synthesized by the Samsung KG 80 Library in the Synopsys development software tool. With a system clock frequency 20MHz, this hardware permits a data conversion rate of more than 116 Mbit/s.

  • PDF

스마트카드 보안용 타원곡선 암호를 위한 GF($2^{163}$) 스칼라 곱셈기 (A GF($2^{163}$) Scalar Multiplier for Elliptic Curve Cryptography for Smartcard Security)

  • 정상혁;신경욱
    • 한국정보통신학회논문지
    • /
    • 제13권10호
    • /
    • pp.2154-2162
    • /
    • 2009
  • 스마트카드 보안용 타원곡선 암호를 위한 스칼라 곱셈기를 설계하였다. 스마트카드 표준에 기술된 163-비트의 키 길이를 지원하며, 유한체 (finite field) 상에서 스칼라 곱셈의 연산량을 줄이기 위해 complementary receding 방식을 적용한 Non-Adjacent Format (NAF) 변환 알고리듬을 적용하여 설계되었다. 설계된 스칼라 곱셈기 코어는 0.35-${\mu}m$ CMOS 셀 라이브러리로 합성하여 32,768 게이트로 구현되었으며, 150-MHz@3.3-V로 동작한다. 설계된 스칼라 승산기는 스마트카드용 타원곡선 암호 알고리듬의 전용 하드웨어 구현을 위한 IP로 사용될 수 있다.

P-224 ECC와 2048-비트 RSA를 지원하는 공개키 암호 프로세서 (A Public-key Cryptography Processor supporting P-224 ECC and 2048-bit RSA)

  • 성병윤;이상현;신경욱
    • 전기전자학회논문지
    • /
    • 제22권3호
    • /
    • pp.522-531
    • /
    • 2018
  • FIPS 186-2에 정의된 224-비트 소수체 타원곡선 암호와 2048-비트 키길이의 RSA 암호를 단일 하드웨어로 통합 구현한 공개키 암호 프로세서 EC-RSA를 설계하였다. ECC의 스칼라 곱셈과 RSA의 멱승 연산에 공통으로 사용되는 유한체 연산장치를 32 비트 데이터 패스로 구현하였으며, 이들 연산장치와 내부 메모리를 ECC와 RSA 연산에서 효율적으로 공유함으로써 경량화된 하드웨어로 구현하였다. EC-RSA 프로세서를 FPGA에 구현하여 하드웨어 동작을 검증하였으며, 180-nm CMOS 셀 라이브러리로 합성한 결과 11,779 GEs와 14 kbit의 RAM으로 구현되었고, 최대 동작 주파수는 133 MHz로 평가되었다. ECC의 스칼라 곱셈 연산에 867,746 클록 사이클을 소요되어 34.3 kbps의 처리율을 가지며, RSA의 복호화 연산에 26,149,013 클록 사이클이 소요되어 10.4 kbps의 처리율을 갖는 것으로 평가되었다.

공개키 암호 구현을 위한 경량 하드웨어 가속기 (A Lightweight Hardware Accelerator for Public-Key Cryptography)

  • 성병윤;신경욱
    • 한국정보통신학회논문지
    • /
    • 제23권12호
    • /
    • pp.1609-1617
    • /
    • 2019
  • ECC (Elliptic Curve Cryptography)와 RSA를 기반으로 하는 다양한 공개키 암호 프로토콜 구현을 지원하는 하드웨어 가속기 설계에 관해 기술한다. NIST 표준으로 정의된 소수체 상의 5가지 타원곡선과 3가지 키길이의 RSA를 지원하며 또한, 4가지 타원곡선 점 연산과 6가지 모듈러 연산을 지원하도록 설계되어 ECC와 RSA 기반 다양한 공개키 암호 프로토콜의 하드웨어 구현에 응용될 수 있다. 저면적 구현을 위해 내부 유한체 연산회로는 32 비트의 데이터 패스로 설계되었으며, 워드 기반 몽고메리 곱셈 알고리듬, 타원곡선 점 연산을 위해서는 자코비안 좌표계, 그리고 모듈러 곱의 역원 연산을 위해서는 페르마 소정리를 적용하였다. 설계된 하드웨어 가속기를 FPGA 디바이스에 구현하여 EC-DH 키교환 프로토콜과 RSA 암호·복호 둥작을 구현하여 하드웨어 동작을 검증하였다. 180-nm CMOS 표준 셀 라이브러리로 합성한 결과, 50 MHz 클록 주파수에서 20,800 등가게이트와 28 kbit의 RAM으로 구현되었으며, Virtex-5 FPGA 디바이스에서 1,503 슬라이스와 2개의 BRAM으로 구현되었다.

타원곡선 암호를 위한 GF(2163) 스칼라 곱셈기 (A GF(2163) scalar multiplier for elliptic curve cryptography)

  • 정상혁;신경욱
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2009년도 춘계학술대회
    • /
    • pp.686-689
    • /
    • 2009
  • 본 논문에서는 타원곡선 암호를 위한 스칼라 곱셈기의 설계에 대해 기술한다. 설계된 스칼라 곱셈기는 스마트카드 표준에 기술된 163-비트의 키 길이를 가진다. 유한체 $GF(2^{163})$ 상에서 스칼라 곱셈의 연산량을 줄이기 위해 complementary recoding 방식을 적용한 Non-Adjacent-Format(NAF) 변환 알고리듬을 적용하여 설계하였다. 설계된 스칼라 곱셈기 코어는 $0.35-{\mu}m$ CMOS 셀 라이브러리로 합성하여 32,768 게이트로 구현되었으며, 150-MHz@3.3-V로 동작한다. 설계된 스칼라 승산기는 스마트카드용 타원곡선 암호 하드웨어 구현을 위한 IP로 사용될 수 있다.

  • PDF

A Scalable Structure for a Multiplier and an Inversion Unit in $GF(2^m)$

  • Lee, Chan-Ho;Lee, Jeong-Ho
    • ETRI Journal
    • /
    • 제25권5호
    • /
    • pp.315-320
    • /
    • 2003
  • Elliptic curve cryptography (ECC) offers the highest security per bit among the known public key cryptosystems. The operation of ECC is based on the arithmetic of the finite field. This paper presents the design of a 193-bit finite field multiplier and an inversion unit based on a normal basis representation in which the inversion and the square operation units are easy to implement. This scalable multiplier can be constructed in a variable structure depending on the performance area trade-off. We implement it using Verilog HDL and a 0.35 ${\mu}m$ CMOS cell library and verify the operation by simulation.

  • PDF

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

듀얼 필드 모듈러 곱셈을 지원하는 몽고메리 곱셈기 (Montgomery Multiplier Supporting Dual-Field Modular Multiplication)

  • 김동성;신경욱
    • 한국정보통신학회논문지
    • /
    • 제24권6호
    • /
    • pp.736-743
    • /
    • 2020
  • 모듈러 곱셈은 타원곡선 암호 (elliptic curve cryptography; ECC), RSA 등의 공개키 암호에서 중요하게 사용되는 산술연산 중 하나이며, 모듈러 곱셈기의 성능은 공개키 암호 하드웨어의 성능에 큰 영향을 미치는 핵심 요소가 된다. 본 논문에서는 워드기반 몽고메리 모듈러 곱셈 알고리듬의 효율적인 하드웨어 구현에 대해 기술한다. 본 논문의 모듈러 곱셈기는 SEC2 ECC 표준에 정의된 소수체 GF(p)와 이진체 GF(2k) 상의 11가지 필드 크기를 지원하여 타원곡선 암호 프로세서의 경량 하드웨어 구현에 적합하도록 설계되었다. 제안된 곱셈기 구조는 부분곱 생성 및 가산 연산과 모듈러 축약 연산이 파이프라인 방식으로 처리하며, 곱셈 연산에 소요되는 클록 사이클 수를 약 50% 줄였다. 설계된 모듈러 곱셈기를 FPGA 디바이스에 구현하여 하드웨어 동작을 검증하였으며, 65-nm CMOS 표준셀로 합성한 결과 33,635개의 등가 게이트로 구현되었고, 최대 동작 클록 주파수는 147 MHz로 추정되었다.