2011-08-22 2 views
2

두 개의 숫자에 대해 동일한 순서로 해시 할 때 동일한 해시를 생성하는 알고리즘이 있습니까?양방향 해시 알고리즘?

예를 들어, 해시 32682642은 해시 26423268과 동일한 결과를 산출해야합니다.

이것이 가능합니까?

+2

"두 숫자를 해시하는 것"은 무엇을 의미합니까? 해시 함수는 일반적으로 두 개가 아닌 단일 입력을가집니다. –

+2

두 개의 입력을 갖는 것이 해시 함수를 해시 함수보다 적게 만들지는 않습니다. 필요한 모든 것은 안정적인 단일 출력입니다. – Blindy

답변

5

물론 XOR이 이에 해당합니다.

3268^2642 == 2642^3268 

는 더 많은 (더하기, 곱하기, 기본적으로 모든 교환 법칙이 성립 운전)있다, 그러나 XOR은 일반적으로 (이 쉽게 "unhash"때문에) 어쨌든 해싱에 사용됩니다.

3

두 숫자를 별도로 해시하고 (선택한 정수 - 정수 해시 사용) 결과를 추가하거나 xor합니다.

2

해시하기 전에 두 숫자를 추가하거나 XOR 할 수 있습니다.

+3

하지만 해시가 추가되기 전에는 (12345,88273) 및 (12346,88272)와 같은 동일한 해시를 제공하는 간단한 입력과 관련된 입력이 있음을 의미합니다. 당신은 요구 된 것보다 더 많은 대칭을 가지며, 너무 많은 대칭은 해시에서 나쁜 것입니다. –

관련 문제