암호학 (6)전자 서명&인증서

2020. 1. 21. 12:25Security/알고리즘&암호학

* 전자 서명의 이해

- 정보화 사회에서는  다양한 서비스 요구에 의해 데이터 무결성 , 사용자 인증, 부인방지 서비스가 필수적

- 보내는 사람이 자신의 개인키로 암호화해서 보낸다.

- 신뢰성을 확보하는게 목적

- 디퍼-헬만에 의해 개념 제시 됐으며 현재는 공개키를 사용

- 전자서명 = 사용자 인증 + 메시지 인증

- 보통 송신자가 자신의 개인키로 암호화 하는것을 전자서명이라고 한다.

전자 서명의 문제점

- 무결성(위조와 변조가 용이)

- 부인 방지(문서 작성 사실을 이증하기 곤란)

 

전자상거래의 문제점

- 사용자 인증(거래 상대방의 신원 확인 곤란)

- 기밀성(전송 내용의 비밀 유지 곤란)

 

전자서명의 중요한 요소(반드시 지원되어야 함)

- 서명자 신원확인(User Authentication) : 개인키의 소유자가 전자서명 행위자임을 증명. 서명자 고유의 표식
- 위조 불가(Not forgeable) : 합법적인 서명자 외에는 전자서명 생성 불가 증명
- 변경 불가(Unalterable) : 서명한 문서의 내용과 서명의 변경 불가 증명
- 부인 불가(Non-Repudiation) : 서명은 본인 이외에는 불가능함을 증명
- 재사용 불가(Not Reuseable) : 다른 전자문서의 서명으로 사용 불가능함을 증명

 

* 암호화 방법과 전자 서명

- 전자서명은 전자서명의 조건을 만족하면서 서명방식과 검증 방식이 명확하여야 함

 

대칭키 암호 알고리즘에 의한 방법
- 중재된 서명기법
- 서명과 검증을 제 3자에 의해서 행할 수 밖에 없음

 

공개키 암호 알고리즘에 의한 방법
- 메시지 복원형 전자서명 방식
- 문서 자체를 이용하는 서명 방식
- 메시지 부가형 전자서명 방식(우리나라에서 대부분 사용)

- 문서에 서명메세지를 포함하는 방식

* 메세지 부가형 전자서명

- 메세지가 변경되지 않은 것과 송신자의 신원을 보장

- 무결성과 가용성은 보장되지만 기밀성이 보장되지 않는다.

- 무결성이 보장되는 내에서 최대한 속도를 빠르게 하기위해 메세지 자체가 아닌 메세지 다이제스트에 서명 만든다. 

메세지 부가형 전자서명 방식

1. 메시지를 해쉬함수로 함수화 한다. 메시지의 길이와 상관없이 다이제스트의 길이는 항상 같다.

2. 메세지 다이제스트를 개인키로 암호화해서 서명문을 만든다.

3. 메세지와 서명문을 같이 송신.(이름이 메세지 부가형인 이유)  

4. 수신자는 송신자의 공개키로 서명문을 복호화한 다이제스트와 메시지를 함수화한 다이제스트가 같은지 비교

 

* 전자 봉투 기법

- 메세지를 한 번 보낼때마다 비밀키를 사용하기때문에 기밀성이 우수 

- 서명과 기밀을 동시에 이용

- 암호는 대칭키를 이용하고 대칭키는 공개키로 암호화

- 기밀성과 가용성은 확보되지만 무결성이 확보되지않음.

 

1. 난수 발생 비밀키를 만든다.(길이를 제한해야 한다.)

2. 비밀키를 수신자의 공개키로 암호화. 이것을 디지털(전자)봉투라 한다. 

3. 메세지를 비밀키로 암호화 한다.

4. 암호메세지와 디지털 봉투를 같이 수신자에게 전송

5. 디지털 봉투를 수신자의 개인키로 복호화해서 비밀키를 알아낸다.

6. 메시지를 비밀키로 복호화해서 메세지를 확인

 

- 현재 사용 하는 전자봉투 기법은 이렇게 메세지 부가형 전자서명과 기존의 전자봉투 기법을 합쳐서 사용

 

 

 

* 인증서의 정의

- 공개키의 소유자를 증명 
- 인증서라 함은 개인키와 이에 합치하는 공개키에 대하여 이를 소유하는 자연인 또는 법인과의 귀속관계 등을 인증기관이 자신의 개인키로 전자서명하여 확인, 증명하는 전자적 정보

- 인증서를 발행하기 위해서는 공개키의 소유주는 인증기관에 공개키를 등록하고 인증기관은 등록된 개인의 공개키 자신의 개인키로 서명해서 인증서를 발행.

 

* 인증 기관과 CRL

- CA(Certificate Authority) : 인증서 발행기관 
- RA(Registration Authorities) : 인증서 유저 등록 기관

- 무료로 받은 인증서는 사용에 제한이 있지만 유료로 받은 인증서는 사용에 제한이 없다.

 

CRL (Certificate Revocation List) : 인증서 폐지 목록

- 인증서를 검증하는 절차

- 기관마다 절차하는 시스템은 다르다. 

- 사용자가 개인 키를 도둑 맞았을때 자신의 개인키와 인증서에 대한 폐기 신청을 CA에게 요청

- 거래를 하는 인터넷 상점에서 그 인증서의 유효성을 검사해 인증서가 폐기 되어 있는지 확인.

- CRL은 인증서들을 발행했던 CA가 발행후 서명

  
CRL의 장점 
- CRL은 사용자에게 여러가지 방법으로 분배 가능

- 부인방지 가능 

 

CRL의 단점 
- 인증서를 검증하기 위해 항상 CRL을 보유.

- 정기적 발행 주기가 너무 길면 폐기된 인증서의 사용 위험성, 짧으면  CRL의 크기가 너무 커져 시스템 성능 저하 발생.