답변:
단방향 함수를 뒤집기 어려워 야한다는 주장이 있습니다. 해결하기 어려운 심은 솔루션에 3-SAT 문제가 있다고 가정합니다. 다음 맵을 고려하십시오.
여기서 는 임의의 비트 열, r 은 비트 열 (임의의 숫자 생성기를 시드하기 위해 사용할 수 있거나 필요한만큼의 임의의 비트를 요청할 수 있음)이고 s 는 x 를 갖는 k -SAT 문제입니다. 난수 생성기가 선택한 k- SAT 문제를 정확하게 결정하는 심은 솔루션 입니다. 이 단방향 기능을 반전 시키려면 심은 솔루션 으로 k -SAT 문제 를 해결해야합니다 .
이 주장은 일방 함수를 뒤집는 것은 심은 솔루션으로 -SAT 문제를 해결하는 것만 큼 어렵다는 것을 보여줍니다 . 그리고 이후 K의 어떤 NP 문제에 대한 심어 솔루션 하드 인스턴스를 생성하는 방법을 알아낼 수 있습니다, 당신이 솔루션을 심을 수있는 경우 -sat, NP에 완성 문제 케이 -sat 수식을.
임의의 NP- 완전 문제만큼 어려운 심은 솔루션으로 NP- 완전 문제 클래스를 만들 수 있다는 것이 입증되지 않았습니다. 그러나 사람들은 현재 아무도 해결 방법을 모르는 방식으로 SAT 문제에 솔루션을 심는 방법을 확실히 알고 있습니다.
ADDED : 나는이 연결이 Abadi, Allender, Broder, Feigenbaum 및 Hemachandra 에서 이미 (더 자세하게) 제공되었다는 것을 알고 있습니다 . 그들은 단방향 함수가 SAT의 어려운 하드 인스턴스를 제공 할 수 있으며 그 반대도 가능하다고 지적합니다.
좀 더 비공식적 인 언어로 말하면, 단방향 기능이 존재하지 않으면 실제로 어려운 퍼즐이 존재할 수 없다는 것을 알 수 있습니다. 누군가 퍼즐과 그 솔루션을 알고리즘 적으로 만들 수있는 퍼즐 유형이 있다면 퍼즐에 대한 솔루션을 찾기위한 다항식 시간 알고리즘도 있습니다. 이것은 나에게 매우 직관적이지 않습니다. 물론, 다항식 갭이 존재할 수 있습니다. 퍼즐을 만드는 데 단계가 걸리면 해결에 O ( n 3 ) 단계 가 필요할 수 있습니다 . 그러나 내 직감에 따르면 초다 항적 차이가 있어야합니다.
나는 간단한 대답을 할 것이다. FACTORING 또는 DISCRETE LOG와 같이 어려운 문제가 존재한다는 것은 이론가들에게 OWF가 존재한다고 믿게 만들었다. 특히, 그들은 1970 년대부터 수십 년 동안 그러한 문제에 대한 효율적인 (확률 적 다항식 시간) 알고리즘을 찾으려고 시도했지만 성공하지 못했습니다. 이 추론은 대부분의 연구원들이 P ≠ NP라고 믿는 이유와 매우 유사합니다.
사쇼의 주장은 현재 합의가 존재하지 않는 영원한 P = NP 문제에 의존한다.
그러나 1947 년에 분류되지 않은 C. Shannon의 일회용 패드 암호화 분석을 따르면, 즉, 일회용 패드 이외의 수학적으로 안전한 암호화 알고리즘이 없습니다. 그의 주장은 우리가 숫자의 진정한 임의의 순서가있는 경우, 그 아이디어를 기반으로 , 및 암호화에 일부 시퀀스 이야 1 , s의 2 , s의 3 , ... , 들 n 은 다음과 같이 암호화합니다.
순서가 진정으로 임의의 경우, 우리가 계산하려고 할 그 결과는 모든 순서가 동일 확률 있다는 것이다.
단방향 함수에 대한 Shannon의 결과를 모방 할 수 있습니다.
기능은지도이다 및 역함수는지도이다 F : Z / N Z → Z / N Z × Z / N Z .
문제는 "하나님은 오지 않습니다"라는 아인슈타인의 의견과 동일하므로 실제로 임의의 숫자가 있는지 알 수 없다는 것입니다.
그러나 모든 목적을 위해 물리적 프로세스를 기반으로 한 난수 생성기는 전문가가 충분히 임의의 것으로 간주합니다.
이것은 우리가 반대하려고하는 순간, 말했다 난수가 더 이상 비밀이있다, 없다, 반전은 간단하다.
또한이 단방향 함수에는 충돌 방지와 같은 대부분의 암호화 보안 해싱 함수의 멋진 속성이 없습니다. 또한, 우리는이 상황이 . 이는 동일한 값 s k 가 두 개의 다른 값으로 해시 됨을 의미 합니다. 그리고 F ( R 나 , 이야 나 ) = F ( (R)의 j는 , S j는 ) 일반적이다.
예를 들어 사인 기능을 제안하는 것만 큼 쉬울까요?
주어진 입력 및 출력에 대해 입력을 360 도로 늘리거나 줄일 수 있기 때문에 (또는 라디안 인 경우 2pi) 다 대일이므로 어떤 입력을 받았는지 확신 할 수 없습니까?
그래도 질문을 오해했는지 말해주십시오.