Hacker News new | past | comments | ask | show | jobs | submit login

Note that he never guaranteed to leave the files with the same file names, and without that, Patrick's trick wouldn't have worked.

Given the fact that Patrick made the rules concerning multiple files, and that they were intentionally tricky, I think it's fair to interpret them in that spirit - as a trick.

Notably, even without the ordering there is still some information leakage purely in terms of file sizes, but that's a little harder to exploit (likely still possible with a 3mb file). Of course, the rules don't explicitly state the directory must be otherwise empty...

Frankly, I think it's pretty reasonable that Patrick "lost" the bet, even if Mike reasoning wasn't sound. For Patrick to have won that bet would have required quite a list of requirements of how those "other" files were to be passed to the decompressor. Such requirements were not presented, and if they had been they would have been obviously fishy.




He could have ordered the files by size pretty easily. Trick still would have worked. No fancy requirements needed. Just making the files available in any manner.

And yes there needs to be a way to know which file(s) are the compressed data, that loophole would disqualify any entry.


Yep, file sizes alone leak sufficient information to be an issue, but it's a bit of a hypothetical because that's not what actually happened. Clearly, Mike shouldn't have allowed multiple files (or should have specified some kind of overhead for multiple files), and clearly there are other tricks Patrick could have used, but with these unfortunate rules and this submission nothing seems to require keeping file order intact.

It's a good point about needing to know which files are compressed. On a philosophical level, I'm not sure whether that means there actually should be a way to know which file(s) are the compressed data, or that the rules are simply broken...


What I'm trying to argue is that any justifiable objection Mike could have made would have failed.

Unjustifiable objections could have been made but screw those, because they would cause legitimate compression to fail.

Unjustifiable objections will pretty much always exist if the rules are written in English. That doesn't mean the rules are broken, it means you use judgement and follow the purpose of the rules.

Mike's fate was sealed when he allowed multiple files without an overhead penalty. He could have removed all the metadata possible, simply having the files exist as separate entities was enough to ruin him.


Clever, he'd likely be skipping many 5's towards the end, but still compresses.

Another scheme: chop it up into files of increasing length, the difference being 1..256, encoding a byte (ignore the last difference).

EDIT more efficient to increase in length by 1 or 2, encoding a bit.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: