용어집

RSA이란 무엇인가요?

RSA(Rivest-Shamir-Adleman)는 두 큰 소수의 곱을 인수분해하는 계산적 어려움에서 보안을 도출하는 비대칭 암호화 알고리즘으로, 암호화, 디지털 서명, 안전한 키 교환에 사용된다.

다른 이름: RSA-2048, RSA-4096, Rivest-Shamir-Adleman

RSA는 1977년 Ron Rivest, Adi Shamir, Leonard Adleman이 발표하여 최초의 실용적인 공개 키 암호 시스템 중 하나가 됐다. 두 큰 소수를 생성해 곱하여 모듈러스를 만들고, 그 모듈러스에서 공개·개인 키 쌍을 파생하는 방식으로 작동한다. 공개 키로 암호화하면 개인 키로만 복호화할 수 있는 암호문이 생성된다. 역방향 연산은 모듈러스를 다시 소수로 인수분해해야 하는데, 충분히 큰 수에 대해서는 효율적인 알고리즘이 알려져 있지 않다.

키 크기는 RSA 보안에 매우 중요하다. RSA-2048(2048비트 키)은 현재 권장 최소 크기로 2030년까지 안전한 것으로 간주된다. RSA-4096은 더 느린 연산을 감수하고 더 큰 보안 마진을 제공한다. 대칭 키 크기와 달리 RSA 키 크기는 동등한 보안 수준에 직접 대응하지 않는다. RSA-2048은 약 112비트의 대칭 등가 보안을, RSA-4096은 약 128비트를 제공한다.

RSA는 훨씬 작은 키 크기와 더 빠른 연산으로 동등한 보안을 달성하는 타원 곡선 암호화(ECC)에 의해 점진적으로 보완되고 있다. 그러나 RSA는 기존 인프라에 깊이 박혀 있다. TLS 인증서, SSH 키, PGP/GPG, 코드 서명, 수많은 엔터프라이즈 시스템이 여전히 의존하고 있다. 충분히 강력한 양자 컴퓨터가 Shor 알고리즘으로 RSA 키를 효율적으로 인수분해할 수 있기 때문에 양자 컴퓨팅의 부상하는 위협이 포스트 양자 대안에 대한 관심을 불러일으키고 있다.

Vaulted가 RSA을 사용하는 방법

Vaulted는 RSA를 직접 사용하지 않는다. Vaulted의 암호화 모델이 URL 프래그먼트를 통한 키 전달과 함께 대칭 AES-256-GCM 암호화를 기반으로 하기 때문에 공개 키 암호화가 필요하지 않다. 그러나 RSA는 Vaulted의 인프라 보호에 간접적으로 관여한다. 브라우저와 Vaulted 서버 간 HTTPS 연결을 보호하는 TLS 인증서는 대칭 암호화가 데이터 전송을 인계받기 전 초기 핸드셰이크에 RSA 또는 ECC 키 쌍을 사용한다.