스킬캠퍼스
8강 · 디지털 서명
강의

오늘 끝나면

디지털 서명

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

실습 미션

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

성공 조건

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

암호 & 보안 · 08

디지털
서명

공개키를 거꾸로 쓰면 위조 불가 서명이 됨. 내가 보냈고 한 글자도 안 고쳐졌음을 증명함.

P.01암호 & 보안 · 08

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

7강에서 배움. 암호화는 공개키로 잠그고 개인키로 푼다. 누구나 잠글 수 있지만, 푸는 건 개인키 주인뿐임.

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

같은 자물쇠 한 쌍을 반대로 쓴 것뿐임. 잠그기에 쓰면 비밀유지, 서명에 쓰면 신원 증명이 됨.

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

개인키는 나만 가진 도장

왜 이게 위조가 안 되나? 개인키는 세상에서 나 하나만 갖고 있기 때문임.

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

반대로 공개키는 누구에게 뿌려도 됨. 그걸로는 검증만 됨. 확인은 되지만 새 서명은 못 만듦. 그래서 안전함.

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

직접 서명하고 검증해 보기

오른쪽에서 직접 해봄. 메시지를 적고 [개인키로 서명] 누르면 서명값이 나옴.

그 다음 [공개키로 검증] 누르면 유효(파랑) 뱃지가 뜸. 진짜 그 사람이 보냈고 안 고쳐졌다는 뜻임.

이제 메시지를 1글자만 바꿔봄. 검증이 바로 무효(빨강)로 깨짐. 한 글자 변조도 즉시 잡힘.

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

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

P.04암호 & 보안 · 08

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

어떻게 한 글자 변조까지 잡나? 비결은 해시임. 메시지 전체를 짧은 숫자 하나로 요약함.

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

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

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

100만원 보냄

해시 = 1304

변조본✗ 무효

200만원 보냄

해시 = 2026

1 → 2 한 글자 바뀌니 해시가 전부 달라짐 → 서명 깨짐

P.05암호 & 보안 · 08

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

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

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

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

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

3줄 요약

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

완료 전 점검

복습 카드

디지털

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

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

해시

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