외로운 Nova의 작업실

정보보안기사 필기 - 6(전자서명과 PKI) 본문

Certification/정보보안기사

정보보안기사 필기 - 6(전자서명과 PKI)

Nova_ 2022. 11. 1. 13:21

- 전자 서명

 

<전자 서명의 주요 기능>

  • 위조 불가 : 합법적인 서명자만이 전자서명을 생성할 수 있어야합니다.
  • 서명자 인증 : 전자서명의 서명자를 누구든지 검증할 수 있어야합니다.
  • 부인방지 : 서명자는 서명행위 이후에 서명한 사실을 부인할 수 없어야합니다.
  • 변경 불가 : 서명한 문서의 내용을 변경할 수 없어야합니다.
  • 재사용 불가 : 전자문서의 서명을 다른 전자문서의 서명으로 사용할 수 없습니다.

 

<여러가지 전자서명>

  • RSA 전자서명 : 송신자 앨리스는 자신의 비밀키로 전자서명을 합니다. 이후 수신자 밥은 전자서명을 앨리스의 공개키로 복호화를 하여 M와 비교합니다. 같을경우 M은 앨리스가 보낸것임을 증명할 수 있습니다.

  • ElGamel 전자서명 : ElGamel 전자서명은 ElGamel 암호시스템과 동일한 키를 사용하지만 알고리즘은 다릅니다. 거의 사용되지 않으며 DSA라 알려진 그 변형이 더 많이 사용됩니다.
  • Schnorr 전자서명 : ElGamel 전자서명의 문제점은 p가 매우 큰 소수가 되어야한다는 것입니다. p의 크기를 줄이기 위해 Schnorr 를 제안했습니다.
  • 전자서명 표준(DSS, digital signature standard) : DSS는 이산대수 문제를 기반으로 하며 암호화나 키 교환에 사용되지 않고 전자서명에만 사용되는 알고리즘입니다. DSA는 미 연방 표준 DSS이고 NIST가 제안했습니다.

 

<전자서명 방식>

  • 메시지 복원형 : 송신자 앨리스는 평문을 자신의 비밀키로 암호화하여 서명을하고 서명과 평문값을 수신자 밥에게 보냅니다. 밥은 평문을 앨리스의 공개키로 복호화하여 평문과 비교합니다.

  • 부가형 전자서명 : 송신자 앨리스는 평문의 해시값을 구하고 그 해시값에 개인키를 이용하여 서명하여 밥에게 평문과 서명을 보냅니다. 밥은 서명을 앨리스의 공개키로 복호화하고, 평문을 해시하여 그 둘을 비교합니다.

<특수 전자서명>

  • 부인방지 전자서명 : 자체 인증 방식을 배제시켜 서명을 검증할대 반드시 서명자의 도움이 있어야 검증이 가능한 전자 서명방식입니다.
  • 의뢰 부인방지 서명 : 분쟁이 일어났을때 해결해주는 사람 혹은 재판관만이 부인 과정을 수행할 수 있도록 하는 방식입니다.
  • 수신자 지정 서명 : 지정된 수신자만이 서명을 확인할 수 있고 수신자가 제 3자에게 그것이 서명자에의해 자신에게 발행된 서명임을 증명함으로써 검증자가 통제할 수 있는 서명 방식을 말합니다.
  • 은닉서명 : 수신자를 모르는 상태에서 송신자가 서명을하는 익명성을 제공할 수 있는 서명입니다.
  • 위임 서명 : 서명자를 대신해서 대리로 서명할 수 있도록 구성한 서명 방식입니다.
  • 다중 서명 : 동일한 전자문서에 여러사람이 서명할 수 있는 방식입니다.

- 전자서명의 응용

<전자 투표>

전자 투표 시스템은 선거인 명부를 데이터베이스로 구축한 중앙시스템과 직접 연결한 단말에 자신이 정당한 투표자임을 증명하면, 단말이 있는 전국 어디서나 쉽게 컴퓨터망을 통하여 무기명 투표를 할 수 있는 방식입니다.

 

<전자 투표 시스템 구현을 위한 요구사항>

  • 완전성 : 모든 투표가 완전히 정확하게 집계되어야합니다.
  • 익명성 : 투표결과로부터 투표자를 구별할 수 없어야합니다.
  • 건정성 : 부정한 투표자에 의해 선거가 방해되는 일이 없어야합니다.
  • 이중투표방지 : 정당한 투표자가 두번 이상 투표할 수 없습니다.
  • 정당성 : 투표에 영향을 미치는 것이 없어야합니다.
  • 적임성 : 투표권한을 가진 자만이 투표할 수 있어야합니다.
  • 검증가능 : 선거 결과를 변경할 수 없도록 누구라도 투표결과를 확인하여 검증할 수 있어야합니다.

 

<전자 투표 방식>

  • PSEV방식 : 이미 정해져 있는 기존 투표소에서 투표기를 사용하여 투표
  • 키오스크 방식 : 정해지지 않은 임의 투표소에서 전자투표
  • REV 방식 : 가정이나 직장에서 인터넷을 통해 투표

 

- 전자 입찰 시스템

입찰 공고에서 다수의 공급자가응찰하여 오면 이중에서 가장 싼 가격을 제시한 응찰자와 계약을 맺는 입찰방식을 인터넷을 통하여 구현한 것입니다.

 

<전자 입찰 시스템의 요구사항>

  • 독립성 : 전자입찰 시스템의 각 구성요소는 독자적인 자율성을 보장받아야합니다.
  • 비밀성 : 네트워크상의 개별정보는 누구에게도 노출되어선 안됩니다.
  • 무결성 : 입찰시 누락 및 변조 여부를 확인할 수 있어야합니다.
  • 공평성 : 입찰이 수행될때 모든 정보는 공개되어야합니다.
  • 안전성 : 각 입찰 참여자 간의 공모는 방지되어야하고 입찰 공고자와 서버의 독단이 발생해서는 안됩니다.

 

- PKI(public-key infrastructure)

PKI는 인증서의 발급, 사용 및 취소와 관련된 서비스를 통하여 기밀성, 무결성, 접근제어., 인증 , 부인방지의 보안 서비스를 제공하며, 인증기관, 등록기관, 사용자, 신뢰당사자, 저장소 등의 요소로 구성됩니다. 공개키가 자신 것이라고 하는 거짓행새를 막기위해 제 3자가 공개키와 공개키의 소유자를 인증해줍니다.

 

<PKI의 주요 구성요소>

  • 정책 승인 기관(PAA, plicy approving authority) : 공개키 기반 구조 전반에 사용되는 정책을 수립합니다.
  • 정책 인증 기관(PCA, policy certification authority) : 인증기관이 따라야할 정책을 수립하고 인증 기관의 공개키를 인증하고인증서와 인증서 폐지 목록을 관리합니다.
  • 인증 기관(CA, certification authority) : 등록 기관의 요청에 의해 인증서를 발행합니다.
  • 검증 기관(VA, validation authority) : 인증서가 적절한 개체로 발급되었다는 것을 신뢰 당사자에게 확인시켜줍니다.
  • 등록 기관(RA, registration authority) : 사용자와 CA가 원거리에 위치해있는경우 사용자의 인증서 신청시 인증기관 대신 그들의 소속과 신분을 확인하는 기능을 수행합니다. 등록기관은 사용자의 신분을 확인하고 인증기관에게 제출하면 인증기관은 인증서를 발행하여 등록기관에게 되돌리거나 사용자에게 직접 전달합니다.
  • 저장소(Repository, direction) : 인증서를 발급과 동시에 디렉터리에 저장합니다.

<PKI의 형태>

  • 계층구조 : 최상위 루트 CA가 존재하고 그아래 하위의 CA가 계층적으로 존재하는 구조로, 성위 인증기관이 하위 인증기관에 CA인증서를 발행하며 하위인증기관은 상위 인증 기관의 인증정책에 영향을 받습니다. 최상위 인증기관 간의 상호인증은 허용하지만 하위 인증기관간의 상호인증은 원칙적으로 배제합니다.
  • 네트워크 구조 : 상위 인증기관의 영향없이 인증 기관 각각이 자신의 인증 정책에 따라 독립적으로 전재하는 형태입니다. CA간에 인증을 위해 상호 인증서를 발행합니다.
  • 혼합형 구조 : 계층 구조와 네트워크 구조의 장점만을 취한 방법입니다.

 

<PKI의 인증서>

CA가 발행하는 인증서로 인증서 표준 규격인 x.509에 따라 형태가 데이터베이스에 저장됩니다. 

 

<X.509 프로파일>

  • version :x.509의 버전을 의미합니다.
  • serial number : 필수적인 항목으로, CA에 의해 각 인증서에 부여되는 일련번호입니다.
  • signature algorithm id : 필수적인 항목으로, 인증기관이 인증서를 서명하기위한 알고리즘의 식별자입니다.
  • issure name : 필수적인 항목으로, 인증서 발행기관의 이름입니다.
  • validity period : 필수적인 항목으로, 인증서 유효기간이 시작하는 날짜와 종료되는 날짜입니다.
  • subject name : 필수적인 항목으로, 인증서에대한 사용자의 이름입니다.
  • subject public key : 필수적인 항목으로, 소유자의 공개키이며 인증서의 핵심입니다.
  • issuer unique identifier : 선택적인 항목으로, 사용자의 이름이 중복되는 경우 구별하기 위한 수단입니다.
  • subject unique indentifier : 선택적인 항목으로, 다른 개체가 사용자의 이름을 재사용할경우 주체를 유일하게 구별하는데 사용됩니다.
  • extenstion : 추가적으로 사적인 정보를 넣을 수 있는 필드입니다.
  • signature : 인증서에대한 서명값이 들어갑니다.

<인증서 extenstion 영역>

  • 기관키 식별자(authoruity key identifier) : 개인키에 대응하는 공개키를 구분할 수 있는 수단입니다. 여러개의 공개키중 하나의 개인키에 대응하는 공개키를 찾을때 사용할 수 있습니다.
  • 사용자키 식별자(subject key identifier) : 특정 공개키를 포함하는 인증서의 집합을 빠르게 구분할 수 있는 수단을 제공합니다. 사용자가 여러개의 인증서가 있는 경우 특정 공개키에 해당하는 인증서를 빠르게 구분해줍니다.
  • 키 사용(key usage) : 키의 용도입니다.
  • 인증서 정책(certificate policies) : 인증서에대한 정책입니다.
  • 사용자와 발행자 속성(subject and issuer attribute) : 인증서 주체나 인증서 발행자에대해 여러 대체 이름입니다.
  • 인증 경로 제약 조건(certification path constraints) : 다른 CA가 발행한 CA인증서에 포함될 제한사항입니다.

<CRL(certificate revocation list)>

CRL이란 폐지된 인증서들에대한 목록을 말하며, 인증서 폐지 목록이라고도합니다. 사용자의 개인키가 침해당했을경우, CA의 개인키가 침해당했을 경우, CA가 사용자를 더이상 인증하지 않을경우 인증서를 폐지합니다. CRL내의 각각의 폐기된 인증서는 일련번호에 의해서 확인 할 수 있습니다.

 

<온라인 인증서 상태 검증 프로토콜(OCSP, online certificate status protocol)>

OCSP는 CA에 의해 관리되고있는 CRL을 검사하여 인증서의 상태를 검증해주는 프로토콜입니다. OCSP 서버가 따로 존재하며 CA는 OCSP서버에게 인증서 상태를 전달하며 OCSP서버는 클라이언트와 빠르게 인증서 상태를 확인해줍니다.

 

 

 

Comments