Am 20.11.2013 12:41, schrieb Victor Stinner:
> 2013/11/20 Victor Stinner <victor.stin...@gmail.com>:
>> It looks like dict, set and frozenset representation (repr(...))
>> now depends on the platform (probably 32 bit vs 64 bit), even if 
>> PYTHONHASHSEED is set. I don't know if it's an issue or not.
> 
> In Python 3.3, repr(set("abcd")) with PYTHONHASHSEED=0 always give 
> "{'a', 'c', 'b', 'd'}" on 32 bit and 64 bit platforms.
> 
> In Python 3.4, repr(set("abcd")) with PYTHONHASHSEED=0 now gives 
> "{'b', 'a', 'c', 'd'}" on 32 bit.and  "{'a', 'b', 'c', 'd'}" on 64 
> bit.

I have fixed the problem in
http://hg.python.org/cpython/rev/961d832d8734 . My attempt to mix the
hash's MSB into LSB for 32 bit builds was the culprit. It should be
secure enough without the op.

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to