C.W.K.
Stream
Lesson 03 of 12 · published

SSH 키 페어

~15 min · public-key, private-key, asymmetric-crypto, ed25519

Level 0Pinger
0 XP0/101 lessons0/12 achievements
0/150 XP to next level150 XP to go0% complete

비대칭 암호, 한 그림으로

SSH 키는 페어로 와 — private key 랑 public key, 수학적으로 묶임. Public key 는 누구한테나 우편으로 보내는 자물쇠라고 봐 — 잠글 수 있지만 못 풀어. Private key 가 그 자물쇠를 여는 유일한 열쇠고, 절대 네 머신 떠나지 않아.

인증이 진짜 동작하는 법

  1. 서버가 ~/.ssh/authorized_keys 에 네 public key 갖고 있음.
  2. 네가 연결. 서버가 무작위 challenge 생성하고 네 public key 묶인 알고리즘 파라미터로 서명.
  3. 네 클라이언트가 private key 로 challenge 서명하고 signature 반환.
  4. 서버가 public key 로 signature 검증. 맞으면 들어감.

중요한 거 — private key 는 절대 wire 안 건너. 서버가 못 봐. Challenge-response 메커니즘이 "갖고 있다"를 "보여주지" 않고 증명.

키가 비밀번호 이기는 이유

  • 강도 — 256-bit ed25519 키는 어떤 비밀번호보다 천문학적으로 brute-force 어려움.
  • 전송 없음 — 비밀이 절대 안 옮겨다님.
  • 재사용 없음 — 장치마다 자기 키. 한 장치 침해돼도 나머진 안전.
  • 장치별 revocation — authorized_keys 에서 한 줄 빼면 한 장치 권한 박탈.
  • 자동화 친화 — Cron, CI, 스크립트가 저장된 비밀번호 없이 인증.

Code

키 페어 보기·bash
# Generate a key pair (full lesson is next — for now just look)
ls -la ~/.ssh/

# Public key — this is what goes on servers
cat ~/.ssh/id_ed25519.pub
# Format: <type> <base64-key> <comment>
# ssh-ed25519 AAAAC3...  you_username@macbook

# Private key — NEVER cat or share this
file ~/.ssh/id_ed25519
# Should be: OpenSSH private key

External links

Exercise

키 없으면 ~/.ssh/ 들여다 봐. 있으면 cat ~/.ssh/id_ed25519.pub 돌려서 줄 세 부분 식별 — type, base64-encoded key, comment. Comment 가 키가 어느 장치 거인지 서버에 올라간 후에 기억할 유일한 방법이야 — 다음 레슨에서 생성할 때 명확하게 적어.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.