카테고리 없음

대칭키, 비대칭키, 공개키를 예시로 보자!

GEELL 2025. 5. 16. 11:04
728x90
반응형
SMALL

설명은 이쪽으로!

공개키, 비공개키, 전자서명 그게뭐야?

 

 

예시로 보는 대칭키 vs 비대칭키
① 대칭키 암호화 (AES 등)
상황: A가 B에게 비밀 메시지를 보냄

A와 B는 같은 비밀번호(예: 1234 key)를 미리 공유해 둠

A는 1234key로 메시지를 암호화해서 보냄

B도 1234key로 복호화해서 읽음
비유:
자물쇠 하나(=암호키)를 같이 가지고 있어서, A가 자물쇠로 잠근 상자를 보내면 B도 같은 자물쇠로 열 수 있음

키워드:

빠르고 간단함

문제는 같은 키를 미리 안전하게 주고받아야 함 (노출되면 위험)






② 비대칭키 암호화 (RSA 등)
상황: A가 B에게 비밀 메시지를 보냄

B는 자신의 공개키를 공개해 둠

A는 그 공개키로 메시지를 암호화해서 보냄

B는 자신의 개인키로만 복호화 가능함

비유:
B가 열쇠구멍만 있는 상자를 공개해 둠 (누구나 넣을 수 있음)
A가 메시지를 넣어 보냄
하지만 열쇠(개인키)는 B만B 만 가지고 있어서 B만 열 수 있음

키워드:

공개키는 누구나 가짐

개인키는 본인만 가짐

키를 미리 공유할 필요 없고, 보안성은 높지만 속도는 느림

 

전자서명 예시
상황: 회사 직원 A가 보고서를 이메일로 상사 B에게 보냄
B는 이 보고서가 진짜 A가 보낸 게 맞는지 확인하고 싶음

전자서명 사용 흐름
A가 보고서를 SHA-256으로 해시함
→ 예: 보고서 내용을 해시 함수로 돌리면 고정된 길이의 "지문"이 나옴
예: AF42...89C1

A는 이 해시 값을 자신의 "개인키"로 암호화
→ 이게 바로 전자서명
(이 서명은 A만 만들 수 있음, 개인키는 A만 갖고 있으니까)

A는 보고서 + 전자서명을 같이 B에게 보냄

B는 전자서명을 검증할 수 있음
A의 "공개키"로 전자서명을 복호화
→ 해시값 AF42...89C1 나옴

보고서 원문을 받아서 SHA-256으로 해시함
→ 같은 해시값 AF42...89C1 나옴?

둘이 같으면?
→ 보고서가 변조되지 않았고,
→ 이 서명은 A만 만들 수 있으므로 A가 보낸 것임을 확인함

항목 설명
무결성 문서가 중간에 바뀌지 않았는지 확인
인증 문서를 보낸 사람이 진짜 A인지 확인
부인 방지 A는 나중에 "나 그런 보고서 안 보냈어요"라고 부인할 수 없음

728x90
반응형
LIST