스킬캠퍼스

오늘 끝나면

디지털 서명

  • 디지털 서명의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 디지털이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

내가 보냈다는 증명, 위조 불가 — 공개키를 거꾸로 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

암호 & 보안 · 08

디지털
서명

공개키를 거꾸로 쓰면 위조 불가능한 서명이 된다. 내가 보냈고 한 글자도 안 고쳐졌다는 사실을 증명한다.

P.01암호 & 보안 · 08

암호화는 잠그기, 서명은 그 반대

암호화는 공개키로 잠그고 개인키로 푼다. 누구나 잠글 수 있지만 푸는 건 개인키 주인뿐이다.

서명은 방향이 정반대다. 개인키로 서명하고, 공개키로 검증한다. 만드는 건 나만 가능하고 확인은 누구나 할 수 있다.

같은 키쌍을 반대로 쓴 것뿐이다. 잠그기에 쓰면 비밀이 지켜지고, 서명에 쓰면 신원이 증명된다.

잠그는 방향 ↔ 서명하는 방향
같은 키쌍 · 반대 방향
암호화비밀유지
공개키로 잠금개인키로 풂
서명신원 증명
개인키로 서명공개키로 검증
서명은 암호화를 거꾸로 한 것이다
P.02암호 & 보안 · 08

개인키는 나만 가진 도장

위조가 안 되는 이유는 개인키를 세상에서 나 하나만 갖고 있기 때문이다.

그 개인키로 만든 서명은 나만 만들 수 있다. 도장 원본을 나만 가진 것과 같다. 남이 흉내 내려면 내 개인키가 있어야 하는데, 그건 구할 수 없다.

반대로 공개키는 누구에게 뿌려도 된다. 그걸로는 검증만 된다. 확인은 되지만 새 서명은 못 만들기 때문에 안전하다.

나만 만들고 · 모두가 확인함
누가 뭘 할 수 있나
주체서명검증
개인키 (나)서명 만들기 + 검증
공개키 (모두)검증만 가능
공격자위조 불가
만들기는 나만 · 검증은 누구나
P.03암호 & 보안 · 08

직접 서명하고 검증해 보기

개인키로 서명하면 서명값이 나오고, 공개키로 검증하면 유효(파랑)가 뜬다. 진짜 그 사람이 보냈고 안 고쳐졌다는 뜻이다.

메시지를 한 글자만 바꾸면 검증이 바로 무효(빨강)로 깨진다. 한 글자 변조도 즉시 잡힌다.

서명 → 검증 → 1글자 고쳐 깨뜨리기
디지털 서명 · 직접 해보기
메시지, 보낼 내용
해시(지금) = 1304
① 개인키로 서명
서명값
② 공개키로 검증
아직 검증 안 함

먼저 개인키로 서명해 보자. 그 다음 메시지를 1글자 고치고 검증해 본다.

P.04암호 & 보안 · 08

한 글자만 바뀌어도 서명이 깨진다

한 글자 변조까지 잡는 비결은 해시다. 메시지 전체를 짧은 숫자 하나로 요약한다.

글자가 하나만 바뀌어도 그 숫자가 완전히 달라진다. 서명은 원본의 해시에 묶여 있어서, 내용이 바뀌면 검증할 때 숫자가 안 맞아 무효가 된다.

정리하면 서명은 두 가지를 한꺼번에 증명한다. 누가 보냈나(개인키) 안 바뀌었나(해시)다. 둘 다 맞아야 유효다.

원본 vs 변조본 · 해시가 달라짐
한 글자 차이 · 해시 폭발
원본✓ 유효

100만원 보냄

해시 = 1304

변조본✗ 무효

200만원 보냄

해시 = 2026

1을 2로 한 글자 바꾸니 해시가 전부 달라지고 서명이 깨진다

P.05암호 & 보안 · 08

서명이 보장하는 것, 못 하는 것

서명은 만능이 아니다. 보장하는 게 정확히 둘이다. 인증무결성이다.

인증은 누가 보냈는지, 무결성은 내용이 안 바뀌었는지를 말한다. 그런데 서명은 내용을 가려주진 않는다. 메시지 자체는 누구나 그대로 읽을 수 있다.

비밀유지는 암호화의 몫이다. 둘은 따로 노는 도구다. 실제 시스템은 보통 서명 + 암호화를 같이 쓴다.

Q. 디지털 서명이 보장하는 두 가지는?누가 보냈는지(인증)내용이 안 바뀌었는지(무결성) 다. 개인키는 나만 가지니 인증이 되고, 해시가 묶여 있으니 무결성이 된다. 비밀유지는 별개다. 그건 공개키로 잠그는 암호화의 역할이다.
인증 · 무결성 ✓ / 비밀유지 ✗
서명이 책임지는 범위
인증누가 보냈나?
무결성내용이 안 바뀌었나?
비밀유지내용을 가려주나?
비밀유지는 암호화의 몫이고 서명과 별개다

3줄 요약

  1. 1내가 보냈다는 증명, 위조 불가 — 공개키를 거꾸로
  2. 2디지털 서명은 고전 암호 → 키와 신뢰 → 웹 보안 → 블록체인 → 다음 시대 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

디지털

내가 보냈다는 증명, 위조 불가 — 공개키를 거꾸로

암호를 잠그고 풀 때 쓰는 비밀 또는 공개 숫자

해시

데이터를 고정 길이 지문으로 바꾸는 함수