RSA

RSA는 공개키 암호 알고리즘으로, 암호화·전자 서명에 사용되는 핵심 암호 기술이다. 모듈러 거듭제곱·인수분해 기반를 주요 특징으로 하며 관련 표준에서 입력 형식과 세부 처리 규칙을 정의한다.

분류알고리즘 · 공개키 암호 알고리즘
설계·표준화Ron Rivest, Adi Shamir, Leonard Adleman
발표1977년
핵심 구조모듈러 거듭제곱·인수분해 기반
매개변수공개키 (n,e), 개인키 d와 소인수
표준PKCS #1, RFC 8017
주요 활용암호화·전자 서명
자료공식 표준

RSA는 공개키 암호 알고리즘으로, 암호화·전자 서명에 사용되는 핵심 암호 기술이다. 모듈러 거듭제곱·인수분해 기반를 주요 특징으로 하며 관련 표준에서 입력 형식과 세부 처리 규칙을 정의한다.[1]

RSA는 두 개의 큰 소수를 곱한 정수 n을 기반으로 공개 지수 e와 개인 지수 d를 구성한다. 암호 원시 연산은 메시지를 정수로 표현해 n을 법으로 거듭제곱한 결과를 계산하며, 공개키 연산과 개인키 연산의 역할에 따라 암호화나 서명을 구현한다.

실제 사용에서는 수학적인 RSA 연산과 안전한 암호 스킴을 구별한다. RSAES-OAEP는 암호화 인코딩을, RSASSA-PSS는 메시지 해시와 무작위성을 포함하는 서명 방식을 정의한다. 원시 RSA만으로 메시지를 직접 처리하거나 취약한 패딩을 사용하면 안전성을 보장할 수 없다.

키 길이와 소수 생성·난수 품질, 모듈러 연산의 부채널 저항성과 개인키 보호가 구현에서 중요하다. 쇼어 알고리즘을 실행할 수 있는 충분히 큰 양자 컴퓨터가 등장하면 인수분해 기반 공개키 체계의 안전성에 영향을 주므로 양자내성 암호로의 전환 연구와도 관련된다.[2]

역사와 표준

수학적·암호학적 원리

기본 개념

핵심 자료 표현

알고리즘 구조

기본 단계

입력과 출력

변형과 매개변수

정확성과 보안 성질

보안 가정

공격 모델

구현

의사 코드

고성능 구현

부채널 보호

표준과 호환성

활용 분야

관련 문서

  1. 표준 원문 ↩
  2. 표준 구현 규칙 ↩