This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author bjarvis
Recipients bjarvis
Date 2017-11-30.05:39:13
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1512020355.45.0.213398074469.issue32175@psf.upfronthosting.co.za>
In-reply-to
Content
Hash auto-randomization is a mechanism to detect when a collision attack is underway and switch to a randomized keying scheme at that point.

This patch is for the 2.7 branch, where hash randomization is not on by default.

Using collided strings from https://github.com/Storyyeller/fnv-collider/tree/master/collided_strings, 10 "attacks" of roughly 50,000 collided strings were launched against this. The unmodified Python had a median insert time of roughly 4.32 seconds and a median retrieve time of roughly 4.40 seconds. With the auto-randomized version of Python, the median insert time was roughly 3.99 seconds and median retrieve time was roughly 3.57 seconds. This is a 7.7% and 18.9% savings, respectively.
History
Date User Action Args
2017-11-30 05:39:16bjarvissetrecipients: + bjarvis
2017-11-30 05:39:15bjarvissetmessageid: <1512020355.45.0.213398074469.issue32175@psf.upfronthosting.co.za>
2017-11-30 05:39:15bjarvislinkissue32175 messages
2017-11-30 05:39:15bjarviscreate