seegongsik
내 단어장
보안

같은 열쇠로 잠그고 푸는 대칭키

집 현관문을 생각해봐요. 나갈 때 그 열쇠로 잠그고, 들어올 때도 같은 열쇠로 풀죠. 하나의 열쇠가 잠금도 풀림도 다 해요. 대칭키 암호가 딱 이래요. 잠글 때 쓴 열쇠와 푸는 열쇠가 같아요. 단순하고 빠르죠. 그런데 여기에 아주 골치 아픈 문제가 숨어 있어요. 멀리 있는 친구가 이 잠긴 편지를 풀려면, 같은 열쇠가 친구에게도 있어야 해요. 그 열쇠를 어떻게 안전하게 건네주죠?

01

하나의 열쇠로 잠그고 풀어요

앞 강에서 암호화는 잠금이라고 했죠.
내용을 알아볼 수 없게 잠가 두고
맞는 열쇠로만 다시 풀 수 있다고요.
대칭키는 그 열쇠가 잠금과 풀림에
똑같은 하나라는 뜻이에요.
편지를 그 열쇠로 잠그면
아무도 못 읽는 상태가 돼요.
그리고 같은 열쇠를 대면
원래 내용으로 다시 돌아와요.
잠그는 열쇠와 푸는 열쇠가 하나, 그래서 대칭이에요.

K
열쇠
HELLO
풀림
같은 열쇠로 풀려 읽을 수 있어요

같은 열쇠로 잠그고 풀어봐요. 잠그면 읽을 수 없게 되고, 같은 열쇠를 다시 대면 원래대로 풀려요.

잠그니 글자가 뒤죽박죽 알 수 없게 됐죠.
그리고 같은 열쇠를 대니
다시 깔끔하게 읽혔어요.
잠금과 풀림이 한 열쇠로 오가는 거예요.
현관 열쇠 하나로 문을
잠그기도 열기도 하는 것과 똑같죠.
구조가 이렇게 단순하다 보니
장점이 하나 따라와요.
이 방식이 아주 빠르다는 점이에요.

02

빠르고 간단해요

열쇠가 하나뿐이라
계산이 단순하고 가벼워요.
그래서 작은 쪽지든
아주 큰 파일이든
눈 깜짝할 사이에 잠그고 풀어요.
사진 한 장, 영상 한 편처럼
덩치 큰 데이터도 빠르게 처리하죠.
속도가 빠르니 부담이 적어서
많은 곳에서 즐겨 쓰는 방식이에요.
간단함과 빠름, 이게 대칭키의 큰 매력이에요.

크기를 고르고 잠가봐요

작은 데이터와 큰 데이터를 골라 잠가봐요. 덩치가 커도 같은 열쇠로 금방 잠기고 풀려요.

데이터가 커져도 처리가 금방 끝났죠.
이 빠름 덕분에 대칭키는
실제로 정말 널리 쓰여요.
그런데 여기서 잠깐 멈춰서
곰곰이 생각해봐야 할 게 있어요.
나 혼자 내 파일을 잠그고 푸는 거라면
열쇠를 나만 가지면 그만이에요.
하지만 멀리 있는 누군가에게
잠긴 편지를 보내 풀게 하려면?
그 사람도 같은 열쇠가 있어야 해요.

03

그 열쇠를 어떻게 건네죠

잠긴 편지만 보내면 친구는 못 풀어요.
같은 열쇠가 있어야 풀 수 있으니까요.
그러니 열쇠도 친구에게 보내야 해요.
그런데 열쇠를 보내는 길을
가만히 들여다보면 불안해져요.
그 길에 누가 끼어들어 있다면
지나가는 열쇠를 몰래 베껴 갈 수 있어요.
열쇠가 새어 나가는 순간
잠금은 아무 의미가 없어져요.
베낀 사람이 똑같이 풀 수 있으니까요.

친구
K
경로가 비어 있어요
열쇠를 보내봐요

열쇠를 친구에게 보내봐요. 그 길에 누가 있으면 지나가는 열쇠가 복사될 수 있다는 걸 직접 확인해요.

안전해 보이던 길에 누가 있으니
열쇠가 그대로 복사돼 버렸죠.
복사된 열쇠는 우리 잠금을
똑같이 풀 수 있어요.
그렇다고 열쇠를 아예 안 보내면
친구는 편지를 영영 못 풀어요.
보내자니 복사가 걱정되고
안 보내자니 쓸 수가 없어요.
이 두 길이 모두 막혀 있어요.
다음에서 이 막다른 상황을 나란히 놓고 봐요.

04

보내도 막히고 안 보내도 막혀요

두 갈래 길을 나란히 놓아 봐요.
첫째, 열쇠를 보내는 길.
빠르고 편하지만
중간에서 복사되면 잠금이 무너져요.
둘째, 열쇠를 안 보내는 길.
복사 걱정은 없지만
상대가 편지를 풀 방법이 없어요.
한쪽은 위험해서 막히고
다른 쪽은 쓸모가 없어서 막혀요.
어느 길로 가도 끝이 막혀 있는 딜레마예요.

열쇠를 보낼까요, 안 보낼까요?

두 선택지를 눌러 비교해봐요. 보내면 복사 위험, 안 보내면 못 풂. 두 길이 다 막히는 걸 나란히 봐요.

어느 쪽을 골라도 막다른 곳이었죠.
이게 그 유명한 키 배송 문제예요.
대칭키가 빠르고 좋은데도
혼자만의 비밀이 아니라
둘이 나누는 비밀이 되는 순간
열쇠를 안전하게 건네는 방법이 필요해져요.
바로 이 지점에서 오래 막혀 있었어요.
그런데 이 막힌 길을 영리하게 돌아가는
전혀 다른 발상이 나타나요.
그게 다음 강의 주제예요.

05

정리해볼까요

한 줄로 모으면 이래요.
대칭키는 잠글 때와 풀 때
같은 열쇠 하나를 써요.
그래서 단순하고, 큰 데이터도 아주 빨라요.
하지만 떨어진 상대와 나누려면
같은 열쇠를 건네야 하는데
보내자니 복사가 걱정이고
안 보내자니 상대가 못 풀어요.
이 막다른 딜레마가 키 배송 문제예요.
빠름은 그대로 살리면서 이 문제만 푸는 길, 그게 다음의 공개키예요.

1같은 열쇠로 잠그고 풀기
2빠르고 간단함
3키를 어떻게 전달?
4보내도 안 보내도 막힘

핵심을 차례로 눌러 되짚어봐요. (같은 열쇠로 잠금/풀기 -> 빠르고 간단 -> 키를 어떻게 전달? -> 보내도 안 보내도 막힘) 다음 강의 공개키가 이 딜레마를 풀어요.

이제 대칭키의 빛과 그늘을 다 봤어요.
같은 열쇠 하나로 빠르게 잠그고 푸는
분명한 장점과,
그 열쇠를 어떻게 나누느냐는
풀기 어려운 그늘을 함께요.
좋은 도구일수록 약점을 알아야
제대로 쓸 수 있어요.
다음엔 잠그는 열쇠와 푸는 열쇠를
아예 둘로 나누는 기발한 생각으로
이 그늘을 어떻게 걷어 내는지 살펴봐요.

한 줄 정리대칭키 암호는 잠글 때와 풀 때 같은 열쇠를 써요. 열쇠 하나만 있으면 되니 단순하고, 큰 데이터도 아주 빠르게 잠그고 풀어요. 그래서 널리 쓰여요. 그런데 결정적인 약점이 있어요. 떨어져 있는 상대가 풀려면 같은 열쇠를 그 사람도 가져야 하는데, 그 열쇠를 보내는 길 자체가 위험해요. 보내다 중간에 복사되면 잠금이 무의미해지고, 안 보내면 상대는 영영 못 풀어요. 보내자니 위험하고 안 보내자니 못 쓰는, 막다른 딜레마죠. 이게 키 배송 문제예요. 빠름이라는 장점과 키를 어떻게 건네느냐는 난제가 한 몸이에요. 다음 강의 공개키 방식이 바로 이 딜레마를 풀어줘요.
보안
이 페이지가 도움 됐다면 후원하기