문제

항상 비 암사 학자로 나를 놀라게하는 한 가지 : 소수를 사용하는 것이 왜 그렇게 중요한가? 암호화에 특별한 이유는 무엇입니까?

누구든지가 있습니까? 단순한 짧은 설명? (나는 많은 프라이머가 있고 적용 된 암호화가 성경이라는 것을 알고 있지만, 말했듯이 : 나는 내 자신의 암호화 알고리즘을 구현하려고하지 않으며, 내가 찾은 것들이 방금 내 뇌를 폭발시킨 것 - 10 페이지의 수학 공식화를 방금 폭발시켰다. 제발 :))

감사 모든 답변. 나는 실제 개념을 나에게 가장 분명하게 만든 것을 받아 들였다.

도움이 되었습니까?

해결책

가장 기본적이고 일반적인 설명 : 암호화는 모두 숫자 이론, 및 모든 정수 번호 (0 및 1 제외)는 프라임으로 구성되므로 숫자 이론에서 많은 프라임을 다룹니다.

보다 구체적으로, 몇 가지 중요한 암호화 알고리즘 RSA 사실에 비판적으로 의존합니다 소인수 분해 많은 시간이 오래 걸립니다. 기본적으로 메시지를 암호화하는 데 사용되는 두 개의 큰 프라임의 제품으로 구성된 "공개 키"와 메시지를 해독하는 데 사용되는 두 프라임으로 구성된 "비밀 키"가 있습니다. 공개 키를 공개 할 수 있으며 모든 사람이이를 사용하여 메시지를 암호화 할 수 있지만 주요 요인을 알고 메시지를 해독 할 수 있습니다. 숫자 이론의 현재 상태를 감안할 때 다른 사람들은 숫자를 고려해야 할 것입니다.

다른 팁

단순한? 예.

두 개의 큰 소수를 곱하면 두 개의 큰 요인만으로 막대한 비 프라임 숫자를 얻습니다.

그 숫자를 고려하는 것은 사소한 작업이며, 그 사실은 많은 암호화 알고리즘의 원천입니다. 보다 일방 통행 기능 자세한 내용은.

부록 : 조금 더 설명. 두 소수의 제품은 공개 키로 사용할 수 있으며 프라이밍 자체는 개인 키로 사용될 수 있습니다. 두 가지 요소 중 하나를 알면 실행 취소 할 수있는 데이터에 대한 작업은 암호화되지 않은 것과 관련이 없습니다.

다음은 매우 간단하고 일반적인 예입니다.

그만큼 RSA 암호화 알고리즘 보안 상거래 웹 사이트에서 일반적으로 사용되며, 2 개의 (매우 큰) 소수를 쉽게 가져 가서 곱하기가 쉽다는 사실을 기반으로하며, 반대의 의미 : 매우 많은 수의 숫자를 가져 가기가 매우 어렵습니다. 두 가지 주요 요인 만 가지고있는 것을 감안할 때.

중요한 소수 자체가 아니라 프라임과 함께 작동하는 알고리즘입니다. 특히 숫자의 요인 (모든 숫자)을 찾습니다.

아시다시피, 모든 숫자에는 적어도 두 가지 요소가 있습니다. 소수는 정확히 두 가지 요소가 있다는 점에서 고유 한 속성을 가지고 있습니다.

요인이 중요한 이유는 수학자와 컴퓨터 과학자들이 가능한 모든 조합을 시도하지 않고 숫자를 고려하는 방법을 모릅니다. 즉, 먼저 2로, 그 다음 3, 4 등을 나누십시오. 소수, 특히 매우 큰 소수를 고려하려고한다면 2와 그 큰 소수 사이의 가능한 모든 숫자를 시도해야합니다 (본질적으로). 가장 빠른 컴퓨터에서도 암호화에 사용되는 소수의 종류를 고려하는 데 몇 년 (심지어 수세기)이 걸릴 것입니다.

암호화 알고리즘이 강도를 제공하는 많은 수의 숫자를 효율적으로 고려하는 방법을 모른다는 사실입니다. 언젠가 누군가가 그것을 수행하는 방법을 알아 내면, 현재 사용하고있는 모든 암호화 알고리즘은 쓸모 없게됩니다. 이것은 개방 된 연구 영역으로 남아 있습니다.

정수를 주요 요인으로 고려하기위한 빠른 알고리즘을 아는 사람은 아무도 없기 때문입니다. 그러나 일련의 주요 요인이 특정 정수에 곱하는지 확인하는 것은 매우 쉽습니다.

Crypto에서 증가 할 수있는 좋은 자원이 있습니다. 여기 하나가 있습니다 :

그 페이지에서 :

1977 년 Ron Rivest, Adi Shamir 및 Len Adleman이 발명 한 가장 일반적으로 사용되는 공개 키 암호화 시스템에서 대중과 개인 키는 비교적 간단한 수학 공식에 따라 많은 소수 쌍에서 파생됩니다. 이론적으로, 공식을 거꾸로 작업하여 공개 키에서 개인 키를 도출 할 수 있습니다. 그러나 큰 소수의 산물만이 공개적이며, 그 크기의 수를 프라임으로 인수하는 것은 너무 어렵 기 때문에 세계에서 가장 강력한 슈퍼 컴퓨터조차도 일반적인 공개 키를 깨뜨릴 수 없습니다.

브루스 슈나이어의 책 적용 암호화 또 다른 것입니다. 나는 그 책을 적극 권장합니다. 재미있는 독서입니다.

RSA가 소수의 속성을 사용하는 방법에 대해 조금 더 구체적으로 보려면 RSA 알고리즘은 비판적으로 의존합니다. 오일러의 정리, 이것은 상대적으로 소수 "a"및 "n"에 대해 a^e가 1에 일치한다고 말합니다. 모듈로 n, 여기서 e는 Euler의 totient 기능 N.

Primes는 어디에 들어가나요? N. N의 주요 인자화를 효율적으로 아는 오일러의 유질 함수를 계산하려면 RSA 알고리즘의 경우 일부 프라임 "P"및 "Q"에 대한 N = PQ, e = (p -1) (q. -1) = n -p - q + 1. 그러나 p와 q를 알지 못하면 e의 계산은 매우 어렵습니다.

더 추상적으로, 많은 crypotgraphic 프로토콜은 다양한 것을 사용합니다 트랩 도어 기능, 계산하기 쉽지만 반전하기 어려운 기능. 숫자 이론은 이러한 트랩 도어 기능 (예 : 큰 소수의 곱셈)의 풍부한 원천이며, 소수는 숫자 이론의 중심입니다.

나는 책을 제안 할 것이다 코드의 수학적 여정. 이 책은 지구에 대한 느낌이 좋았습니다. 암호화에 관한 것이기 때문에 놀랍습니다. 이 책은 16 세의 나이에 어린이로서 퍼즐을 배우는 것에서 CP (Cayley-Purser) 알고리즘을 만드는 것에 이르기까지 Sarah Flannery의 여정을 요약합니다. 그것은 한 가지 방식, 숫자 이론 및 소수 및 관련 방법에 대한 놀랍도록 자세한 설명을 제공합니다. 암호화.

이 책이 귀하의 질문에 더 구체적으로 만드는 것은 Sarah가 Matrix를 사용하여 새로운 공개 키 알고리즘을 구현하려고 시도한 것입니다. 소수를 사용하는 것은 훨씬 빠르지 만 그것을 이용할 수있는 루프 구멍이 발견되었습니다. 그녀의 알고리즘은 개인 암호화 메커니즘으로 더 잘 사용되었습니다. 이 책은 시간의 시험과 매우 똑똑한 개인의 도전에 따라 암호화에 소수를 사용하는 것에 대한 위대한 증거입니다.

당신을위한 더 리소스. 지금 보안! 에피소드 30(~ 30 분 팟 캐스트, 링크는 성적표에 링크) 암호화 문제에 대해 이야기하고 Primes가 중요한 이유를 설명합니다.

나는 수학자 나 암호 주의자가 아니기 때문에 평신도의 용어로 외부 관찰이 있습니다 (멋진 방정식, 죄송합니다).

이 전체 스레드는 설명으로 가득 차 있습니다 어떻게 프라임은 암호화에 사용되며,이 스레드에서 쉽게 설명하는 사람을 찾기가 어렵습니다. 프라임은 모두가 사용됩니다 ... 대부분의 모든 사람들이 그 지식을 당연하게 받아들이 기 때문에 가능성이 높습니다.

외부에서 문제를 보는 것만 보면 반응이 발생할 수 있습니다. 그러나 그들이 두 프라임의 합을 사용한다면, 두 프라임이 생성 할 수있는 모든 가능한 합계 목록을 작성하지 않겠습니까?

이에 대지 목록이 있습니다 455,042,511 가장 높은 프라임이있는 프라임 9,987,500,000 (10 숫자).

가장 큰 알려진 프라임 (2015 년 2 월 기준)은 2 257,885,161-1의 힘 그게 17,425,170 숫자.

이것은 알려진 모든 프라임 목록과 가능한 모든 합계의 목록을 유지하는 점이 없음을 의미합니다. 숫자를 가져 와서 프라임인지 확인하는 것이 더 쉽습니다.

그 자체로 큰 프라임을 계산하는 것은 기념비적 인 작업입니다. 역 계산 암호화 작가와 수학자 모두가 말하는 두 가지 프라임 충분히 어렵습니다 ... 오늘.

암호화 알고리즘은 일반적으로 "어려운 문제"에 대한 보안에 의존합니다. 대부분의 현대 알고리즘은 매우 많은 수의 팩토링을 어려운 문제로 사용하는 것 같습니다. 두 개의 많은 숫자를 함께 곱하면 요인을 계산하는 것은 "어려움"입니다 (즉, 시간 소모). 이 두 숫자가 소수라면 하나의 답변 만 있으면 더욱 어려워지며 답을 찾을 때 동일한 결과를 제공하는 다른 답변이 아니라는 답이 아닙니다.

암호화에서 중요한 것은 프라임 자체가 아니라고 생각하지만 어려움프라임 인수 화 문제

두 개의 프라임 M과 N의 산물로 알려진 매우 큰 정수가 있다고 가정 해 봅시다. m과 n이 무엇인지 쉽게 찾을 수 없습니다. RSA와 같은 알고리즘은이 사실에 따라 다릅니다.

그건 그렇고, a 출판 된 논문 양자 컴퓨터를 사용하여 허용 가능한 시간 에이 주요 요인화 문제를 "해결"할 수있는 알고리즘에서. 따라서 암호화의 새로운 알고리즘은 Quantum 컴퓨터가 도시에 올 때 더 이상 Prime 인수화의 "난이도"에 의존하지 않을 수 있습니다. :)

인수 분해 알고리즘은 발견 된 각 요소에 따라 상당히 상승하기 때문입니다. 두 개인 키를 모두 만들면 첫 번째 요인이 마지막 요소가 될 것입니다. 이상적으로는 두 개인 키 모두 약한 키 문제의 강도만으로 거의 가치가 동일합니다.

소수는 주로 주어진 숫자가 소수인지 여부를 결정하는 데 상당한 시간을 소비하기 때문에 주로 암호화에 사용됩니다. 해커의 경우 알고리즘이 코드를 깨는 데 많은 시간이 걸리면 쓸모가 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top