2012-09-07 2 views

답변

6

증분 해시 함수, M *은 다음 은 업데이트 메시지의 해시 값을 계산하는 비교적 짧은되어야 엠*. 이는 해시 값 m에서 새 해시 m *을 계산하여 기존 해시 함수 에 새 해시 m *을 처음부터 다시 계산해야하는 것과는 달리 시간이 오래 걸립니다.

http://www.cs.berkeley.edu/~daw/papers/inchash-cs06.pdf

그들은 인해 그들은 힘과 시간을 계산 측면에서 계산하기 쉽고, 따라서 덜 비싼 걸 사실에 유용하다

.

그러나 모든 상황에 맞지 않습니다. Berkeley의 저서에는 소개 섹션에서 유용 할 수있는 좋은 예가 있습니다.

+0

감사합니다. 바이러스 예제는 훌륭합니다 (논문에서). –

+1

이 답변으로 혼란 스럽습니다. 이 질문은 MurmurHash3이 어떤 의미에서 증분인지를 구체적으로 묻습니다. 그러나 대답에 설명 된 의미에서 점진적이라고 생각하지 않습니다. 아마 나는 단지 어떻게 보지 않고있을뿐입니다. – Rotsor

3

저는 전문가는 아니지만, MurmurHash3은 감각적 인면에서 점차 증가하지 않는다고 생각합니다.

사람들, 그들은 아마 당신이 O에서 스트림 (1) 메모리의 해시를 계산할 수 있다는 것을 의미 증가로 설명 당신이 (의사 코드에서) 다음을 수행 할 수있는 API 수 있습니다 즉 경우 :

x = Hasher() 
x.add("hello ") 
x.add("world!") 
x.get_hash() 

그 문자열은 "hello world"문자열의 해시를 만들어 낼 수 있습니다.

특히, imurmurhash-js 자바 스크립트 패키지는 그 의미에서 'incremental'이라는 단어를 사용하는 것으로 보입니다.

동일한 의미가 MetroHash 문서에 사용 된 것 같습니다.

+1

아마도 "스트림 해싱"이라고해야합니다. – CMCDragonkai

관련 문제