RSA 키 생성·암호화/서명

RSA 키쌍을 PEM으로 생성한 뒤 RSA-OAEP와 RSA-PSS로 텍스트를 암호화·복호화·서명·검증하며, 모두 브라우저에서 동작합니다.

도구를 불러오는 중…

RSA 키 생성·암호화/서명2048·3072·4096비트로 새 RSA 키쌍을 만들어 바로 쓸 수 있는 PEM 형식의 공개키와 개인키를 얻고 곧장 활용하세요. 암호화(RSA-OAEP)와 서명(RSA-PSS)을 전환하고, 정방향(암호화 또는 서명)이나 역방향(복호화 또는 검증)을 골라 직접 입력한 텍스트를 처리합니다. 모든 키와 작업은 브라우저의 네이티브 Web Crypto API로 실행되므로 어떤 키 자료도 서버에 업로드되거나 저장되지 않습니다.

RSA 키 생성·암호화/서명란?

키쌍 생성기와 실제 암호화·서명을 하나로 묶은 무료 브라우저 내 RSA 도구입니다. 「키 생성」을 누르면 선택한 모듈러스 크기로 새 공개키/개인키 쌍을 만들고, 키는 설정 파일·스크립트·다른 도구에 바로 붙여 넣을 수 있는 PEM 블록으로 표시됩니다. 「작업」 컨트롤로 RSA-OAEP(공개키 암호화)와 RSA-PSS(전자 서명, 둘 다 SHA-256)를 고르고, 「방향」 컨트롤로 정방향과 역방향을 전환해 암호화 후 복호화하거나 서명 후 검증할 수 있습니다. 개발자, 학생, 보안 엔지니어가 암호 흐름을 테스트하거나 비대칭 키의 원리를 배우거나 OpenSSL을 설치하지 않고 일회용 PEM 키쌍을 빠르게 만드는 데 씁니다. 브라우저 내장 Web Crypto에 의존하므로 결과는 표준을 따르고 개인키는 페이지를 떠나지 않습니다.

RSA 키 생성·암호화/서명 사용법

  1. 「설정」을 열어 키 크기(2048·3072·4096비트)를 고르세요.
  2. 「작업」을 고르세요: 암호화(RSA-OAEP) 또는 서명(RSA-PSS) — 생성할 키의 알고리즘이 정해집니다.
  3. 「키 생성」을 누르면 공개키와 개인키가 PEM으로 표시되며, 복사 버튼으로 복사할 수 있습니다.
  4. 「방향」을 암호화/서명(정방향) 또는 복호화/검증(역방향)으로 설정하세요.
  5. 「평문」 필드에 메시지를 입력하세요. 역방향에서는 base64 암호문이나 서명을 두 번째 필드에 붙여 넣습니다.
  6. 입력에 따라 스스로 갱신되는 결과를 읽고 복사하세요.

예시

RSA-OAEP로 짧은 메시지 암호화

입력

작업: 암호화, 방향: 암호화, 평문: hello world

출력

kQf8...== 같은 base64 암호문 — 짝이 맞는 개인키만 복호화할 수 있습니다.

왕복: 방금 암호화한 것을 복호화

입력

작업: 암호화, 방향: 복호화, 암호문: kQf8...==

출력

hello world

RSA-PSS로 서명·검증

입력

작업: 서명, 방향: 서명, 메시지: invoice #42

출력

base64 서명값 — 방향을 「검증」으로 바꿔 다시 붙여 넣으면 결과에 「서명이 유효합니다」가 표시됩니다.

자주 묻는 질문

서버로 전송되는 게 있나요?
아니요. 키 생성·암호화·복호화·서명·검증은 모두 브라우저의 Web Crypto API로 로컬에서 실행됩니다. 개인키와 평문은 페이지 안에 머물며 업로드되거나 저장되지 않으므로 도구는 오프라인에서도 동작합니다.
서명용으로 만든 키로 왜 암호화할 수 없나요?
RSA-OAEP와 RSA-PSS 키는 생성 시점에 알고리즘에 고정됩니다. 「작업」을 바꿨다면 선택한 알고리즘에 맞도록 키쌍을 새로 생성하세요.
RSA-OAEP는 얼마나 긴 텍스트를 암호화할 수 있나요?
RSA는 작은 데이터만 암호화합니다 — 대략 키 크기에서 패딩을 뺀 만큼(2048비트 키는 약 190바이트)입니다. 더 긴 데이터는 실제 시스템에서 대칭키로 데이터를 암호화하고 그 키만 RSA로 감쌉니다.
키는 어떤 형식인가요?
공개키는 SPKI, 개인키는 PKCS#8로 내보내며 둘 다 표준 PEM(-----BEGIN PUBLIC KEY----- / -----BEGIN PRIVATE KEY-----)으로 감쌉니다. OpenSSL과 대부분의 라이브러리가 받아들이는 형식과 같습니다.
어떤 해시와 패딩을 쓰나요?
두 알고리즘 모두 SHA-256을 씁니다. RSA-PSS 서명은 32바이트 솔트를 쓰고, RSA-OAEP는 마스크 생성에 SHA-256을 쓰는 일반적인 기본값을 따릅니다.

관련 도구