암호화에서 rsa 알고리즘이란 무엇인가요?
암호화에서 RSA 알고리즘은 다음과 같습니다.
알고리즘 원리:
RSA 공개키 암호화 시스템의 원리는 정수론에 따르면 , 두 개의 큰 소수를 찾는 것은 상대적으로 간단하지만 그 곱을 인수분해하는 것은 매우 어렵기 때문에 그 곱은 암호화 키로 노출될 수 있습니다
알고리즘 설명:
특정 소수에 대한 설명 RSA 알고리즘은 다음과 같습니다:?
(1) 두 개의 서로 다른 큰 소수 p와 q를 무작위로 선택하여 곱을 계산합니다.
(2) 다음을 만족하는 큰 정수 e를 무작위로 선택합니다. 정수 e가 암호화 키로 사용되어야 한다는 요구 사항(참고: e를 선택하는 것은 매우 쉽습니다. 예를 들어 p와 q보다 큰 모든 소수를 사용할 수 있습니다.)
(3) 결정된 암호 해독 키 d는 임의의 정수를 만족하므로 e와 e를 알면 d를 계산하기 쉽습니다.
(4) 정수 n과 e를 공개하고 d를 비밀로 유지하시겠습니까?[5]; p>
(5) 일반 텍스트 m(m (6) 암호문 c를 일반 텍스트 m으로 복호화합니다. 복호화 알고리즘은 다음과 같습니다. 단, n과 e만을 기준으로 (참고: p와 q는 아님) d를 계산하는 것은 불가능합니다. 따라서 누구나 일반 텍스트를 암호화할 수 있지만, 승인된 사용자(d를 아는)만이 암호문을 해독할 수 있습니다. 보안 RSA의 보안은 큰 수 분해에 의존하지만 이것이 큰 수는 이론적으로 증명되지 않았고, 그것을 해독하는 것도 이론적으로 증명되지 않았습니다. RSA의 어려움은 큰 숫자를 분해하는 어려움과 동일합니다. RSA를 깨려면 큰 수의 분해가 필요하다는 증거가 없기 때문입니다. 대수 분해를 필요로 하지 않는 알고리즘이 있다고 가정하면 분명 대수 분해 알고리즘으로 변형될 수 있다. 즉, RSA의 가장 큰 결점은 이론적으로 기밀성 성능을 파악하는 것이 불가능하다는 점인데, 대부분의 사람들은 이를 잘 이해하지 못하고 있다. 암호화 커뮤니티에서는 인수 분해가 NPC 질문이 아닌 경향이 있습니다