Breaking Murmur: Hash-flooding DoS Reloaded
emboss.github.com
Breaking Murmur: Hash-flooding DoS Reloaded
1–5 of 5 posts
Re: Breaking Murmur: Hash-flooding DoS Reloaded
#2And here we have the problem and proposed solutions clearly explained, and presented in a pleasant, readable design.
Excellent post. Keep up the good work.
Re: Breaking Murmur: Hash-flooding DoS Reloaded
#3That would mean you (except for that 'am I under attack' check, but that can be a single 'if' in code that, normally, rarely runs) only pay the price of having a robust hash when you are under attack. Your data structure would also have a 'hiccup' when switching hash algorithm, but that isn't that much different from what happens when you resize your hash table as it fills up.
Does that make sense, or am I overlooking something?
Re: Breaking Murmur: Hash-flooding DoS Reloaded
#4What a delightful breath of fresh air. I get awfully tired of the hash-tables-are-constant-time and worst-case-behavior-is-too-rare-to-worry-about nonsense that floods the web. And here we have the problem and proposed solutions clearly explained, and presented in a pleasant, readable design. Excellent post. Keep up the good work.
Re: Breaking Murmur: Hash-flooding DoS Reloaded
#5Here's an idea: for case where you do not (have to) expose what hash you use, start out with a simple, fast hash (could even be CRC32). When you discover that you have a lot of hash collisions (e.g. because a hash chain becomes X items long), rebuild your hash table using a good hash function. That would mean you (except for that 'am I under attack' check, but that can be a single 'if' in code that, normally, rarely…