전자서명은 네트워크를 사용하면서 데이터의 신뢰성을 확보하기 위해 사용한다. 송신자의 개인키로 암호화하여 서명문을 만들어 사용한다. 서명문을 이용하면 근원지 증명이 되기 때문에 작성자가 누구 인지 증명이 가능하다.
구분 |
종이문서 |
전자문서 |
기록매체 |
종이 |
전자기록 매체 |
전달방법 |
우편, 인편 |
네트워크를 통한 전송 |
안전·신뢰성 |
위·변조가 비교적 어렵다. |
위·변조가 용이함 전자기록매체의 물리적 특성으로 위·변조 식별 불가능 |
진정성증명 |
수기서명, 날인 |
전자서명 |
전자서명에서는 신원확인, 위조불가, 변경불가, 부인불가, 재사용불가 5가지가 반드시 필요하다.
서명자 신원확인(User Authentication) : 개인키의 소유자가 전자서명 행위자임을 증명하고,서명자 고유의 표식
위조 불가(Not forgeable) : 합법적인 서명자 외에는 전자서명 생성 불가 증명
변경 불가(Unalterable) : 서명한 문서의 내용과 서명의 변경 불가 증명
부인 불가(Non-Repudiation) : 서명은 본인 이외에는 불가능함을 증명
재사용 불가(Not Reuseable) : 다른 전자문서의 서명으로 사용 불가능함을 증명
이중에서 부인불가항목이 가장 중요하다.
공개키를 이용한 전자서명
① 메시지 다이제스트를 계산
② 그것을 송신자의 개인키로 암호화한다. 이것이 전자 서명
③ 이것을 메시지와 함께 수신자에게 보냄
④ 수신자는 먼저 수신 메시지의 메시지 다이제스트를 계산함
⑤ 다음으로 송신자로부터 온 전자 서명을 송신자의 공개키로 복구함
⑥ 이전 메시지로부터 계산한 메시지 다이제스트를 비교
전자서명방식은 가용성과 무결성은 확보가 되지만 기밀성은 확보되지 않는다.
전자봉투 방식
① 송신자는 메시지를 보낼 때 난수를 생성하여 대칭키(세션키)로 함.
② 송신자는 메시지(암호 전의 평문)를 대칭키로 암호화함
③ 송신자는 대칭키를 수신자의 공개키로 암호화. // 이 대칭키를 암호화한 것을 전자봉투라고 부른다. 만약 128비트의 대칭키를 1024비트의 공개키로 암호화하면 1024비트의 전자봉투 생성
④ 송신자는 수신자에게 전자봉투 1024비트와 암호 메시지 보냄.
⑤ 수신자는 개인키 1024비트로 전자봉투를 복호화하여 128비트의 대칭키를로 암호 메시지를 복호화하여 메시지를 꺼냄.
실습 : 두 시스템을 병합한 시스템의 추상도를 그려라.
① 송신측은 메시지를 보낼 때 메시지를 해시코드로 다이제스트를 생성하고, 근원지 증명을 위해 송신측의 개인키로 암호화하여 서명문을 생성한다.
② 메시지의 기밀성을 위해서 난수를 발생시켜 비밀키로 사용하고, 비밀키로 암호화 하여 암호메시지를 생성한다.
③ 비밀키를 수신측만 알 수 있게 하기 위해 수신측의 공개키로 암호화 하여 전자봉투를 생성한다.
④ 수신측은 전자봉투를 열기위해 수신측의 개인키로 복호화 한다.
⑤ 전자봉투 속의 비밀키를 이용하여 암호메시지를 복호화하여 메시지를 출력한다.
⑥ 서명을 송신측의 공개키로 복호화 하여 근원지 증명을 하고, 출력되는 다이제스트와 복호화 된 메시지를 해시함수로 생성한 다이제스트를 비교하여 위변조 여부를 확인한다.
'교육 > 암호학' 카테고리의 다른 글
Day 46 (암호학_인증서) (0) | 2020.01.22 |
---|---|
Day 46 (암호학_Kerboros) (0) | 2020.01.22 |
Day 44 (암호학) (0) | 2020.01.20 |
Day 42 (암호학) (0) | 2020.01.16 |
Day 41 (암호학) (0) | 2020.01.15 |