RSA 2048 암호화는 어떻게 깨뜨릴 수 있습니까?


최상의 답변

암호 분석 필드에서 “ crack “및” break “.

가장 간단한 의미로 시스템 잠금 해제를 시도하여 암호를 해독합니다. 암호의 가능한 모든 반복, 무차별 대입 크래킹으로 알려진 방법. 암호 생성 및 사용에 적용되는 규칙을 알고 있다면 해당 암호에 내재 된 시간 / 노력 비용도 미리 알고 있습니다. 모든 단일 알고리즘은이를 크래킹하는 데 필요한 계산 노력에 대해 미리 알려진 기대치를 가지고 있습니다.

MD5 또는 SHA-1 (실제 예)과 같은 알고리즘은 일종의 발견시 깨 졌다고합니다. 예상되는 유니버스를 줄이는 충돌 (키 / 암호를 만드는 데 사용되는 공식에 대한 가능한 모든 솔루션).

간단하게하기 위해 WPS (Wi-Fi Protected Setup)의 실제 예를 살펴 보겠습니다. ). WPS는 사용자가 Wi-Fi 네트워크를보다 쉽게 ​​보호 할 수 있도록 만들어졌습니다. 버튼을 누르면 요청하는 사용자와 라우터간에 교환되는 8 자리 PIN으로 구성되었습니다.

시스템 제작자는 예상되는 우주를 미리 알고있었습니다. 8 자리 숫자는 100,000,000 개를 가능하게합니다. 조합 (10 ^ 8). 그러나 프로토콜 구현은이 숫자를 별도로 검증 된 2 개의 4 자리 조합으로 분할했습니다.

이것은 실제로 10,000 (10 ^ 4) + 10.000 (10 ^ 4) 만 시도하면된다는 것을 의미합니다. 조합, 최악의 시나리오에서 PIN을 해독합니다. 1 억 조합의 세계가 갑자기 20,000 조합으로 떨어졌습니다. 알고리즘은 사실상 깨졌습니다 . 그런 다음 크래킹을 시도 할 수 있습니다. 깨지지 않았 으면 할 수 있었지만 깨졌을 때 성공할 가능성이 훨씬 더 높아서 1 억 번이 아니라 최대 20,000 번만 시도하면됩니다.

이로부터 도출 할 결론 :

브레이킹과 크래킹은 다른 것입니다. 암호가 깨 졌다고해서 안전하지 않다는 의미는 아닙니다. 지금은 크래킹하기가 더 쉽다는 것입니다. 그로 인해 보호되는 것의 가치에 따라, 깨 졌다고해서 주어진 시스템에 죽음을 의미하는 것은 아니며, 원래 예상했던 것보다 덜 안전하다는 것을 이해하는 것뿐입니다.

RSA-2048은 본질적으로 암호 해독에 필요한 조합 수를 줄이는 충돌을 생성하는 방법을 찾는 경우 손상됩니다. RSA 2048은 다른 암호와 마찬가지로 무차별 대입에 의해 해독 될 수 있습니다.

답변

RSA는 그 자체로만 공개 모듈러스 (일반적으로 세미 프라임 또는 무작위로 선택된 두 개의 큰 프라임)에 대해 몇 가지 공격 만가집니다. s 함께 곱 해짐). 기본 산술을 사용하여 개인 키를 유도 할 수있는 분해 문제를 해결하기위한 가장 효율적인 고전 알고리즘은 GNFS (General Number Field Sieve)입니다. 이 알고리즘은 하위 지수 시간에 실행되며 올바르게 구현 된 RSA-2048 비트 시스템에서 사용할 수 없습니다.

도 있습니다. Shor의 알고리즘이지만 일반적인 공격자는 RSA-2048에 탑재 할 수 없습니다. 양자 컴퓨터 제조업체는 특히 D-Wave가 주도하는 과점을 운영합니다. 하나를 얻는 데 엄청나게 많은 비용이들뿐만 아니라이를 실행하고 유지하기위한 특수 장비가 필요합니다. 충분한 정보 지속성과 몇 비트 이상을 깰 수있는 능력을 갖춘 칩은 생성되지 않았습니다.

앞서 언급했듯이 암호화 시스템은 올바른 구현 없이는 아무것도 아닙니다. 대부분의 RSA 구현은 일반적으로 해시와 같은 공개 키 지문 알고리즘을 사용합니다. 그 외에도, 극히 드물고 성공률 측면에서 통계적으로 무시할 수있는 하나의 익스플로잇으로 소수의 인수 분해를 찾는 것이 가능합니다. 유클리드가 지적했듯이 무한 소수가 있지만 무한 소수가있을뿐만 아니라 특정 키 스페이스 내에 많은 소수가 있습니다. 두 개의 계수가 동일한 소수를 공유하는 경우 분해를 쉽게 찾을 수 있습니다. 선형 시간으로 실행되는 최대 공약수 알고리즘 을 사용하면 (밀리 초 이내에보고있는 기기에서 쉽게 실행할 수 있음) 공약수는 찾은 다음 나머지 두 개의 누락 된 소수를 산출하기 위해 계수에서 나눕니다. 이렇게하면 두 키에 모두 액세스 할 수 있습니다. RSA를 올바르게 구현하면 별도의 키에 프라임을 재사용하지 않고 완전히 무작위로 선택합니다. 2048 비트 키 스페이스 내에는 소수 길이 2048 select 2 (또는 비표준 모듈로 작업하는 경우 2보다 높음)로 쓸 수있는 가능한 모듈 리가 많기 때문에 두 개의 소수를 공유하더라도 두 키의 가능성은 무시할 수 있습니다. . 즉, 키 서버에서 모든 키를 가져 와서 모든 키에서 GCD 알고리즘을 실행하는 것은 단순히 시간 낭비입니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다