반응형

Chapter 5 전자메일 보안

복습문제

5.1 PGP가 제공하는 5가지 주요한 서비스는 무엇인가?

디지털 서명: SHA-1을 이용해서 메시지의 해쉬코드를 생성한다. 이 메시지 다이제스트 를 송신자의 개인키로 DSS RSA 를 이용해서 암호화 한다. 그리고 메시지에 첨부한다.
메시지 암호화: 송신자가 생성한 일회용 세션 키로 CAST-128 이나 IDEA 3DES 를 이용해서 메시지를 암호화한다. 수신자의 공개키로 Diffie_Hellman 이나 RSA를 이용해 서 세션 키를 암호화하고 메시지에 첨부한다.
압축: 저장하거나 전송하기 위해 ZIP을 이용해서 메시지를 압축한다.
전자메일 호환성: 전자메일 응용에 대한 투명성을 제공하기 위해서 암호화된 메시지를 기수-64 변환을 이용해서 ASCII 문자열로 변환할 수 있다.
단편화: 최대 메시지 크기한계까지 사용하기 위해서 PGP는 단편화와 재조립방법을 사용한다.

5.2 별도서명의 용도는 무엇인가?

저장할 수도 있고 서명하고자 하는 메시지와 별도로 전송할 수도 있는데, 여러 상황에 유용하게 쓰인다. 어떤 사용자는 보내거나 받은 모든 메시지들의 별도서명 기록들을 보관하고 싶어 할지도 모른다. 실행 프로그램의 별도서명을 이용해서 실행파일에 붙어오는 바이러스를 감지할 수도 있다. 끝으로 법적인 계약서 같이 한 개체 이상의 여러 개체들이 함께 서명을 해야만 할 때에도 별도서명을 사용할 수 있다. 각 개인의 서명은 서로 독립적이므로 오직 문서의 인증만을 보장한다. 그래서 문서뿐 아니라 서명에 참여하는 사람들 모두를 연관시켜 놓으려면 서명을 중첩해서 해야 한다. , 두 번째 사람이 서명을 할 때에는 첫 번째 사람의 서명과 문서 모두에 서명을 하고, 이런 식으로 마지막 사람까지 계속 서명해 나가는 것이다.

5.3 PGP는 왜 압축을 하기 전에 서명을 생성하는가?

기본적으로 PGP는 서명을 한 후 암호화하기 전에 미시지를 압축(compression)한다. 이렇게 하면 전자메일 전송과 파일저장에 있어 저장 공간을 줄일 수 있는 장점이 있다. 나중에 확인을 할 때 오직 압축되지 않은 메시지만 서명과 함께 저장하면 되기 때문이다. 만일 압축된 문서를 서명한다면 나중에 확인하기위해 메시지의 압축 버전을 저장해야 하거나 확인이 필요할 때마다 메시지를 다시 압축해야하는 두 가지 중 어느 한 가지는 꼭 수행해야 하기 때문이다.

압축 후에 해쉬함수와 서명을 적용하면 압축에 사용했던 알고리즘 버전과 똑같은 알고리즘 버전만이 압축을 풀 수 있게 되어 결국 PGP 기능을 충분히 활용하지 못하고 사용에 제한을 가하는 꼴이 된다.

5.5 R64 변환은 왜 전자메일 응용에 유용한가?

일반적으로 임의의 2진 데이터를 부호화하는데 사용하는 방법이다. 이 방법으로 부호화를 하면 메일 전송 프로그램이 부호화 처리를 할 때 발생할 수 있는 데이터 변경에 매우 강하다.

Chapter 6 IP 보안

복습문제

6.1 IPSec 의 응용 예들을 들어라.

인터넷을 통한 안전한 지사사무실 연결: 회사는 인터넷이나 공공 WAN을 통해 안전한 가상사설망을 구축할 수 있다. 이를 이용해서 사업을 하면 인터넷을 적극적으로 사용하 고, 사설망의 필요성을 줄여주고, 비용절감과 네트워크 관리 부담을 줄일 수 있다.
인터넷을 통한 안전한 원격 접근: IP 보안 프로토콜이 장착된 시스템을 사용하는 종단 사용자는 인터넷 서비스 제공자(ISP:Internet service provider)로 시내전화를 걸어 회 사네트워크에 안전하게 접근할 수 있다. 이렇게 하면 출장중인 직원과 재택근무자의 전 화통신비용을 줄일 수 있다.
협력업체와의 인트라넷과 엑스트라넷 구축: IPSec을 이용하면 인증과 기밀성을 보장할 수 있다. 그리고 키교환 메커니즘을 제공하여 다른 기관과 통신을 안전하게 할 수 있다.
전자상거래 보안강화: 비록 어떤 웹과 전자상거래 응용프로그램에는 보안 프로토콜들이 내장되어 있지만 IPSec을 사용하게 되면 보안성을 더 강화 할 수 있다.

6.2 IPSec에서 제공되는 서비스는 무엇이 있는가?

접근제어(Access control)
비연결 무결성(Connectionless integrity)
재전송 캐킷의 거부(Data origin authentication)
재전송 패킷의 거부(Rejection of replayed packets)(순서 무결성이 불완전한 패킷 형태)
기밀성(Confidentiality)(암호화)
제한된 트래픽 플로우 기밀성(Limited traffic flow confidentiality)

6.4 전송 모드와 터널 모드의 차이는 무엇인가?

전송 모드의 AHIPvp이로드와 선택된 IPgp더 일부와 선택된 IPv6확장헤더 일부를 인증하지만, 터널 모드는 내부 IPvozlt 전체(내부 헤더와 IP페이로드)를 인증하고 선택된 외부 헤더 일부와 선택된 외부 IPv6확장 일부를 인증한다. 전송 모드의 ESPIP페이로드와 ESP헤더 뒤에 있는 모든 IPv6확장 헤더들을 암호화 하지만, 터널 모드는 내부 IP패킷을 암호화한다. 전송 모드의 인증 ESPIP페이로드와 ESP헤더 위에 있는 모든 IPv6확장헤더를 암호화 한다. IP페이로드는 인증하지만 IP헤더는 인증하지 않는다. 그러나 터널 모드는 내부 IP패킷을 암호화 한다. 그리고 내부 IP패킷을 인증한다.

6.5 재전송 공격은 무엇인가?

재전송 공격이란 공격자가 인증된 패킷의 복사본을 입수하여 보관하고 있다가 나중에 그것을 그 패킷의 원래 목적지로 전송하는 것을 말한다. 나중에 전달된 이 복사본을 수신하게 되면 인증된 IP 패킷은 서비스를 방해하거나 원치 않는 말썽을 일으킨다. 이 공격을 막기위해 순서번호필드가 설계 되었다.

연습문제

6.1 AH처리에 대한 논의에서 IP헤더안의 모든 필드들이 MAC계산에 사용되는 것 은 아니라고 했다.

a. IPv4헤더 안의 각 필드에 대해 그 필드가 불변인 필드(immutable)인지, 가변 필드인데 예측 가능한 필드인지, 혹은 가변필드인지(ICV 계산이전에는 0값을 갖는다)를 구별하라

IPv4를 사용하는 전송 모드 AH(transport mode AH)에 대해, AH를 원래의 IP헤더 뒤와 IP 페이로드 앞에 삽입한다. IPv4헤더 안의 MAC계산을 위해 0으로 설정된 가변 필드를 제외한 전체 패킷을 인증한다. 목적지옵션확장헤더는 원하는 의미에 따라 AH헤더의 앞이나 뒤에 올 수 있다. MAC계산을 위해 0으로 설정된 가변 필드를 제외한 전체 패킷에 대해 인증 한다.

IPv4에 있어 불변인 필드의 예로는 인터넷헤더길이(Internet Header Length)와 근원지 주소(Source Afddress)가 있다. 가변인 예측 가능한 필드의 예로는 목적지 주소가 있다.(느슨한 혹은 엄격한 근원지 경로배정의 경우). ICV 계산 이전에 0값을 갖는 가변 필드의 예로는 TTL(Time to Live)필드와 헤더 검사합(Header Checksum)필드가 있다. 발신자 주소와 목적지 주소필드는 둘 다 보호되므로 주소 스푸핑을 할 수 없다.

b. IPv6헤더들에 대해서도 a와 같은 구별을 하라.

IPv6 에 있어 기본헤더 안의 예들로는 버전필드(불변), 목적지주소필드(변할 수 있지만 예측 가능함), 플로우 레이블(변하지 않고 계산을 위해 0값이 주어짐)이 있다.

c. IPv6확장헤더들에 대해서도 같은 구별을 하라.

IPv6 패킷은 IPv6 헤더와 추가되는 확장헤더로 구성되는데 확장헤더가 없을 수도 있다. IPv6 헤더와 각 확장 헤더는 한 개의 다음헤더 필드를 포함하고 있다. 이 필드는 바로 뒤에 따르는 헤더의 유형을 나타낸다. 만일 다음 헤더가 확장헤더라면, 이 필드는 그 헤더의 유형 식별자를 포함한다. 다른 경우, 이 필드는 IPv6 를 이용하는 상위-계층 프로토콜의 프로콜로 식별자를 포함한다.

각 경우에, 각 필드에 대한 자신의 대답에 대해 이유를 말하라.

6.3 두 호스트 사이에는 종단--종단 인증과 암호화가 바람직하다. 그림 6.6 및 그림 6.9와 비슷한 그림을 그려 다음을 보여라.

a. 인증을 하기 전에 암호화를 먼저 적용하는 중첩 전송(adfacency)

터널링을 사용하지 않고 동일한 IP 패킷에 한 개 이상의 보안 프로토콜을 적용하는 것을 의미한다. AH ESP 를 묶는 이 방법을 이용하면 오직 한 레벨의 묶기밖에 못한다. , 중첩된 적용을 한다고 해서 더 이점이 생기지는 않는다. 그 이유는 처리가 한 IPSec(, 최종 목적지)에서 이뤄지기 때문이다.

b. 인증을 하기 전에 암호화를 먼저 적용하는 터널 SA안에서 묶이는 전송 SA

두 개의 전송 SA 묶음을 사용하는 것이다. 이때 안쪽의 것은 ESP SA 이고 바깥쪽의 것은 AH SA 이다. 이 경우에 ESP는 인증 옵션 없이 사용한다. 내부 SA 는 전송 SA 이므로, IP 페이로드를 암호화한다. 결과로 나오는 패킷은 IP헤더와 그 뒤에 붙는 ESP 로 구성된다. 그 다음 AH를 전송 모드로 하여 ESP 와 원래 IP 헤더에 적용한다. 이 때 가변 필드는 제외시킨다. 단순히 ESP 인증 옵션이 있는 한 개의 ESP SA 를 사용하는 방법보다 나은 점은 근원지와 목적지 IP주소를 포함하는 보다 많은 필드를 인증할 수 있다는 것이다.

c. 암호화를 하기 전에 인증을 먼저 적용하는 터널 SA안에서 묶이는 전송 SA

인증 데이터를 암호화로 보호할 수 있다. 그래서 어느 누구도 발각되지 않고 메시지를 가로채서 인증된 데이터를 수정할 수 없게 된다. 그리고 후에 참고하기 위해 목적지에서 인증 정보를 메시지와 함께 저장하는 것이 바람직하다. 만일 인증 정보를 암호화되지 않은 메시지에 적용한다면 이 방법이 훨씬 편리하다. 그렇지 않을 경우 메시지는 인증 정보를 확인하기 위해 번거롭게 다시 암호화를 해야만 한다.

6.4 IPSec 구조 문서에 다음과 같이 언급되어있다. 종단--종단 플로우에서 AH ESP 프로토콜 두 개를 모두 허락하기 위해 두 개의 전송 모드 SA 를 묶을 때, 보안 프로토콜들의 순서들 중 오직 한 가지만이 적합하다. , AH 프로토 콜을 수행하기 이전에 ESP 프로토콜을 수행하는 것이다. 왜 암호화 이전에 인 증을 하는 것 보다 이 방법이 권장되는 이유를 말하라.

암호화를 하기 전에 인증을 한다면, 인증 데이터를 암호화로 보호할 수 있고, 후에 참고하기 위해 목적지에서 인증 정보를 메시지와 함께 저장하는 것이 하지만, 두 개의 전송 SA묶음을 사용하는 것이다. 이때 안쪽의 것은 ESP SA 이고 바깥쪽의 것은 AH SA 이다. 이 경우에 ESP 는 인증 옵션없이 사용한다. 내부 SA는 정송 SA 이므로, IP페이로드를 암호화한다. 결과로 나오는 패킷은 IP헤더와 그 뒤에 붙는 ESP로 구성된다. 그 다음 AH를 전송 모드로 하여 ESP와 원래 IP 헤더에 적용한다. 단순히 ESP 인증 옵션이 있는 한 개의 ESP SA를 사용하는 방법보다 나은 점은 근원지와 목적지 IP 주소를 포함하는 보다 많은 필드를 인증할 수 있다는 것이다.

Chapter 7 웹 보안: SSL, SET 요약정리

SSL(Secure Socket Layer) 안전한 소켓 계층

SSL은 신뢰할 수 있는 종단--종단의 안전한 서비스를 제공하기 위해 TCP를 사용 하도록 설계하였다. SSL은 단 하나의 프로토콜로 이뤄진 것이 아니라 두 계층의 프로 토콜로 이뤄졌다.

SSL 레코드 프로토콜은 다양한 상위-계층 프로토콜들에게 기본적인 보안 서비스를 제 공한다. 특히 웹 클라이언트/서버 상호교환을 위해 전송 서비스를 제공하는 HTTPSSL 위에서 작동할 수 있다. 3개의 상위-계층 프로토콜들을 SSL의 일부로 정의하는데 이 3가지는 핸듯Pdlzm 프로토콜, 암호 명세 변경 프로토콜, 그리고 경고 프로토콜이다. SSL 교환 관리에 이 SSL-지정 프로토콜들을 사용한다.

네스케이프가 처음으로 SSL 을 만들었다.
SSLv3 은 공개적인 검토를 통해 네스케이프사가 투자하고 설계하였으며 인터넷 드래프트 문서로 출판되었다.
이 프로토콜을 인터넷 표준으로 하자는 여론이 형성되었을 때, 일반 표준을 개발하기 위해 IETF 안에 TLS 작업 그룹을 구성했다.
TLS 의 첫 번째 버전은 SSLv3.1 이고 SSLv3 와 매우 유사하고 역 호환이 가능하다.
SSL 레코드 프로토콜은 다양한 상위-계층 프로토콜들에 기본적인 보안 서비스를 제공한다.
웹 클라이언트/서버 상호교환을 위해 전송 서비스를 제공하는 HTTPSSL 위에서 작동할 수 있다.

3 개의 상위-계층 프로토콜들을 SSL 의 일부로 정의하는데 이 3 가지는 다음과 같다.

- 핸드셰이크(Handshake) 프로토콜
- 암호 명세 변경(Change Cipher Spec) 프로토콜
- 경고(Alert) 프로토콜

SSL 교환 관리에 이 SSL-지정 프로토콜들을 사용한다.
SSL 연결 상태 매개변수 정의

- 서버와 클라이언트 랜덤(server and client random)
- 서버 기록 MAC 비밀(Server write MAC secret)
- 클라이언트 기록 MAC 비밀(Client write MAC secret)
- 서버 기록 키(Server write key)
- 클라이언트 기록 키(Client write key)
- 초기화 벡터(Initialization vectors)
- 순서 번호(Sequence numbers)

SET(Secure Electronic Transaction) 안전한 전자 거래

SET은 인터넷과 같은 공개된 네트워크(Open Network)상에서의 신용카드 지불을 위한 Protocol이라 할 수 있다.

, 인터넷 쇼핑시 신용카드를 사용하여 대금을 결제하고자 할때, 공개된 네트워크 상에서 보다 안전하게 지불처리를 할 수 있도록 암호화 및 정보보안에 관해 제정된 표준안이다.

초기에 SETS/W 구현에 국한하여 출발하였으나, 최근에는 SETChip-Card로 구현하려는 시도가 진행 중이다.

, SETS/W뿐 아니라 H/W 구현에 대한 표준까지 포괄하고 있다.  

SET이 제공하는 3 가지 서비스
- SET 자체가 지불 시스템은 아니다.
- 오히려 이것은 사용자들이 기존의 신용카드 지불 기반구조를 인터넷 같은 개방된 네트워 크에서 안전하게 사용할 수 있도록 하는 보안 프로토콜들과 포맷들을 모아놓은 것이다.
- 거래에 관여하는 모든 개체 사이에 안전한 통신 채널을 제공한다.
- X.509v3 디지털 인증서를 사용하여 신뢰를 제공한다.
- 정보를 거래가 필요한 때나 장소에서 해당되는 개체들만 사용할 수 있기 때문에 기밀성 이 보장된다.

요구 사항

인터넷이나 다른 네트워크상에서 신용카드를 이용하여 안전하게 지불 처리를 하기 위해서 다음과 같은 사업 요구 사항을 SET 명세의 Book 1 에 목록으로 나타냈다.

* SET 의 주요 기능

정보의 기밀성(Confidentiality of Information): 카드소지자의 계좌와 지불정보는 네트워크로 이동하는 도중에 안전하다. 흥미롭고 중요한 SET 의 한 기능은 상인들이 카드소지자의 신용카드번호를 알지 못하게 하는 기능이다; 이 기능은 오직 발급하는 은행에게만 제공된다. DES 를 이용한 관용암호를 사용해서 기밀성을 제공한다.

데이터 무결성(Integrity of data): 카드소지자가 상인에게 보내는 지불정보에는 주문정보, 신상데이터, 지불명령이 포함된다. SET 는 이 메시지 내용들이 전송도중 변경되지 않음을 보장한다. SHA-1 해쉬코드를 사용하는 RSA 디지털서명을 이용해서 메시지 무결성을 제공한다. 어떤 메시지는 SHA-1 을 사용하는 HMAC 으로 보호한다.

카드 소지자 계좌 인증(Cardholder account authentication): SET 는 상인으로 하여금 카드소지자가 유효한 카드계좌번호의 합법적 사용자임을 확인할 수 있게 보장한다. SET 는 이를 위해 RSA 서명을 쓰는 X.509v3 디지털 인증서를 사용한다.

상인 인증(Merchant authentication): SET 는 카드소지자로 하여금 상인이 금융기관과 관계를 갖고 있다는 것을 확인할 수 있게 한다. 그래서 상인이 지불카드를 받는 것을 허락한다. SET 는 이를 위해 RSA 서명을 쓰는 X.509v3 디지털 서명을 사용한다.

IPSec SSL/TLS 와는 다르게 SET 는 오직 하나의 암호 알고리즘만 사용할 수 있다는 것에 주목하기 바란다. 이렇게 하는 것이 타당한 이유는 SET 는 한 개의 요구 사항 집합만을 만족시키면 되는 단일 응용프로그램이기 때문이다. 반면에 IPSec SSL/TLS 는 여러 응용프로그램들을 지원하도록 만들어졌다.

* Scope

SET은 전자상거래의 지불 시스템 중 신용카드 기반의 지불에 관한 사항만을 정의하고 있다. 전자상거래를 몇 단계로 구분 시 SET의 범위를 아래의 표에서 볼 수 있다.

단계

설명

SET Scope

1

카드소지자는 상품 및 서비스 정보를 검색한다.

WWW상의 Cyber Shopping Mall

상인이 제공하는 상품정보 CD-ROM

기존의 인쇄물 형태의 Catalog

 

2

카드소지자는 구매할 Item을 선정한다.

 

3

카드소지자는 선정한 Item의 목록과, 단가, 배달료 세금등이 포함된 총 가격을 확인하고, 주문서를 전자적으로 발송할 주문서를 작성한다.

 

4

카드소지자는 지불수단을 선택한다.

(이예의 경우에서는 물론 신용카드를 선택한다.)

 

5

카드소지자는 지불지시를 포함하고 있는 완성된 주문서를 상인에게 발송한다.

(SET에서는 주문 및 지불정보는 승인된 카드소지자에 의해 전자적으로 서명된 상태로 전송되어야 한다.)

SET 범위

6

상인은 카드소지자의 금융기관이 해당거래에 대한 지불을 승인할 것을 요청한다.

SET 범위

7

상인은 승인이 확인되면 주문에 대한 확인을 카드소지자에게 발송한다.

SET 범위

8

상인은 주문서의 내용에 맞는 상품을 발송한다.

(서비스 요청의 경우 해당 서비스를 수행한다.)

 

9

상인은 카드소지자의 금융기관에게 지불을 요청한다.

SET 범위

P-Report#3_표지.hwp
0.01MB
P-Report#3.hwp
0.01MB
Report#4_표지.hwp
0.02MB
Report#4.hwp
0.37MB


반응형

+ Recent posts