RangA 2023. 6. 2. 23:59

03. 전자서명

01. 전자서명과 디지털 서명

1) 전자서명(Electronic Signature)의 개념

  • 전자서명은 서명자를 확인하고 서명자가 전자문서에 서명하였음을 나타내는 데 이용하기 위하여 전자문서에 첨부되거나 논리적으로 결합된 전자적 형태의 정보를 말함
  • 펜 대신에 컴퓨터를 통해 전자적 형태의 자료로 서명자의 신원을 확인하는 것
  • 종이 계약서에 인감도장을 찍거나 서명하는 것과 같은 컴퓨터 파일이나 전자문서 상의 서명

2) 전자서명의 기능

  1. 서명자 인증 기능
    • 수신된 메시지에 서명한 사용자가 누구인지 식별할 수 있는 기능이 있어야 함
    • 서명 당사자를 확인할 수 없다면, 다른 사용자가 서명 당사자로 위장할 수 있으므로 서명자의 신원을 확인하는 기능은 반드시 필요함
  2. 위조 불가 기능
    • 서명자 이외의 타인 서명을 위조하기 어려워야 함
    • 메시지에 대한 서명자만이 서명문을 생성할 수 있는 기능이 있어야 함
  3. 재사용 불가 기능
    • 동일한 서명자라도 메시지가 다르면 서명문의 형태도 다르게 하는 기능이 있어야 함
    • 그렇지 않다면 다른 사용자가 서명문을 복사하여 정상적으로 서명한 것처럼 할 수 있음
  4. 메시지 변경 불가 기능
    • 서명된 문서의 메시지 일부가 변경되지 않도록 하는 기능이 있어야 함
    • 변경된 사실을 서명자가 인지할 수 없다면 중요한 사실이 변경되어 막대한 피해를 줄 수 있음
  5. 부인 불가 기능
    • 서명자는 서명 사실을 부인할 수 없어야 함
    • 메시지에 서명한 당사자가 불리할 경우에 서명 사실을 부인할 수 없도록 하는 기능이 있어야 함
  6. 분쟁 해결 기능
    • 송수신자 전자문서의 분쟁이 발생하였을 경우에 법적으로 어느 쪽에 위법이 있었는지 판단할 수 있도록 하는 기능이 있어야 함

3) 디지털 서명(Digital Signature)의 개념

  • 전자 문서나 메시지를 보낸 사람의 신원이 진짜임을 증명하기 위해 디지털 형태로 생성하여 첨부하는 정보를 지칭함
  • 컴퓨터 통신망과 송수신 되는 전자문서에 암호 기법 등을 이용하여 인감도장과 같은 기능을 할 수 있는 디지털로 되어 있는 암호문을 말함
  • 디지털 서명은 비대칭적 암호 체계를 이용한 전자서명의 한 종류
  • 디지털 서명은 공개키 암호 방식을 이용한 전자서명

4) 디지털 서명 방식

  • 디지털 서명 방식에는 중재자의 존재 여부에 따라 2가지로 구분된
    • 직접(Direct) 방식 : 송신 측과 수신 측이 직접 서명하고 확인함
    • 중재(Arbitrated) 방식 : 신뢰할 수 있는 중재자를 통해 서로를 확인함

5) 디지털 서명 알고리즘

  • 디지털 서명에서 서명자는 비밀키로 서명을 생성하고, 수신자는 공개키로 이를 확인함
  • 서명자는 비밀키로 서명한 후 메시지와 함께 전송하면 수신자는 서명자의 공개키로 서명자의 서명을 확인한 후 메시지를 수신함
  • 디지털 서명만으로는 기밀성을 보장하지 않으며, 기밀성을 보장하기 위해서는 메시지를 암호화해야 함
  • 종류에는 RSA 디지털 서명, EIGamal 디지털 서명, DSS 디지털 서명, 타원곡선 디지털 서명 등의 알고리즘이 있음



02. 디지털 서명 알고리즘

1) RSA 디지털 서명

  • 공개키 암호 알고리즘을 이용한 디지털 서명 기법
  • 공개키 기반 서명 알고리즘 중 가장 먼저 실용화됨
  • 적절한 시간 내에 인수가 큰 정수의 소인수분해 문제를 이용한 공개키 암호화 기법에 널리 사용되는 암호 알고리즘 기법
  • 가장 보편화 되어 있는 알고리즘

2) EIGamel 디지털 서명

  • 유한체 상의 이산대수의 어려움으로부터 안전성을 얻은 공개키 알고리즘
  • 512비트를 사용하며, 서명 값이 총1024비트

3) DSS(Digital Signature Standard, 디지털 서명의 표준)

  • EIGamal 서명을 개량한 방식
  • 1991년에 처음 제안되어 미국의 전자서명 포준으로 1994년 1월에 채택됨
  • DSS는 EIGamal의 서명과 검증에 소요되는 계산량을 대폭적으로 줄인 방식
  • 디지털 서명 값이 160비트 정도이면 전사서명의 안전성이 보장됨
  • DSS 서명이 EIGamal 서명보다 길이가 짧음
  • 동일한 소수 p를 사용할 때 DDS가 RSA 알고리즘보다 빠름

4) DSA(Digital Signature Algorithm)

  • 미국 NIST에서 제안된 표준 디지털 서명 알고리즘
  • 서명 생성 및 검증 과정을 위해서는 모듈러 연산의 구현이 필요함
  • 유한체 상의 이산대수 문제의 어려움에 그 안전성의 기반을 둠
  • EIGamal 형태의 메시지 부가형 서명 알고리즘
  • 해시 코드는 서명을 형성하기 위해 송신자의 개인키를 사용하여 암호화함
  • 수신자는 메시지를 받고 해시 코드를 생성함
  • 수신자는 송신자의 공개키를 사용하여 서명을 복호화함
  • 계산된 해시 코드가 복호화된 서명과 일치한다면 서명은 유효한 것으로 인정함
  • 디지털 서명은 기밀성을 지키기 위한 것은 아니며 기밀성이 필요하다면 메시지를 별도로 암호화하여 보내야 함

5) Rabin 공개키 암호

  • Rabin 공개키 암호는 소인수분해, 이차잉여의 어려운 문제를 이용한 암호
  • Rabin 암호 알고리즘은 암호화 과정에서 제곱의 연산만 하면 되기 때문에 RSA 암호보다 계산이 훨씬 빠름
  • 복호화할 때는 이차잉여를 계산하여 해를 찾으면 그것이 평문이 됨

6) Diffie-Hellman 공개키 키 공유 알고리즘

  • 대칭키 암호에서 비밀키의 분배 문제가 송신자와 수신자 사이에 많은 문제로 남아 있음
  • 대칭키 암호에서 비밀키 분배 전달 문제는 공개키 암호 알고리즘을 사용함으로써 어느 정도 해결되지만, 개인의 공개키를 키 관리센터나 서버 등에서 관리하지 않으면 안 됨
  • 이런 중간 관리를 거치지 않고, 직접 서로의 비밀키를 교환할 수 있는 대표적인 방법 중 하나
  • 1976년에 발표된 이산 대수 문제를 이용한 알고리즘

7) 소수 판정 알고리즘

  • 공개키 알고리즘은 두 개의 소수를 결정하여 암호화함
  • 100% 소수로 판정하여 알고리즘에 적용할 경우는 결정적 알고리즘이라고 함
  • 100% 소수로 판정하지 못하더라도 적당한 확률 이상으로 소수임을 판정하여 알고리즘에 적용할 경우는 확률적 알고리즘이라고 함
  • 결정적 알고리즘을 적용하는 RSA 공개키 알고리즘은 같은 메시지에 대해서는 항상 동일한 암호문이 만들어짐
  • 확률적 알고리즘을 적용하는 Yes-based Monte Carlo 공개키 알고리즘은 같은 메시지라도 암호화할 때마다 서로 다른 암호문을 만들어 사용함

8) McEliece 공개키 암호 알고리즘

  • 소인수분해, 이산대수, 타원곡선과 같이 실용적인 알고리즘이 아닌 오류 정정 부호(Error-Correcting Code) 능력을 갖춘 코드를 이용하는 방법
  • 공개키의 크기가 메가바이트 정도로 매우 크기 때문에 실용적인 가지가 적음

9) 배낭(Knapsack) 공개키 알고리즘

  • 많은 큰 수들의 집합에서 선택된 수들의 합을 구하지는 쉽지만, 주어진 합으로부터 선택된 수들의 집합을 찾기 어렵다는 점을 이용한 방법
  • 빠른 암호화, 복호화 속도는 장점이지만 쉽게 해독된다는 단점이 있어 널리 사용되지 않음



03. 무선 PKI

1) 무선 PKI(무선 공개키 기반 구조, W-PKI, Wireless PKI

  1. 무선 PKI
    • 유선 인터넷처럼 무선 인터넷도 안전한 인터넷 정보 서비스를 제공 받기 위해서는 기밀성, 무결성, 인증, 부인봉쇄와 같은 서비스를 제공하기 위한 무선 PKI가 필요함
    • 무선 PKI는 유선 PKI의 기존 구성 요소를 그대로 수용하면서, 무선 인터넷에 적합하도록 기능을 최소한으로 변화시킨 것
    • 스마트폰을 통해 인터넷 뱅킹이나 주식 거래를 할 때 필요한 기술
  2. 무선 PKI의 고려사항
    • 모바일 기기의 CPU가 처리해야 할 데이터를 최소화하여 CPU의 처리 능률을 향상시킬 수 있도록 구성해야 함
    • 모바일 기기의 제한된 입력 및 출력 장치를 고려해야 함
    • 모바일 기기의 네트워크 자원의 부족으로 인한 특성을 고려해야 함
    • 모바일 기기의 CPU에서 처리 가능한 서명, 검증, 암호화 알고리즘을 채택하여 무선 PKI 서비스의 효율성을 최대로 높여야 함
    • 모바일 기기에서 인증서, CRL(인증서 폐지 목록) 등의 규격을 정해야 하며, 사용하는 알고리즘의 최적화를 통하여 모듈 사이즈를 최소화하고 제한된 메모리를 갖는 모바일 기기 환경에 맞춰야 함
    • 모바일 기기 환경에 맞도록 프로토콜을 최적화 하여 인증서의 발급, 처리, 검증 등에 필요한 처리 시간을 줄여야 함
    • 무선 인터넷 환경에 맞는 인증서 검증 방식을 채택하여 처리율이 떨어지는 모바일 기기에서 인증서를 제대로 검증할 수 있도록 해야 함
    • 모바일 기기의 메모리 제약을 고려하여 인증 기관 간의 상호 연동이 가능한 인증서 요청, 관리 프로토콜을 적용해야 함
    • 현재의 모바일 기기가 이후 모듈 변경이 어려운 점을 고려하여 확장성과 유선 및 국제 호환성을 고려해야 함
    • 모바일 기기의 제한된 전원 공급 장치의 특성을 고려해야 함

2) M-VPN(모바일 가상 LAN, Mobile VPN)

  • M-VPN은 기존의 유선 VPN과 같이 VPN 국제 표준인 IPSec을 수용하여 유선 상의 VPN과 동일하게 동작하는 기술
  • M-VPN은 네트워크 계층의 보안 시스템
  • M-VPN은 기존의 보안 정책을 적용할 수 있음
  • M-VPN은 특정 사용자를 위한 소규모의 응용 서비스
  • M-VPN은 캡슐화 기술을 적용하여 비공인 주소와 비공인 주소를 연결하는 유일한 방법을 제공하는 시스템
  • M-VPN 모듈이 탑재된 모바일 기기는 이동통신 사업자의 통신망과 유선망을 통해 기존에 VPN에 연결된 서버와 안전한 통신을 할 수 있음

3) WEP(Wired Equivalent Privacy)

  1. WEP
    • 무선 통신 초기에 가장 널리 사용되는 Wi-Fi 보안 알고리즘으로 대부분의 접근 설정에서 암호화 방식 선택 시 가장 먼저 표시되었던 암호화 기술(IEEE 802.11표준 정의)
    • 무선 통신은 물리적 장비를 접촉해야만 하는 유선과 다르게 외부 침입에 약하다는 점을 보완하기 위해 개발된 기술
    • WEP은 무선 LAN에 연결된 기기와 AP가 서로 주고받는 패킷을 64비트 혹은 128비트로 암호화하며, CRC-32(순환 잉여 오류 검출 방식)로 체크섬에 적용함
    • WEP 방식은 공격에 취약하며 보안성이 약함
    • WEP 방식은 RC4 암호화 방식을 이용함
  2. WEP 키의 암호화 통신 설정 과정
    1. 무선 LAN에 접속한 기기에서 AP에 인증 요청을 함
    2. AP는 임의로 벡터 테이블을 무선 LAN에 접속한 기기에 전달함
    3. 무선 LAN에 접속한 기기는 전달 받은 벡터 테이블을 WEP 키(RC4 사용)로 암호화해서 AP에 전달함
    4. AP는 전달 받은 암호문을 WEP 키로 복호화하여 본인이 최초 전송한 벡터 테이블과 일치하면 접속을 허락함

4) WPA(Wi-Fi Protected Access)

  1. WPA
    • WPA는 WEP 표준의 문제점을 보완하여 개발되었으며, 2003년 Wi-Fi 보안 표준으로 변경됨
    • WPA 방식은 48비트 길이의 초기 벡터를 사용함
    • WPA에서 사용되는 키는 WEP 방식의 64비트, 128비트보다 큰 256비트로 암호화함
    • WPA는 무선 LAN에 연결된 기기와 AP가 서로 주고받은 데이터가 수집되었거나 수정되었는지 체크하는 무결성 확인 기능과 무결성 프로토콜(TKIP) 기능이 추가됨
  2. WPA-PSK(Wi-Fi Protected Access Pre Shared Key)
    • 개인용 WPA라고도 하며, TKIP 또는 AES 암호화 방법을 사용하는 보안 기술
    • AP와 통신해야 할 클라이언트에 암호화 키를 기본으로 등록해 두고 있음
    • 암호화 키를 이용해 128비트인 통신용 암호화 키를 새로 생성하고, 이 암호화 키를 10.000개의 패킷마다 바꿈
    • 기존보다 훨씬 더 강화된 암호화 세션을 제공함
  3. WPA2(Wi-Fi Protected Access 2)
    • WPA2의 암호화 방법은 AES를 사용함
    • WPA2 방식은 AES 암호화 알고리즘을 사용하여 좀 더 강력한 보안을 제공함
    • WPA2 방식의 MIC는 WEP, WPA와 다르게 강력하게 데이터를 보존하며, 암호 정보를 해독하기 위한 작업을 미리 차단함
  4. EAP(Extensible Authentication Protocol)
    • WPA, WPA-PSK, WPA2가 기존의 WEP의 암호화 방식을 중점적으로 보완하였다면 WPA-Enterprise 암호화 방식은 인증까지 추가한 방식
    • WPA-Enterprise 암호화 방식은 WPA-EAP라고도 하며 암호화 및 인증을 강화하기 위해 다양한 알고리즘을 수용할 수 있도록 EAP 인증 프로토콜을 채택함
    • 사용자가 연결을 요청하면 AP에서 연결해주는 것이 아니라 RADIUS라는 인증 서버에서 연결을 허가하는 방식