CoderTools

RSA 암호화/복호화 도구

키 생성 및 디지털 서명이 가능한 공개키 암호화, 개인키 복호화

🔒 100% 로컬 처리입력하신 데이터는 브라우저에서 완전히 처리되며, 서버로 전송되지 않습니다.

RSA 암호화란?

RSA는 가장 널리 사용되는 공개 키 암호 시스템 중 하나입니다. AES와 달리 암호화용 공개 키와 복호화용 개인 키 쌍을 사용합니다.

보안은 큰 소수 분해의 어려움에 기반합니다. SSL/TLS, PGP, SSH의 표준입니다.

주요 기능

  • <strong>키 생성</strong>: 1024, 2048, 4096비트 PEM 키.
  • <strong>암호화</strong>: 공개 키로 메시지 보호.
  • <strong>복호화</strong>: 개인 키로 메시지 해독.
  • <strong>서명</strong>: 진위 증명용 서명.
  • <strong>패딩</strong>: <strong>OAEP</strong>(권장) 및 <strong>PKCS#1 v1.5</strong> 지원.
  • 다중 해시 알고리즘: SHA-1, SHA-256, SHA-384, SHA-512
  • 패딩 모드 선택: OAEP(권장) 및 PKCS#1 v1.5(레거시 호환성) 지원
  • 다중 형식: 입출력이 텍스트, Base64, Hex 등을 지원

키 크기 선택

적절한 키 크기를 선택하는 것은 보안과 성능에 중요합니다:

  • 1024-bit: 1024비트: 새 시스템에 권장하지 않음, 몇 년 내에 해독될 수 있음
  • 2048-bit: 2048비트: 현재 권장되는 최소값, 대부분의 애플리케이션에 적합
  • 4096-bit: 4096비트: 최고 보안 제공, 그러나 암호화/복호화가 느림

패딩 모드

이 도구는 두 가지 RSA 패딩 모드를 지원합니다. 보안 요구사항과 호환성 필요에 따라 선택하세요:

  • OAEP: 최적 비대칭 암호화 패딩, 의미론적 보안을 제공하고 선택 암호문 공격으로부터 보호합니다. 새 시스템에 권장됩니다.
  • PKCS#1 v1.5: 알려진 Bleichenbacher 공격 취약점이 있는 레거시 패딩 모드입니다. 레거시 시스템과의 호환성을 위해서만 권장됩니다.

형식 옵션

이 도구는 다양한 시스템과의 쉬운 통합을 위해 여러 데이터 형식을 지원합니다:

  • 텍스트: 직접 UTF-8 텍스트 입출력, 일반 문자열에 적합
  • Base64: Base64 인코딩 형식, 네트워크 전송 및 이진 데이터 저장에 일반적으로 사용됨
  • Hex: 16진수 형식, 이진 데이터 보기 및 디버깅에 편리

사용 사례

  • 안전한 통신: 전송 전 민감한 데이터 암호화
  • 디지털 서명: 메시지 진위 및 무결성 검증
  • 키 교환: 대칭 키 안전하게 교환
  • 신원 인증: 발신자 신원 확인
  • 소프트웨어 라이선싱: 라이선스 생성 및 검증

보안 권장사항

  • <strong>키 크기</strong>: 최소 2048비트.
  • <strong>패딩</strong>: OAEP 사용 권장.
  • <strong>비밀 유지</strong>: 개인 키는 절대 공유 금지.
  • <strong>하이브리드</strong>: 큰 파일은 RSA+AES 사용.
  • <strong>클라이언트 전용</strong>: 브라우저 내 Web Crypto API 사용.

제한 사항

  • <strong>데이터 크기</strong>: 키 크기에 따른 제한(예: 2048비트의 경우 ~214바이트).
  • <strong>성능</strong>: AES보다 느림.
  • <strong>형식</strong>: 표준 PEM 사용.

참고 문헌

자주 묻는 질문 (FAQ)

안전한가요?

네, 100% 브라우저에서 실행됩니다.

키 차이?

공개 키는 암호화, 개인 키는 복호화.

긴 텍스트?

RSA는 크기 제한이 있습니다. 하이브리드 암호화 사용.

OAEP vs PKCS1?

**OAEP**를 사용하세요.

키 크기?

**2048**이 표준, **4096**이 더 안전.

PEM 형식이란?

키 저장을 위한 표준 Base64 형식.

빠른 메뉴

최근 사용 도구 없음