'공개키'에 해당되는 글 3건

  1. 2006.05.03 `공개키 암호시스템' 초고속해독법 발견
  2. 2006.04.27 공개키 암호 응용 분야 -서명
  3. 2006.03.12 공개키 암호 (2)
서울대 천정희교수 `유로크립트'서 발표키로

  (서울=연합뉴스) 홍제성 기자 = 공인인증서 등 상용 암호화 기술에 거의 예외없이 쓰이는 `공개키 암호(public key encryption)' 시스템을 현존  기법보다  수만배 이상 빨리 해독하는 알고리즘이 세계 최초로 개발됐다.

천정희 서울대 수리과학부 교수는 3일 `강(强)한 디피-헬만 문제의 안전성 분석(Security Analysis of the Strong Diffie-Hellman Problem)'이란 논문을  국제암호학연구협회(IARC) 주최 `유로크립트 2006' 개막강연에서 발표키로 했다고 밝혔다.

미국에서 열리는 `크립토(Crypto)'와 함께 세계 양대 암호학 학술회의로 꼽히는 유로크립트는 이달 28일부터 러시아 상트 페테르부르크에서 열린다.

이 학회에서 한국인이 개막 강연을 하는 것은 이번이 처음이며, 아시아인으로는 작년 `미국 표준 해시 함수의 해독'을 발표한 왕샤오윈 중국 칭화대 교수에 이어 두번째다.
천 교수는 계산 과정에서 소수(素數)와 인접한 숫자의 관계를 연구한 끝에  `소수+1'이나 `소수-1' 꼴인 숫자들이 약수를 많이 갖는 경우 많게는 수십만배 이상 쉽게 암호를 풀 수 있음을 발견했다.
천 교수의 알고리즘을 사용하면 공개키 상태에서 2의 80승 정도를 계산해야  이론적으로 풀 수 있었던 암호가 2의 50~60승 정도만 계산해도 해독된다.

이는 지금까지 일반적으로 `안전하다', 즉 `뚫릴 염려가 없다'고 평가되던 암호 시스템도 실제로는 쉽게 깨질 가능성이 있음을 보여 주는 것이어서 주목된다.

천 교수는 "현재 실질적으로는 난공불락으로 평가받는 160비트  크기의  공개키 암호시스템도 이 알고리즘이 적용될 경우 기술적 보완이 필요하다"며 "현재  일반인들이 쓰는 PC 10여대를 동원해 몇달간 연산을 거듭하면 깰 수 있을 것"이라고  말했다.

그는 "고대부터 지금까지 쉴 새 없이 벌어지는 국가간 정보전에서 암호학적  역량은 정보력인 동시에 국력"이라며 이 분야 연구에 매진하겠다는 뜻을 밝혔다.

  jsa@yna.co.kr
(끝) <저작권자(c)연합뉴스. 무단전재-재배포금지.>
Posted by 엔시스
TAG 공개키

(1) 서명


서명(Digital signature)은 데이타의 위조를 막고, 부인 방지를 위한 방법으로 MAC과 같이 데이타의 변조도 검증 할 수 있게 한다. 일반적으로 종이 서류의 동일인의 모든 서명이 같겠지만 디지털 데이타인 경우 모든 데이타에 대해서 같은 서명을 사용해서는 안되는 것은 너무도 당연하다. 디지털 서명은 각 데이타 마다 서로 다른 서명을 생성하고 본인 이의에 제삼자가 서명을 생성해서 안된다. 또한 MAC과는 달리 자신의 서명을 누구나 검증할 수 있어야 한다. 따라서 비밀키 방식의 MAC으로는 서명을 생성할 수가 없고 공개키 방식을 사용하게 된다. 공개키 방식을 사용하므로 공개키 암호와 마찬가지로 공개키 기반 구조(PKI)가 필요하다.


그림 2-17 서명의 생성


서명의 생성은 그림 2-17과 같이 서명자의 비밀키(서명키)를 사용하여 서명을 생성한다. 이때 서명의 대상이 되는 데이타는 평문 전체에 대해서 하지 않고 평문을 해쉬한 해쉬값에 대해서 서명을 생성한다. 일반적으로 공개키 방식은 그 연산 시간이 매우 오래 걸릴뿐만아니라 모든 평문에 대해서 서명을 생성하게 되면 서명의 길이가 평문의 크기만큼 커지게 되므로 바람직하지 않다. 해쉬함수의 일방향성과 강한 충돌 회피성을 이용하면 해쉬값에 대해서만 서명을 생성하여도 평문 전체에 대해서 하는 것과 같은 효과를 얻을 수가 있다.


그림 2-18 서명의 검증


서명의 검증은 그림 2-18와 같이 서명자의 공개키(검증키)를 사용하여 서명을 검증한다. 전송받은 데이타에서 서명과 메시지를 나누어 서명값으로는 서명자의 공개키를 이용하여 해쉬값을 구하고, 메시지로는 직접 해쉬함수를 사용하여 해쉬값을 구하여 두개의 해쉬값을 비교함으로써 메시지에 대한 서명을 검증할 수가 있다.

대표적인 서명함수로는 RSA를 이용하는 방법과 미 연방 표준으로 채택하고 있는 DSS(Digital Signature Standard)가 있다. RSA를 이용하는 방법은 RSA의 암호화 같은 방법이지만 사용자의 복호화키를 서명키로 사용하고 암호화키를 검증키로 사용한다. DSS는 반드시 해쉬함수로써 SHA-1을 이용하도록 되어있다.

'Security Skill&Trend' 카테고리의 다른 글

정보보호 기술 분야  (2) 2006.05.01
port scanner  (0) 2006.04.28
공개키 암호 응용 분야 -서명  (0) 2006.04.27
소인수 분해에 기초한 공개키 암호  (0) 2006.04.27
ElGamal 암호알고리즘  (0) 2006.04.27
무선 홈 네트워크의 특허 동향  (0) 2006.04.26
Posted by 엔시스

비밀키 암호를 사용하면 안전한 통신이 가능하다. 그러나 비밀키 암호를 사용하기 위한 전제조건은 통신 당사자들 만이 알고있는 비밀키를 공유하고 있거나 비밀키를 전달할 수 있는 안전한 경로가 있어야 한다는 것이다. 일반적으로 안전한 경로를 가지고 있기는 어려우므로 미리 공유된 비밀키가 없다면 비밀키 암호를 사용할 수가 없다.

이런 문제점을 해결하기 위하여 1970년대에 공개키 암호(Public Key Cryptosystem:PKC)의 개념이 등장하였다. 비밀키 암호에서는 두 사람이 하나의 비밀키를 공유하지만 공개키 암호에서는 각 사람마다 한쌍의 키를 가진다. 공개키 암호의 키중 하나 e는 암호화하는데 사용되며 모든 사람에게 공개되고, 나머지 하나 d는 복호화하는데 사용되며 사용자만이 비밀로 간직한다. 이때 d는 e로부터 유도하는 것이 현실적으로 불가능해야 하고 그림 10 과 같이 공개키 e를 사용하여 암호화한 것을 다시 비밀키 d를 사용하여 복호화하면 원래의 메시지를 얻을 수 있어야한다.

그림 10 : 공개키 암호의 암복호화

그러면 A가 평문 P를 B에게 전송할때는 그림 11 과 같이 B의 공개키를 사용하여 암호화하면 B는 암호문을 자신만의 비밀키로 복호화할 수 있다.

그림 11 : 공개키 암호의 전송

공개키 암호를 구성을 하기위해서는 다음과 같은 성질을 만족해야 한다.

  • 암호문을 복호화하면 원래의 평문을 얻어야 한다: P=Decrypt(Encrypt(P)).
  • 암호화 하는 함수 Encrypt는 누구나 계산할 수 있다.
  • 비밀키(복호화키)를 모르면 Decrypt는 현실적으로 계산하기 어렵다.
  • 비밀키(복호화키)를 알고 있으면 Decrypt를 쉽게 계산할 수 있다.
  • 공개키(암호화키)로부터 비밀키(복호화키)를 구하는 것은 현실적으로 불가능하다.
  • 사용자의 공개키와 사용자의 신분(Identity)를 연결할 수 있는 공개키 기반 구조(Public Key Infrastructure:PKI)가 필요하다.

위의 성질들을 만족하기 위하여 공개키 암호의 암/복호화 함수의 대부분은 수학적으로 어려운 문제들에 바탕을 두고 있다. 대표적으로 합성수의 인수 분해 문제를 바탕으로 한 것이 RSA 암호이다. RSA는 현재 가장 널리 사용되는 공개키 암호 알고리즘이다.

RSA의 기반이 되는 일반적인 합성수의 소인수분해로는 1999년 2월에는 140 자리의 RSA 합성수가 인수분해되었고, 1999년 8월 22일에는 155 자리(512 비트)의 RSA 합성수가 인수분해되었다. 여기에 사용된 컴퓨터(PC, workstation)는 수백대가 분산되어 처리되었으며 5개월이 넘는 시간이 걸렸다. 이것은 140 자리의 합성수를 인수분해하는 것보다 약 4배 정도 더 많은 시간(CPU time)이다. 비록 수 개월이 걸렸지만 512 비트의 합성수가 인수분해되었으므로 1024 비트 이상의 합성수를 사용할 것을 권장하고 있다.

그 밖의 공개키 암호로는 유한체의 이산 대수 문제를 바탕으로 한 것이 ElGamal 암호, 배낭 문제(Knapsack problem)를 바탕으로 한 Knapsack 암호, 부호 이론을 바탕으로 한 McEliece, 타원 곡선의 이산 대수 문제를 이용한 것이 타원 곡선 암호 등이 있다.

참고 : Handbook of Applied Cryptography, Chapter 8 - Public-Key Encryption (36 pages), Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone, CRC Press, 1999.

'Security Skill&Trend' 카테고리의 다른 글

키교환 알고리즘  (0) 2006.03.12
서명  (2) 2006.03.12
공개키 암호  (2) 2006.03.12
MAC 알고리즘  (0) 2006.03.12
해쉬함수  (0) 2006.03.12
대칭키 운영모드  (0) 2006.03.12
Posted by 엔시스