전자서명(Electronic Signature)

메시지에 전자적인 서명을 하는 것으로, 메시지와 메시지를 생성한 사람과의 인증을 의미한다.

전자서명 개념

  • 송신자(서명자)서명 알고리즘을 이용하여 메시지에 서명
  • 수신자(검증자)검증 알고리즘으로 서명자의 서명을 검증

형식

  • 공개키 서명 방식
    • 서명자의 검증 정보를 공개하여 누구나 검증 가능
    • 서명 생성 및 검증 간편
  • 중재 서명방식
    • 서명 생성과 검증을 제 3자가 중재
    • 제 3자의 참여 필요

제공 서비스

  • 메시지 인증: 수신자는 메시지가 원하는 송신자로부터 왔다는 것을 확신할 수 있음
  • 메시지 무결성: 메시지가 해시함수와 서명을 통해 전송되므로 변조되지 않음을 알 수 있음
  • 부인방지: 신뢰받는 제 3자로부터 검증받을 수 있음

기밀성은 제공되지 않으므로 비밀키/공개키 암호화를 해야함

주요 기능

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

종류

RSA

  • 전자 서명 구조에서는 개인키공개키의 역할이 비대칭 암호화 과정과 반대
  • 송신자의 개인키암호화하고 수신자가 송신자의 공개키를 이용하여 복호화

비대칭키 암호화: 수신자의 공개키로 암호화하고 수신자의 개인키로 복호화

ElGamal

  • 이산대수 문제를 이용한 최조 서명방식
  • ElGmal 암호시스템과 동일한 키를 사용하나 알고리즘은 다름
  • RSA보다 서명 길이가 2배, 계산량은 거의 4배

Schnorr

  • ElGamal 기반이지만 서명의 크기를 줄인 새로운 구조

DSS(Digital Signature Standard)

  • ElGamal 전자서명을 개량(이산대수 문제)
  • 오직 전자서명 기능만을 제공하도록 설계
  • 서명과 검증에 소요되는 계산량을 줄임

타원곡선 전자서명 구조(ECDSA)

  • 타원곡선에 기반을 둔 DSA
  • 짧은 비트 길이로 인해 짧은 처리 시간짧은 서명 생성 가능

전자서명 방식

복원형 전자서명

  • 기존 공개키 암호방식을 이용하여 별도의 전자서명 프로토콜 필요 X
  • 메시지를 일정 블록 크기로 나누어, 각 블록에 서명하므로 시간이 소요
  • 실제로는 사용되지 않음

부가형 전자서명

  • 메시지를 해시해서 나온 다이제스트에 한 번의 서명 생성하므로 효율적
  • 전송량이 조금 늘어나나 실제로 많이 사용됨

특수 전자서명

공개키 방식을 이용한 전자 서명은 검증하는 키가 공개되므로 검증을 누구나 할 수 있다는 문제점이 있다.

  • 부인방지 전자서명: 자체 인증 방식을 배제시키고 서명 검증할 때, 서명자의 도움이 있어야 검증
  • 의뢰 부인방지 서명: 신뢰하는 제 3자가 서명을 검증
  • 수신자 지정 서명: 지정한 검증자만이 서명을 검증할 수 있음
    • 필요시 제 3자에게 그 서명이 서명자에 의해 자신에게 발행된 서명임을 증명 가능
  • 위임 서명: 부재 중 자신을 대리해서 서명
  • 은닉 서명: 서명문의 내용을 숨기는 방식(익명성)
  • 다중 서명: 동일 전자문서에 여러 명이 서명

전자서명의 응용

전자투표 시스템

선거인 명부를 구축한 중앙 시스템과 직접 연결된 단말에 자신이 정당한 투표자임을 증명하면 어디서나 무기명 투표를 할 수 있는 방식

요구사항

  • 완전성: 모든 투표가 정확히 집계
  • 익명성: 투표 결과로부터 투표자 구별 불가
  • 건전성: 부정 투표자에 의한 선거 방해 없어야 함
  • 이중투표방지: 정당한 투표자는 단 1회만 투표 허용
  • 정당성: 투표에 영향을 미치는 것이 없어야 함
  • 적임성: 투표 권한을 가진 자만이 투표 가능
  • 검증 가능: 투표 결과를 누구나 확인하여 검증 가능

방식

  • PSEV 방식: 기존 선거 방식 + 전자
  • 키오스트(kiosk) 방식: 공공장소에 설치(관리자 없음)
  • REV 방식: 어디서든 투표 가능
    • 비밀투표 침해가능성 높음

전자 입찰 시스템

입찰공고에서 다수의 공급자가 응찰하면 이중에서 가장 싼 가격을 제시한 응찰자와 계약을 받는 입찰방식을 인터넷으로 구현

요구사항

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

문제점

  • 네트워크상의 메시지 유출
  • 입찰자와 서버 사이의 공모
  • 입찰자간의 공모
  • 입찰자와 입찰 공무자간의 공모

전자 서명으로 해결할 수 없는 문제

  • 서명을 검증할 때 이용하는 공개키가 진짜 송신자의 공개키여야 함
  • 올바른 공개키 입수를 위해 인증서가 고안됨

인증서: 공개키를 메시지로 간주하고 신뢰 가능한 제 3자에게 전자서명을 해서 받은 공개키