digital signature
디지털 서명은 개인키 소유와 메시지 무결성을 검증한다
서명은 단순히 해시를 개인키로 암호화하는 동작이 아닙니다. 알고리즘은 메시지와 개인키로 서명을 만들고, 검증자는 공개키로 유효/무효를 판단합니다.
Sign은 개인키가 필요하다
Verify는 공개키와 메시지, 서명을 입력한다
TLS 인증서는 CA 서명 체인으로 신뢰를 만든다
1문서/인증서
message or certificate fields
서명 대상 데이터가 먼저 정해집니다.
→
2서명 생성
signature = Sign(private_key, data)
개인키를 가진 주체만 서명을 만들 수 있어야 합니다.
→
3서명 검증
Verify(public_key, data, signature)
검증 결과는 유효 또는 무효입니다. “복호화해서 꺼내는” 모델이
아닙니다.
무결성내용 변경 탐지
서명 대상 데이터가 바뀌면 검증이 실패합니다.
출처개인키 소유 증명
해당 공개키에 대응하는 개인키로 만든 서명인지 확인합니다.
TLSCA 체인
브라우저는 CA 공개키로 인증서 서명 체인을 검증합니다.