Papers/Others

Network Security

tomato13 2008. 3. 8. 15:41

(문제1) Symmetric과 Asymmetric 암호화 알고리즘을 설명하고, 예를 하나씩 들어라.

Symmetric algorithm은 대칭키 방식으로 불리기도 한다. 즉, 하나의 key를 사용하여 encrypt 그리고 decypt작업을 수행하게 된다. 그 예는 SSL Protocol을 사용하여 server 및 client의 인증작업이 끝나고 session key를 기반으로 data를 주고받는 작업을 들 수가 있다. 이 때 사용되는 session key는 symmetric algorithm기반의 대칭키로서 server와 client가 동일한 key를 가지고서 data를 encrypt하고 decypt하게 된다. Asymmetric algorithm은 공개키 방식으로 불린다. 즉, public key와 private key 두 개가 사용되는데 public key는 누구나 소유할 수가 있으며 private key는 인증받을 단 한 사람만이 소유를 하게 된다. 대표적인 예는 SSL Protocol 기반의 client가 server를 인증하는 작업을 들 수가 있다. server는 자신을 인증할 수 있게끔 digital signature기반의 public key를 배포하게 되고 client는 public key를 사용하여 server만이 decrypt작업이 가능하게 할 수 있다.


(문제2) Public Key Encryption에서 Digital Signature에 대하여 설명하라.

http://en.wikipedia.org/wiki/Image:Digital_Signature_-_How_it_works.jpg
http://www.youdzone.com/signature.html

Digital signature는 일반 사회에서 사람들이 서명을 하여 스스로를 인증하는 기능과 유사하다. 즉, 사

람의 손에 의해서가 아닌 digital document에 의한 signature라는 것이 유일한 차이점이라고 말할 수 있

다. Digital signature의 과정은 일반적으로  PKI(Publick Key Infrastructure)에 의해서 수행되며 그 세부

과정은 다음과 같다. 먼저 서명자는 스스로를 인증하기 위해서 CA(Certificate Agent)로부터 인증서를

발급받는다. 그리고 서명자가 보내고자 하는 document를 hash alorithm을 적용하여 digest document

를 만든다.(이 digest document를 다시 original document로 만드는 작업은 불가능하다.) 그리고 생성

된 digest document를 서명자만이 보유한 private key를 사용하여 encrypted document를 만들게 된다.

이 작업이 끝나고 서명자는 생성된 encrypted document, certificate(인증서) 그리고 public key를

original document와 함께 수신자에게 보내게 된다. 수신자는 우선 인증서를 확인하여 송신인의 신원

을 확인할 수 있게 된다. 그리고 encrypted cocument를 동봉된 public key로 복호화하여 다시 digest

document를 만든다. 그리고 original document에 hash algorithm을 적용하여 복호화한 digest

document와 같은지를 비교한다. 만일 같다면 document의 내용이 중간에 바뀌지 않았다고 확신을 하

게 된다.

 

(문제3) X.509 PKI 보안통신구조를 그림으로 작성하고, 설명하라.
http://en.wikipedia.org/wiki/Image:Digital_Signature_-_How_it_works.jpg


(문제4) 안전한 SSL Handshake Protocol 수행과정을 설명하라.
http://blog.naver.com/arternis74?Redirect=Log&logNo=150016954638
http://kin.naver.com/detail/detail.php?d1id=1&dir_id=106&eid=jt/yKa38EvgJDHaYW2yeQQUwiEkSWAw/&qb=tOvEqsWwILD4sLPFsA==

 

세가지 단계로 설명할 수 있다.
1. SSL Server Authentication
Client가 Server의 인증을 요청하는 단계이다. Server는 CA로 부터 발급받은 인증서를 기반으로 digital signature를 작성하여 client에게 보내게 된다. client는 수신된 digital signature를 분석하여 server를 인증한다.

2. SSL Client Authentication
만일 server 또한 client에게 certificate과정을 요구한다면 client 역시 CA로 부터 인증서를 받아 server에게 digital signature를 제시할 수 있어야한다.

3. Encrypt Connection
client가 server를 인증하게 되면 server에서 보낸 session key를 확인한다. session key는 symmetric alorithm기반으로 차후 주고받게될 내용들을 encrypt하고 decrypt하게 된다.

 

(문제5) 미래 mobile-commerce에서 Visa/Mastercard 카드 Chip이 내장된 이동 전화기만을 이용한 금융거래 구조를 설명하라. (조건: 은행 System은 존재하지 않음)
- CA가 각 mobile user를 인증할 수 있어야 할 것이다. 그리고 이를 기반으로 SSL Protocol등을 사용하여 각 user의 신원을 인증하고 data를 encrypt하여 사용할 수 있을 것이다.