설명
- 메세지 인증 코드(MAC)에 부인 방지를 추가한 보안 기술
- 클라이언트가 공개키 개인키 쌍을 생성 후 개인키로 암호화, 서버에 공개키 전송
- 비대칭키 암호에선 클라이언트가 서버의 공개키로 암호화, 서버가 개인키로 복호화했지만 디지털 서명은 반대
- 공개키로 복호화 되기에 암호로서는 의미가 없지만, 이 개인키로 암호문을 생성할 수 있는 건 1명 밖에 존재하지 않음이 보장됨
실제 사용 예시
디지털 서명 생성
- A가 B에게 암호문을 전송하려고 함
- A가 공개키와 개인키 쌍 생성
- A가 B에게 공개키 전송
- A가 암호문 해싱
- 암호문 전체를 비대칭키로 암호화하면 시간이 오래 걸리기 때문
- A가 해시값을 개인키로 암호화
- A가 B에게 암호문과 암호화된 해시값 전송
디지털 서명 검증
- B가 암호문 해싱
- B가 디지털 서명을 공개키로 복호화
- 암호문 해시값과 복호화한 해시값 동일한지 검증
단점
- A가 아닌 공격자와 데이터를 주고 받았을 가능성 존재
- 공개키가 누구 것인지 알 수 없기 때문
- 디지털 인증서(공개키 작성자 보증)를 사용하여 해결