RSA는 안전한 커뮤니케이션을 보장하는 널리 이용되는 암호화 알고리즘입니다. 그것은 열쇠, 암호로 고쳐 쓰는 메시지 및 암호로 고쳐 쓰는 ciphertexts를 포함합니다. 이 문서는 실제적인 시나리오에서 RSA를 실행하는 단계별 개요를 제공합니다.

RSA 키 생성

RSA 구현의 첫 단계는 키 쌍을 생성하고 있습니다. 공공 키와 개인 키. 이 과정은 두 개의 큰 주요한 숫자를 선택, 그들의 제품을 계산, 및 암호 해독 exponents.

단계는 다음을 포함합니다:

  • 두 개의 큰 주요한 숫자, p 및 q를 선택하십시오.
  • n = p * q를 계산합니다.
  • Compute Euler의 일시 정지, φ(n) = (p - 1) * (q - 1).
  • 암호화 exponent, e를, 그런 1 < e < φ (n)과 e는 φ (n)를 가진 coprime입니다.
  • 해독 exponent, d, 같은 d * e ≡ 1 mod φ(n)을 계산합니다.

공공 키는 (n, e)로 구성되며, 개인 키는 (n, d)입니다.

암호화 프로세스

메시지를 암호화하려면 RSA와 호환되는 수치 형식으로 변환하십시오. 공개 키를 사용하여 암호화 프로세스는 exponentiation 및 모듈 식 리듬을 포함합니다.

암호화 공식은:

Ciphertext = 메시지^e mod n

예를 들어, 메시지가 m로 표시되면 암호화 된 메시지 c는 c = m^e mod n로 계산됩니다.

암호 처리

암호 해독은 ciphertext에서 원래 메시지를 검색하는 개인 키를 사용하여 포함한다. 과정은 암호화와 유사하지만 암호 해독 exponent d를 사용합니다.

해독 공식은:

문자 = ciphertext^d mod n

이 공식을 적용하면 암호화 해독 사이클을 완료하는 원래 메시지가 복원됩니다.