문서, 인증서 필드, payload처럼 바뀌면 안 되는 데이터를 정한다.
서명은 원문과 공개키로 검증되는 증거값이다
디지털 서명은 해시를 복호화하는 동작이 아니라, 메시지와 개인키로 만든 값을 원본 데이터와 공개키로 검증하는 절차입니다.
서명과 검증 단계
ordered steps개인키 소유자가 data에 대해 signature를 만든다.
data와 signature, 공개키로 이어지는 인증 정보를 함께 전달한다.
공개키, data, signature를 넣어 유효 또는 무효를 판정한다.
검증이 확인하는 것
matrix| 검사 | 통과 의미 | 실패 신호 |
|---|---|---|
| 무결성 | 서명 대상 데이터가 바뀌지 않았다 | 한 글자만 바뀌어도 검증 실패 |
| 출처 | 짝이 되는 개인키로 만든 서명이다 | 다른 키로 만든 서명은 무효 |
| 맥락 | 인증서 체인과 용도가 맞다 | 신뢰할 수 없는 키면 연결 차단 |
TLS에서의 위치
checkpoints서버는 핸드셰이크 transcript에 서명해 개인키 소유를 보인다.
브라우저는 공개키가 접속한 이름의 인증서 체인에 속하는지 확인한다.
서명은 인증과 무결성 증명이고, 실제 데이터 보호는 AEAD 대칭키가 맡는다.