RSA vs ECC - 이해하기



RSA와 ECC 한 줄 정의

  • RSA: 큰 수의 "소인수분해(정확히는 모듈러 n=pq 기반 문제)"가 어렵다는 성질을 이용한 공개키 암호

  • ECC: "타원곡선 이산로그 문제(ECDLP)"가 어렵다는 성질을 이용한 공개키 암호

둘 다 공개키(비대칭키) 방식이라서 키 교환, 전자서명에 많이 쓰입니다.


핵심 비교 요약 (시험/실무 모두 중요)

1) 키 길이 & 성능

  • ECC가 같은 보안강도에서 키 길이가 훨씬 짧음

    • 예) 대략적인 보안강도 대응으로 자주 외우는 값
      RSA 2048bit ≈ ECC 256bit

  • 키가 짧으면 좋은 점:

    • 연산/통신/저장 부담 ↓

    • 모바일/IoT 같은 저전력 환경에 유리

👉 결론: ECC는 “짧은 키로 강한 보안 + 효율”이 장점


2) 속도 체감(암·복호/서명/검증)

  • RSA

    • 보통 **검증(verify)**이 빠르고, **서명(sign)**은 상대적으로 느릴 수 있음(키 설정에 따라 편차)

  • ECC(ECDSA 등)

    • 서명/키교환이 대체로 효율적(키 길이가 짧아서 메리트 큼)

    • 다만 구현 난이도/파라미터/부채널 대응이 중요

👉 결론: 환경에 따라 다르지만, 전체 효율은 ECC 쪽이 유리한 경우가 많음.


3) 구현 난이도 & 실수 포인트

  • RSA

    • 개념이 비교적 직관적(곱셈/모듈러)

    • 하지만 패딩을 잘못 쓰면 바로 취약(OAEP, PSS 같은 안전한 패딩 필수)

  • ECC

    • 수학 구조가 더 복잡(타원곡선 위 연산)

    • 특히 난수(k) 재사용 같은 실수는 전자서명에서 치명적(ECDSA에서 유명)

    • 안전한 곡선 선택, 구현의 부채널 방어가 중요

👉 결론: ECC는 “잘 구현하면 강력하지만, 구현 실수 리스크”를 조심


4) 사용처(어디서 많이 보나)

  • RSA

    • 전통적으로 인증서/PKI에서 오래 사용

    • 레거시 시스템에 매우 넓게 존재

  • ECC

    • TLS(HTTPS), 모바일, IoT, 최신 시스템에서 채택 증가

    • ECDHE(키교환), ECDSA(서명) 많이 등장

👉 결론: RSA는 역사/호환성, ECC는 최신/효율 이미지로 기억하면 편함.


5) 양자컴퓨터 관점(중요 포인트)

  • 충분히 강력한 **양자컴퓨터가 등장하면 RSA와 ECC 모두 큰 영향(Shor 알고리즘)**을 받는 계열로 알려져 있어요.

  • 그래서 요즘은 **PQC(후양자 암호)**가 별도로 연구/표준화되는 흐름이 있습니다.

👉 결론: “양자 내성”은 둘 다 근본 해결이 아니라 PQC가 대안.


표로 한 번에 정리

구분 RSA ECC
기반 난제 (n=pq) 관련 수론 문제(실무에선 소인수분해로 설명) 타원곡선 이산로그(ECDLP)
키 길이(동급 보안) 김 (예: 2048/3072…) 짧음 (예: 256/384…)
효율/통신량 상대적으로 큼 상대적으로 작음(유리)
구현/운영 상대적으로 단순(그래도 패딩 중요) 상대적으로 복잡(난수/곡선/부채널 중요)
사용처 레거시/호환성 강점 모바일/IoT/최신 TLS 등 강점

암기용 한 줄 팁

  • RSA = “길지만 익숙함(호환성)”

  • ECC = “짧고 강함(효율)”



댓글 쓰기

새 댓글을 작성할 수 없습니다.*

다음 이전