6.19 풀이
(a)
우선, 에 대해 다음과 같은 실험 을 정의한다:
키를 로 생성한다.
adversary 는 를 받고 와 를 반환한다.
실험의 결과는 인 경우 1로 정의된다.
모든 PPT adversary 에 대해 다음을 만족하는 negligible한 함수 이 항상 존재한다면, 는 collision-resistant하다.
(b)
총 두 개의 party가 있다. 각각 클라이언트(), 서버()로 명명한다. 클라이언트는 유일하다고 가정한다.
아래 두 조건을 모두 만족시키는 파일 를 생각한다.
는 power of two.
.
클라이언트 에서 키 를 생성한다.
로 정의한다.
로 정의한다.
를 구한다.
클라이언트 의 키 를 서버 에 전달한다.
클라이언트 의 파일 를 서버 에 전달한다.
파일 를 클라이언트 에서 제거한다.
파일 검증 과정 :
서버 가 클라이언트 에 를 전달한다. 는 길이 짜리 튜플로, 각각의 가 담겨 있다.
위의 3, 4번 과정을 통해 를 구한다.
클라이언트 의 가 와 같다면, 을 반환한다.
(c)
우선, 의 충돌이 항상 내부 해시 의 충돌을 imply함을 보이자.
어떤 두 와 이 서로 충돌한다고 하자.
가정에 의해 이어야 하기에 두 순서쌍 중 적어도 한 쌍의 번째 랑 는 달라야 한다.
이제 가 계산 과정에 들어가는 모든 를 찾아서 라고 가정하자. 이 가정이 참이라면, 에 대해 가 를 반환했다는 것이므로 의 충돌이다.
위 가정이 거짓이라고 가정하자. 그렇다면 적어도 하나의 를 발생시키는 가 존재한다. 이제 로 돌아가 서로 다른 대신 를 집어넣고 가 이게 될 때까지 반복한다.
가정에 의해 와 은 충돌이 나므로 이다. 위 과정을 반복했을 때 여전히 라면 이는 모순이다. 따라서 충돌이 나지 않을 것이라는 가정은 부정되어야 한다. 따라서 는 충돌이 발생한다.
이제 reduction과 귀류법을 사용해 증명할 수 있다.
먼저, 가 collision-resistant하지 않다고 가정하자. 가정에 의해, 어떤 PPT adversary 가 존재해 를 만족시키는 를 매우 빠르게 찾을 수 있다.
이를 이용해 또다른 adversary 를 구성하자. 는 내부적으로 를 호출하고, 는 에게 를 반환한다. 이제 는 앞서 보인 것처럼 두 순서쌍에서 서로 다른 를 찾고, 이를 거슬러 올라가면 만에 를 만족시키는 를 찾을 수 있다. 따라서 는 의 충돌을 PPT안에 negligible하지 않은 확률로 찾을 수 있으므로 는 collision-resistant하지 않다.
이는 는 collision-resistant하다는 전제와 모순된다. 따라서 는 collision-resistant하다.
Last updated