• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: NSString inaccurate Hash
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSString inaccurate Hash


  • Subject: Re: NSString inaccurate Hash
  • From: Chris Suter <email@hidden>
  • Date: Mon, 5 Feb 2007 08:27:10 +1100


On 05/02/2007, at 8:13 AM, d2kagw wrote:

Hi all,

I'm having an issue with some NSString Hashes...
Consider this Log entry:
NSLog ( @"%u - %u", [[NSString stringWithString:@"/Users/Azza/Music/ Various Artists - Top Hits/track.01.artist.02.03.mp4"] hash], [[NSString stringWithString:@"/Users/Azza/Music/Various Artists - Top Hits/track.02.artist.02.03.mp4"] hash] );


it should log the hash of two strings: "/Users/Azza/Music/Various Artists - Top Hits/track.01.artist.02.03.mp4" and "/Users/Azza/ Music/Various Artists - Top Hits/track.02.artist.02.03.mp4"
the difference between them being "track.01" vs. "track.02"


If I execute this code I get the result "2040446062 - 2040446062" meaning the two hashes are identical!?
I knew NSString hash wasn't exactly unique, but I would have expected a little more than this :P

I read this just the other day:

From http://www.mulle-kybernetik.com/artikel/Optimization/opti-7.html

--
NSString/CFString/NSURL

The hash is a convolution of the first and last eight bytes plus the length of the string basically the byte values are shifted and added to the string length.

--

I don't know if it's up to date, but if it is, that would explain it.

I'm sure you can find plenty of information about good string hash functions by searching on Google.

- Chris


Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: NSString inaccurate Hash
      • From: Azza <email@hidden>
References: 
 >NSString inaccurate Hash (From: d2kagw <email@hidden>)

  • Prev by Date: NSString inaccurate Hash
  • Next by Date: Re: Quartz Composer?
  • Previous by thread: NSString inaccurate Hash
  • Next by thread: Re: NSString inaccurate Hash
  • Index(es):
    • Date
    • Thread